.app-logo-wrap[data-v-4d83a790]{align-items:center;gap:10px;display:flex}.logo-img[data-v-4d83a790]{object-fit:contain;border-radius:6px}.logo-text[data-v-4d83a790]{line-height:1.2}.logo-name[data-v-4d83a790]{color:var(--accent);letter-spacing:-.3px;font-size:1em;font-weight:700}.logo-sub[data-v-4d83a790]{color:var(--text-secondary);letter-spacing:.5px;text-transform:uppercase;font-size:.55em}.user-chips[data-v-b17baa4d]{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:14px;display:flex}.user-chip[data-v-b17baa4d]{border:1.5px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-family:Sarabun,sans-serif;font-size:13px;transition:all .15s;display:flex}.user-chip[data-v-b17baa4d]:hover{border-color:var(--accent);color:var(--text-primary)}.user-chip.active[data-v-b17baa4d]{border-color:var(--accent);color:var(--text-primary);background:#4f8ef726}.chip-name[data-v-b17baa4d]{text-overflow:ellipsis;white-space:nowrap;max-width:80px;overflow:hidden}.pin-who[data-v-b17baa4d]{text-align:center;color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;min-height:22px;margin-bottom:16px;font-size:14px;display:flex}.pin-who strong[data-v-b17baa4d]{color:var(--text-primary)}.clear-user-btn[data-v-b17baa4d]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:12px;line-height:1}.clear-user-btn[data-v-b17baa4d]:hover{color:var(--error)}.pin-hint[data-v-b17baa4d]{color:var(--text-secondary);justify-content:center;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;display:flex}.pin-eye-btn[data-v-b17baa4d]{cursor:pointer;opacity:.8;background:0 0;border:none;padding:0;font-size:18px;transition:opacity .15s}.pin-eye-btn[data-v-b17baa4d]:hover{opacity:1}.pin-char[data-v-b17baa4d]{border:2px solid var(--accent);background:var(--bg-elevated);width:36px;height:36px;color:var(--text-primary);border-radius:8px;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex}.bottom-nav[data-v-81563b5e]{background:var(--bg-surface);border-top:1px solid var(--border);z-index:100;padding-bottom:env(safe-area-inset-bottom,0);display:none;position:fixed;bottom:0;left:0;right:0}@media (width<=768px){.bottom-nav[data-v-81563b5e]{display:flex}}.bottom-tab[data-v-81563b5e]{color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;padding:8px 4px;font-family:Sarabun,sans-serif;transition:color .2s;display:flex}.bottom-tab.active[data-v-81563b5e]{color:var(--accent)}.bottom-tab[data-v-81563b5e]:active{opacity:.7}.tab-icon[data-v-81563b5e]{font-size:22px;line-height:1}.tab-label[data-v-81563b5e]{margin-top:2px;font-size:10px}.drawer-overlay[data-v-81563b5e]{z-index:200;background:#00000080;align-items:flex-end;display:flex;position:fixed;inset:0}.drawer[data-v-81563b5e]{background:var(--bg-surface);width:100%;padding:12px 0 calc(80px + env(safe-area-inset-bottom)) 0;border-radius:16px 16px 0 0}.drawer-handle[data-v-81563b5e]{background:var(--border);border-radius:2px;width:40px;height:4px;margin:0 auto 16px}.drawer-items[data-v-81563b5e]{padding:0 8px}.drawer-item[data-v-81563b5e]{width:100%;color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;align-items:center;gap:14px;padding:14px 16px;font-family:Sarabun,sans-serif;font-size:16px;display:flex}.drawer-item[data-v-81563b5e]:active{background:var(--bg-elevated)}.drawer-item.active[data-v-81563b5e]{color:var(--accent);background:var(--bg-elevated)}.drawer-item.logout[data-v-81563b5e]{color:var(--error)}.drawer-icon[data-v-81563b5e]{text-align:center;width:28px;font-size:22px}.drawer-divider[data-v-81563b5e]{background:var(--border);height:1px;margin:8px 16px}.drawer-user[data-v-81563b5e]{align-items:center;gap:12px;padding:12px 16px;display:flex}.drawer-enter-active[data-v-81563b5e],.drawer-leave-active[data-v-81563b5e]{transition:opacity .25s}.drawer-enter-from[data-v-81563b5e],.drawer-leave-to[data-v-81563b5e]{opacity:0}.drawer-enter-active .drawer[data-v-81563b5e],.drawer-leave-active .drawer[data-v-81563b5e]{transition:transform .25s}.drawer-enter-from .drawer[data-v-81563b5e],.drawer-leave-to .drawer[data-v-81563b5e]{transform:translateY(100%)}.rooms-page[data-v-54dfd7e6]{padding-bottom:20px}.rooms-header[data-v-54dfd7e6]{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.header-left[data-v-54dfd7e6]{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.project-chip[data-v-54dfd7e6]{color:var(--accent);background:#4f8ef726;border-radius:20px;padding:4px 12px;font-size:13px;font-weight:500}.project-select[data-v-54dfd7e6]{margin-bottom:12px}.deadline-bar[data-v-54dfd7e6]{color:var(--text-secondary);background:var(--bg-elevated);border-radius:8px;flex-wrap:wrap;gap:16px;margin-bottom:14px;padding:8px 14px;font-size:13px;display:flex}.deadline-bar strong[data-v-54dfd7e6]{color:var(--text-primary)}.overdue-label[data-v-54dfd7e6]{color:var(--error);margin-left:4px;font-weight:600}.warn-label[data-v-54dfd7e6]{color:var(--warning);margin-left:4px;font-weight:600}.overdue strong[data-v-54dfd7e6]{color:var(--error)}.stats-bar[data-v-54dfd7e6]{gap:10px;margin-bottom:14px;display:flex}.stat-pill[data-v-54dfd7e6]{background:var(--bg-elevated);text-align:center;border:1px solid var(--border);border-radius:10px;flex:1;padding:10px 14px}.stat-pill.success[data-v-54dfd7e6]{background:#3ddc8414;border-color:#3ddc8466}.stat-pill.warning[data-v-54dfd7e6]{background:#ffb34014;border-color:#ffb34066}.stat-num[data-v-54dfd7e6]{color:var(--text-primary);font-size:22px;font-weight:700;display:block}.stat-pill.success .stat-num[data-v-54dfd7e6]{color:var(--success)}.stat-pill.warning .stat-num[data-v-54dfd7e6]{color:var(--warning)}.stat-lbl[data-v-54dfd7e6]{color:var(--text-secondary);font-size:11px}.search-bar[data-v-54dfd7e6]{margin-bottom:16px}.rooms-grid[data-v-54dfd7e6]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.room-card[data-v-54dfd7e6]{background:var(--bg-surface);border:1.5px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:16px;transition:transform .15s,box-shadow .15s;display:flex}.room-card[data-v-54dfd7e6]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003}.room-card.surveyed[data-v-54dfd7e6]{border-color:#3ddc8459}.room-card.unsurveyed[data-v-54dfd7e6]{border-color:#ffb3404d}.card-top[data-v-54dfd7e6]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.room-id[data-v-54dfd7e6]{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.building-tag[data-v-54dfd7e6]{background:var(--accent);color:#fff;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:700}.room-number[data-v-54dfd7e6]{letter-spacing:-.5px;font-size:20px;font-weight:800}.floor-tag[data-v-54dfd7e6]{color:var(--text-secondary);font-size:12px}.survey-status[data-v-54dfd7e6]{flex-shrink:0}.room-type[data-v-54dfd7e6]{color:var(--text-secondary);margin-top:-4px;font-size:13px}.room-meta[data-v-54dfd7e6]{flex-wrap:wrap;gap:8px;display:flex}.meta-item[data-v-54dfd7e6]{color:var(--text-secondary);background:var(--bg-elevated);border-radius:6px;padding:3px 8px;font-size:12px}.equip-summary[data-v-54dfd7e6]{background:var(--bg-elevated);border-radius:8px;flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.equip-summary span[data-v-54dfd7e6]{background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;padding:2px 7px;font-size:12px}.card-actions[data-v-54dfd7e6]{gap:8px;margin-top:auto;padding-top:4px;display:flex}.action-btn[data-v-54dfd7e6]{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:4px;min-height:38px;padding:8px 12px;font-family:Sarabun,sans-serif;font-size:13px;font-weight:500;transition:all .15s;display:flex}.survey-btn[data-v-54dfd7e6]{color:var(--success);background:#3ddc841f;border:1px solid #3ddc8466;flex:1;justify-content:center}.survey-btn[data-v-54dfd7e6]:hover{background:var(--success);color:#0f1117}.order-btn[data-v-54dfd7e6]{color:var(--warning);background:#ffb3401f;border:1px solid #ffb34066;flex:1;justify-content:center}.order-btn[data-v-54dfd7e6]:hover{background:var(--warning);color:#0f1117}.del-btn[data-v-54dfd7e6]{color:var(--error);background:#ff5f5f1a;border:1px solid #ff5f5f4d;padding:8px 10px}.del-btn[data-v-54dfd7e6]:hover{background:var(--error);color:#fff}.confirm-overlay[data-v-54dfd7e6]{z-index:1100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box[data-v-54dfd7e6]{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:90%;max-width:320px;padding:28px 24px;box-shadow:0 20px 60px #00000080}.confirm-icon[data-v-54dfd7e6]{margin-bottom:12px;font-size:40px}.confirm-title[data-v-54dfd7e6]{margin-bottom:6px;font-size:17px;font-weight:700}.confirm-msg[data-v-54dfd7e6]{color:var(--text-secondary);margin-bottom:22px;font-size:13px}.confirm-actions[data-v-54dfd7e6]{flex-direction:column;gap:10px;display:flex}.confirm-actions .btn[data-v-54dfd7e6]{justify-content:center;min-height:44px}.confirm-fade-enter-active[data-v-54dfd7e6],.confirm-fade-leave-active[data-v-54dfd7e6]{transition:opacity .2s}.confirm-fade-enter-from[data-v-54dfd7e6],.confirm-fade-leave-to[data-v-54dfd7e6]{opacity:0}@media (width<=768px){.rooms-grid[data-v-54dfd7e6]{grid-template-columns:1fr;gap:10px}.stats-bar[data-v-54dfd7e6]{gap:8px}.stat-pill[data-v-54dfd7e6]{padding:8px 10px}.stat-num[data-v-54dfd7e6]{font-size:18px}.room-card[data-v-54dfd7e6]{padding:14px}.room-number[data-v-54dfd7e6]{font-size:18px}}.upload-section[data-v-2a64c880]{margin-bottom:24px}.upload-form[data-v-2a64c880]{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:20px}.drop-zone[data-v-2a64c880]{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-height:140px;padding:30px 20px;transition:all .2s;display:flex}.drop-zone[data-v-2a64c880]:hover,.drop-zone.drag-over[data-v-2a64c880]{border-color:var(--accent);background:#4f8ef70d}.drop-zone.has-files[data-v-2a64c880]{justify-content:flex-start;align-items:flex-start;padding:16px}.drop-icon[data-v-2a64c880]{margin-bottom:10px;font-size:36px}.drop-text-pc[data-v-2a64c880]{color:var(--text-secondary);font-size:14px}.drop-text-mobile[data-v-2a64c880]{color:var(--text-secondary);margin-top:4px;font-size:13px}@media (hover:hover){.drop-text-mobile[data-v-2a64c880],.mobile-btns[data-v-2a64c880]{display:none}}@media (hover:none){.drop-text-pc[data-v-2a64c880]{display:none}.drop-zone[data-v-2a64c880]{min-height:80px}}.mobile-btns[data-v-2a64c880]{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.preview-grid[data-v-2a64c880]{flex-wrap:wrap;gap:10px;width:100%;display:flex}.preview-item[data-v-2a64c880]{width:100px;position:relative}.preview-item img[data-v-2a64c880]{object-fit:cover;border:1px solid var(--border);border-radius:6px;width:100px;height:80px}.preview-name[data-v-2a64c880]{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.remove-btn[data-v-2a64c880]{background:var(--error);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:14px;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.upload-progress[data-v-2a64c880]{flex:1;align-items:center;display:flex}.upload-progress .progress-bar[data-v-2a64c880]{flex:1}.room-warning[data-v-2a64c880]{border:1px solid var(--error);color:var(--error);background:#ff5f5f1f;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13px}.photo-item[data-v-8d25b2a4]{cursor:pointer;background:var(--bg-elevated);border-radius:8px;position:relative;overflow:hidden}.photo-item img[data-v-8d25b2a4]{object-fit:cover;width:100%;height:120px;transition:transform .2s;display:block}.photo-item:hover img[data-v-8d25b2a4]{transform:scale(1.04)}.photo-overlay[data-v-8d25b2a4]{pointer-events:none;background:0 0;justify-content:center;align-items:center;height:120px;transition:background .2s;display:flex;position:absolute;inset:0 0 auto}.photo-item:hover .photo-overlay[data-v-8d25b2a4]{background:#00000059}.zoom-icon[data-v-8d25b2a4]{opacity:0;font-size:28px;transition:opacity .2s}.photo-item:hover .zoom-icon[data-v-8d25b2a4]{opacity:1}.photo-info[data-v-8d25b2a4]{padding:8px;font-size:11px}.photo-desc[data-v-8d25b2a4]{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.delete-photo-btn[data-v-8d25b2a4]{cursor:pointer;opacity:0;background:#000000a6;border:none;border-radius:4px;padding:3px 5px;font-size:14px;line-height:1;transition:opacity .15s;position:absolute;top:4px;right:4px}.photo-item:hover .delete-photo-btn[data-v-8d25b2a4]{opacity:1}.lightbox[data-v-8d25b2a4]{z-index:1000;-webkit-user-select:none;user-select:none;background:#000000f2;flex-direction:column;display:flex;position:fixed;inset:0}.lb-topbar[data-v-8d25b2a4]{background:#0009;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.lb-meta[data-v-8d25b2a4]{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.lb-category[data-v-8d25b2a4]{background:var(--accent);color:#fff;white-space:nowrap;border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:11px}.lb-desc[data-v-8d25b2a4]{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.lb-name[data-v-8d25b2a4]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.lb-actions[data-v-8d25b2a4]{flex-shrink:0;gap:8px;display:flex}.lb-btn[data-v-8d25b2a4]{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:none;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;text-decoration:none;transition:background .15s;display:flex}.lb-btn[data-v-8d25b2a4]:hover{background:#ffffff38}.lb-img-wrap[data-v-8d25b2a4]{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.lb-img[data-v-8d25b2a4]{object-fit:contain;pointer-events:none;border-radius:4px;max-width:100%;max-height:100%}.lb-arrow[data-v-8d25b2a4]{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:none;border-radius:8px;justify-content:center;align-items:center;width:52px;height:72px;font-size:40px;line-height:1;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lb-arrow[data-v-8d25b2a4]:hover{background:#ffffff40}.lb-prev[data-v-8d25b2a4]{left:8px}.lb-next[data-v-8d25b2a4]{right:8px}.lb-counter[data-v-8d25b2a4]{text-align:center;color:#ffffff80;flex-shrink:0;padding:10px;font-size:13px}@media (width<=768px){.lb-arrow[data-v-8d25b2a4]{width:44px;height:56px;font-size:32px}.lb-prev[data-v-8d25b2a4]{left:4px}.lb-next[data-v-8d25b2a4]{right:4px}.lb-name[data-v-8d25b2a4]{display:none}}.boq-status-bar[data-v-9815dc32]{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.status-chip[data-v-9815dc32]{border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500}.status-chip.confirmed[data-v-9815dc32]{color:var(--success);background:#3ddc841f;border:1px solid #3ddc8466}.status-chip.estimated[data-v-9815dc32]{color:var(--warning);background:#ffb3401f;border:1px solid #ffb34066}.mini-badge[data-v-9815dc32]{font-size:12px;display:inline-block}.row-confirmed td[data-v-9815dc32]{background:#3ddc840a}.row-estimated td[data-v-9815dc32]{background:#ffb3400a}tr.row-estimated td[data-v-9815dc32]{color:var(--text-secondary)}.price-grid[data-v-9815dc32]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:4px;display:grid}.price-row[data-v-9815dc32]{background:var(--bg-elevated);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.price-label[data-v-9815dc32]{flex:1;font-size:13px}.price-unit[data-v-9815dc32]{color:var(--text-secondary);white-space:nowrap;text-align:right;min-width:70px;font-size:11px}.price-input-wrap[data-v-9815dc32]{align-items:center;gap:4px;display:flex}.price-input[data-v-9815dc32]{text-align:right;width:90px;padding:6px 10px}.price-unit-label[data-v-9815dc32]{color:var(--text-secondary);white-space:nowrap;font-size:12px}.export-card[data-v-455e2168]{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:16px;padding:20px;transition:all .2s;display:flex;position:relative;overflow:hidden}.export-card.featured[data-v-455e2168]{border-color:var(--accent);background:linear-gradient(135deg, var(--bg-surface) 0%, #4f8ef714 100%)}.export-card[data-v-455e2168]:active{transform:scale(.98)}.export-card[data-v-455e2168]:hover{border-color:var(--accent);box-shadow:0 4px 20px #4f8ef726}.export-icon[data-v-455e2168]{flex-shrink:0;font-size:36px}.export-info[data-v-455e2168]{flex:1}.export-title[data-v-455e2168]{margin-bottom:4px;font-size:16px;font-weight:600}.export-desc[data-v-455e2168]{color:var(--text-secondary);font-size:12px;line-height:1.4}.export-badge[data-v-455e2168]{background:var(--accent);color:#fff;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600;position:absolute;top:10px;right:10px}.export-loading[data-v-455e2168]{z-index:500;color:#fff;background:#00000080;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@media (width<=768px){.grid-2[data-v-455e2168]{grid-template-columns:1fr!important}}.confirm-overlay[data-v-f68d8315]{z-index:1100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box[data-v-f68d8315]{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:90%;max-width:320px;padding:28px 24px;box-shadow:0 20px 60px #00000080}.confirm-icon[data-v-f68d8315]{margin-bottom:12px;font-size:40px}.confirm-title[data-v-f68d8315]{margin-bottom:6px;font-size:17px;font-weight:700}.confirm-msg[data-v-f68d8315]{color:var(--text-secondary);margin-bottom:22px;font-size:13px}.confirm-actions[data-v-f68d8315]{flex-direction:column;gap:10px;display:flex}.confirm-actions .btn[data-v-f68d8315]{justify-content:center;min-height:44px}.confirm-fade-enter-active[data-v-f68d8315],.confirm-fade-leave-active[data-v-f68d8315]{transition:opacity .2s}.confirm-fade-enter-from[data-v-f68d8315],.confirm-fade-leave-to[data-v-f68d8315]{opacity:0}.info-banner[data-v-766fbbff]{color:var(--text-secondary);background:#4f8ef71a;border:1px solid #4f8ef74d;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px;line-height:1.5}.info-banner strong[data-v-766fbbff]{color:var(--accent)}.field-error[data-v-766fbbff]{color:var(--error);margin-top:4px;font-size:13px}.confirm-overlay[data-v-766fbbff]{z-index:1100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box[data-v-766fbbff]{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:90%;max-width:320px;padding:28px 24px;box-shadow:0 20px 60px #00000080}.confirm-icon[data-v-766fbbff]{margin-bottom:12px;font-size:40px}.confirm-title[data-v-766fbbff]{margin-bottom:6px;font-size:17px;font-weight:700}.confirm-msg[data-v-766fbbff]{color:var(--text-secondary);margin-bottom:22px;font-size:13px}.confirm-actions[data-v-766fbbff]{flex-direction:column;gap:10px;display:flex}.confirm-actions .btn[data-v-766fbbff]{justify-content:center;min-height:44px}.confirm-fade-enter-active[data-v-766fbbff],.confirm-fade-leave-active[data-v-766fbbff]{transition:opacity .2s}.confirm-fade-enter-from[data-v-766fbbff],.confirm-fade-leave-to[data-v-766fbbff]{opacity:0}.survey-modal[data-v-8c21b7c1]{max-width:680px;overflow-x:hidden}.survey-sub[data-v-8c21b7c1]{color:var(--text-secondary);margin-top:3px;font-size:12px}.survey-tabs[data-v-8c21b7c1]{border-bottom:1px solid var(--border);display:flex;overflow-x:hidden}.survey-tab[data-v-8c21b7c1]{min-width:0;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;gap:4px;padding:10px 4px;font-family:Sarabun,sans-serif;font-size:13px;transition:all .15s;display:flex;overflow:hidden}.survey-tab.active[data-v-8c21b7c1]{color:var(--accent);border-bottom-color:var(--accent)}.survey-body[data-v-8c21b7c1]{padding:20px 24px;overflow-x:hidden}.survey-modal[data-v-8c21b7c1]::-webkit-scrollbar{width:4px}.survey-modal[data-v-8c21b7c1]::-webkit-scrollbar-track{background:0 0}.survey-modal[data-v-8c21b7c1]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.survey-modal[data-v-8c21b7c1]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.section-label[data-v-8c21b7c1]{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:13px;font-weight:600}.area-hint[data-v-8c21b7c1]{color:var(--text-secondary);margin-top:-8px;margin-bottom:8px;font-size:13px}.equip-row[data-v-8c21b7c1]{background:var(--bg-elevated);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px 14px;display:flex}.equip-label[data-v-8c21b7c1]{font-size:14px}.equip-counter[data-v-8c21b7c1]{border:1px solid var(--border);border-radius:8px;align-items:center;gap:0;display:flex;overflow:hidden}.equip-counter button[data-v-8c21b7c1]{background:var(--bg-surface);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border:none;justify-content:center;align-items:center;font-family:Sarabun,sans-serif;font-size:20px;transition:background .15s;display:flex}.equip-counter button[data-v-8c21b7c1]:hover{background:var(--accent);color:#fff}.equip-counter span[data-v-8c21b7c1]{text-align:center;min-width:40px;font-size:16px;font-weight:600}.summary-grid[data-v-8c21b7c1]{flex-direction:column;gap:14px;display:flex}.summary-block[data-v-8c21b7c1]{background:var(--bg-elevated);border-radius:10px;padding:14px 16px}.summary-block-title[data-v-8c21b7c1]{color:var(--accent);margin-bottom:10px;font-size:13px;font-weight:700}.summary-row[data-v-8c21b7c1]{border-bottom:1px solid var(--border);justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.summary-row[data-v-8c21b7c1]:last-child{border-bottom:none}.summary-row span[data-v-8c21b7c1]{color:var(--text-secondary)}.summary-notes[data-v-8c21b7c1]{background:var(--bg-elevated);border-radius:8px;margin-top:14px;padding:12px;font-size:13px;line-height:1.6}.ac-detail-section[data-v-8c21b7c1]{flex-direction:column;gap:10px;margin-top:12px;display:flex}.ac-detail-title[data-v-8c21b7c1]{color:var(--accent);border-left:3px solid var(--accent);background:#4f8ef714;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.ac-unit-card[data-v-8c21b7c1]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:14px}.ac-unit-header[data-v-8c21b7c1]{align-items:center;gap:10px;margin-bottom:12px;display:flex}.ac-unit-num[data-v-8c21b7c1]{color:var(--accent);font-size:14px;font-weight:700}.ac-remove-btn[data-v-8c21b7c1]{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 6px;font-size:14px}.ac-remove-btn[data-v-8c21b7c1]:hover{color:var(--error);background:#ff5f5f26}.ac-fields[data-v-8c21b7c1]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ac-add-btn[data-v-8c21b7c1]{border:1.5px dashed var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:10px;font-family:Sarabun,sans-serif;font-size:13px;transition:all .15s}.ac-add-btn[data-v-8c21b7c1]:hover{border-color:var(--accent);color:var(--accent)}.ir-options[data-v-8c21b7c1]{flex-wrap:wrap;gap:8px;display:flex}.ir-option[data-v-8c21b7c1]{border:1.5px solid var(--border);cursor:pointer;background:var(--bg-surface);border-radius:8px;padding:6px 12px;font-size:13px;transition:all .15s}.ir-option.selected[data-v-8c21b7c1]{border-color:var(--accent);color:var(--text-primary);background:#4f8ef71f}.ir-option[data-v-8c21b7c1]:hover{border-color:var(--accent)}.ac-smart-badge[data-v-8c21b7c1]{border-radius:12px;padding:3px 10px;font-size:12px;font-weight:500}.ac-smart-badge.yes[data-v-8c21b7c1]{color:var(--success);background:#3ddc8426}.ac-smart-badge.no[data-v-8c21b7c1]{color:var(--error);background:#ff5f5f26}.ac-smart-badge.maybe[data-v-8c21b7c1]{color:var(--warning);background:#ffb34026}.ac-smart-badge.unknown[data-v-8c21b7c1]{background:var(--bg-elevated);color:var(--text-secondary)}.ac-summary-row[data-v-8c21b7c1]{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.ac-summary-row[data-v-8c21b7c1]:last-child{border:none}.ac-sum-num[data-v-8c21b7c1]{color:var(--accent);min-width:24px;font-weight:700}.ac-sum-type[data-v-8c21b7c1]{color:var(--text-secondary);font-size:12px}@media (width<=768px){.ac-fields[data-v-8c21b7c1]{grid-template-columns:1fr}.ir-options[data-v-8c21b7c1]{flex-direction:column}}.confirm-overlay[data-v-8c21b7c1]{z-index:1100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box[data-v-8c21b7c1]{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:90%;max-width:320px;padding:28px 24px;box-shadow:0 20px 60px #00000080}.confirm-icon[data-v-8c21b7c1]{margin-bottom:12px;font-size:40px}.confirm-title[data-v-8c21b7c1]{margin-bottom:6px;font-size:17px;font-weight:700}.confirm-msg[data-v-8c21b7c1]{color:var(--text-secondary);margin-bottom:22px;font-size:13px}.confirm-actions[data-v-8c21b7c1]{flex-direction:column;gap:10px;display:flex}.confirm-actions .btn[data-v-8c21b7c1]{justify-content:center;min-height:44px}.confirm-fade-enter-active[data-v-8c21b7c1],.confirm-fade-leave-active[data-v-8c21b7c1]{transition:opacity .2s}.confirm-fade-enter-from[data-v-8c21b7c1],.confirm-fade-leave-to[data-v-8c21b7c1]{opacity:0}.survey-footer[data-v-8c21b7c1]{background:var(--bg-surface);border-top:1px solid var(--border);flex-direction:column;gap:10px;margin:0 -24px -24px;padding:14px 24px;display:flex;position:sticky;bottom:0}.footer-nav[data-v-8c21b7c1]{justify-content:space-between;align-items:center;display:flex}.tab-indicator[data-v-8c21b7c1]{color:var(--text-secondary);font-size:13px}.btn-save[data-v-8c21b7c1]{justify-content:center;width:100%;min-height:46px;font-size:15px}.save-error[data-v-8c21b7c1]{border:1px solid var(--error);color:var(--error);background:#ff5f5f1a;border-radius:8px;padding:8px 12px;font-size:13px}.tab-dots[data-v-8c21b7c1]{display:none}.tab-dot[data-v-8c21b7c1]{background:var(--border);cursor:pointer;border-radius:50%;width:8px;height:8px;transition:background .2s,transform .2s}.tab-dot.active[data-v-8c21b7c1]{background:var(--accent);transform:scale(1.3)}@media (width<=768px){.survey-modal[data-v-8c21b7c1]{max-width:100%}.survey-body[data-v-8c21b7c1]{-webkit-overflow-scrolling:touch;padding:14px 12px}.tab-text[data-v-8c21b7c1]{display:none}.tab-icon[data-v-8c21b7c1]{font-size:20px}.survey-tab[data-v-8c21b7c1]{flex:1;padding:12px 0}.equip-row[data-v-8c21b7c1]{margin-bottom:6px;padding:12px 14px}.equip-label[data-v-8c21b7c1]{font-size:15px}.equip-counter button[data-v-8c21b7c1]{width:48px;height:48px;font-size:22px}.equip-counter span[data-v-8c21b7c1]{min-width:48px;font-size:18px;font-weight:700}.form-input[data-v-8c21b7c1],.form-select[data-v-8c21b7c1]{min-height:48px;padding:12px 14px;font-size:15px}.survey-footer[data-v-8c21b7c1]{gap:8px;margin:0 -12px -14px;padding:12px}.footer-nav[data-v-8c21b7c1]{gap:6px}.nav-btn[data-v-8c21b7c1]{flex:1;justify-content:center;min-height:48px;font-size:14px}.btn-save[data-v-8c21b7c1]{min-height:52px;font-size:16px}.tab-dots[data-v-8c21b7c1]{justify-content:center;align-items:center;gap:8px;display:flex}.tab-indicator[data-v-8c21b7c1]{display:none}.ac-fields[data-v-8c21b7c1]{grid-template-columns:1fr;gap:8px}.ir-options[data-v-8c21b7c1]{flex-direction:column;gap:6px}.ir-option[data-v-8c21b7c1]{padding:10px 14px;font-size:14px}.ac-unit-card[data-v-8c21b7c1]{padding:12px}.section-label[data-v-8c21b7c1]{margin-bottom:10px;font-size:12px}.summary-row[data-v-8c21b7c1]{font-size:13px}}.order-modal[data-v-9cc54154]{max-width:560px;overflow-x:hidden}.order-modal[data-v-9cc54154]::-webkit-scrollbar{width:4px}.order-modal[data-v-9cc54154]::-webkit-scrollbar-track{background:0 0}.order-modal[data-v-9cc54154]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.order-modal[data-v-9cc54154]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.order-sub[data-v-9cc54154]{color:var(--text-secondary);margin-top:3px;font-size:12px}.order-body[data-v-9cc54154]{-webkit-overflow-scrolling:touch;flex-direction:column;gap:10px;max-height:72vh;padding:14px 16px;display:flex;overflow:hidden auto}.order-body[data-v-9cc54154]::-webkit-scrollbar{width:4px}.order-body[data-v-9cc54154]::-webkit-scrollbar-track{background:0 0}.order-body[data-v-9cc54154]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.status-banner[data-v-9cc54154]{border-radius:8px;padding:8px 12px;font-size:13px;font-weight:500}.status-banner.confirmed[data-v-9cc54154]{color:var(--success);background:#3ddc841a;border:1px solid #3ddc8466}.status-banner.estimated[data-v-9cc54154]{color:var(--warning);background:#ffb3401a;border:1px solid #ffb34066}.order-grid[data-v-9cc54154]{flex-direction:column;gap:6px;display:flex}.order-row[data-v-9cc54154]{background:var(--bg-elevated);border:1.5px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;transition:border-color .15s;display:flex}.order-row.active[data-v-9cc54154]{border-color:var(--accent);background:#4f8ef70f}.order-label[data-v-9cc54154]{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;overflow:hidden}.order-qty-wrap[data-v-9cc54154]{border:1px solid var(--border);border-radius:8px;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.qty-btn[data-v-9cc54154]{background:var(--bg-surface);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;font-family:Sarabun,sans-serif;font-size:18px;transition:background .15s;display:flex}.qty-btn[data-v-9cc54154]:hover{background:var(--accent);color:#fff}.qty-input[data-v-9cc54154]{text-align:center;background:var(--bg-elevated);width:44px;color:var(--text-primary);appearance:textfield;border:none;padding:0;font-family:Sarabun,sans-serif;font-size:15px;font-weight:700}.qty-input[data-v-9cc54154]::-webkit-outer-spin-button{-webkit-appearance:none}.qty-input[data-v-9cc54154]::-webkit-inner-spin-button{-webkit-appearance:none}.qty-input[data-v-9cc54154]:focus{outline:none}.order-unit-label[data-v-9cc54154]{color:var(--text-secondary);white-space:nowrap;text-align:right;flex-shrink:0;min-width:28px;font-size:12px}.order-count-summary[data-v-9cc54154]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;font-size:14px;display:flex}.order-count-summary strong[data-v-9cc54154]{color:var(--accent);font-size:16px}.order-footer[data-v-9cc54154]{flex-direction:column;gap:8px}.footer-row[data-v-9cc54154]{gap:10px;display:flex}.save-btn[data-v-9cc54154]{flex:1;justify-content:center;min-height:44px}.save-error[data-v-9cc54154]{border:1px solid var(--error);color:var(--error);background:#ff5f5f1a;border-radius:8px;padding:8px 12px;font-size:13px}.confirm-overlay[data-v-9cc54154]{z-index:1100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-box[data-v-9cc54154]{background:var(--bg-surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:90%;max-width:320px;padding:28px 24px;box-shadow:0 20px 60px #00000080}.confirm-icon[data-v-9cc54154]{margin-bottom:12px;font-size:40px}.confirm-title[data-v-9cc54154]{margin-bottom:6px;font-size:17px;font-weight:700}.confirm-msg[data-v-9cc54154]{color:var(--text-secondary);margin-bottom:22px;font-size:13px}.confirm-actions[data-v-9cc54154]{flex-direction:column;gap:10px;display:flex}.confirm-actions .btn[data-v-9cc54154]{justify-content:center;min-height:44px}.confirm-fade-enter-active[data-v-9cc54154],.confirm-fade-leave-active[data-v-9cc54154]{transition:opacity .2s}.confirm-fade-enter-from[data-v-9cc54154],.confirm-fade-leave-to[data-v-9cc54154]{opacity:0}@media (width<=768px){.order-modal[data-v-9cc54154]{max-width:100%}.order-body[data-v-9cc54154]{max-height:75vh;padding:12px}.order-grid[data-v-9cc54154]{grid-template-columns:1fr;gap:6px}.order-row[data-v-9cc54154]{padding:8px 10px}}:root{--bg-primary:#0f1117;--bg-surface:#1a1d27;--bg-elevated:#242836;--accent:#4f8ef7;--success:#3ddc84;--warning:#ffb340;--error:#ff5f5f;--text-primary:#fff;--text-secondary:#9ca3af;--border:#2d3748}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Sarabun,sans-serif}.app-container{min-height:100vh;display:flex}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;width:240px;min-width:240px;padding:20px 0;display:flex}.sidebar-header{border-bottom:1px solid var(--border);margin-bottom:12px;padding:16px 20px}.sidebar-nav{flex:1}.nav-item{color:var(--text-secondary);cursor:pointer;align-items:center;gap:12px;padding:11px 20px;font-size:14px;text-decoration:none;transition:all .15s;display:flex}.nav-item:hover,.nav-item.active{background:var(--bg-elevated);color:var(--text-primary)}.nav-item.active{border-left:3px solid var(--accent);padding-left:17px}.nav-icon{text-align:center;width:20px;font-size:16px}.sidebar-footer{border-top:1px solid var(--border);padding:14px 20px}.user-info{align-items:center;gap:10px;display:flex}.user-avatar{font-size:26px}.user-name{font-size:14px;font-weight:600;line-height:1.3}.user-role{color:var(--text-secondary);font-size:11px}.main-content{flex:1;min-width:0;padding:28px 32px;overflow-y:auto}.page-title{margin-bottom:20px;font-size:24px;font-weight:700}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;margin-bottom:20px;padding:24px}.card-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.card-title{font-size:18px;font-weight:600}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:20px}.stat-value{color:var(--accent);font-size:32px;font-weight:700}.stat-label{color:var(--text-secondary);margin-top:5px;font-size:14px}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-family:Sarabun,sans-serif;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#3a7be5}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--error);color:#fff}.btn-success{background:var(--success);color:#0f1117}.form-group{margin-bottom:16px}.form-label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;display:block}.form-input,.form-select,.form-textarea{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:8px;padding:10px 14px;font-family:Sarabun,sans-serif;font-size:14px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);outline:none}.form-textarea{resize:vertical;min-height:80px}.table-container{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:12px 16px}th{color:var(--text-secondary);text-transform:uppercase;font-size:12px;font-weight:600}td{font-size:14px}tr:hover td{background:var(--bg-elevated)}.pin-container{text-align:center;max-width:300px;margin:50px auto}.pin-title{margin-bottom:30px;font-size:24px;font-weight:600}.pin-dots{justify-content:center;gap:15px;margin-bottom:30px;display:flex}.pin-dot{border:2px solid var(--border);border-radius:50%;width:16px;height:16px;transition:all .2s}.pin-dot.filled{background:var(--accent);border-color:var(--accent)}.pin-numpad{grid-template-columns:repeat(3,1fr);gap:12px;max-width:260px;margin:0 auto;display:grid}.pin-key{background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;color:var(--text-primary);-webkit-user-select:none;user-select:none;border-radius:10px;padding:20px;font-family:Sarabun,sans-serif;font-size:24px;font-weight:600;transition:all .2s}.pin-key:hover{background:var(--bg-elevated)}.pin-key:active{background:var(--accent);color:#fff;transform:scale(.95)}.pin-key.action{color:var(--text-secondary);font-size:14px}.pin-key.action:active{background:var(--bg-elevated);color:var(--text-primary)}.pin-error{color:var(--error);margin-top:15px;font-size:14px}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-surface);border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{font-size:18px;font-weight:600}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:24px;line-height:1}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.badge{border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500}.badge-success{color:var(--success);background:#3ddc8433}.badge-warning{color:var(--warning);background:#ffb34033}.badge-info{color:var(--accent);background:#4f8ef733}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;display:grid}.photo-item{background:var(--bg-elevated);border-radius:8px;position:relative;overflow:hidden}.photo-item img{object-fit:cover;width:100%;height:120px}.photo-item .photo-info{padding:8px;font-size:11px}.photo-category{background:var(--accent);border-radius:4px;padding:2px 6px;font-size:10px;display:inline-block}.boq-summary{background:var(--bg-elevated);border-radius:10px;margin-top:20px;padding:20px}.boq-row{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;display:flex}.boq-row:last-child{color:var(--success);border-bottom:none;font-size:18px;font-weight:700}.empty-state{text-align:center;color:var(--text-secondary);padding:60px 20px}.empty-icon{margin-bottom:20px;font-size:60px}.toast{background:var(--bg-surface);border:1px solid var(--border);z-index:2000;border-radius:10px;align-items:center;gap:10px;padding:15px 20px;animation:.3s slideIn;display:flex;position:fixed;bottom:20px;right:20px}.toast.success{border-color:var(--success)}.toast.error{border-color:var(--error)}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.login-page{background:var(--bg-primary);background-image:radial-gradient(at 60% 20%,#4f8ef714 0%,#0000 60%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{background:var(--bg-surface);border:1px solid var(--border);border-radius:20px;width:100%;max-width:400px;padding:40px 36px;box-shadow:0 24px 64px #0006}.login-logo{text-align:center;margin-bottom:28px}.login-logo h1{color:var(--text-primary);margin-top:4px;font-size:22px;font-weight:700}.login-logo p{color:var(--text-secondary);margin-top:4px;font-size:13px}.tabs{background:var(--bg-elevated);border-radius:8px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.tab{text-align:center;cursor:pointer;border-radius:6px;flex:1;padding:10px;font-size:13px;transition:all .2s}.tab.active{background:var(--accent);color:#fff}.activity-item{border-bottom:1px solid var(--border);gap:12px;padding:12px 0;display:flex}.activity-icon{background:var(--bg-elevated);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.activity-content{flex:1}.activity-text{font-size:14px}.activity-time{color:var(--text-secondary);margin-top:4px;font-size:12px}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1024px){.sidebar{width:200px;min-width:200px}.main-content{padding:20px 24px}}@media (width<=768px){.sidebar{display:none}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.main-content{padding:16px}.mobile-padded{padding-bottom:calc(72px + env(safe-area-inset-bottom));padding-top:12px;padding-left:12px;padding-right:12px}.page-title{margin-bottom:12px;font-size:18px}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:16px 16px 0 0;width:100%;max-width:100%;max-height:92vh;overflow-y:auto}.modal-header{padding:16px 16px 12px}.modal-title{font-size:16px}.modal-body{padding:14px 16px}.modal-footer{flex-wrap:wrap;gap:8px;padding:12px 16px}.modal-footer .btn{flex:1;justify-content:center;min-height:44px}.stat-value{font-size:24px}.card{padding:16px}th,td{padding:8px 10px;font-size:13px}.btn{min-height:40px;padding:10px 14px;font-size:13px}.login-box{border-radius:0;flex-direction:column;justify-content:center;min-height:100vh;padding:24px 20px;display:flex}}@media (width<=480px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:10px}.main-content,.mobile-padded{padding-left:10px;padding-right:10px}.stat-card{padding:14px}.stat-value{font-size:22px}th,td{padding:6px 8px;font-size:12px}.modal-header{padding:14px}.modal-body{padding:12px}}
