*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{color-scheme:dark;--bg:#000000;--surface:#0C0C0C;--surface2:#161616;--surface-glass:rgba(12,12,12,.82);--border:#3A332C;--border2:#4A4138;--fms-orange:#F2A23C;--orange:var(--fms-orange);--accent-strong:#FF8A3D;--accent-soft:rgba(242,162,60,.12);--orange-lt:var(--accent-soft);--orange-md:rgba(242,162,60,.28);--blue:#3B7DFF;--blue-lt:#EEF3FF;--text:#F2EBDF;--text2:#B8AE9F;--text3:#7C7263;--green:#5BBF8A;--green-lt:rgba(91,191,138,.14);--warn:#E8B04B;--warn-lt:rgba(232,176,75,.14);--red:#E5675F;--red-lt:rgba(229,103,95,.14);--shadow:0 14px 34px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.18);--shadow-md:0 24px 56px rgba(0,0,0,.34),0 8px 22px rgba(0,0,0,.22);--r:10px;--r-sm:6px}[data-theme=dark]{color-scheme:dark;--bg:#000000;--surface:#0C0C0C;--surface2:#161616;--surface-glass:rgba(12,12,12,.82);--border:#3A332C;--border2:#4A4138;--fms-orange:#F2A23C;--orange:var(--fms-orange);--accent-strong:#FF8A3D;--accent-soft:rgba(242,162,60,.12);--orange-lt:var(--accent-soft);--orange-md:rgba(242,162,60,.28);--blue:#4D8BFF;--blue-lt:rgba(59,125,255,.15);--text:#F2EBDF;--text2:#B8AE9F;--text3:#7C7263;--green:#5BBF8A;--green-lt:rgba(91,191,138,.14);--warn:#E8B04B;--warn-lt:rgba(232,176,75,.14);--red:#E5675F;--red-lt:rgba(229,103,95,.14);--shadow:0 14px 34px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.18);--shadow-md:0 24px 56px rgba(0,0,0,.34),0 8px 22px rgba(0,0,0,.22)}body{background:var(--bg);color:var(--text);font-family:Outfit,Noto Sans KR,Montserrat,sans-serif;transition:background .3s,color .3s;min-height:100vh}.bg-glow{position:fixed;top:-200px;right:-150px;width:700px;height:700px;background:radial-gradient(circle,var(--orange-lt) 0%,transparent 70%);border-radius:50%;z-index:-1;pointer-events:none;transition:all .5s ease;opacity:.6}[data-theme=dark] .bg-glow{background:radial-gradient(circle,rgba(255,102,26,.1) 0%,transparent 70%);opacity:.3;transform:scale(1.2)}#themeIconMoon{display:none}[data-theme=dark] #themeIconMoon{display:block}[data-theme=dark] #themeIconSun{display:none}.app{display:flex;min-height:100vh;width:100%}.theme-switch{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);flex-shrink:0}.theme-switch:hover{background:var(--surface2);color:var(--orange);border-color:var(--orange);transform:translateY(-2px);box-shadow:var(--shadow)}[data-theme=dark] .theme-switch:hover{box-shadow:0 4px 12px #ff661a33}.sidebar{width:220px;flex-shrink:0;background:var(--surface-glass);border-right:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;z-index:50;transition:background .3s;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-nav{flex:1;overflow-y:auto;min-height:0}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--text3)}.sb-logo{padding:20px 18px 14px;border-bottom:1px solid var(--border);transition:background .15s;border-radius:var(--r) var(--r) 0 0}.sb-logo:hover{background:var(--surface2)}.sb-logo-name{font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;color:var(--orange)}.sb-logo-sub{font-size:10px;color:var(--text3);margin-top:2px;font-family:Montserrat,sans-serif;letter-spacing:.4px}.sb-user{display:flex;align-items:center;gap:10px;padding:12px 16px;margin:0 8px 8px;border-radius:var(--r);transition:background .15s;cursor:pointer}.sb-user:hover{background:var(--surface2)}.sb-user-avatar{width:34px;height:34px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.sb-user-info{flex:1;min-width:0}.sb-user-name{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-role{font-size:10px;color:var(--text3);background:var(--surface2);border-radius:4px;padding:1px 6px;display:inline-block;margin-top:2px}.sb-role-hidden{display:inline-block;margin-top:4px;padding:2px 8px;background:var(--orange-lt);color:var(--orange);border-radius:4px;font-size:10px;font-weight:700;font-family:Montserrat,sans-serif}.nav-sec{padding:14px 10px 4px}.nav-sec-label{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);padding:0 8px;margin-bottom:6px}.nav-item{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:var(--r-sm);cursor:pointer;transition:all .15s;font-size:13px;font-weight:400;color:var(--text2);margin-bottom:2px}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{background:var(--orange);color:#fff;font-weight:600}.nav-item svg{width:15px;height:15px;flex-shrink:0}.nav-badge{margin-left:auto;background:var(--orange-lt);color:var(--orange);font-size:10px;font-weight:700;padding:1px 7px;border-radius:10px}.nav-item.active .nav-badge{background:#ffffff40;color:#fff}.sb-bottom{padding:12px 10px 42px;flex-shrink:0;border-top:1px solid var(--border)}.main-area{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:100;height:56px;flex-shrink:0;background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:12px;transition:background .3s}.tb-left{display:flex;align-items:center;gap:10px}.page-title{font-size:17px;font-weight:700;color:var(--text);letter-spacing:-.3px}.back-btn{display:flex;align-items:center;gap:5px;cursor:pointer;color:var(--text3);font-size:12px;font-weight:500;padding:6px 10px;border:1px solid var(--border);border-radius:var(--r-sm);transition:all .15s}.back-btn:hover{color:var(--text);border-color:var(--border2)}.back-btn svg{width:14px;height:14px}.tb-right{display:flex;align-items:center;gap:8px}.btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text2);font-size:12px;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);font-family:Noto Sans KR,sans-serif}.btn:hover{border-color:var(--border2);color:var(--text);background:var(--bg);transform:translateY(-1px);box-shadow:0 3px 8px #0000000f}.btn:active{transform:translateY(1px) scale(.98);box-shadow:none}.btn.primary{background:var(--orange);color:#fff;border-color:var(--orange);font-weight:600}.btn.primary:hover{background:var(--fms-orange);border-color:var(--fms-orange)}.btn svg{width:13px;height:13px}.page{flex:1;display:none}.page.active{display:block;animation:pageFadeUp .35s cubic-bezier(.16,1,.3,1) both}@keyframes pageFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pg{max-width:1600px;margin:0;padding:28px 28px 80px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;margin-bottom:12px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-hd{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:24px;align-items:start}@media (min-width: 1024px){.dashboard-grid{grid-template-columns:repeat(3,1fr)}}.d-col-card{display:flex;flex-direction:column;height:100%;min-height:400px;max-height:calc(100vh - 280px)}.d-col-card .card-bd{flex:1;overflow-y:auto;padding:0}.d-col-card .card-bd::-webkit-scrollbar{width:5px}.d-col-card .card-bd::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}.empty-state-bd{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--text3);font-size:13px;text-align:center;height:100%;min-height:200px}.empty-state-bd svg{width:32px;height:32px;stroke:var(--border2);margin-bottom:12px}.card-title{font-size:13px;font-weight:600}.card-bd{padding:18px}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:18px}.stat{cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease}.stat:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.stat.o{border-top:3px solid var(--orange)}.stat.b{border-top:3px solid var(--blue)}.stat.g{border-top:3px solid var(--green)}.stat-lbl{font-size:10px;font-weight:600;color:var(--text3);letter-spacing:.5px;margin-bottom:6px}.stat-val{font-size:26px;font-weight:700;letter-spacing:-1px;font-family:Montserrat,sans-serif}.stat-sub{font-size:11px;color:var(--text3);margin-top:3px}.search-wrap{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--r-sm);padding:0 12px;height:38px;background:var(--surface);transition:all .2s;flex:1;max-width:300px}.search-wrap:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.search-wrap svg{width:14px;height:14px;color:var(--text3);flex-shrink:0}.search-wrap input{flex:1;border:none;outline:none;background:transparent;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text)}.search-wrap input::placeholder{color:var(--text3)}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.chip{padding:5px 12px;border:1px solid var(--border);border-radius:20px;font-size:11px;font-weight:500;color:var(--text2);cursor:pointer;transition:all .15s;background:var(--surface);white-space:nowrap}.chip:hover{border-color:var(--orange);color:var(--orange)}.chip.active{background:var(--orange);color:#fff;border-color:var(--orange);font-weight:600}.hw-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;z-index:800;display:none;flex-direction:column}.hw-overlay.open{display:flex}.hw-toolbar{height:52px;flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:6px;padding:0 12px;overflow-x:auto}.hw-title{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;margin:0 4px}.hw-tb-btn{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:12px;font-weight:600;gap:4px;padding:0 10px;height:36px;min-width:36px}.hw-tb-btn svg{width:16px;height:16px}.hw-tb-btn:hover{background:var(--bg);color:var(--text)}.hw-tb-btn.active{background:var(--orange);color:#fff;border-color:var(--orange)}.hw-save-btn{background:var(--orange-lt)!important;color:var(--orange)!important;border-color:var(--orange)!important;font-weight:700!important}.hw-save-btn:hover{background:var(--orange)!important;color:#fff!important}.hw-sz{width:30px;height:30px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.hw-sz.active{border-color:var(--orange);background:var(--orange-lt)}.hw-stage{flex:1;position:relative;overflow:hidden;background:#fafafa}.hw-guide{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text3);pointer-events:none;z-index:1;font-family:Noto Sans KR,sans-serif}#hwCanvas{position:absolute;top:0;right:0;bottom:0;left:0}.hw-ans-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hw-open-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text2);font-size:11px;font-weight:500;cursor:pointer;font-family:Noto Sans KR,sans-serif;white-space:nowrap}.hw-open-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.hw-open-btn svg{width:12px;height:12px}.hw-thumb{width:80px;height:44px;border:1px solid var(--border);border-radius:var(--r-sm);object-fit:contain;background:#fff;cursor:pointer}.hw-clear-btn{width:24px;height:24px;border:none;background:none;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.hw-clear-btn:hover{color:var(--red)}.hw-clear-btn svg{width:14px;height:14px}.wbs-wrap{overflow-x:auto;padding-bottom:8px}.wbs-table{border-collapse:collapse;min-width:440px;width:100%;font-size:11px;table-layout:fixed}.wbs-table th{background:var(--surface2);padding:8px 10px;font-weight:700;color:var(--text3);border:1px solid var(--border);text-align:center;font-family:Montserrat,sans-serif;white-space:nowrap;letter-spacing:.3px;font-size:10px}.wbs-table td{border:1px solid var(--border);padding:0;height:64px}.wbs-table tbody tr+tr td{border-top-width:2px}.wbs-name-cell{padding:10px 14px;font-size:12px;font-weight:600;background:var(--surface);width:30%;min-width:140px;max-width:240px}.wbs-status-cell{padding:8px;text-align:center;white-space:nowrap;background:var(--surface);width:104px;max-width:104px;border-left:3px solid var(--border)}.wbs-bar-cell{background:var(--bg);position:relative;min-width:200px;overflow:hidden}.wbs-bar{position:absolute;top:50%;transform:translateY(-50%);border-radius:4px;height:22px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;padding:0 4px;font-family:Montserrat,sans-serif;opacity:.92;transition:opacity .15s;cursor:default}.wbs-bar:hover{opacity:1}.wbs-bar.order-bar{background:var(--fms-orange);color:#1a1206}.wbs-bar.assembly-bar{background:#f0d264;color:#1f1a08}.wbs-bar.install-bar{background:#7fd4a0;color:#0e2419}.wbs-bar.visit-bar{background:#b79bff;color:#150f2b}.wbs-product-row td{height:40px;border-top-width:1px}.wbs-table td.wbs-name-cell{padding:10px 14px}.wbs-table td.wbs-status-cell{padding:8px}.wbs-table td.wbs-product-name{padding:8px 14px 8px 30px;font-size:11px;font-weight:500;position:relative}.wbs-product-name:before{content:"↳";position:absolute;left:14px;color:var(--text3)}.wbs-product-row .wbs-bar{height:15px;font-size:8px}.wbs-milestone{position:absolute;top:50%;transform:translateY(-50%);font-size:9px;font-weight:700;color:#7fd4a0;white-space:nowrap;pointer-events:none}.wbs-milestone.to-left{transform:translate(-100%,-50%)}.wbs-pending{display:inline-block;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,138,138,.45);color:#ff8a8a;font-size:9px;font-weight:700}.wbs-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--red);z-index:10;opacity:.7}.wbs-month-header{font-size:12px;font-weight:700;color:var(--text);font-family:Montserrat,sans-serif;letter-spacing:-.2px}.wbs-row-odd td{background:#ffffff05}.wbs-row-odd .wbs-name-cell,.wbs-row-odd .wbs-status-cell{background:var(--surface2)}.wbs-table tbody tr:hover td{background:#f2a23c0d}.wbs-stage-track{display:flex;gap:3px;margin-top:6px;justify-content:center}.wbs-stage-track i{width:12px;height:3px;border-radius:2px;background:var(--border2)}.wbs-stage-track i.done{background:var(--fms-orange)}tr[data-stage=PRE_CONTRACT] .wbs-status-cell{border-left-color:var(--warn)}tr[data-stage=CONTRACTED] .wbs-status-cell{border-left-color:var(--blue)}tr[data-stage=ORDER_PLACED] .wbs-status-cell{border-left-color:var(--fms-orange)}tr[data-stage=ASSEMBLY] .wbs-status-cell{border-left-color:#f0d264}tr[data-stage=COMPLETED] .wbs-status-cell{border-left-color:var(--green)}.wbs-range-label{font-size:11px;color:var(--text3);margin-bottom:8px}.wbs-legend{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.wbs-legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text2)}.wbs-legend-dot{width:12px;height:12px;border-radius:3px}.wbs-today-col{background:#ff3b5c0a!important}.wbs-week-end{background:var(--surface2)!important;opacity:.7}.wbs-date-header{font-size:9px;font-weight:500;color:var(--text3);text-align:center;line-height:1.2;padding:4px 2px}.badge{padding:3px 9px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.3px;font-family:Montserrat,sans-serif;white-space:nowrap}.b-visit{background:#f3f3f6;color:var(--text3)}.b-contract{background:var(--blue-lt);color:var(--blue)}.b-sched{background:var(--warn-lt);color:var(--warn)}.b-order{background:#ff661a1f;color:var(--fms-orange)}.b-assembly{background:#f3e8ff;color:#8b5cf6}.b-factory{background:#e8f5ff;color:#08c}.b-done{background:var(--green-lt);color:var(--green)}.b-terminated{background:#fee2e2;color:#dc2626}.welcome{background:linear-gradient(135deg,var(--orange),var(--fms-orange));border-radius:var(--r);padding:22px 26px;margin-bottom:16px;color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #ff661a38}.welcome h2{font-size:19px;font-weight:700;margin-bottom:4px;font-family:Montserrat,sans-serif}.welcome p{font-size:12px;opacity:.85;font-family:Noto Sans KR,sans-serif;font-weight:300}.welcome-icon{font-size:44px;opacity:.35}.welcome-role{display:inline-block;background:#ffffff38;color:#fff;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;letter-spacing:.5px;font-family:Montserrat,sans-serif;margin-top:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.role-admin{background:var(--orange-lt);color:var(--orange)}.role-manager{background:var(--blue-lt);color:var(--blue)}.role-letus{background:#f3e8ff;color:#8b5cf6}.role-worker{background:var(--green-lt);color:var(--green)}.role-pending{background:var(--warn-lt);color:var(--warn)}.login-toggle{text-align:center;margin-top:14px;font-size:12px;color:var(--text3)}.login-toggle a{color:var(--orange);font-weight:600;cursor:pointer;text-decoration:none}.login-toggle a:hover{text-decoration:underline}#registerScreen,#pendingScreen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:none;align-items:center;justify-content:center;z-index:1000;padding:20px}.pending-card{text-align:center;max-width:360px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);padding:40px 28px}.pending-icon{font-size:52px;margin-bottom:16px}.pending-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:8px}.pending-sub{font-size:13px;color:var(--text2);line-height:1.7;margin-bottom:24px}.um-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:10px;padding:16px 18px;display:flex;align-items:center;gap:14px;animation:fadeUp .25s ease both}.um-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.um-info{flex:1;min-width:0}.um-name{font-size:14px;font-weight:600;color:var(--text)}.um-email{font-size:11px;color:var(--text3);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.um-actions{display:flex;gap:6px;flex-shrink:0}.um-btn{padding:7px 14px;border-radius:var(--r-sm);font-size:11px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text2);transition:all .15s;font-family:Noto Sans KR,sans-serif}.um-btn:hover{border-color:var(--border2)}.um-btn.approve{background:var(--green);color:#fff;border-color:var(--green)}.um-btn.approve:hover{background:#15a06b}.um-btn.reject{background:var(--red-lt);color:var(--red);border-color:var(--red)}.um-btn.reject:hover{background:var(--red);color:#fff}.um-btn.role-change{background:var(--blue-lt);color:var(--blue);border-color:var(--blue)}.um-section-title{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);margin:20px 0 10px;display:flex;align-items:center;gap:8px}.um-section-title:after{content:"";flex:1;height:1px;background:var(--border)}.um-empty{text-align:center;padding:32px 0;color:var(--text3);font-size:13px}.um-role-select{padding:5px 8px;border:1px solid var(--border);border-radius:var(--r-sm);font-size:11px;font-family:Noto Sans KR,sans-serif;color:var(--text);background:var(--surface);cursor:pointer}.um-pending-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);display:inline-block;margin-left:4px;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap}.site-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:15px 18px;cursor:pointer;transition:all .15s;box-shadow:var(--shadow);margin-bottom:8px;animation:fadeUp .3s ease both}.site-card:hover{border-color:var(--orange-md);box-shadow:var(--shadow-md);transform:translateY(-1px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.sc-name{font-size:14px;font-weight:600}.sc-addr{font-size:12px;color:var(--text2);margin-bottom:10px;font-weight:300;line-height:1.5}.sc-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.meta-item{display:flex;align-items:center;gap:4px}.meta-k{font-size:10px;color:var(--text3);font-weight:500}.meta-v{font-size:12px;color:var(--text);font-weight:500}.model-pill{padding:3px 9px;border-radius:4px;font-size:10px;font-weight:600;background:var(--surface2);color:var(--text2);border:1px solid var(--border)}.prog-wrap{display:flex;align-items:center;gap:8px;margin-top:10px}.prog-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.prog-fill{height:100%;border-radius:2px;background:var(--orange);transition:width .4s ease}.prog-fill.done{background:var(--green)}.prog-pct{font-size:10px;color:var(--text3);font-family:DM Mono,monospace}.site-create-form{width:100%}.site-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-form-field{margin-bottom:0}.site-form-actions{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.site-progress-form{border-top:1px solid var(--border);padding-top:16px}.site-progress-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}@media (max-width:920px){.site-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.site-form-grid,.site-progress-grid{grid-template-columns:1fr}}.d-hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:22px;margin-bottom:12px;box-shadow:var(--shadow)}.d-name{font-size:22px;font-weight:700;margin-bottom:3px;letter-spacing:-.4px}.d-addr{font-size:13px;color:var(--text2);font-weight:300;margin-bottom:18px}.stepper{display:flex;margin-bottom:18px}.step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative}.step:after{content:"";position:absolute;top:12px;left:50%;width:100%;height:2px;background:var(--border);z-index:0}.step:last-child:after{display:none}.step-dot{width:24px;height:24px;border-radius:50%;border:2px solid var(--border);background:var(--surface);z-index:1;position:relative;display:flex;align-items:center;justify-content:center;transition:all .3s}.step-dot.done{background:var(--green);border-color:var(--green)}.step-dot.done svg,.step-dot.cur svg{display:block}.step-dot.cur{border-color:var(--orange);background:var(--orange-lt)}.step-dot svg{display:none;width:11px;height:11px;color:#fff}.step-dot.cur svg{color:var(--orange)}.step-lbl{font-size:8px;color:var(--text3);text-align:center;margin-top:5px;font-weight:500;line-height:1.3}.step.cur .step-lbl{color:var(--orange);font-weight:700}.step-dt{font-size:8px;color:var(--text3);text-align:center;margin-top:2px;font-family:DM Mono,monospace;opacity:.8}.step.cur .step-dt{color:var(--orange)}.status-row{display:flex;align-items:center;justify-content:space-between;position:relative}.status-change{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text2);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;font-family:Noto Sans KR,sans-serif}.status-change:hover{border-color:var(--orange);color:var(--orange)}.status-change svg{width:12px;height:12px}.status-dd{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-md);z-index:200;min-width:170px;overflow:hidden;display:none}.status-dd.show{display:block}.status-opt{padding:11px 16px;font-size:13px;cursor:pointer;transition:background .1s;font-family:Noto Sans KR,sans-serif;display:flex;align-items:center;gap:8px}.status-opt:hover{background:var(--bg)}.status-opt.sel{color:var(--text3);pointer-events:none}.field-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;margin-bottom:12px;box-shadow:var(--shadow)}.sec-label{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);margin-bottom:10px;display:flex;align-items:center;gap:8px}.sec-label:after{content:"";flex:1;height:1px;background:var(--border)}.field-row{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);gap:12px}.field-row:last-child{border-bottom:none;padding-bottom:0}.field-k{font-size:12px;font-weight:500;color:var(--text2);flex-shrink:0;min-width:88px;padding-top:2px}.field-v{font-size:13px;color:var(--text);font-family:Noto Sans KR,sans-serif;text-align:right;line-height:1.5}.fi{border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 11px;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text);background:var(--bg);outline:none;transition:all .2s;display:none;width:100%;text-align:right}.fi:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.fi.show{display:block}input[type=date].fi{color-scheme:light}.fsel{border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 11px;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text);background:var(--bg);outline:none;cursor:pointer;display:none;width:100%}.fsel:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.fsel.show{display:block}.wdrop{display:none;width:100%}.wdrop.show{display:block}.as-tog{flex:1;padding:8px 4px;text-align:center;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;color:var(--text2);background:var(--bg);border:none;font-family:Noto Sans KR,sans-serif;border-right:1px solid var(--border)}.as-tog:last-child{border-right:none}.as-tog.active{background:var(--orange);color:#fff;font-weight:700}.as-sec-label{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);margin-bottom:12px;display:flex;align-items:center;gap:8px}.as-sec-label:after{content:"";flex:1;height:1px;background:var(--border)}.as-label{font-size:11px;font-weight:600;color:var(--text2);display:block;margin-bottom:5px}.as-prod-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);padding:14px 16px;margin-bottom:10px;position:relative;animation:fadeUp .2s ease both}.as-prod-card:hover{border-color:var(--border2)}.as-prod-num{font-size:9px;font-weight:700;letter-spacing:1px;color:var(--orange);font-family:Montserrat,sans-serif;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.as-prod-del{width:22px;height:22px;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .15s}.as-prod-del:hover{border-color:var(--red);color:var(--red);background:var(--red-lt)}.as-prod-del svg{width:11px;height:11px}.as-tog-wrap{display:flex;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.dp-tabs{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.dp-tab{padding:5px 12px;border:1px solid var(--border);border-radius:20px;font-size:11px;font-weight:600;cursor:pointer;background:var(--bg);color:var(--text2);transition:all .15s;font-family:Montserrat,sans-serif}.dp-tab.active{background:var(--orange);color:#fff;border-color:var(--orange)}.dp-pane{display:none}.dp-pane.active{display:block}.sd-section{margin-bottom:6px}.sd-cat-tabs{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;margin-bottom:12px}.sd-cat-tab{flex:1;padding:8px 4px;text-align:center;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;color:var(--text2);background:var(--bg);border:none;font-family:Montserrat,sans-serif;border-right:1px solid var(--border)}.sd-cat-tab:last-child{border-right:none}.sd-cat-tab.active{background:var(--orange);color:#fff}.sd-doc-list{display:flex;flex-direction:column;gap:6px}.sd-doc-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:all .15s}.sd-doc-item:hover{border-color:var(--orange-md);background:var(--orange-lt)}.sd-doc-item:active{transform:scale(.99)}.sd-doc-ico{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--orange)}.sd-doc-ico svg{width:16px;height:16px}.sd-doc-ico.wire{color:#3b82f6}.sd-doc-ico.fab{color:#8b5cf6}.sd-doc-info{flex:1;min-width:0}.sd-doc-name{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-doc-meta{font-size:10px;color:var(--text3);margin-top:1px;font-family:DM Mono,monospace}.sd-doc-arrow{color:var(--text3);flex-shrink:0}.sd-doc-arrow svg{width:14px;height:14px}.sd-match-badge{display:inline-flex;align-items:center;gap:3px;font-size:8px;font-weight:700;padding:2px 7px;border-radius:10px;background:var(--green-lt);color:var(--green);border:1px solid rgba(24,184,122,.2);font-family:Montserrat,sans-serif;margin-left:6px;vertical-align:middle;letter-spacing:.3px}.sd-empty{text-align:center;padding:24px 0;color:var(--text3);font-size:12px;font-family:Noto Sans KR,sans-serif}.sd-upload-btn{width:100%;margin-top:8px;padding:9px;border:1px dashed var(--border);border-radius:var(--r-sm);background:none;cursor:pointer;font-size:11px;font-weight:600;color:var(--text3);display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s;font-family:Noto Sans KR,sans-serif}.sd-upload-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.sd-upload-btn svg{width:13px;height:13px}.sd-cus-pane,.sd-std-pane{display:none}.sd-cus-pane.active,.sd-std-pane.active{display:block}.site-picker{position:relative}.site-picker-input{width:100%;padding:8px 32px 8px 10px;border:1px solid var(--border);border-radius:var(--r-sm);font-size:12px;font-family:Noto Sans KR,sans-serif;outline:none;background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .15s}.site-picker-input:focus{border-color:var(--orange)}.site-picker-dd{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-md);z-index:60;display:none;margin-top:4px}.site-picker-dd.open{display:block}.site-picker-opt{padding:9px 12px;font-size:12px;cursor:pointer;transition:background .1s;font-family:Noto Sans KR,sans-serif;display:flex;align-items:center;gap:8px}.site-picker-opt:hover{background:var(--orange-lt)}.site-picker-opt .sp-name{font-weight:600;color:var(--text)}.site-picker-opt .sp-addr{font-size:10px;color:var(--text3);margin-left:auto}.tog{display:none;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.tog.show{display:flex}.tog-opt{flex:1;padding:7px 0;text-align:center;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;color:var(--text2);background:var(--bg);border:none;font-family:Noto Sans KR,sans-serif}.tog-opt.active{background:var(--orange);color:#fff;font-weight:600}.acc-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);cursor:pointer}.acc-chev{color:var(--text3);transition:transform .3s,color .2s}.acc-chev.open{transform:rotate(90deg);color:var(--orange)}.acc-chev svg{width:15px;height:15px}.acc-body{overflow:hidden;max-height:0;transition:max-height .4s cubic-bezier(.16,1,.3,1);background:var(--bg);border-radius:0 0 var(--r-sm) var(--r-sm)}.acc-body.open{max-height:500px}.acc-inner{padding:4px 0 4px 14px}.tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:14px}.tab{padding:10px 18px;font-size:13px;font-weight:500;color:var(--text2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s;font-family:Noto Sans KR,sans-serif}.tab:hover{color:var(--orange)}.tab.active{color:var(--orange);border-bottom-color:var(--orange);font-weight:600}.tab-pane{display:none}.tab-pane.active{display:block}.doc-mgr-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:16px;margin-bottom:16px}.doc-mgr-title{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);margin-bottom:12px;display:flex;align-items:center;gap:8px}.doc-mgr-title:after{content:"";flex:1;height:1px;background:var(--border)}.doc-mgr-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px;min-height:32px}.doc-mgr-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 12px;background:var(--orange-lt);border:1px solid var(--orange-md);border-radius:20px;font-size:11px;font-weight:600;color:var(--orange);font-family:Noto Sans KR,sans-serif}.doc-mgr-chip button{width:14px;height:14px;border:none;background:none;cursor:pointer;color:var(--orange);display:flex;align-items:center;justify-content:center;padding:0;opacity:.7}.doc-mgr-chip button:hover{opacity:1}.doc-mgr-chip button svg{width:11px;height:11px}.doc-mgr-empty{font-size:12px;color:var(--text3);font-family:Noto Sans KR,sans-serif;padding:6px 0}.doc-mgr-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.doc-mgr-select{flex:1;min-width:160px;border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 10px;font-size:12px;font-family:Noto Sans KR,sans-serif;color:var(--text);background:var(--bg);outline:none;cursor:pointer}.doc-mgr-badge{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:700;padding:2px 6px;border-radius:20px;background:#eff6ff;color:#3b82f6;border:1px solid #BFDBFE;font-family:Montserrat,sans-serif;margin-left:5px;vertical-align:middle}.doc-cat-tabs{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;margin-bottom:14px}.doc-cat-tab{flex:1;padding:10px 6px;text-align:center;font-size:12px;font-weight:700;font-family:Montserrat,sans-serif;letter-spacing:.5px;cursor:pointer;transition:all .15s;color:var(--text2);background:var(--bg);border:none;display:flex;align-items:center;justify-content:center;gap:6px}.doc-cat-tab:first-child{border-right:1px solid var(--border)}.doc-cat-tab.active{background:var(--orange);color:#fff}.doc-cat-tab svg{width:14px;height:14px;flex-shrink:0}.doc-ico.wire{color:#3b82f6}.doc-ico.wire svg{stroke:#3b82f6}.doc-ico.fab{background:#f3e8ff;color:#8b5cf6}.doc-ico.fab svg{stroke:#8b5cf6}.doc-perm-badge{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:700;letter-spacing:.8px;padding:2px 7px;border-radius:20px;background:var(--orange-lt);color:var(--orange);border:1px solid var(--orange-md);font-family:Montserrat,sans-serif;margin-left:6px;vertical-align:middle}.doc-item{display:flex;align-items:center;gap:11px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:all .15s;margin-bottom:7px;box-shadow:var(--shadow);animation:fadeUp .3s ease both}.doc-item.selected{border-color:var(--orange);background:var(--orange-lt)}.doc-cb{width:16px;height:16px;accent-color:var(--orange);cursor:pointer;flex-shrink:0}.doc-bulk-bar{display:none;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--orange-lt);border:1px solid var(--orange-md);border-radius:var(--r-sm);margin-bottom:10px;animation:fadeUp .2s ease}.doc-bulk-bar.show{display:flex}.doc-bulk-count{font-size:12px;font-weight:600;color:var(--orange);font-family:Noto Sans KR,sans-serif}.doc-bulk-actions{display:flex;gap:8px}.doc-item:hover{border-color:var(--orange-md);box-shadow:var(--shadow-md)}.doc-ico{width:38px;height:38px;border-radius:var(--r-sm);background:var(--orange-lt);display:flex;align-items:center;justify-content:center;flex-shrink:0}.doc-ico svg{width:17px;height:17px;color:var(--orange)}.doc-info{flex:1;min-width:0}.doc-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{font-size:10px;color:var(--text3);margin-top:3px;display:flex;gap:10px}.icon-btn{width:30px;height:30px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .15s;flex-shrink:0}.icon-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.icon-btn.del:hover{border-color:var(--red);color:var(--red);background:var(--red-lt)}.icon-btn svg{width:13px;height:13px}.perm-banner{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--blue-lt);border:1px solid #C8D8FF;border-radius:var(--r-sm);margin-bottom:14px}.perm-banner svg{width:14px;height:14px;color:var(--blue);flex-shrink:0}.perm-banner p{font-size:12px;color:#2260cc;font-family:Noto Sans KR,sans-serif;line-height:1.5}.log-item{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;cursor:pointer;transition:all .15s;margin-bottom:6px;box-shadow:var(--shadow);animation:fadeUp .25s ease both}.log-item:hover{border-color:var(--orange-md);box-shadow:var(--shadow-md)}.log-time-col{width:64px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:11px 6px;background:var(--bg);border-right:1px solid var(--border)}.log-t{font-family:DM Mono,monospace;font-size:12px;font-weight:500;color:var(--text)}.log-d{font-family:DM Mono,monospace;font-size:9px;color:var(--text3);margin-top:2px}.log-body{flex:1;padding:11px 14px;min-width:0}.log-top{display:flex;align-items:center;gap:7px;margin-bottom:3px;flex-wrap:wrap}.log-name{font-size:13px;font-weight:600}.role-b{padding:2px 7px;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.4px;font-family:Montserrat,sans-serif}.role-b.admin{background:var(--orange-lt);color:var(--orange)}.role-b.manager{background:var(--blue-lt);color:var(--blue)}.role-b.letus{background:#f3e8ff;color:#8b5cf6}.role-b.worker{background:var(--surface2);color:var(--text3);border:1px solid var(--border)}.log-site{font-size:12px;color:var(--text2);font-family:Noto Sans KR,sans-serif;font-weight:300}.log-acc{font-size:10px;color:var(--text3);font-family:DM Mono,monospace;margin-top:2px}.log-arr{display:flex;align-items:center;padding:0 12px;color:var(--text3);flex-shrink:0}.log-arr svg{width:14px;height:14px}.date-divider{display:flex;align-items:center;gap:10px;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);padding:12px 0 7px}.date-divider:after{content:"";flex:1;height:1px;background:var(--border)}.audit-item{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;margin-bottom:6px;box-shadow:var(--shadow);animation:fadeUp .25s ease both}.audit-icon-col{width:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:12px 0}.audit-icon-col.create{background:#e6f9f2}.audit-icon-col.update{background:var(--blue-lt)}.audit-icon-col.delete{background:var(--red-lt)}.audit-icon-col.login{background:var(--warn-lt)}.audit-icon-col.status{background:#f3e8ff}.audit-icon-col svg{width:16px;height:16px}.audit-icon-col.create svg{color:var(--green)}.audit-icon-col.update svg{color:var(--blue)}.audit-icon-col.delete svg{color:var(--red)}.audit-icon-col.login svg{color:var(--warn)}.audit-icon-col.status svg{color:#8b5cf6}.audit-body{flex:1;padding:11px 14px;min-width:0}.audit-top{display:flex;align-items:center;gap:7px;margin-bottom:3px;flex-wrap:wrap}.audit-action{font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px;font-family:Montserrat,sans-serif;letter-spacing:.3px}.audit-action.create{background:#e6f9f2;color:var(--green)}.audit-action.update{background:var(--blue-lt);color:var(--blue)}.audit-action.delete{background:var(--red-lt);color:var(--red)}.audit-action.login{background:var(--warn-lt);color:var(--warn)}.audit-action.status{background:#f3e8ff;color:#8b5cf6}.audit-desc{font-size:12px;color:var(--text2);font-family:Noto Sans KR,sans-serif;font-weight:300;line-height:1.5}.audit-meta{font-size:10px;color:var(--text3);font-family:DM Mono,monospace;margin-top:3px}.audit-time-col{width:64px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:11px 6px;background:var(--bg);border-left:1px solid var(--border)}.live-badge{display:inline-flex;align-items:center;gap:5px;background:var(--green-lt);color:var(--green);border:1px solid rgba(24,184,122,.25);border-radius:20px;padding:3px 10px;font-size:10px;font-weight:700;font-family:Montserrat,sans-serif;letter-spacing:.4px}.live-pulse{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse 1.5s infinite}.log-new-item{animation:logSlideIn .4s cubic-bezier(.16,1,.3,1) both;border-left:3px solid var(--green)}@keyframes logSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.fms-logo-circle{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#fff,#ffffffbf);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #00000026;flex-shrink:0}.fms-logo-circle span{font-family:Montserrat,sans-serif;font-weight:800;font-size:13px;color:var(--orange);letter-spacing:-.5px}.fms-logo-wrap{display:flex;align-items:center;gap:13px}.sb-logo-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--orange),var(--fms-orange));display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px #ff661a59}.sb-logo-circle span{font-family:Montserrat,sans-serif;font-weight:800;font-size:11px;color:#fff;letter-spacing:-.5px}#loginScreen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.login-card{width:100%;max-width:390px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);overflow:hidden;animation:fadeUp .5s cubic-bezier(.16,1,.3,1) both}.login-top{background:linear-gradient(135deg,var(--orange),var(--fms-orange));padding:28px 28px 24px;color:#fff}.login-logo-name{font-family:Montserrat,sans-serif;font-size:20px;font-weight:700;margin-bottom:3px}.login-logo-sub{font-size:11px;opacity:.85}.login-body{padding:24px 28px 28px}.login-sub{font-size:14px;font-weight:600;margin-bottom:20px}.form-g{margin-bottom:16px}.form-lbl{font-size:11px;font-weight:600;color:var(--text2);letter-spacing:.3px;margin-bottom:6px;display:block}.input-wrap{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);transition:all .2s;overflow:hidden}.input-wrap:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt);background:var(--surface)}.input-wrap.err{border-color:var(--red);box-shadow:0 0 0 3px var(--red-lt)}.input-wrap input{flex:1;border:none;outline:none;background:transparent;padding:11px 13px;font-family:Noto Sans KR,sans-serif;font-size:14px;color:var(--text)}.input-wrap input::placeholder{color:var(--text3)}.pwd-toggle{padding:0 11px;background:none;border:none;cursor:pointer;color:var(--text3);transition:color .2s}.pwd-toggle:hover{color:var(--orange)}.pwd-toggle svg{width:16px;height:16px;display:block}.err-msg{font-size:11px;color:var(--red);margin-top:5px;display:none;font-family:Noto Sans KR,sans-serif}.err-msg.show{display:block}.login-btn{width:100%;height:46px;background:var(--orange);color:#fff;border:none;border-radius:var(--r-sm);font-family:Montserrat,sans-serif;font-size:13px;font-weight:700;letter-spacing:.8px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;margin-top:4px}.login-btn:hover{background:var(--fms-orange)}.login-btn:active{transform:scale(.98)}.login-btn.loading{pointer-events:none;color:transparent}.login-btn.loading:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' stroke='white' stroke-width='2.5' fill='none' stroke-dasharray='31.4' stroke-dashoffset='10'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='.7s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") center/20px no-repeat}.login-foot{text-align:center;margin-top:18px;font-size:11px;color:var(--text3);font-family:Noto Sans KR,sans-serif;font-weight:300;line-height:1.7}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;z-index:1100;opacity:0;pointer-events:none;transition:opacity .3s}.overlay.show{opacity:1;pointer-events:all}.overlay-card{width:100%;max-width:480px;background:var(--surface);border-radius:16px 16px 0 0;padding:26px 26px 42px;transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}.overlay.show .overlay-card{transform:translateY(0)}.ov-handle{width:36px;height:4px;background:var(--border2);border-radius:2px;margin:0 auto 22px}.ov-title{font-size:16px;font-weight:700;margin-bottom:6px}.ov-sub{font-size:13px;color:var(--text2);font-family:Noto Sans KR,sans-serif;font-weight:300;margin-bottom:20px;line-height:1.6}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface);z-index:500;display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1)}.viewer.open{transform:translate(0)}.viewer-tb{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--border);flex-shrink:0;gap:10px}.viewer-title{flex:1;font-size:13px;font-weight:500;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v-btn{width:34px;height:34px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text2);transition:all .15s}.v-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.v-btn svg{width:14px;height:14px}.viewer-body{flex:1;background:#eee;position:relative;overflow:hidden}.viewer-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#eee;z-index:10}.viewer-loading.hide{display:none}.load-track{width:160px;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.load-fill{height:100%;background:var(--orange);border-radius:2px;width:0;transition:width .2s ease}.load-pct{font-size:12px;color:var(--text3);font-family:DM Mono,monospace}.viewer-frame{width:100%;height:100%;border:none;display:none}.viewer-frame.show{display:block}.zoom-bar{position:absolute;bottom:18px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:7px 12px;box-shadow:var(--shadow-md)}.zoom-lbl{font-size:12px;color:var(--text2);min-width:40px;text-align:center;font-family:DM Mono,monospace}.upload-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;z-index:400;opacity:0;pointer-events:none;transition:opacity .3s}.upload-sheet.show{opacity:1;pointer-events:all}.upload-card{width:100%;max-width:480px;background:var(--surface);border-radius:16px 16px 0 0;padding:26px 26px 42px;transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}.upload-sheet.show .upload-card{transform:translateY(0)}.drop-zone{border:2px dashed var(--border2);border-radius:var(--r);padding:28px 16px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:16px}.drop-zone:hover{border-color:var(--orange);background:var(--orange-lt)}.drop-zone svg{width:28px;height:28px;color:var(--text3);margin-bottom:10px}.drop-zone p{font-size:13px;color:var(--text2);font-family:Noto Sans KR,sans-serif;font-weight:300;line-height:1.6}.drop-zone input{display:none}.fab{position:fixed;right:22px;bottom:84px;width:50px;height:50px;background:var(--orange);color:#fff;border:none;border-radius:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px #ff661a52;transition:transform .2s,background .2s;z-index:90}@media (min-width:661px){.fab{bottom:32px}}.fab:hover{transform:scale(1.06);background:var(--fms-orange)}.fab svg{width:21px;height:21px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(10px);background:var(--text);color:#fff;padding:11px 18px;border-radius:var(--r-sm);font-size:13px;font-family:Noto Sans KR,sans-serif;white-space:nowrap;z-index:9999;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:var(--shadow-md)}#toast.show{opacity:1;transform:translate(-50%) translateY(0)}@media (max-width:660px){.sidebar{display:none}.main-area{padding-bottom:0}.bottom-nav{display:flex!important}.pg{padding:16px 16px 140px}}@media (min-width:661px){.bottom-nav{display:none!important}.pg{padding-bottom:60px}}@media (min-width:1024px){.sidebar{width:228px}}@media (min-width:1400px){.sidebar{width:240px}}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:58px;background:var(--surface);border-top:1px solid var(--border);z-index:100}.bn-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;color:var(--text3);transition:color .2s}.bn-item.active{color:var(--orange)}.bn-item svg{width:20px;height:20px}.bn-label{font-size:9px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.more-drawer-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;-webkit-tap-highlight-color:transparent}.more-drawer-overlay.show{display:block}.more-drawer{position:fixed;bottom:58px;left:0;right:0;background:var(--surface);border-radius:18px 18px 0 0;padding:0 12px 20px;transform:translateY(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:201;max-height:70vh;overflow-y:auto}.more-drawer.show{transform:translateY(0)}.more-drawer-handle{width:40px;height:4px;background:var(--border);border-radius:2px;margin:10px auto 14px}.md-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.md-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 8px;border-radius:var(--r);cursor:pointer;color:var(--text2);font-size:12px;font-weight:600;transition:background .15s,color .15s}.md-item:active{background:var(--bg);color:var(--orange)}.md-item svg{width:22px;height:22px;stroke:currentColor}.md-item.admin-md{display:none}.survey-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin-bottom:12px;box-shadow:var(--shadow);overflow:hidden}.survey-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.survey-header:hover{background:var(--bg)}.survey-header-left{display:flex;align-items:center;gap:10px}.survey-header-icon{width:32px;height:32px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.shi-photo{background:#ff661a1f}.shi-scan{background:#eef3ff}.shi-render{background:#e6f9f2}.survey-header-icon svg{width:16px;height:16px}.shi-photo svg{color:var(--orange)}.shi-scan svg{color:var(--blue)}.shi-render svg{color:var(--green)}.survey-header-title{font-size:13px;font-weight:600;color:var(--text)}.survey-header-count{font-size:11px;color:var(--text3);margin-left:3px}.survey-chev{color:var(--text3);transition:transform .3s}.survey-chev.open{transform:rotate(180deg)}.survey-chev svg{width:16px;height:16px}.survey-body{max-height:0;overflow:hidden;transition:max-height .45s cubic-bezier(.16,1,.3,1)}.survey-body.open{max-height:3000px}.survey-body-inner{padding:0 18px 18px}.survey-divider{height:1px;background:var(--border);margin:0 0 14px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}@media (min-width:600px){.photo-grid{grid-template-columns:repeat(4,1fr)}}.photo-cell{position:relative;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;cursor:pointer;background:var(--bg);border:1px solid var(--border)}.photo-cell img{width:100%;height:100%;object-fit:cover;transition:transform .2s;display:block}.photo-cell:hover img{transform:scale(1.05)}.photo-add-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:2px dashed var(--border2);background:transparent;cursor:pointer;transition:all .15s;aspect-ratio:1;border-radius:var(--r-sm)}.photo-add-cell:hover{border-color:var(--orange);background:var(--orange-lt)}.photo-add-cell svg{width:20px;height:20px;color:var(--text3);transition:color .15s}.photo-add-cell:hover svg{color:var(--orange)}.photo-add-cell span{font-size:9px;font-weight:600;color:var(--text3);letter-spacing:.5px;text-transform:uppercase}.photo-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000a6);padding:5px 6px;opacity:0;transition:opacity .2s}.photo-cell:hover .photo-overlay{opacity:1}.photo-memo-preview{font-size:9px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-del-btn{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;background:#0000008c;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;z-index:2}.photo-cell:hover .photo-del-btn{opacity:1}.photo-del-btn svg{width:10px;height:10px;color:#fff}.photo-date-label{position:absolute;top:4px;left:4px;background:#00000080;color:#fff;font-size:8px;padding:2px 5px;border-radius:3px;font-family:DM Mono,monospace;opacity:0;transition:opacity .15s}.photo-cell:hover .photo-date-label{opacity:1}.sfi{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);margin-bottom:7px;animation:fadeUp .25s ease both}.sfi:hover{border-color:var(--border2);background:var(--surface2)}.sfi-ico{width:34px;height:34px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sfi-ico.scan{background:var(--blue-lt)}.sfi-ico.rnd{background:var(--green-lt)}.sfi-ico.pdf2{background:#ff661a1f}.sfi-ico svg{width:15px;height:15px}.sfi-ico.scan svg{color:var(--blue)}.sfi-ico.rnd svg{color:var(--green)}.sfi-ico.pdf2 svg{color:var(--orange)}.sfi-info{flex:1;min-width:0}.sfi-name{font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sfi-meta{font-size:10px;color:var(--text3);margin-top:2px;display:flex;gap:8px;align-items:center}.sfi-tag{font-size:8px;font-weight:700;padding:1px 6px;border-radius:3px;letter-spacing:.4px;font-family:Montserrat,sans-serif}.sfi-tag.dm{background:var(--blue-lt);color:var(--blue)}.sfi-tag.rnd{background:var(--green-lt);color:var(--green)}.sfi-tag.pdf2{background:#ff661a1f;color:var(--orange)}.sfi-acts{display:flex;gap:5px;flex-shrink:0}.sfi-btn{width:28px;height:28px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .15s}.sfi-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.sfi-btn.del:hover{border-color:var(--red);color:var(--red);background:var(--red-lt)}.sfi-btn svg{width:12px;height:12px}.survey-add-row{display:flex;gap:8px;margin-top:4px}.survey-add-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 0;border:1.5px dashed var(--border2);border-radius:var(--r-sm);background:transparent;color:var(--text2);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;font-family:Noto Sans KR,sans-serif}.survey-add-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.survey-add-btn svg{width:14px;height:14px}.upi{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.upi:last-child{border-bottom:none}.upi-name{flex:1;font-size:11px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.upi-bw{width:72px;flex-shrink:0}.upi-track{height:3px;background:var(--border);border-radius:2px;overflow:hidden}.upi-fill{height:100%;border-radius:2px;background:var(--orange);transition:width .12s linear}.upi-pct{font-size:9px;color:var(--text3);font-family:DM Mono,monospace;text-align:right;margin-top:1px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000ed;z-index:800;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .22s}.lightbox.open{opacity:1;pointer-events:all}.lb-bar{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;flex-shrink:0}.lb-title{flex:1;font-size:12px;color:#fff9;text-align:center;font-family:Noto Sans KR,sans-serif;font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 40px}.lb-x{width:34px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-sm);background:#ffffff14;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .15s;flex-shrink:0}.lb-x:hover{background:#fff3}.lb-x svg{width:16px;height:16px}.lb-stage{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;touch-action:pan-y}.lb-img{max-width:calc(100% - 90px);max-height:100%;border-radius:var(--r-sm);object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;transition:opacity .2s}.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#ffffff1a;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .15s}.lb-arrow:hover{background:#ffffff47}.lb-arrow.lp{left:10px}.lb-arrow.rp{right:10px}.lb-arrow svg{width:18px;height:18px}.lb-foot{padding:12px 20px 22px;flex-shrink:0;text-align:center}.lb-memo-txt{font-size:13px;color:#fffc;font-family:Noto Sans KR,sans-serif;font-weight:300;min-height:18px}.lb-counter{font-size:10px;color:#ffffff59;margin-top:5px;font-family:DM Mono,monospace}.bottom-sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:850;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s}.bottom-sheet.open{opacity:1;pointer-events:all}.bs-card{width:100%;max-width:500px;background:var(--surface);border-radius:16px 16px 0 0;padding:24px 24px 44px;transform:translateY(100%);transition:transform .38s cubic-bezier(.16,1,.3,1)}.bottom-sheet.open .bs-card{transform:translateY(0)}.bs-handle{width:36px;height:4px;background:var(--border2);border-radius:2px;margin:0 auto 20px}.bs-title{font-size:15px;font-weight:700;margin-bottom:6px}.bs-sub{font-size:12px;color:var(--text2);font-family:Noto Sans KR,sans-serif;font-weight:300;margin-bottom:16px;line-height:1.6}.bs-textarea{width:100%;height:80px;border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 12px;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text);background:var(--bg);outline:none;resize:none;transition:all .2s}.bs-textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.del-confirm{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:900;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .2s}.del-confirm.open{opacity:1;pointer-events:all}.del-box{background:var(--surface);border-radius:var(--r);padding:22px;max-width:300px;width:100%;box-shadow:var(--shadow-md);transform:scale(.95);transition:transform .2s}.del-confirm.open .del-box{transform:scale(1)}.del-ttl{font-size:14px;font-weight:700;margin-bottom:7px}.del-sub{font-size:12px;color:var(--text2);font-family:Noto Sans KR,sans-serif;line-height:1.6;margin-bottom:18px}.del-btns{display:flex;gap:8px}.del-cancel{flex:1;height:38px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);color:var(--text2);font-size:12px;cursor:pointer;font-family:Noto Sans KR,sans-serif}.del-ok{flex:1;height:38px;border:none;border-radius:var(--r-sm);background:var(--red);color:#fff;font-size:12px;font-weight:600;cursor:pointer;font-family:Noto Sans KR,sans-serif}.cl-site-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;cursor:pointer;transition:all .15s;box-shadow:var(--shadow);margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;animation:fadeUp .25s ease both}.cl-site-card:hover{border-color:var(--orange-md);box-shadow:var(--shadow-md);transform:translateY(-1px)}.cl-site-left{flex:1;min-width:0}.cl-site-name{font-size:14px;font-weight:600;margin-bottom:3px}.cl-site-addr{font-size:11px;color:var(--text3);font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cl-site-meta{display:flex;gap:8px;margin-top:6px;align-items:center;flex-wrap:wrap}.cl-count{font-size:10px;font-weight:600;color:var(--text3);display:flex;align-items:center;gap:4px}.cl-count svg{width:11px;height:11px}.cl-count.has{color:var(--orange)}.cl-arrow{color:var(--text3);flex-shrink:0}.cl-arrow svg{width:16px;height:16px}.cl-header-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:18px 20px;margin-bottom:14px;box-shadow:var(--shadow)}.cl-hd-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.cl-hd-name{font-size:18px;font-weight:700;letter-spacing:-.3px}.cl-hd-addr{font-size:12px;color:var(--text3);font-weight:300;margin-top:2px}.cl-meta-row{display:flex;gap:10px;flex-wrap:wrap}.cl-product{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin-bottom:12px;box-shadow:var(--shadow);overflow:hidden}.cl-prod-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--bg)}.cl-prod-num{width:24px;height:24px;background:var(--orange);color:#fff;border-radius:6px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:Montserrat,sans-serif;flex-shrink:0}.cl-prod-title{font-size:13px;font-weight:600;flex:1;margin:0 10px}.cl-prod-loc{font-size:11px;color:var(--text3);font-family:Noto Sans KR,sans-serif;font-weight:300}.cl-prod-actions{display:flex;gap:6px;align-items:center}.cl-prod-body{padding:0}.cl-table{width:100%;border-collapse:collapse}.cl-table th{background:var(--bg);padding:9px 14px;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text3);border-bottom:1px solid var(--border);text-align:left}.cl-table th:last-child{text-align:right;min-width:160px}.cl-table td{padding:11px 14px;border-bottom:1px solid var(--border);vertical-align:top}.cl-table tr:last-child td{border-bottom:none}.cl-table tr:hover td{background:var(--bg)}.cl-num-cell{width:36px;text-align:center;font-size:12px;font-weight:700;color:var(--text3);font-family:DM Mono,monospace}.cl-q-cell{font-size:13px;color:var(--text);font-family:Noto Sans KR,sans-serif;font-weight:300;line-height:1.6}.cl-q-label{font-size:11px;font-weight:600;color:var(--text2);margin-bottom:3px}.cl-ans-cell{text-align:right;min-width:180px}.cl-yn{display:flex;gap:6px;justify-content:flex-end}.cl-yn-btn{padding:5px 14px;border:1px solid var(--border);border-radius:20px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;background:var(--bg);color:var(--text3);font-family:Montserrat,sans-serif}.cl-yn-btn:hover{border-color:var(--orange);color:var(--orange)}.cl-yn-btn.yes.sel{background:var(--green);border-color:var(--green);color:#fff}.cl-yn-btn.no.sel{background:var(--red);border-color:var(--red);color:#fff}.cl-text-inp{border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;font-family:Noto Sans KR,sans-serif;font-size:12px;color:var(--text);background:var(--bg);outline:none;transition:all .2s;text-align:right;width:100%;max-width:200px}.cl-text-inp:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.cl-dim-inp{display:flex;align-items:center;gap:4px;justify-content:flex-end}.cl-dim-inp input{width:70px;border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 8px;font-family:DM Mono,monospace;font-size:12px;color:var(--text);background:var(--bg);outline:none;transition:all .2s;text-align:center}.cl-dim-inp input:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.cl-dim-inp span{font-size:11px;color:var(--text3);white-space:nowrap}.cl-multi-inp{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;justify-items:end}.cl-multi-inp input{width:56px;border:1px solid var(--border);border-radius:var(--r-sm);padding:5px 6px;font-family:DM Mono,monospace;font-size:11px;color:var(--text);background:var(--bg);outline:none;text-align:center;transition:all .2s}.cl-multi-inp input:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.cl-note-inp{width:100%;max-width:260px;border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 10px;font-family:Noto Sans KR,sans-serif;font-size:12px;color:var(--text);background:var(--bg);outline:none;resize:none;transition:all .2s}.cl-note-inp:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.cl-loc-row{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--bg);border-bottom:1px solid var(--border)}.cl-loc-label{font-size:11px;font-weight:600;color:var(--text2)}.cl-loc-inp{flex:1;border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;font-size:12px;font-family:Noto Sans KR,sans-serif;color:var(--text);background:var(--surface);outline:none;transition:all .2s}.cl-loc-inp:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.cl-progress{display:flex;align-items:center;gap:10px;padding:10px 18px;background:var(--bg);border-bottom:1px solid var(--border)}.cl-prog-bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.cl-prog-fill{height:100%;border-radius:2px;background:var(--orange);transition:width .4s ease}.cl-prog-fill.done{background:var(--green)}.cl-prog-txt{font-size:10px;font-family:DM Mono,monospace;color:var(--text3);white-space:nowrap}.cl-template-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);margin-bottom:6px}.cl-template-item input[type=text]{flex:1;border:none;background:transparent;font-size:13px;font-family:Noto Sans KR,sans-serif;color:var(--text);outline:none}.cl-template-type{padding:3px 8px;border:1px solid var(--border);border-radius:4px;font-size:10px;font-weight:600;color:var(--text3);background:var(--surface);cursor:pointer;font-family:Montserrat,sans-serif;white-space:nowrap}.cl-template-type.active{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.cl-done-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.3px;font-family:Montserrat,sans-serif}.cl-done-badge.full{background:var(--green-lt);color:var(--green)}.cl-done-badge.partial{background:var(--warn-lt);color:var(--warn)}.cl-done-badge.empty{background:var(--surface2);color:var(--text3);border:1px solid var(--border)}.tpl-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.tpl-row input{flex:1;border:1px solid var(--border);border-radius:var(--r-sm);padding:9px 12px;font-size:13px;font-family:Noto Sans KR,sans-serif;color:var(--text);background:var(--bg);outline:none;transition:all .2s}.tpl-row input:focus{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-lt)}.tpl-type-sel{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:6px}.tpl-type-btn{padding:5px 10px;border:1px solid var(--border);border-radius:20px;font-size:10px;font-weight:600;cursor:pointer;background:var(--bg);color:var(--text3);font-family:Montserrat,sans-serif;transition:all .15s}.tpl-type-btn:hover{border-color:var(--orange);color:var(--orange)}.tpl-type-btn.active{background:var(--orange);color:#fff;border-color:var(--orange)}.pencil-fab{position:fixed;bottom:88px;right:18px;width:48px;height:48px;background:var(--orange);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #ff661a66;z-index:300;transition:transform .15s,box-shadow .15s}.pencil-fab:hover{transform:scale(1.08);box-shadow:0 6px 22px #ff661a80}.pencil-fab svg{width:20px;height:20px;color:#fff}@media (min-width:661px){.pencil-fab{bottom:24px;right:80px}}.canvas-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:700;display:none;flex-direction:column}.canvas-overlay.open{display:flex}.canvas-toolbar{height:56px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;padding:0 14px;flex-shrink:0;box-shadow:var(--shadow)}.ct-title{font-size:13px;font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-sep{width:1px;height:28px;background:var(--border);flex-shrink:0}.ct-tool{width:36px;height:36px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text2);transition:all .15s;flex-shrink:0;position:relative}.ct-tool:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-lt)}.ct-tool.active{background:var(--orange);border-color:var(--orange);color:#fff}.ct-tool svg{width:16px;height:16px}.ct-tool .ct-tooltip{position:absolute;bottom:-28px;left:50%;transform:translate(-50%);background:var(--text);color:#fff;font-size:9px;padding:3px 7px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;z-index:10}.ct-tool:hover .ct-tooltip{opacity:1}.ct-colors{display:flex;gap:5px;align-items:center}.ct-color{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .1s,border-color .1s;flex-shrink:0}.ct-color:hover{transform:scale(1.15)}.ct-color.active{border-color:var(--text);transform:scale(1.1)}.ct-size{display:flex;gap:4px;align-items:center}.ct-sz{width:28px;height:28px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.ct-sz:hover{border-color:var(--orange)}.ct-sz.active{background:var(--orange);border-color:var(--orange)}.ct-sz span{background:var(--text);border-radius:50%;flex-shrink:0}.ct-sz.active span{background:#fff}.canvas-stage{flex:1;overflow:hidden;position:relative;background:var(--bg);touch-action:none}.canvas-stage canvas{position:absolute;top:0;left:0;touch-action:none}.canvas-bg-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.canvas-mode-bar{display:flex;gap:6px;padding:10px 14px;background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;overflow-x:auto}.cm-btn{padding:7px 14px;border:1px solid var(--border);border-radius:20px;background:var(--bg);font-size:11px;font-weight:600;color:var(--text2);cursor:pointer;white-space:nowrap;font-family:Montserrat,sans-serif;transition:all .15s;flex-shrink:0}.cm-btn:hover{border-color:var(--orange);color:var(--orange)}.cm-btn.active{background:var(--orange);border-color:var(--orange);color:#fff}.sig-canvas-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:10px}.sig-canvas-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg)}.sig-canvas-header span{font-size:12px;font-weight:600;color:var(--text2)}.sig-canvas-inner{position:relative;height:140px}.sig-canvas-inner canvas{width:100%;height:100%;touch-action:none;cursor:crosshair}.sig-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.sig-placeholder span{font-size:12px;color:var(--text3);font-family:Noto Sans KR,sans-serif;font-weight:300}.sketch-thumb{border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--border);cursor:pointer;transition:all .15s;background:var(--bg);display:flex;align-items:center;justify-content:center;aspect-ratio:4/3}.sketch-thumb:hover{border-color:var(--orange)}.sketch-thumb img{width:100%;height:100%;object-fit:cover}.sketch-thumb-empty{flex-direction:column;gap:5px}.sketch-thumb-empty svg{width:20px;height:20px;color:var(--text3)}.sketch-thumb-empty span{font-size:10px;color:var(--text3)}.ct-opacity{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--text3)}.ct-opacity input{width:56px;accent-color:var(--orange)}.ct-opacity-label{padding:4px;background:var(--bg);cursor:pointer;font-size:9px;font-weight:600;color:var(--text3);transition:all .15s;font-family:Montserrat,sans-serif;white-space:nowrap;flex-shrink:0}.cl-ans-wrap{display:flex;align-items:center;gap:6px;justify-content:flex-end;flex-wrap:wrap}.del-site-btn{display:flex;align-items:center;gap:6px;background:var(--red-lt);color:var(--red);border:1px solid var(--red);border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;margin:16px 0 0;transition:all .15s}.del-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:9999;display:none;align-items:center;justify-content:center}.del-modal.open{display:flex}.del-modal-box{background:var(--surface);border-radius:16px;padding:28px 24px;width:320px;box-shadow:var(--shadow-md)}.del-modal-title{font-size:17px;font-weight:700;color:var(--text);margin-bottom:8px}.del-modal-msg{font-size:13px;color:var(--text2);line-height:1.6;margin-bottom:20px}.del-modal-btns{display:flex;gap:10px}.del-modal-btns button{flex:1;padding:11px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:none}.del-cancel{background:var(--surface2);color:var(--text)}.del-confirm{background:var(--red);color:#fff}.profile-form{background:var(--surface);border-radius:var(--r);padding:20px;border:1px solid var(--border);margin-bottom:12px}.profile-form-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}.profile-input{width:100%;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;color:var(--text);background:var(--bg);box-sizing:border-box;font-family:Noto Sans KR,sans-serif;transition:border .15s}.profile-save-btn{width:100%;padding:12px;background:var(--orange);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;font-family:Noto Sans KR,sans-serif;transition:opacity .15s}.profile-save-btn:hover{opacity:.88}.profile-avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--orange),var(--fms-orange));display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;margin:0 auto 16px;letter-spacing:-1px}.del-site-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:var(--red-lt);border-radius:6px;color:var(--red);cursor:pointer;flex-shrink:0}.del-site-btn:hover{background:var(--red);color:#fff}.del-site-btn svg{width:13px;height:13px}.stat{cursor:pointer;transition:transform .15s,box-shadow .15s}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.profile-hero{display:flex;align-items:center;gap:16px;background:var(--surface);border-radius:var(--r);padding:20px;margin-bottom:20px;box-shadow:var(--shadow)}.profile-hero-avatar{width:56px;height:56px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;flex-shrink:0}.profile-hero-name{font-size:18px;font-weight:700;color:var(--text)}.profile-hero-role{font-size:12px;margin-top:4px;padding:2px 10px;border-radius:10px;display:inline-block;font-weight:600;font-family:Montserrat,sans-serif;letter-spacing:.3px}.profile-section{background:var(--surface);border-radius:var(--r);padding:20px;margin-bottom:16px;box-shadow:var(--shadow)}.profile-section-title{font-size:11px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:16px}.profile-field{margin-bottom:14px}.profile-label{font-size:12px;font-weight:600;color:var(--text2);margin-bottom:6px}.profile-input{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:14px;color:var(--text);background:var(--bg);box-sizing:border-box;transition:border-color .15s}.profile-input:focus{outline:none;border-color:var(--orange)}.profile-save-btn{width:100%;padding:14px;background:var(--orange);color:#fff;border:none;border-radius:var(--r);font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s}.profile-save-btn:disabled{opacity:.35;cursor:not-allowed}.profile-save-btn:not(:disabled):hover{opacity:.9}.profile-saved-msg{text-align:center;font-size:13px;color:var(--green);margin-top:10px;min-height:20px;font-weight:600}.profile-section-divider{height:1px;background:var(--border);margin:24px 0}.pw-change-row{display:flex;gap:8px;align-items:flex-end}.pw-change-row .profile-field{flex:1}.pw-change-btn{padding:10px 16px;background:var(--surface);border:1.5px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;color:var(--text2);transition:all .15s;white-space:nowrap;height:44px;font-family:Noto Sans KR,sans-serif}.pw-change-btn:hover{border-color:var(--orange);color:var(--orange)}.pw-msg{font-size:12px;margin-top:6px;min-height:16px;font-weight:500}.pw-msg.ok{color:var(--green)}.pw-msg.err{color:var(--red)}.bulk-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);padding:20px;margin-bottom:20px}.bulk-title{font-size:14px;font-weight:700;margin-bottom:4px}.bulk-sub{font-size:12px;color:var(--text3);margin-bottom:14px;line-height:1.5}.bulk-textarea{width:100%;min-height:100px;padding:12px;border:1.5px solid var(--border);border-radius:8px;font-family:DM Mono,monospace;font-size:12px;color:var(--text);background:var(--bg);resize:vertical;line-height:1.7}.bulk-textarea:focus{outline:none;border-color:var(--orange)}.bulk-textarea::placeholder{color:var(--text3)}.bulk-options{display:flex;gap:12px;align-items:center;margin:12px 0;flex-wrap:wrap}.bulk-options label{font-size:12px;color:var(--text2);font-weight:500}.bulk-pw-input{padding:8px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:13px;width:160px;font-family:DM Mono,monospace;background:var(--bg);color:var(--text)}.bulk-pw-input:focus{outline:none;border-color:var(--orange)}.bulk-role-select{padding:8px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:12px;font-family:Noto Sans KR,sans-serif;background:var(--bg);color:var(--text);cursor:pointer}.bulk-actions{display:flex;gap:8px;align-items:center}.bulk-result{margin-top:12px;font-size:12px;line-height:1.8;max-height:120px;overflow-y:auto;padding:8px 10px;background:var(--bg);border-radius:6px;display:none}.bulk-result .ok{color:var(--green)}.bulk-result .fail{color:var(--red)}.sd-sub-label{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text3);margin-bottom:8px}.cp-tag{position:absolute;top:6px;left:6px;font-size:9px;font-weight:700;padding:2px 7px;border-radius:10px;letter-spacing:.3px;pointer-events:none}.cp-tag-defect{background:var(--red);color:#fff}.cp-tag-install{background:var(--blue);color:#fff}.cp-tag-other{background:var(--text3);color:#fff}.cp-tag-btn{padding:7px 14px;border-radius:var(--r-sm);border:1px solid var(--border2);background:var(--surface);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;color:var(--text2);font-family:Noto Sans KR,sans-serif}.cp-tag-btn.active{background:var(--orange);color:#fff;border-color:var(--orange)}.cp-tag-btn:hover:not(.active){border-color:var(--border2);background:var(--bg)}.fb-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;margin-bottom:10px;box-shadow:var(--shadow)}.fb-cat{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px;letter-spacing:.3px;margin-right:6px}.fb-cat-improve{background:#eff6ff;color:#3b82f6}.fb-cat-bug{background:var(--red-lt);color:var(--red)}.fb-cat-other{background:var(--surface2);color:var(--text3)}.fb-status{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px}.fb-status-new{background:#fff7ed;color:#f97316}.fb-status-review{background:#eff6ff;color:#3b82f6}.fb-status-done{background:#f0fdf4;color:#22c55e}.as-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;margin-bottom:10px;box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .15s}.as-card:hover{box-shadow:var(--shadow-md)}.as-type{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px;letter-spacing:.3px}.as-type-elec{background:#eff6ff;color:#3b82f6}.as-type-mech{background:var(--warn-lt);color:var(--warn)}.as-type-noise{background:#f3e8ff;color:#8b5cf6}.as-type-etc{background:var(--surface2);color:var(--text3)}.as-st{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px}.as-st-open{background:#fff7ed;color:#f97316}.as-st-progress{background:#eff6ff;color:#3b82f6}.as-st-done{background:#f0fdf4;color:#22c55e}.as-site-name{font-size:14px;font-weight:700;color:var(--text);margin-bottom:2px}.as-content-preview{font-size:12px;color:var(--text2);margin:6px 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.as-meta{font-size:11px;color:var(--text3);display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}.as-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:900;display:none;align-items:center;justify-content:center;padding:20px}.as-modal-overlay.show{display:flex}.as-modal{background:var(--surface);border-radius:14px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:24px;box-shadow:var(--shadow-md)}.as-modal-title{font-size:16px;font-weight:700;color:var(--text);margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}.as-field-label{font-size:11px;font-weight:600;color:var(--text3);margin-bottom:4px;margin-top:12px}.as-field-val{font-size:13px;color:var(--text);line-height:1.6}.as-modal select,.as-modal textarea,.as-modal input[type=text],.as-modal input[type=date]{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--r-sm);padding:9px 11px;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text);background:var(--bg);outline:none}.as-modal textarea{resize:vertical;min-height:80px}.as-submit-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}.voc-fab{position:fixed;left:22px;bottom:84px;width:50px;height:50px;background:var(--blue);color:#fff;border:none;border-radius:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px #3b7dff59;transition:transform .2s,background .2s;z-index:90}@media (min-width:661px){.voc-fab{bottom:32px}}.voc-fab:hover{transform:scale(1.06);background:#2563eb}.voc-fab svg{width:22px;height:22px}.voc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1200;display:none;align-items:flex-end;justify-content:center}.voc-overlay.show{display:flex}.voc-modal{width:100%;max-width:520px;background:var(--surface);border-radius:16px 16px 0 0;padding:24px 24px 40px;max-height:92vh;overflow-y:auto;transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}.voc-overlay.show .voc-modal{transform:translateY(0)}@media (min-width:561px){.voc-overlay{align-items:center}.voc-modal{border-radius:16px;max-height:88vh}}.voc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.voc-title{font-size:16px;font-weight:700;color:var(--text)}.voc-close{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .15s}.voc-close:hover{border-color:var(--red);color:var(--red);background:var(--red-lt)}.voc-close svg{width:14px;height:14px}.voc-label{font-size:11px;font-weight:600;color:var(--text2);display:block;margin-bottom:6px}.voc-select,.voc-textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 12px;font-family:Noto Sans KR,sans-serif;font-size:13px;color:var(--text);background:var(--bg);outline:none;transition:border-color .2s,box-shadow .2s}.voc-select:focus,.voc-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-lt)}.voc-textarea{resize:vertical;min-height:100px}.voc-group{margin-bottom:14px}.voc-radio-wrap{display:flex;gap:8px;flex-wrap:wrap}.voc-radio{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:20px;cursor:pointer;font-size:12px;font-weight:500;color:var(--text2);transition:all .15s;background:var(--bg)}.voc-radio:has(input:checked){border-color:var(--blue);background:var(--blue-lt);color:var(--blue);font-weight:600}.voc-radio input{display:none}.voc-file-label{display:flex;align-items:center;gap:7px;padding:9px 14px;border:1px dashed var(--border2);border-radius:var(--r-sm);cursor:pointer;font-size:12px;color:var(--text3);transition:all .15s;background:var(--bg)}.voc-file-label:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-lt)}.voc-file-label svg{width:15px;height:15px;flex-shrink:0}.voc-preview-wrap{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.voc-preview-item{position:relative;width:72px;height:72px}.voc-preview-item img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--border)}.voc-preview-del{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:var(--red);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1}.voc-device-info{font-size:10px;color:var(--text3);background:var(--surface2);border-radius:var(--r-sm);padding:8px 12px;margin-bottom:14px;line-height:1.7}.voc-submit-btn{width:100%;height:46px;background:var(--blue);color:#fff;border:none;border-radius:var(--r-sm);font-size:14px;font-weight:700;font-family:Noto Sans KR,sans-serif;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;gap:8px}.voc-submit-btn:hover{background:#2563eb}.voc-submit-btn:disabled{background:var(--border2);cursor:not-allowed}.voc-progress{height:3px;background:var(--blue-lt);border-radius:2px;overflow:hidden;margin-bottom:14px;display:none}.voc-progress-bar{height:100%;background:var(--blue);border-radius:2px;transition:width .2s}.pfi-model-tabs{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;margin-bottom:16px}.pfi-model-tab{flex:1;padding:9px 6px;text-align:center;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;color:var(--text2);background:var(--bg);border:none;font-family:Noto Sans KR,sans-serif;border-right:1px solid var(--border)}.pfi-model-tab:last-child{border-right:none}.pfi-model-tab.active{background:var(--orange);color:#fff}.pfi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;margin-bottom:8px;box-shadow:var(--shadow);animation:fadeUp .25s ease both}.pfi-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px;gap:10px}.pfi-card-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.4}.pfi-tags{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:8px}.pfi-tag{font-size:9px;font-weight:700;padding:2px 8px;border-radius:10px;font-family:Montserrat,sans-serif;letter-spacing:.3px;white-space:nowrap}.pfi-model-ceily{background:#eff6ff;color:#3b82f6}.pfi-model-wally{background:#f3e8ff;color:#8b5cf6}.pfi-model-common{background:#f0fdf4;color:#16a34a}.pfi-cat,.pfi-pri-low{background:var(--surface2);color:var(--text3)}.pfi-pri-mid{background:var(--warn-lt);color:var(--warn)}.pfi-pri-high{background:#ff661a1f;color:var(--fms-orange)}.pfi-pri-urg{background:var(--red-lt);color:var(--red)}.pfi-card-desc{font-size:12px;color:var(--text2);line-height:1.6;margin-bottom:8px;white-space:pre-wrap}.pfi-card-footer{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--text3)}.pfi-img-wrap{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.pfi-img-thumb{width:64px;height:64px;object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--border);cursor:pointer;transition:opacity .15s}.pfi-img-thumb:hover{opacity:.85}.pfi-status{font-size:10px;font-weight:700;padding:2px 9px;border-radius:10px;font-family:Montserrat,sans-serif;white-space:nowrap}.pfi-st-new{background:var(--blue-lt);color:var(--blue)}.pfi-st-review{background:var(--warn-lt);color:var(--warn)}.pfi-st-done{background:var(--green-lt);color:var(--green)}.pfi-st-rejected{background:var(--surface2);color:var(--text3)}.pfi-card{cursor:pointer}.pfi-card:hover{border-color:var(--orange-md);box-shadow:var(--shadow-md);transform:translateY(-1px);transition:all .15s}.pfi-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1300;display:none;align-items:center;justify-content:center;padding:20px}.pfi-edit-overlay.show{display:flex}.pfi-edit-modal{background:var(--surface);border-radius:14px;width:100%;max-width:440px;padding:24px;box-shadow:var(--shadow-md);animation:fadeUp .25s ease both}.pfi-edit-title{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.pfi-edit-sub{font-size:11px;color:var(--text3);margin-bottom:20px;line-height:1.5}.pfi-edit-label{font-size:11px;font-weight:600;color:var(--text2);display:block;margin-bottom:6px}.fms-dashboard-app{min-height:100vh;background:#000}.fs-space-manager{display:grid;gap:10px}.fs-space-list{display:grid;gap:8px}.fs-space-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(110px,1fr) auto 28px;gap:8px;align-items:center;padding:9px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2)}.fs-space-row.selected{border-color:var(--fms-orange);box-shadow:0 0 0 1px var(--fms-orange) inset}.fs-space-select{border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.fs-space-select strong,.fs-space-select small{display:block}.fs-space-select small{margin-top:3px;color:var(--text3);font-size:10px}.fs-space-name{min-width:0;border:1px solid var(--border2);border-radius:4px;padding:7px 8px;background:var(--surface);color:var(--text);font:inherit;font-size:11px}.fs-space-products{display:flex;gap:5px}.fs-space-product{border:1px solid var(--border);border-radius:5px;padding:6px 8px;background:var(--surface);color:var(--text3);cursor:pointer}.fs-space-product span{font-size:11px}.fs-space-product small{display:block;font-size:9px}.fs-space-product.selected{border-color:var(--fms-orange);color:var(--fms-orange)}.fs-space-remove{width:24px;height:24px;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--text3);cursor:pointer}.fs-space-add{justify-self:start}@media (max-width:700px){.fs-space-row{grid-template-columns:1fr 28px}.fs-space-name,.fs-space-products{grid-column:1/-1}}.fms-dashboard-app .main-area{min-height:100vh}.fms-dashboard-app .topbar{position:sticky}.fms-dashboard-app .pg{max-width:1280px;margin:0 auto}.backstage-shell{display:flex;align-items:stretch;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(255,102,26,.22),transparent 26rem),radial-gradient(circle at 0% 88%,rgba(245,170,72,.12),transparent 24rem),linear-gradient(135deg,#171316,#0d0c10 58%,#151217);color:#f8f2ea}.backstage-sidebar{display:flex;flex-direction:column;flex:0 0 292px;width:292px;min-width:292px;max-width:292px;height:100vh;padding:18px 14px;border-right:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,#1f1b1ef0,#0c0b0efa),#110f12f5;box-shadow:18px 0 52px #0000004d;color:#f8f2ea;gap:16px;overflow-y:auto;scrollbar-color:rgba(255,177,75,.46) transparent;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.backstage-mobile-menu,.backstage-sidebar-scrim{display:none}.backstage-sidebar::-webkit-scrollbar{width:4px}.backstage-sidebar::-webkit-scrollbar-track{background:transparent}.backstage-sidebar::-webkit-scrollbar-thumb{border-radius:999px;background:#ffb14b6b}.backstage-brand{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;padding:4px 6px 14px}.backstage-brand-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,189,94,.42);border-radius:8px;background:linear-gradient(145deg,#ff661af2,#ffb94dd1),#ff661a;box-shadow:0 16px 34px #ff661a47,inset 0 1px #ffffff5c;color:#140d08;font-family:Outfit,Montserrat,sans-serif;font-size:15px;font-weight:900;letter-spacing:0}.backstage-brand-name{overflow:hidden;color:#fff9f0;font-family:Outfit,Noto Sans KR,sans-serif;font-size:20px;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.backstage-brand-sub{margin-top:4px;color:#ffe6c6b8;font-size:11px;font-weight:600;line-height:1.45}.backstage-profile-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:linear-gradient(145deg,#ffffff1f,#ffffff0b),#ffffff0a;box-shadow:inset 0 1px #ffffff1f}.backstage-avatar{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,189,94,.38);border-radius:8px;background:#ff661a29;color:#ffd59a;font-family:Outfit,Montserrat,sans-serif;font-size:14px;font-weight:900}.backstage-profile-copy{min-width:0}.backstage-profile-copy strong,.backstage-profile-copy span,.backstage-profile-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backstage-profile-copy strong{color:#fff8ec;font-size:13px;font-weight:800}.backstage-profile-copy span{margin-top:2px;color:#fff1df94;font-size:11px}.backstage-profile-copy em{width:fit-content;max-width:100%;margin-top:7px;padding:3px 8px;border:1px solid rgba(255,185,77,.28);border-radius:999px;background:#ff661a21;color:#ffbd62;font-size:10px;font-style:normal;font-weight:800}.backstage-nav{display:grid;grid-auto-rows:max-content;gap:14px;flex:1;min-height:0;align-content:start;overflow-y:auto;overflow-x:hidden}.backstage-nav-group{display:grid;gap:6px}.backstage-nav-label{color:#ffe8c980;font-family:Outfit,Montserrat,sans-serif;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.backstage-nav-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;min-height:42px;padding:10px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:#fff6ebbd;cursor:pointer;font:inherit;text-align:left;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.backstage-nav-item:hover{border-color:#ffb94d42;background:#fff1;color:#fff9f0;transform:translate(2px)}.backstage-nav-item.active{border-color:#ffb2487a;background:linear-gradient(135deg,#ff661af5,#f5aa48e0),#ff661a;box-shadow:0 16px 30px #ff661a38;color:#160f0a;font-weight:900}.backstage-nav-item span{overflow:hidden;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.backstage-nav-item small{padding:3px 7px;border-radius:999px;background:#ffffff14;color:#ffebd28f;font-family:Outfit,Montserrat,sans-serif;font-size:10px;font-weight:800}.backstage-nav-item.active small{background:#120c072e;color:#140d08bd}.backstage-main{flex:1;min-width:0;height:100vh;overflow-y:auto;background:#000;scroll-behavior:smooth}.backstage-main>.fms-dashboard-app{min-height:100%;background:transparent}.backstage-main .fms-dashboard-app .main-area{min-height:100%}.backstage-main .fms-dashboard-app .topbar{top:0;background:#ffffffc7}.backstage-main .fms-dashboard-app .pg{width:min(100%,1320px);max-width:1320px}.fms-card-sub{margin-top:3px;color:var(--text3);font-size:12px;font-weight:400}.fms-dashboard-app .stat{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.66);background:linear-gradient(145deg,#ffffffdb,#ffffff94),var(--surface);box-shadow:0 16px 38px #1b243014;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.fms-dashboard-app .stat:before{position:absolute;top:0;right:0;bottom:0;left:0;border-top:3px solid var(--fms-orange);content:"";pointer-events:none}.fms-dashboard-app .stat:hover{border-color:#ff6b3552;box-shadow:0 22px 48px #ff6b3524}.fms-dashboard-app button.stat{width:100%;color:var(--text);cursor:pointer;font:inherit;text-align:left}.fms-dashboard-app .stat-clickable{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.fms-dashboard-app .stat-clickable:hover{transform:translateY(-2px)}.dashboard-click-card{cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.dashboard-click-card:hover{transform:translateY(-2px);border-color:#ff6b3552;box-shadow:0 18px 36px #ff6b351f}.fms-dashboard-app button.stat:focus-visible,.dashboard-click-card:focus-visible,.quick-action-card:focus-visible,.dashboard-site-result:focus-visible,.operations-work-card:focus-visible,.dashboard-schedule-row:focus-visible{outline:3px solid rgba(255,107,53,.28);outline-offset:3px}.fms-dashboard-app .btn.primary{background:var(--fms-orange);border-color:var(--fms-orange)}.fms-dashboard-app .welcome{position:relative;overflow:hidden;min-height:188px;border:1px solid rgba(255,255,255,.38);background:radial-gradient(circle at 78% 18%,rgba(255,255,255,.28),transparent 13rem),linear-gradient(135deg,#ff6b35,#ff3b5c 58%,#351d4f);box-shadow:0 24px 60px #ff593447}.fms-dashboard-app .welcome:after{position:absolute;right:-72px;bottom:-92px;width:260px;height:260px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#ffffff14;content:""}.welcome-kicker{display:inline-flex;margin-bottom:8px;color:#ffffffb8;font-family:Outfit,Noto Sans KR,sans-serif;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.fms-dashboard-app .welcome h2{font-family:Outfit,Noto Sans KR,sans-serif;font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:0}.fms-dashboard-app .welcome p{max-width:560px;margin-top:10px;font-size:14px;font-weight:500;line-height:1.7}.fms-dashboard-app .welcome-icon{position:relative;z-index:1;display:grid;place-items:center;width:132px;height:132px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#ffffff21;box-shadow:inset 0 1px #ffffff5c;font-family:Outfit,sans-serif;font-size:38px;font-weight:900;opacity:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.fms-dashboard-app .welcome-role,.live-sync-pill{display:inline-flex;align-items:center;gap:8px}.live-pulse-dot{position:relative;display:inline-block;width:9px;height:9px;border-radius:50%;background:#20c988;box-shadow:0 0 #20c98880;animation:livePulse 1.8s ease-out infinite}@keyframes livePulse{0%{box-shadow:0 0 #20c9888c}72%{box-shadow:0 0 0 12px #20c98800}to{box-shadow:0 0 #20c98800}}.dashboard-insight-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(300px,1.05fr) minmax(300px,1fr);gap:16px;align-items:stretch;margin-bottom:18px}.dashboard-insight-grid>.card{margin-bottom:0}.dashboard-site-search-card{background:linear-gradient(145deg,#ffffffdb,#ffffffb3),var(--surface)}.dashboard-site-search-control{display:grid;gap:8px;margin-bottom:14px;color:var(--text2);font-size:12px;font-weight:800}.dashboard-site-search-control .profile-input{min-height:42px;border-color:#ff6b3533;background:#ffffffc7}.dashboard-site-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;max-height:360px;overflow:auto;padding-right:4px}.dashboard-site-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:13px;border:1px solid rgba(255,107,53,.16);border-radius:8px;background:#ffffffb3;color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.dashboard-site-result:hover{transform:translateY(-2px);border-color:#ff6b355c;box-shadow:0 14px 28px #ff6b351a}.dashboard-site-result strong,.dashboard-site-result small{display:block}.dashboard-site-result strong{overflow:hidden;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.dashboard-site-result small{overflow:hidden;margin-top:4px;color:var(--text3);font-size:11px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.dashboard-site-result-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:160px}.dashboard-site-empty{grid-column:1 / -1}.as-donut-layout{display:grid;gap:16px}.as-donut{position:relative;display:grid;place-items:center;width:min(210px,100%);aspect-ratio:1;margin:0 auto;border-radius:50%;background:conic-gradient(var(--as-donut-gradient));box-shadow:0 18px 38px #1b24301a}.as-donut:after{position:absolute;top:24%;right:24%;bottom:24%;left:24%;border-radius:50%;background:linear-gradient(145deg,#fffffff0,#ffffffb8),var(--surface);content:""}.as-donut-center{position:relative;z-index:1;display:grid;justify-items:center}.as-donut-center strong{color:var(--text);font-family:Outfit,sans-serif;font-size:32px;line-height:1}.as-donut-center span{color:var(--text3);font-size:11px;font-weight:800;letter-spacing:.08em}.as-donut-legend{display:grid;gap:9px}.as-donut-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;color:var(--text2);font-size:12px}.as-donut-swatch{width:10px;height:10px;border-radius:50%}.as-donut-legend-row strong{color:var(--text);font-family:Outfit,sans-serif}.as-donut-legend-row em{color:var(--text3);font-style:normal}.as-donut-note{margin:0;color:var(--text3);font-size:12px;line-height:1.6}.export-grid{display:grid;gap:10px}.export-action{display:grid;gap:3px;width:100%;padding:12px 13px;border:1px solid rgba(255,107,53,.18);border-radius:8px;background:var(--surface2);color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.export-action:hover:not(:disabled){transform:translateY(-2px);border-color:#ff6b3561;box-shadow:0 14px 28px #ff6b351f}.export-action:disabled{opacity:.6;cursor:progress}.export-action strong{font-size:13px;font-weight:700}.export-action span{font-size:11px;color:var(--text3);line-height:1.5}.export-note{margin:10px 0 0;min-height:15px;font-size:11px;color:var(--text3)}.quick-action-grid{display:grid;gap:10px}.quick-action-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;width:100%;padding:13px;border:1px solid rgba(255,107,53,.18);border-radius:8px;background:#ffffffad;color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.quick-action-card:hover{transform:translateY(-2px);border-color:#ff6b3561;box-shadow:0 14px 28px #ff6b351f}.quick-action-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:linear-gradient(135deg,#ff6b352e,#ff3b5c24);color:#ff5b35;font-family:Outfit,sans-serif;font-size:13px;font-weight:900}.quick-action-card strong,.quick-action-card small{display:block}.quick-action-card strong{font-size:13px;font-weight:800}.quick-action-card small{margin-top:3px;color:var(--text3);font-size:11px;line-height:1.45}.dashboard-recent-card{background:linear-gradient(145deg,#ffffffd6,#ffffffad),var(--surface)}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(255,102,26,.14),transparent 32rem),radial-gradient(circle at 90% 80%,rgba(59,125,255,.12),transparent 28rem),var(--bg)}.login-password-form{display:grid;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(242,235,223,.08)}.login-password-form label,.login-password-form span{display:block}.login-password-form span{margin-bottom:6px;color:var(--text3);font-size:11px;font-weight:700}.login-password-form input{width:100%;min-height:42px;padding:0 12px;border:1px solid rgba(242,235,223,.12);border-radius:8px;background:#ffffff0a;color:var(--text);font:inherit}.login-password-form input:focus{border-color:#ff661a80;outline:3px solid rgba(255,102,26,.16)}.password-login-btn{margin-top:2px}.fms-login-card{max-width:430px}.signage-login-details{margin-top:18px;padding-top:14px;border-top:1px solid rgba(242,235,223,.12)}.signage-login-details>summary{color:var(--text2);cursor:pointer;font-size:13px;font-weight:700}.signage-login-form>p:first-child{margin:0 0 2px;color:var(--text3);font-size:12px;line-height:1.6}.signage-login-form .signage-login-error:empty{display:none}.signage-login-form .signage-login-error{margin:2px 0 0;color:var(--red);font-size:12px;line-height:1.6}.signage-login-btn:disabled{cursor:wait;opacity:.72}.google-login-btn{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--fms-orange);box-shadow:0 14px 32px #ff661a42}.google-login-btn:hover{background:var(--fms-orange);box-shadow:0 18px 40px #ff661a57;transform:translateY(-1px)}.google-login-btn:disabled{cursor:wait;opacity:.78}.google-mark{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--fms-orange);font-family:Montserrat,sans-serif;font-weight:800}.login-error{margin-top:14px;color:var(--red);font-size:12px;line-height:1.6;text-align:center}.backstage-pending-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 0%,rgba(241,139,98,.12),transparent 34%),var(--bg)}.backstage-pending-panel{width:min(100%,430px);padding:34px 30px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 22px 60px #2a241e21;text-align:center}.backstage-pending-mark{width:56px;height:56px;display:grid;place-items:center;margin:0 auto 18px;border-radius:50%;background:var(--orange);color:#fff;font-family:Outfit,sans-serif;font-size:18px;font-weight:900}.backstage-pending-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:26px;margin:0 0 12px;padding:4px 12px;border-radius:999px;background:var(--warn-lt);color:var(--warn);font-size:12px;font-weight:800}.backstage-pending-panel h1{margin:0;color:var(--text);font-size:22px;line-height:1.35}.backstage-pending-panel p{margin:14px 0 0;color:var(--text2);font-size:14px;line-height:1.75}.backstage-pending-logout{width:100%;margin-top:24px}.backstage-pending-error{color:var(--red);font-weight:700}.user-management-hero .welcome-icon{color:#fff}.user-management-card+.user-management-card{margin-top:14px}.user-management-table td strong,.user-management-table td small{display:block;min-width:0}.user-management-table td strong{color:var(--text);font-size:14px}.user-management-table td small{margin-top:4px;color:var(--text3);font-size:12px;overflow-wrap:anywhere}.user-role-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.user-role-badge.role-pending{background:var(--warn-lt);color:var(--warn)}.user-role-badge.role-worker{background:var(--green-lt);color:var(--green)}.user-role-badge.role-manager{background:var(--blue-lt);color:var(--blue)}.user-role-badge.role-admin{background:var(--orange-lt);color:var(--orange)}.user-role-control{display:flex;gap:8px;align-items:center}.user-role-select{min-width:118px;min-height:38px;padding:0 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:13px}.user-role-approve{min-height:38px;padding:0 14px}.user-role-status{color:var(--text3);font-size:12px;font-weight:700}.user-role-status.error{color:var(--red)}.fms-table-wrap{width:100%;overflow-x:auto}.fms-table{width:100%;border-collapse:collapse;font-size:13px}.fms-table th{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text3);font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;letter-spacing:.6px;text-align:left;text-transform:uppercase;white-space:nowrap}.fms-table td{padding:11px 12px;border-bottom:1px solid var(--border);color:var(--text2);vertical-align:middle;white-space:nowrap}.fms-table tbody tr:hover{background:var(--bg)}.fms-table strong{color:var(--text);font-weight:700}.empty-cell{padding:38px 12px!important;color:var(--text3)!important;text-align:center!important}.fms-error-copy{color:var(--red);font-size:13px;line-height:1.7}.inventory-row-sub{margin-top:4px;color:var(--text3);font-size:11px}.fms-toast{position:fixed;right:22px;bottom:22px;z-index:50;max-width:min(420px,calc(100vw - 44px));padding:14px 16px;border-radius:16px;box-shadow:0 18px 42px #0f172a2e;color:#fff;font-size:13px;font-weight:700;line-height:1.5}.fms-toast.success{background:#1f8f5f}.fms-toast.error{background:#c2410c}.wbs-site-group{border:1px solid var(--border);border-radius:var(--r-sm);margin-bottom:12px;overflow:hidden}.wbs-site-head{align-items:flex-start;background:var(--surface2);display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.wbs-list-wrap{overflow-x:auto}.wbs-list-table{border-collapse:collapse;min-width:720px;width:100%}.wbs-list-table th{background:var(--surface);border-bottom:1px solid var(--border);color:var(--text3);font-size:11px;font-weight:700;padding:9px 12px;text-align:left}.wbs-list-table td{border-bottom:1px solid var(--border);font-size:12px;padding:11px 12px;vertical-align:middle}.wbs-list-table tr:last-child td{border-bottom:0}.wbs-progress{align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);display:flex;height:24px;min-width:130px;overflow:hidden;position:relative}.wbs-progress-fill{background:var(--orange);height:100%}.wbs-progress span{color:var(--text);font-size:11px;font-weight:700;left:50%;position:absolute;transform:translate(-50%)}.wbs-legend-dot.order-bar{background:var(--fms-orange)}.wbs-legend-dot.assembly-bar{background:#f0d264}.wbs-legend-dot.install-bar{background:#7fd4a0}.wbs-legend-dot.visit-bar{background:#b79bff}.view-toggle{display:inline-flex;padding:2px;border:1px solid var(--border);border-radius:8px;background:var(--surface2)}.view-toggle button{border:0;border-radius:6px;padding:6px 14px;background:transparent;color:var(--text3);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.view-toggle button.selected{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #0006}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}.kanban-column{min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.kanban-column-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}.kanban-column-hd strong{color:var(--text);font-size:12px;font-weight:800}.kanban-count{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--surface);color:var(--text2);font-size:11px;font-variant-numeric:tabular-nums;text-align:center}.kanban-cards{display:grid;align-content:start;gap:8px;padding:10px}.kanban-empty{margin:0;padding:10px 0;color:var(--text3);font-size:11px;text-align:center}.kanban-item{display:grid;gap:5px;width:100%;padding:11px 12px;border:1px solid var(--border);border-left:3px solid var(--kanban-tone, var(--text3));border-radius:8px;background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer}.kanban-item:hover{border-color:var(--border2);border-left-color:var(--kanban-tone, var(--text3))}.kanban-item strong{color:var(--text);font-size:12.5px;font-weight:700;line-height:1.35}.kanban-item-sub{color:var(--text2);font-size:11px}.kanban-item-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kanban-item-meta em{color:var(--text3);font-size:10.5px;font-style:normal;font-variant-numeric:tabular-nums}.kanban-item-meta .wbs-pending{padding:1px 6px;font-size:10px}.kanban-column[data-stage=PRE_CONTRACT]{--kanban-tone: #b79bff}.kanban-column[data-stage=CONTRACTED]{--kanban-tone: var(--fms-orange)}.kanban-column[data-stage=ORDER_PLACED]{--kanban-tone: #f0d264}.kanban-column[data-stage=ASSEMBLY]{--kanban-tone: #7fd4a0}.kanban-column[data-stage=COMPLETED]{--kanban-tone: var(--text3)}.kanban-note{margin:12px 0 0;color:var(--text3);font-size:11px}@media (max-width: 900px){.kanban-board{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;overscroll-behavior-x:contain}.kanban-column{scroll-snap-align:start}}@media (max-width: 660px){.kanban-board{grid-auto-columns:84%}.view-toggle button{padding:8px 16px}}.movement-item{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--bg)}.movement-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.movement-date,.movement-meta,.movement-reason{color:var(--text3);font-size:11px}.movement-name{margin-bottom:5px;color:var(--text);font-size:13px;font-weight:800}.movement-reason{margin-top:7px;line-height:1.5}@media (max-width: 660px){.backstage-shell{flex-direction:column}.backstage-sidebar{display:flex;position:fixed;top:0;bottom:0;left:0;flex:0 0 min(292px,calc(100vw - 44px));width:min(292px,calc(100vw - 44px));min-width:0;max-width:calc(100vw - 44px);height:100dvh;max-height:none;padding:14px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12);z-index:240;transform:translate(-104%);transition:transform .22s ease}.backstage-shell.sidebar-open .backstage-sidebar{transform:translate(0)}.backstage-mobile-menu{position:fixed;top:12px;left:12px;z-index:260;display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border:1px solid rgba(29,29,31,.12);border-radius:8px;background:#ffffffe0;box-shadow:0 14px 26px #14151824;color:#1d1d1f;font:inherit;font-size:12px;font-weight:900}.backstage-sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:230;display:none;border:0;background:#1212166b}.backstage-shell.sidebar-open .backstage-sidebar-scrim{display:block}.backstage-brand{grid-template-columns:40px minmax(0,1fr)}.backstage-brand-mark{width:40px;height:40px}.backstage-nav{gap:10px;overflow-y:auto;padding-bottom:18px}.backstage-nav-group{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.backstage-nav-label{grid-column:1 / -1}.backstage-main{height:auto;min-height:100vh;overflow:visible;padding-top:52px}.fms-dashboard-app .topbar{padding:0 16px}.fms-dashboard-app .tb-right{display:none}.fms-dashboard-app .welcome{align-items:flex-start;flex-direction:column;gap:12px}.dashboard-site-results,.dashboard-site-result{grid-template-columns:1fr}.dashboard-site-result-meta{justify-content:flex-start;max-width:none}}@media (min-width: 661px) and (max-width: 1100px){.backstage-sidebar{flex-basis:260px;width:260px;min-width:260px;max-width:260px}}@media (max-width: 1100px){.dashboard-insight-grid{grid-template-columns:1fr}}.fms-dashboard-app,.backstage-shell{background:radial-gradient(circle at 18% 0%,rgba(242,162,60,.09),transparent 24rem),radial-gradient(circle at 88% 8%,rgba(91,191,138,.055),transparent 22rem),linear-gradient(135deg,#1a1714,#211c18 54%,#171512);color:var(--text)}.backstage-main{background:radial-gradient(circle at 24% 0%,rgba(242,162,60,.08),transparent 24rem),linear-gradient(180deg,#1a1714fa,#1e1a16fa)}.backstage-sidebar{border-right:0;background:linear-gradient(180deg,#241f1af0,#1a1714f5),var(--surface);box-shadow:18px 0 42px #00000042;color:var(--text);scrollbar-color:rgba(184,174,159,.32) transparent}.backstage-sidebar::-webkit-scrollbar-thumb{background:#b8ae9f47}.backstage-brand-mark{border-color:#f2a23c38;background:linear-gradient(145deg,var(--surface2),#1c1814);box-shadow:0 16px 30px #0000003d,inset 0 1px #f2ebdf14;color:var(--fms-orange)}.backstage-brand-name,.backstage-profile-copy strong,.page-title,.card-title,.quick-action-card strong,.dashboard-site-result strong,.fms-table strong{color:var(--text)}.backstage-brand-sub,.backstage-profile-copy span,.backstage-nav-label,.fms-card-sub,.stat-lbl,.stat-sub,.quick-action-card small,.dashboard-site-result small,.as-donut-note,.fms-table th,.empty-cell{color:var(--text3)}.backstage-profile-card{border-color:#f2ebdf0d;background:#0c0c0ceb;box-shadow:var(--shadow)}.backstage-avatar,.quick-action-icon{border:0;background:var(--surface2);box-shadow:inset 0 1px #f2ebdf0f;color:var(--text)}.backstage-profile-copy em{border-color:#f2a23c38;background:var(--accent-soft);color:var(--fms-orange)}.backstage-nav-item{color:var(--text2)}.backstage-nav-item:hover{border-color:transparent;background:#f2ebdf0f;color:var(--text)}.backstage-nav-item.active{border-color:transparent;background:var(--surface2);box-shadow:var(--shadow);color:var(--text)}.backstage-nav-item small,.backstage-nav-item.active small{background:#f2ebdf0f;color:var(--text3)}.backstage-main .fms-dashboard-app .topbar{height:60px;border-bottom:0;background:#1a1714b8;box-shadow:0 12px 30px #00000029}.fms-dashboard-app .pg{width:min(100%,1360px);max-width:1360px}.fms-dashboard-app .welcome{min-height:172px;border:0;background:radial-gradient(circle at 86% 16%,rgba(242,162,60,.16),transparent 12rem),linear-gradient(135deg,#0c0c0ceb,#121212eb),var(--surface);box-shadow:var(--shadow-md);color:var(--text)}.fms-dashboard-app .welcome:after{right:24px;bottom:22px;width:144px;height:144px;border:1px solid rgba(242,162,60,.12);border-radius:50%;background:#f2a23c0e;transform:none}.welcome-kicker{color:var(--fms-orange)}.fms-dashboard-app .welcome h2{color:var(--text);font-size:clamp(2rem,3.2vw,3rem)}.fms-dashboard-app .welcome p{color:var(--text2)}.fms-dashboard-app .welcome-icon{border:0;border-radius:50%;background:#f2ebdf0f;box-shadow:inset 0 1px #f2ebdf14;color:var(--text2)}.fms-dashboard-app .welcome-role,.live-sync-pill{border:0;background:#5bbf8a1f;color:var(--green)}.live-pulse-dot{background:var(--green);box-shadow:0 0 #5bbf8a73}@keyframes livePulse{0%{box-shadow:0 0 #5bbf8a75}72%{box-shadow:0 0 0 12px #5bbf8a00}to{box-shadow:0 0 #5bbf8a00}}.card,.fms-dashboard-app .stat,.dashboard-site-search-card,.dashboard-recent-card,.dashboard-priority-card,.dashboard-process-lane,.dashboard-schedule-card,.quick-action-card,.dashboard-site-result,.operations-work-card,.dashboard-schedule-row{border-color:#f2ebdf0b;background:linear-gradient(145deg,#0c0c0ceb,#121212eb),var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%)}.card-hd{border-bottom-color:#f2ebdf0e}.card:hover,.dashboard-click-card:hover,.quick-action-card:hover,.dashboard-site-result:hover,.operations-work-card:hover,.dashboard-schedule-row:hover,.fms-dashboard-app .stat:hover{border-color:#f2ebdf13;box-shadow:var(--shadow-md);transform:translateY(-1px)}.stats-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}.fms-dashboard-app .stat{min-height:118px;padding:17px 18px}.stat-val,.as-donut-center strong{color:var(--text);font-size:clamp(1.65rem,2.1vw,2.35rem);letter-spacing:0}.stat-lbl,.card-title{font-size:clamp(.76rem,.85vw,.88rem)}.card-title{font-weight:850}.dashboard-insight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.dashboard-insight-grid>.card{display:flex;flex-direction:column;min-height:348px}.dashboard-insight-grid>.card>.card-bd{flex:1}.dashboard-site-search-control .profile-input,.profile-input{border-color:#f2ebdf14;background:var(--surface2);color:var(--text)}.dashboard-site-search-control .profile-input:focus,.profile-input:focus{border-color:#f2a23c75;box-shadow:0 0 0 3px var(--accent-soft)}.fms-table td{color:var(--text2)}.as-donut-layout{align-content:center}.as-donut{width:min(208px,100%);border-radius:50%;box-shadow:var(--shadow)}.as-donut:after{top:25%;right:25%;bottom:25%;left:25%;border-radius:50%;background:var(--surface);box-shadow:inset 0 1px #f2ebdf14}.as-donut-center span,.as-donut-legend-row em{color:var(--text3)}.as-donut-legend-row{color:var(--text2)}.quick-action-card{min-height:78px}.quick-action-icon{color:var(--text2)}.fms-dashboard-app .btn.primary,.btn.primary,.google-login-btn{border-color:transparent;background:var(--fms-orange);box-shadow:0 14px 30px #f2a23c2e;color:#21160b}.fms-dashboard-app .btn.primary:hover,.btn.primary:hover,.google-login-btn:hover{background:var(--accent-strong);box-shadow:0 18px 38px #ff8a3d38}.fms-dashboard-app .btn,.btn{border-color:#f2ebdf14;background:var(--surface2);color:var(--text2);box-shadow:none}.fms-dashboard-app .btn:hover,.btn:hover{border-color:#f2ebdf1f;background:#383129;color:var(--text)}.badge{border-radius:999px}.fms-dashboard-app .b-contract,.fms-dashboard-app .b-visit{background:#f2ebdf12;color:var(--text2)}.fms-dashboard-app .b-order{background:var(--accent-soft);color:var(--fms-orange)}.fms-dashboard-app .b-done{background:var(--green-lt);color:var(--green)}.fms-dashboard-app .b-terminated{background:var(--red-lt);color:var(--red)}.fms-table{min-width:720px}.fms-table th,.fms-table td{border-bottom-color:#f2ebdf0e}.fms-table tbody tr:hover{background:#f2ebdf09}@media (max-width: 1100px){.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-insight-grid{grid-template-columns:1fr}}@media (max-width: 660px){.backstage-sidebar{flex-basis:min(292px,calc(100vw - 44px));width:min(292px,calc(100vw - 44px));min-width:0;max-width:calc(100vw - 44px);background:linear-gradient(180deg,#241f1afa,#1a1714fa),var(--surface)}.backstage-mobile-menu{border-color:#f2ebdf14;background:var(--surface2);box-shadow:var(--shadow);color:var(--text)}.stats-row{grid-template-columns:1fr}.dashboard-insight-grid>.card{min-height:auto}.fms-dashboard-app .welcome{min-height:auto}}.fms-dashboard-layout{display:flex;flex-direction:column;gap:16px;padding:20px;width:100%;box-sizing:border-box}.fms-dashboard-zone-a{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dashboard-source-alert{border:1px solid var(--red, #c0392b);border-left-width:3px;border-radius:8px;background:var(--red-lt, rgba(192, 57, 43, .1));padding:12px 14px;color:var(--text)}.dashboard-source-alert strong{display:block;font-size:13px;color:var(--red, #c0392b)}.dashboard-source-alert p{margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--text2)}.fms-dashboard-zone-b{display:block}.fms-dashboard-zone-c{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:12px}.fms-dashboard-zone-d{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:12px}.fms-dashboard-subtitle{margin-top:4px;color:var(--text3);font-size:12px;font-weight:500;line-height:1.45}.dashboard-process-lane .card-bd{padding:14px}.process-lane-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.process-step{min-width:0;padding:12px 10px;border:1px solid rgba(255,186,103,.12);border-radius:8px;background:#ffffff06}.process-step span,.process-step strong,.process-step small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.process-step span{color:var(--accent);font-family:Outfit,Noto Sans KR,sans-serif;font-size:11px;font-weight:850}.process-step strong{margin-top:6px;color:var(--text);font-size:12px;font-weight:800}.process-step small{margin-top:5px;color:var(--text3);font-size:11px}.operations-priority-list,.dashboard-schedule-list{display:grid;gap:10px}.operations-work-card{display:grid;grid-template-columns:72px minmax(160px,.8fr) minmax(0,1.2fr) minmax(180px,.8fr);gap:12px;align-items:center;width:100%;padding:14px;border:1px solid rgba(242,235,223,.07);border-left:4px solid rgba(255,255,255,.18);border-radius:8px;color:var(--text);cursor:pointer;font:inherit;text-align:left}.operations-work-card.risk{border-left-color:#ef6a4a}.operations-work-card.watch{border-left-color:#f3b357}.operations-work-card.normal{border-left-color:#62c58c}.operations-work-badge{display:inline-grid;place-items:center;min-width:54px;min-height:28px;padding:0 10px;border-radius:8px;background:#ff661a29;color:#ffd19b;font-size:12px;font-weight:850}.operations-work-main,.operations-work-footer{min-width:0}.operations-work-main strong,.operations-work-main small,.operations-work-footer span,.operations-work-footer em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operations-work-main strong{color:var(--text);font-size:14px;font-weight:850}.operations-work-main small,.operations-work-detail,.operations-work-footer span,.operations-work-footer em{color:var(--text3);font-size:12px;line-height:1.45}.operations-work-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.operations-work-footer em{margin-top:3px;color:#ffd19b;font-style:normal;font-weight:750}.dashboard-schedule-row{display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px;align-items:center;width:100%;padding:12px;border:1px solid rgba(242,235,223,.06);border-radius:8px;color:var(--text);cursor:pointer;font:inherit;text-align:left}.dashboard-schedule-row span{min-width:0}.dashboard-schedule-row strong,.dashboard-schedule-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-schedule-row strong{color:var(--text);font-size:12px;font-weight:850}.dashboard-schedule-row small{margin-top:3px;color:var(--text3);font-size:11px}@media (max-width: 768px){.fms-dashboard-zone-a{grid-template-columns:repeat(2,minmax(0,1fr))}.fms-dashboard-zone-b,.fms-dashboard-zone-c,.fms-dashboard-zone-d,.process-lane-grid,.operations-work-card,.dashboard-schedule-row{grid-template-columns:1fr}.process-lane-grid{gap:6px}.process-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:9px 12px}.process-step strong,.process-step small{margin-top:0}.process-step small{color:var(--text2);font-variant-numeric:tabular-nums;text-align:right}.operations-work-detail{white-space:normal}}.as-overdue-chip{border-color:var(--red, #c0392b);color:var(--red, #c0392b)}.as-overdue-chip.active{background:var(--red, #c0392b);border-color:var(--red, #c0392b);color:#fff}.as-req-table th:last-child,.as-req-table td:last-child{text-align:center;width:88px}.as-req-row{cursor:pointer}.as-req-row:focus-visible{outline:2px solid var(--blue, #2563eb);outline-offset:-2px}.as-req-row .as-req-editor{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.as-req-row .profile-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.as-req-row .as-req-date{min-height:36px}.as-req-row [data-as-assignee-for]{min-width:112px}.as-req-row td[data-label=기한]{min-width:150px}.as-req-row .as-overdue-badge{display:block;width:fit-content;margin-top:6px}@media (min-width: 701px) and (max-width: 1200px){.as-req-table,.as-req-table tbody{display:block;width:100%;min-width:0}.as-req-table thead{display:none}.as-req-table .as-req-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:14px;margin-bottom:10px;border:1px solid var(--bs-border);border-radius:10px}.as-req-table .as-req-row td{display:grid;gap:4px;width:auto;min-width:0;padding:0;border:0;white-space:normal;text-align:left}.as-req-table .as-req-row td:before{content:attr(data-label);color:var(--text3);font-size:11px}.as-req-table .as-req-row td[data-label=현장명],.as-req-table .as-req-row td[data-label=증상],.as-req-table .as-req-row td[data-label=상태]{grid-column:1 / -1}.as-req-table .as-req-row td[data-label=일지]{justify-items:start}}@media (max-width: 700px){.as-req-row .profile-input{font-size:16px}.as-req-row td[data-label=기한]{grid-column:1 / -1}.as-req-row .as-req-editor{width:100%;min-width:0}}.as-req-row.as-req-overdue-row{background:#c0392b14}.as-req-row.as-req-overdue-row td:first-child{border-left:2px solid var(--red, #c0392b)}.as-unassigned-badge,.as-overdue-badge{font-size:10px}.btn.btn-sm{padding:4px 10px;font-size:12px;border-radius:5px}.as-status-diagram-card{cursor:pointer}.as-diag-section{margin-bottom:14px}.as-diag-label{font-size:11px;font-weight:600;color:var(--accent, #2a6);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.as-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.as-bar-label{font-size:12px;color:var(--text-muted, #aaa);width:64px;flex-shrink:0;text-align:right}.as-bar-track{flex:1;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.as-bar-fill{height:100%;border-radius:4px;transition:width .3s ease;min-width:2px}.as-bar-received{background:var(--warn, #f0a500)}.as-bar-progress{background:var(--fms-orange, #e67e22)}.as-bar-resolved{background:var(--green, #27ae60)}.as-bar-electrical{background:#3498db}.as-bar-structure{background:#9b59b6}.as-bar-finish{background:#1abc9c}.as-bar-other{background:#ffffff4d}.as-bar-count{font-size:12px;font-weight:600;width:28px;text-align:right;flex-shrink:0}.as-diag-overdue{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;background:#ffffff0a;border:1px solid var(--border, #444);font-size:12px}.as-diag-overdue--alert{background:#c0392b1f;border-color:var(--red, #c0392b)}.as-diag-overdue-label{color:var(--text-muted, #aaa);flex-shrink:0}.as-diag-overdue-count{font-size:16px;font-weight:700;color:var(--red, #c0392b);flex-shrink:0}.as-diag-overdue--alert .as-diag-overdue-count{color:var(--red, #c0392b)}.as-diag-overdue-sub{color:var(--text-muted, #aaa);font-size:11px}.cal-nav{display:flex;align-items:center;gap:1rem}.cal-table{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed}.cal-table th{padding:8px 4px;color:var(--text3);font-size:11px;font-weight:700;letter-spacing:.06em;text-align:center}.cal-table th:first-child{color:var(--red)}.cal-table th:last-child{color:var(--blue)}.cal-cell{height:120px;vertical-align:top;padding:7px;border:1px solid var(--border);border-radius:7px;background:var(--surface);font-size:12px}.cal-cell--empty{border-style:dashed;background:none}.cal-cell--today{border-color:var(--fms-orange);box-shadow:inset 0 0 0 1px var(--fms-orange)}.cal-day-num{margin-bottom:5px;color:var(--text2);font-size:12px;font-weight:600}.cal-cell--today .cal-day-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--fms-orange);color:#1a1206;font-weight:700}.cal-events{display:flex;flex-direction:column;gap:3px;max-height:86px;overflow-y:auto}.cal-ev{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:3px 6px;border-left:3px solid currentColor;border-radius:0 4px 4px 0;background:var(--surface2);font-size:10px;line-height:1.35}.cal-ev>span{overflow:hidden;color:var(--text2);text-overflow:ellipsis;white-space:nowrap}.cal-ev[data-site-open]{cursor:pointer}.cal-ev[data-site-open]:hover>span{color:var(--text)}.cal-ev--visit,.cal-dot--visit{color:#8fb4ff}.cal-ev--contract,.cal-dot--contract{color:#b79bff}.cal-ev--order,.cal-dot--order{color:var(--fms-orange)}.cal-ev--assembly,.cal-dot--assembly{color:#f0d264}.cal-ev--ship,.cal-dot--ship{color:#6fd0c4}.cal-ev--install,.cal-dot--install{color:#7fd4a0}.cal-ev--done,.cal-dot--done{color:var(--text3)}.cal-ev--lab,.cal-dot--lab{color:#e58fb0}.cal-legend{display:flex;flex-wrap:wrap;gap:8px 18px}.cal-legend-item{display:inline-flex;align-items:center;gap:6px;color:var(--text2);font-size:11px}.cal-ev-del{flex-shrink:0;padding:0 2px;border:none;background:none;color:var(--text3);font-size:12px;cursor:pointer}.cal-ev-del:hover{color:var(--text)}.cal-dot{display:inline-block;width:10px;height:10px;border-radius:3px;background:currentColor}.data-table{width:100%;border-collapse:collapse;font-size:.85rem}.data-table th{padding:.6rem 1rem;text-align:left;font-size:.75rem;color:var(--text-muted, #aaa);border-bottom:1px solid var(--border, #444);white-space:nowrap}.data-table td{padding:.6rem 1rem;border-bottom:1px solid var(--border, #333);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.row--editing td{background:#6c63ff0f}.badge--type{display:inline-block;padding:.1rem .45rem;border-radius:3px;font-size:.75rem;background:#6c63ff33;color:#c4c0ff}.btn--sm{padding:.25rem .65rem;font-size:.78rem}.form-input--sm{padding:.25rem .5rem;font-size:.8rem;width:100%}.side-checks{display:flex;gap:.5rem;align-items:center;font-size:.82rem}.side-checks label{display:flex;align-items:center;gap:.2rem;cursor:pointer}.fs-occupancy-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.fs-occupancy-card{border:1px solid var(--border);border-radius:var(--r-sm);padding:13px;background:var(--surface2);color:var(--text2);text-align:left;cursor:pointer}.fs-occupancy-card strong,.fs-occupancy-card small{display:block}.fs-occupancy-card strong{color:var(--text);font-size:13px}.fs-occupancy-card small{margin-top:4px;color:var(--text3);font-size:10px}.fs-occupancy-card.selected{border-color:var(--fms-orange);box-shadow:0 0 0 1px var(--fms-orange) inset;background:color-mix(in srgb,var(--fms-orange),var(--surface) 88%)}.fs-site-name{grid-column:1/-1}.fs-site-name-rule{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fs-site-name-rule em{flex:1;min-width:0;font-style:normal;color:var(--text3);font-size:10px;overflow-wrap:anywhere}.fs-site-name-rule button{flex:none}.fs-address-input{display:grid;grid-template-columns:110px auto;gap:7px}.fs-address-input input:last-child{grid-column:1/-1}.fs-address-input button{white-space:nowrap}.fs-media-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fs-upload-button{display:grid;gap:5px;border:1px dashed var(--border2);border-radius:var(--r-sm);padding:16px;background:var(--surface2);color:var(--text);cursor:pointer}.fs-upload-button small{color:var(--text3);font-size:10px}.fs-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.fs-photo-grid figure{margin:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2)}.fs-photo-grid img{display:block;width:100%;aspect-ratio:1.2;object-fit:cover}.fs-photo-grid figcaption{display:flex;justify-content:space-between;gap:6px;padding:7px;font-size:10px;color:var(--text2)}.fs-photo-grid button,.fs-scan-file button{border:0;background:transparent;color:var(--text3);cursor:pointer}.fs-scan-file{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text2);font-size:11px}.fs-scan-file span{color:var(--text3)}.fs-scan-file button{margin-left:auto}.fs-canvas.is-zoomed{cursor:grab}.fs-canvas.is-zoomed:active{cursor:grabbing}.fs-zoom-controls small{color:var(--text3);margin-left:8px}.fs-list-card{margin-top:20px}.fs-survey-list{display:grid;gap:10px}.fs-survey-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2)}.fs-survey-title{display:flex;align-items:center;gap:10px}.fs-survey-title strong{color:var(--text);font-size:13px}.fs-survey-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;color:var(--text3);font-size:11px}.fs-survey-meta span+span:before{content:"·";margin-right:8px;color:var(--border2)}.fs-survey-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.fs-folder-path{color:#73c999;font-size:11px}.fs-error{padding:16px;color:#e88}.fs-empty-list{padding:40px;text-align:center;color:var(--text3)}.field-survey-page{min-height:100%;color:var(--text)}.field-survey-page .topbar{background:var(--surface-glass)}.field-survey-pg{width:min(100%,1320px);padding:28px 30px 48px}.field-survey-pg *{box-sizing:border-box}.fs-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:26px}.fs-kicker{font-size:11px;letter-spacing:.12em;color:var(--fms-orange);font-weight:700}.fs-heading h1{margin:7px 0 8px;color:var(--text);font-size:26px}.fs-heading p,.fs-help,.fs-section-title p,.fs-empty-hint{color:var(--text3);font-size:12px;margin:0}.fs-product-badge{min-width:210px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface2);display:grid;gap:4px}.fs-product-badge small,.fs-unit{color:var(--text3);font-size:10px}.fs-product-badge strong{font-size:22px;color:var(--fms-orange)}.fs-product-badge span{font-size:11px;color:var(--text2)}.fs-section{margin-top:32px;scroll-margin-top:74px}.fs-section-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.fs-section-title>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--fms-orange);color:#23160d;font-weight:800;font-size:12px}.fs-section-title h2{margin:0;color:var(--text);font-size:17px}.fs-section-title p{margin-left:auto}.fs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fs-full{grid-column:1/-1}.fs-card{min-width:0;padding:18px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.fs-card .card-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.fs-card .card-title{font-size:13px;font-weight:700;color:var(--text)}.fs-required{font-size:10px;color:var(--fms-orange);border:1px solid color-mix(in srgb,var(--fms-orange),transparent 55%);padding:3px 6px;border-radius:999px}.fs-form-grid{display:grid;gap:12px}.fs-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.fs-field{display:grid;gap:6px;color:var(--text2);font-size:11px}.fs-field input,.fs-field select,.fs-annotation-toolbar input{width:100%;border:1px solid var(--border2);border-radius:var(--r-sm);padding:9px 10px;background:var(--surface2);color:var(--text);font:inherit}.fs-input-unit{position:relative}.fs-input-unit input{padding-right:38px}.fs-input-unit em{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--text3);font-size:10px}.fs-product-select,.fs-lifting{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fs-product-option,.fs-lifting button,.fs-segmented button{border:1px solid var(--border);border-radius:var(--r-sm);padding:13px;background:var(--surface2);color:var(--text2);text-align:left;cursor:pointer}.fs-product-option strong,.fs-lifting strong{display:block;color:var(--text);font-size:14px}.fs-product-option small,.fs-lifting small{display:block;margin-top:4px;color:var(--text3);font-size:10px}.fs-product-option.selected,.fs-lifting button.selected,.fs-segmented button.selected{border-color:var(--fms-orange);box-shadow:0 0 0 1px var(--fms-orange) inset;background:color-mix(in srgb,var(--fms-orange),var(--surface) 88%)}.fs-segmented{display:flex;gap:8px;margin-bottom:12px}.fs-segmented button{padding:8px 12px;text-align:center}.fs-check-row{display:flex;flex-wrap:wrap;gap:8px}.fs-check-row label{cursor:pointer}.fs-check-row input{position:absolute;opacity:0}.fs-check-row span{display:block;border:1px solid var(--border);border-radius:999px;padding:7px 10px;color:var(--text2);font-size:11px;background:var(--surface2)}.fs-check-row input:checked+span{border-color:var(--fms-orange);color:var(--fms-orange)}.fs-obstacle-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.fs-drawing-card{min-width:0}.fs-upload{min-height:220px;border:1px dashed var(--border2);border-radius:var(--r-sm);display:grid;place-items:center;background:var(--surface2);overflow:hidden}.fs-upload img{display:block;max-width:100%;max-height:320px}.fs-upload button{border:1px solid var(--border2);border-radius:var(--r-sm);padding:10px 14px;background:var(--surface);color:var(--text);cursor:pointer}.fs-annotation-toolbar{display:grid;grid-template-columns:auto auto minmax(130px,1fr) auto auto;gap:7px;margin:10px 0}.fs-annotation-toolbar button,.fs-zoom-controls button{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2);color:var(--text2);padding:8px 10px;cursor:pointer}.fs-annotation-toolbar button.selected{border-color:var(--fms-orange);color:var(--fms-orange)}.fs-annotation-toolbar output{font-size:10px;color:var(--text3);align-self:center}.fs-canvas{min-height:340px;max-height:600px;overflow:hidden;position:relative;display:grid;place-items:center;background:#111;border:1px solid var(--border);border-radius:var(--r-sm);cursor:crosshair}.fs-zoom-layer{position:relative;display:grid;place-items:center;transform-origin:center;transition:transform .15s;max-width:100%}.fs-zoom-layer>img{max-width:100%;max-height:560px;display:block}.fs-annotation{position:absolute;transform:translate(-10px,-50%);display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--fms-orange);color:var(--text);border-radius:5px;padding:4px 6px;white-space:nowrap;font-size:11px;box-shadow:0 4px 14px #0006}.fs-annotation.note{border-color:#73c999}.fs-annotation-arrow{font-size:16px}.fs-annotation-remove{width:18px;height:18px;padding:0;border:0;border-radius:50%;background:var(--surface2);color:var(--text2);cursor:pointer}.fs-zoom-controls,.fs-file-meta{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;color:var(--text3);font-size:11px}.fs-floor-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(360px,1fr);gap:14px}.fs-floor-diagram{height:300px;position:relative;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.fs-rail{position:absolute;left:14px;right:14px;top:12px;height:26px;display:grid;place-items:center;background:color-mix(in srgb,var(--fms-orange),transparent 86%);border:1px solid color-mix(in srgb,var(--fms-orange),transparent 60%);border-radius:4px;color:var(--fms-orange);font-size:10px;letter-spacing:.08em}.fs-cabinet{position:absolute;top:50px;bottom:30px;width:104px;padding:14px 10px;background:var(--surface);border:1px solid var(--border2);border-radius:4px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-content:space-between;gap:10px}.fs-wheel{display:grid;justify-items:center;gap:4px}.fs-wheel i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:color-mix(in srgb,var(--fms-orange),transparent 82%);border:1px solid color-mix(in srgb,var(--fms-orange),transparent 55%);color:var(--fms-orange);font-style:normal;font-size:10px;font-weight:700;line-height:1}.fs-wheel em{display:block;width:100%;height:8px;border-radius:2px;background:var(--text);opacity:.85}.fs-close{left:10px}.fs-open{right:10px}.fs-door-label{position:absolute;bottom:6px;font-size:10px;color:var(--text3)}.fs-door-label.close{left:42px}.fs-door-label.open{right:43px}.fs-distance{position:absolute;left:115px;right:115px;top:100px;border-top:2px solid var(--fms-orange)}.fs-distance:before,.fs-distance:after{content:"";position:absolute;top:-6px;border:5px solid transparent}.fs-distance:before{left:-1px;border-right-color:var(--fms-orange)}.fs-distance:after{right:-1px;border-left-color:var(--fms-orange)}.fs-distance span{display:block;text-align:center;margin-top:8px;color:var(--text2);font-size:12px}.fs-level-table{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.fs-level-row{display:grid;gap:6px;padding:10px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text2);font-size:10px}.fs-level-row>b{color:var(--text);font-size:11px;letter-spacing:.02em}.fs-level-delta{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:2px;padding-top:6px;border-top:1px solid var(--border)}.fs-level-delta em{font-style:normal;color:var(--text3)}.fs-level-delta strong{color:var(--fms-orange);font-size:12px;font-variant-numeric:tabular-nums}.fs-level-delta strong.is-pending,.fs-calculated strong.is-pending{color:var(--text3);font-weight:400}.fs-level-table input{width:100%;background:transparent;border:0;color:var(--text);font:inherit}.fs-toggle{display:flex;align-items:center;gap:10px;color:var(--text2);font-size:11px}.fs-toggle button{width:38px;height:22px;border:1px solid var(--border2);border-radius:99px;background:var(--surface2);padding:2px;cursor:pointer}.fs-toggle button i{display:block;width:16px;height:16px;border-radius:50%;background:var(--text3);transition:.15s}.fs-toggle button.on{background:var(--fms-orange);border-color:var(--fms-orange)}.fs-toggle button.on i{transform:translate(15px);background:#24160c}.fs-toggle em{font-style:normal;color:var(--text3)}.fs-check-line{display:flex;gap:8px;align-items:center;color:var(--text2);font-size:11px;margin-top:12px}.fs-bottom-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:28px}.fs-bottom-actions [data-save-status].warn{color:var(--fms-orange)}@media (max-width:900px){.fs-heading,.fs-floor-layout{display:block}.fs-product-badge{margin-top:16px}.fs-floor-layout>.fs-card+.fs-card{margin-top:14px}}@media (max-width:700px){.field-survey-pg{padding:20px 16px 36px}.fs-grid,.fs-form-grid.two,.fs-form-grid.three,.fs-obstacle-fields,#fs-space .fs-grid{grid-template-columns:1fr}.fs-full{grid-column:auto}.fs-annotation-toolbar{grid-template-columns:1fr 1fr}.fs-annotation-toolbar input,.fs-annotation-toolbar label{grid-column:1/-1}.fs-bottom-actions{display:grid}.fs-bottom-actions .btn{width:100%}}.fs-floor-diagram{background:#fff!important;border-color:#c9ccd1!important;height:250px!important}.fs-rail{right:calc(16% + 22px)!important;background:#e4e6ea!important;border-color:#b9bdc4!important;color:#5b6068!important}.fs-cabinet{background:#e9ebee!important;border-color:#b9bdc4!important}.fs-cabinet b{color:#444!important}.fs-wheel i{background:#fdeff0!important;border-color:#e3b7bb!important;color:#8c4a52!important}.fs-wheel em{background:#111!important;opacity:1!important}.fs-wall-extension{border-color:#c9ccd1!important;background:repeating-linear-gradient(45deg,transparent 0 5px,#c4c7cc 5px 6px)!important}.fs-wall-extension{position:absolute;top:50px;right:14px;bottom:30px;width:16%;border-radius:4px;border:1px solid var(--border2);background:repeating-linear-gradient(45deg,transparent 0 5px,color-mix(in srgb,var(--text3),transparent 55%) 5px 6px)}.fs-cabinet{z-index:1}.fs-cabinet b{position:absolute;bottom:-24px;left:0;right:0;text-align:center;font-size:10px;font-weight:600;letter-spacing:.06em;color:var(--text2)}.fs-open{left:14px;right:auto}.fs-close{right:calc(16% + 30px);left:auto}.fs-distance{z-index:2;left:64px;right:calc(20% + 78px);top:110px;height:38px;border-top:0;text-align:center}.fs-distance:before,.fs-distance:after{display:none}.fs-distance-arrow{position:absolute;left:0;right:0;top:0;border-top:2px solid #111}.fs-distance-arrow:before,.fs-distance-arrow:after{content:"";position:absolute;top:-6px;border:5px solid transparent}.fs-distance-arrow:before{left:-1px;border-right-color:#111}.fs-distance-arrow:after{right:-1px;border-left-color:#111}.fs-distance strong{position:relative;display:inline-block;margin-top:8px;background:#fff;padding:0 8px;color:#111;font-size:12px;font-weight:400}.fs-distance small{display:none}.fs-image-wrap{position:relative;display:inline-block;line-height:0;max-width:100%}.fs-image-wrap>img{display:block;max-width:100%;max-height:560px;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.fs-canvas.crop-mode{cursor:crosshair}.fs-crop-selection{position:absolute;z-index:20;border:3px solid #f59e0b;background:#f59e0b33;box-shadow:inset 0 0 0 1px #fff,0 0 0 9999px #0f172a61;pointer-events:none}.fs-annotation-toolbar button[data-action=crop].selected{border-color:var(--fms-orange);color:var(--fms-orange)}.fs-canvas.cropped .fs-zoom-layer{width:100%;height:100%}.fs-canvas.cropped .fs-image-wrap{width:100%;height:100%;display:grid;place-items:center}.fs-canvas.cropped .fs-image-wrap>img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.fs-annotation-preset{font-size:11px!important}.fs-annotation-preset.aircon{border-color:#4f9fe8!important;color:#82c4ff!important}.fs-annotation-preset.outlet{border-color:#ed6a6a!important;color:#ff9a9a!important}.fs-annotation.note.leader{transform:translateY(-50%);background:transparent;border:0;padding:0;box-shadow:none;gap:0}.fs-annotation.note.leader .fs-annotation-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-style:normal;font-size:14px;font-weight:700;color:currentColor;line-height:1;box-shadow:none;background:#fff!important;border:2px solid currentColor;z-index:1}.fs-annotation.note.leader.aircon .fs-annotation-icon{background:#fff!important;color:#1976d2}.fs-annotation.note.leader.outlet .fs-annotation-icon{background:#fff!important;color:#d52f3f}.fs-leader-line{position:relative;width:var(--leader-length,28px);margin:0 -1px;border-top:2px solid currentColor;opacity:.9}.fs-leader-line:after{content:"";position:absolute;right:0;top:0;height:var(--leader-bend,0px);border-left:2px solid currentColor}.fs-annotation.note.leader.aircon{color:#1976d2}.fs-annotation.note.leader.outlet{color:#d52f3f}.fs-annotation.note.leader b{padding:4px 7px;border:1px solid currentColor;border-radius:5px;background:#fff!important;color:#111!important;font-size:var(--annotation-font-size,11px);line-height:1.1;transform:translateY(var(--leader-bend,0px))}.fs-annotation.note.leader .fs-leader-label{cursor:move;touch-action:none}.fs-annotation.note:not(.leader) .fs-annotation-icon{display:none}.fs-download-link{color:var(--fms-orange);font-size:10px;text-decoration:none;white-space:nowrap}.fs-download-link:hover{text-decoration:underline}.fs-file-meta .fs-download-link{margin-left:auto}.fs-photo-grid figcaption>span:last-child{display:flex;align-items:center;gap:8px}.fs-grid{align-items:start}@media (min-width:701px){#fs-space .fs-grid{grid-template-columns:minmax(240px,.68fr) minmax(0,1.32fr)}#fs-space .fs-drawing-card{min-height:430px}#fs-space .fs-drawing-card .fs-canvas{min-height:390px}}#fs-space .fs-space-size-card .fs-form-grid{grid-template-columns:1fr;gap:9px}#fs-space .fs-space-size-card .fs-field input{font-size:13px;padding:11px 10px}.fs-direct-edit-hint{font-size:10px;color:var(--text3);align-self:center}.fs-print-only{display:none}.fs-print-space-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:7px;border-bottom:2px solid var(--fms-orange)}.fs-print-space-header>div{display:flex;align-items:baseline;gap:10px}.fs-print-space-header span{font-size:10px;letter-spacing:.14em;color:var(--fms-orange);font-weight:700}.fs-print-space-header h2{margin:0;color:var(--text);font-size:18px}.fs-print-space-header>strong{font-size:13px;color:var(--text2)}.fs-print-space-summary{display:flex;flex-wrap:wrap;gap:14px;padding:7px 0;color:var(--text3);font-size:10px}.fs-print-space-grid{margin-bottom:10px}.fs-print-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fs-print-fields span{padding:8px;background:var(--surface2);border-radius:var(--r-sm);color:var(--text3);font-size:10px}.fs-print-fields b{display:block;margin-top:4px;color:var(--text);font-size:12px}.fs-print-space{margin-top:24px}.fs-pdf-document{display:none}.fs-pdf-space-attachments{display:grid;gap:10px}.fs-pdf-cover,.fs-pdf-overview,.fs-pdf-space,.fs-pdf-transport{color:var(--text)}.fs-pdf-cover{padding:8px 0 20px;border-bottom:2px solid var(--fms-orange)}.fs-pdf-eyebrow,.fs-pdf-section-label{font-size:10px;letter-spacing:.14em;color:var(--fms-orange);font-weight:700}.fs-pdf-cover-row,.fs-pdf-space-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.fs-pdf-cover h1{margin:8px 0 5px;font-size:30px;color:var(--text)}.fs-pdf-cover p{margin:0;color:var(--text3);font-size:12px}.fs-pdf-version{text-align:right;color:var(--text2);font-size:15px}.fs-pdf-version small{font-size:10px;color:var(--text3)}.fs-pdf-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}.fs-pdf-project-grid>div{padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface2)}.fs-pdf-project-grid .wide{grid-column:span 2}.fs-pdf-project-grid span,.fs-pdf-space-meta span{display:block;color:var(--text3);font-size:10px}.fs-pdf-project-grid strong{display:block;margin-top:4px;color:var(--text);font-size:12px}.fs-pdf-overview{padding:22px 0 4px}.fs-pdf-overview h2,.fs-pdf-space h2,.fs-pdf-transport h2{margin:5px 0 12px;font-size:19px}.fs-pdf-overview table{width:100%;border-collapse:collapse;font-size:11px}.fs-pdf-overview th{padding:8px;background:var(--surface2);color:var(--text3);text-align:left;font-weight:600}.fs-pdf-overview td{padding:9px 8px;border-bottom:1px solid var(--border);color:var(--text2)}.fs-pdf-overview td strong{color:var(--text)}.fs-pdf-space{padding-top:24px;break-before:page}.fs-pdf-space:first-of-type{break-before:auto}.fs-pdf-space-header{padding-bottom:8px;border-bottom:2px solid var(--fms-orange)}.fs-pdf-space-header h2{margin:4px 0 0;font-size:23px}.fs-pdf-space-header>strong{color:var(--text2);font-size:14px}.fs-pdf-space-meta{display:flex;flex-wrap:wrap;gap:18px;padding:10px 0;color:var(--text2);font-size:11px}.fs-pdf-space-meta b{color:var(--text)}.fs-pdf-drawing,.fs-pdf-obstacles{min-width:0}.fs-pdf-obstacles ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.fs-pdf-obstacles li{display:grid;gap:3px;padding:9px;background:var(--surface2);border-radius:var(--r-sm)}.fs-pdf-obstacles li strong{font-size:11px;color:var(--text)}.fs-pdf-obstacles li span{font-size:10px;color:var(--text3)}.fs-pdf-products .fs-section{margin-top:16px}.fs-pdf-transport{padding-top:24px;break-before:page}.fs-pdf-footer{margin-top:24px;padding-top:8px;border-top:1px solid var(--border);color:var(--text3);font-size:9px}.fs-leader-line:after{top:var(--leader-bend-top,0px);height:var(--leader-bend-size,0px)}.fs-annotation.note.leader.left{flex-direction:row-reverse;transform:translate(-100%,-50%)}.fs-annotation.note.leader.left .fs-leader-line:after{right:auto;left:0}.fs-annotation b{font-size:var(--annotation-font-size,11px)}.fs-label-resize{display:inline-grid;place-items:center;min-width:16px;height:16px;margin-left:3px;border:1px solid currentColor;border-radius:3px;font-size:9px;line-height:1;cursor:ew-resize;background:#fff;color:currentColor}.fs-annotation.dimension{padding:0;border:0;background:transparent;box-shadow:none;height:0;display:block}.fs-dimension-line{position:absolute;left:0;right:0;top:0;border-top:2px solid var(--fms-orange)}.fs-dimension-line:before,.fs-dimension-line:after{content:"";position:absolute;top:-6px;border:5px solid transparent}.fs-dimension-line:before{left:-1px;border-right-color:var(--fms-orange)}.fs-dimension-line:after{right:-1px;border-left-color:var(--fms-orange)}.fs-annotation.dimension b{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);padding:2px 6px;border-radius:4px;background:var(--surface);color:var(--text);font-size:var(--annotation-font-size,11px);line-height:1.1;white-space:nowrap}.fs-dimension-handle{position:absolute;top:0;width:13px;height:13px;margin:-7px 0 0;border:2px solid var(--fms-orange);border-radius:50%;background:var(--surface);opacity:0;transition:opacity .12s}.fs-dimension-handle.start{left:-7px;cursor:ew-resize}.fs-dimension-handle.end{right:-7px;cursor:ew-resize}.fs-dimension-handle.rotate{left:50%;margin-left:-7px;top:-26px;cursor:grab;background:var(--fms-orange)}.fs-dimension-handle.rotate:active{cursor:grabbing}.fs-annotation.dimension:hover .fs-dimension-handle,.fs-annotation.dimension.selected .fs-dimension-handle{opacity:1}.fs-annotation.dimension.selected .fs-dimension-line{border-top-style:solid;box-shadow:0 0 0 1px color-mix(in srgb,var(--fms-orange),transparent 70%)}.fs-annotation.dimension .fs-annotation-remove{position:absolute;right:-9px;top:-26px}.fs-annotation.dimension .fs-label-resize{position:absolute;top:-20px;right:-8px}.fs-annotation.dimension b{position:relative}.fs-pdf-brand{width:118px;margin-bottom:10px}.fs-pdf-brand svg{display:block;width:100%;height:auto}.fs-doc-product{margin-top:14px;break-inside:avoid}.fs-doc-product h3{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.02em;color:#111;border-left:3px solid #111;padding-left:8px}.fs-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.fs-doc-card{margin-top:10px;padding:10px 12px;border:1px solid #bbb;border-radius:4px;background:#fff;color:#111;break-inside:avoid}.fs-doc-grid>.fs-doc-card{margin-top:0}.fs-doc-card-hd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px;padding-bottom:5px;border-bottom:1px solid #ddd}.fs-doc-card-hd h4{margin:0;font-size:11px;font-weight:700;color:#111}.fs-doc-card-hd span{font-size:9px;color:#666}.fs-doc-table{width:100%;border-collapse:collapse;font-size:10px}.fs-doc-table th,.fs-doc-table td{padding:4px 6px;border-bottom:1px solid #eee;text-align:left;vertical-align:baseline}.fs-doc-table tbody th{width:44%;font-weight:400;color:#555}.fs-doc-table td{color:#111;font-variant-numeric:tabular-nums}.fs-doc-table td em{margin-left:3px;font-style:normal;font-size:9px;color:#666}.fs-doc-table td strong{font-weight:700}.fs-doc-table tr:last-child th,.fs-doc-table tr:last-child td{border-bottom:0}.fs-doc-empty{color:#999}.fs-doc-level thead th{padding-bottom:5px;border-bottom:1px solid #bbb;font-size:9px;font-weight:600;color:#555}.fs-doc-level tbody th{width:auto;color:#111;font-weight:600}.fs-doc-level td{text-align:left}@media print{.fs-download-link{display:none!important}.field-survey-pg>*{display:none!important}.fs-pdf-document{font-size:10px!important}.fs-pdf-cover,.fs-pdf-overview,.fs-pdf-space,.fs-pdf-transport{color:#111!important}.fs-pdf-cover{padding-bottom:12px!important}.fs-pdf-cover h1{font-size:24px!important}.fs-pdf-cover p{font-size:9px!important}.fs-pdf-project-grid{gap:5px!important;margin-top:12px!important}.fs-pdf-project-grid>div{padding:7px 8px!important;background:#fff!important;border-color:#aaa!important}.fs-pdf-project-grid span,.fs-pdf-space-meta span{font-size:8px!important}.fs-pdf-project-grid strong{font-size:10px!important}.fs-pdf-overview{padding-top:14px!important}.fs-pdf-overview h2,.fs-pdf-space h2,.fs-pdf-transport h2{font-size:15px!important;margin:4px 0 8px!important}.fs-pdf-overview th,.fs-pdf-overview td{padding:6px!important}.fs-pdf-space{padding-top:12px!important}.fs-pdf-space-header h2{font-size:18px!important}.fs-pdf-space-attachments .fs-card{padding:8px!important}.fs-pdf-space-meta{gap:12px!important;padding:7px 0!important;font-size:9px!important}.fs-pdf-obstacles li{padding:6px!important}.fs-pdf-products .fs-section{margin-top:10px!important}.fs-pdf-products .fs-card{padding:9px!important}.fs-pdf-transport{padding-top:12px!important}.fs-pdf-footer{font-size:8px!important}.fs-print-only{display:block!important}.field-survey-pg>#fs-space,.field-survey-pg>#fs-product-wally,.field-survey-pg>#fs-product-ceily,.field-survey-pg>#fs-site .fs-space-selector-card{display:none!important}.fs-print-space{break-before:page!important;margin-top:0!important}.fs-print-space:first-child{break-before:auto!important}.fs-print-space-grid{grid-template-columns:minmax(0,1.45fr) minmax(170px,.55fr)!important;gap:8px!important}.fs-print-space-grid .fs-card{padding:9px!important}.fs-print-space .fs-section{margin-top:10px!important}.fs-print-space .fs-section-title h2{font-size:12px!important}.fs-print-space .fs-section-title>span{width:19px!important;height:19px!important}.fs-print-space .fs-floor-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important}.fs-print-space .fs-drawing-card .fs-canvas{min-height:220px!important}.fs-print-space .fs-zoom-layer>img{max-height:300px!important}#fs-site{margin-top:8px!important}.field-survey-pg{font-size:10px!important}.fs-heading{margin-bottom:8px!important;padding-bottom:7px!important}.fs-heading h1{font-size:16px!important;margin:0 0 3px!important}.fs-heading h1:before{font-size:9px!important;margin-bottom:2px!important}.fs-heading p{font-size:8px!important}.fs-product-badge{min-width:125px!important;padding:6px 8px!important}.fs-product-badge strong{font-size:14px!important}.fs-product-badge span{font-size:8px!important}#fs-site .fs-grid{grid-template-columns:minmax(0,1.35fr) minmax(180px,.65fr)!important;gap:7px!important}#fs-site .fs-card{padding:8px!important}#fs-site .fs-form-grid.two{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}#fs-site .fs-field{gap:2px!important;font-size:9px!important}#fs-site .fs-field input,#fs-site .fs-field select{padding:3px 0!important;font-size:9px!important}#fs-site .fs-space-row.selected .fs-space-select{font-size:10px!important}#fs-space .fs-grid{grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr)!important;gap:7px!important}#fs-space .fs-space-size-card .fs-form-grid{grid-template-columns:1fr!important;gap:5px!important}#fs-space .fs-drawing-card{min-height:300px!important}#fs-space .fs-drawing-card .fs-canvas{min-height:270px!important}.fs-section{margin-top:12px!important}.fs-section-title{margin-bottom:6px!important}.fs-section-title h2{font-size:13px!important}.fs-section-title>span{width:20px!important;height:20px!important;font-size:9px!important}.fs-kicker{display:none!important}.fs-heading h1{font-size:24px!important;letter-spacing:-.02em}.fs-heading h1:before{content:"현장 실측 결과서";display:block;font-size:11px;letter-spacing:.16em;margin-bottom:6px;color:#666}.fs-heading p{font-size:10px!important}.fs-product-badge{min-width:180px!important;padding:10px 12px!important}.fs-space-row:not(.selected){display:none!important}.fs-space-row.selected{display:block!important;border:0!important;padding:0!important;box-shadow:none!important;background:#fff!important}.fs-space-row.selected .fs-space-select{display:block!important;padding:0!important;font-size:13px!important;font-weight:700}.fs-space-row.selected .fs-space-select small{display:inline!important;margin-left:8px!important;font-weight:400!important;color:#555!important}.fs-space-row.selected .fs-space-name,.fs-space-row.selected .fs-space-products,.fs-space-row.selected .fs-space-remove,.fs-space-add{display:none!important}.fs-space-manager{display:block!important}.fs-field input,.fs-field select{border:0!important;border-bottom:1px solid #bbb!important;border-radius:0!important;padding:5px 0!important;background:#fff!important}.fs-annotation-remove,.fs-dimension-handle,.fs-label-resize,.fs-crop-selection,.fs-site-name-rule{display:none!important}.fs-annotation.dimension{background:transparent!important;border:0!important;padding:0!important}.fs-annotation.dimension b{background:#fff!important;color:#111!important}.fs-section-title>span{background:#222!important;color:#fff!important}.fs-section-title p{font-size:10px!important}.fs-media-upload-grid{display:none!important}.fs-bottom-actions span{font-size:9px;color:#666!important}@page{size:A4 portrait;margin:12mm 18mm}html,body,#app,.backstage-shell,.backstage-main,.main-area,.field-survey-page{display:block!important;width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;background:#fff!important;color:#111!important;overflow:visible!important}.backstage-sidebar,.backstage-sidebar-scrim,.backstage-mobile-menu,.field-survey-page .topbar,.field-survey-page .fs-bottom-actions,.field-survey-page .fs-annotation-toolbar,.field-survey-page .fs-zoom-controls{display:none!important}.field-survey-pg{width:100%!important;max-width:none!important;padding:0!important}.fs-pdf-document{box-sizing:border-box!important;width:100%!important;padding:0 6mm!important;background:#fff!important}.fs-heading{display:flex!important;margin-bottom:18px!important;border-bottom:2px solid #222;padding-bottom:12px}.fs-heading h1,.fs-section-title h2,.fs-card .card-title{color:#111!important}.fs-heading p,.fs-help,.fs-section-title p,.fs-empty-hint,.fs-unit,.fs-product-badge small,.fs-product-badge span{color:#444!important}.fs-product-badge,.fs-card{background:#fff!important;border:1px solid #999!important;box-shadow:none!important;color:#111!important}.fs-pdf-overview th{background:#f1f3f5!important;color:#111!important}.fs-pdf-overview td,.fs-pdf-overview td strong{color:#1f2933!important}.fs-pdf-obstacles li,.fs-pdf-products .fs-card,.fs-pdf-space-attachments .fs-card{background:#fff!important;color:#111!important}.fs-doc-card,.fs-doc-table td,.fs-doc-table tbody th,.fs-doc-product h3{background:#fff!important;color:inherit!important}.fs-doc-product h3,.fs-doc-card-hd h4,.fs-doc-table td{color:#111!important}.fs-doc-table tbody th,.fs-doc-card-hd span,.fs-doc-table td em{color:#555!important}.fs-doc-empty{color:#999!important}.fs-pdf-drawing .fs-zoom-layer img{width:100%!important;height:auto!important;max-width:100%!important;max-height:118mm!important;object-fit:contain!important}.fs-pdf-drawing .fs-image-wrap{width:auto!important;height:auto!important;max-width:100%!important}.fs-pdf-obstacles li strong{color:#111!important}.fs-pdf-obstacles li span{color:#4b5563!important}.fs-pdf-obstacles ul{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}.fs-pdf-space-meta{color:#4b5563!important}.fs-pdf-space-meta b{color:#111!important}.fs-empty-hint,.fs-pdf-space-header>strong{color:#4b5563!important}.fs-pdf-overview table{table-layout:fixed!important}.fs-pdf-overview th:first-child,.fs-pdf-overview td:first-child{width:26%!important}.fs-pdf-overview th:last-child,.fs-pdf-overview td:last-child{width:12%!important}.fs-grid{grid-template-columns:1fr!important;gap:10px!important}.fs-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fs-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fs-floor-layout{grid-template-columns:1fr!important}.fs-section{margin-top:18px!important;break-inside:avoid!important}.fs-card{break-inside:avoid!important;padding:12px!important}.fs-field input,.fs-field select{background:#fff!important;color:#111!important;border-color:#999!important}.fs-drawing-card,.fs-media-upload-grid,.fs-photo-grid,.fs-scan-file{break-inside:avoid!important}.fs-canvas{min-height:0!important;max-height:none!important;height:auto!important;background:#fff!important;border-color:#999!important;overflow:visible!important}.fs-zoom-layer{transform:none!important;max-width:100%!important}.fs-zoom-layer>img{max-width:100%!important;max-height:420px!important}.fs-annotation{background:#fff!important;color:#111!important;box-shadow:none!important}.fs-upload-button{background:#fff!important;color:#111!important;border-color:#999!important}.fs-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fs-photo-grid figcaption{color:#111!important}.fs-occupancy-card,.fs-product-option,.fs-lifting button{background:#fff!important;color:#111!important;border-color:#999!important}.fs-occupancy-card.selected,.fs-product-option.selected,.fs-lifting button.selected{box-shadow:0 0 0 1px #111 inset!important;border-color:#111!important}.fs-required{color:#111!important;border-color:#777!important}.field-survey-pg>.fs-heading,.field-survey-pg>#fs-site,.field-survey-pg>#fs-space,.field-survey-pg>#fs-product-wally,.field-survey-pg>#fs-product-ceily,.field-survey-pg>.fs-print-only{display:none!important}.field-survey-pg>.fs-pdf-document{display:block!important}.fs-pdf-cover h1,.fs-pdf-project-grid strong{color:#111!important}.fs-pdf-cover p,.fs-pdf-version,.fs-pdf-version small,.fs-pdf-project-grid span{color:#4b5563!important}.fs-pdf-overview{padding-bottom:0!important}.fs-pdf-overview+.fs-pdf-space{break-before:auto!important;padding-top:8px!important}.fs-pdf-overview+.fs-pdf-space .fs-pdf-space-header{padding-bottom:6px!important}.fs-pdf-overview+.fs-pdf-space .fs-pdf-space-meta{padding:5px 0!important}.fs-pdf-products .fs-section{margin-top:8px!important}.fs-pdf-products .fs-section-title{margin-bottom:5px!important}.fs-pdf-products .fs-section-title h2{font-size:13px!important}.fs-pdf-products .fs-section-title p{font-size:8px!important}.fs-pdf-products .fs-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 10px!important}.fs-pdf-products .fs-card{padding:10px!important}.fs-pdf-products .fs-card .card-hd{margin-bottom:9px!important}.fs-pdf-products .fs-card .card-title{font-size:11px!important}.fs-pdf-products .fs-help{font-size:8px!important;margin:0 0 8px!important}.fs-pdf-products .fs-form-grid{gap:8px!important}.fs-pdf-products .fs-field{gap:3px!important;font-size:8px!important}.fs-pdf-products .fs-field input,.fs-pdf-products .fs-field select{padding:5px!important;font-size:8px!important}.fs-pdf-products .fs-calculated{padding:6px 8px!important;font-size:8px!important}.fs-pdf-products .fs-floor-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:10px!important}.fs-pdf-products .fs-floor-diagram{height:205px!important}.fs-pdf-products .fs-rail{top:10px!important;height:18px!important;font-size:8px!important}.fs-pdf-products .fs-cabinet{top:38px!important;bottom:26px!important;width:74px!important;padding:10px 7px!important;gap:6px!important;grid-template-rows:auto auto!important}.fs-wheel i{width:16px!important;height:16px!important;font-size:8px!important}.fs-wheel em{height:6px!important}.fs-pdf-products .fs-cabinet b{bottom:-22px!important;font-size:8px!important}.fs-pdf-products .fs-distance{top:82px!important;left:44px!important;right:calc(20% + 48px)!important}.fs-pdf-products .fs-distance strong{margin-top:6px!important;font-size:9px!important}.fs-pdf-products .fs-level-table{gap:5px!important}.fs-pdf-products .fs-level-row{padding:6px!important;font-size:8px!important}.fs-level-delta strong{color:#111!important}.fs-pdf-products .fs-level-table input{font-size:8px!important}.fs-leader-line:after{top:var(--leader-bend-top,0px)!important;height:var(--leader-bend-size,0px)!important}}.site-lifecycle-fields{flex:0 0 100%;grid-column:1 / -1;display:grid;grid-template-columns:minmax(150px,200px) minmax(0,1fr);gap:12px;align-items:start;min-width:0}.site-lifecycle-fields [data-track-pre],.site-lifecycle-fields [data-track-warning]{grid-column:1 / -1}.site-lifecycle-fields [data-lifecycle-details]:not([hidden]){display:grid;grid-template-columns:minmax(150px,200px) minmax(0,1fr);gap:12px}.site-lifecycle-fields .profile-input{width:100%;min-width:0;box-sizing:border-box}.site-lifecycle-fields textarea{resize:vertical;min-height:60px}.roadmap-product.site-lifecycle-muted{background:var(--bg2, #f5f5f5)}.roadmap-product.site-lifecycle-muted .roadmap-product-steps{opacity:.6}@media (max-width: 600px){.site-lifecycle-fields,.site-lifecycle-fields [data-lifecycle-details]:not([hidden]){grid-template-columns:minmax(0,1fr)}}:root{--bs-bg: #050506;--bs-sidebar: #13161c;--bs-surface: #0e0f12;--bs-surface-2: #15181e;--bs-border: #262b35;--bs-border-warm: #2e2b26;--bs-text: #f0ede0;--bs-muted: #7a8594;--bs-muted-warm: #949187;--bs-amber: #f5a647;--bs-green: #52c78a;--bs-yellow: #e8b04b;--bs-purple: #a881d6;--bs-red: #e04d45;--bs-sidebar-width: 248px}body{background:var(--bs-bg);color:var(--bs-text);font-family:Noto Sans KR,Outfit,sans-serif}.backstage-shell{position:relative;isolation:isolate;min-height:100vh;overflow:hidden;overflow:clip;background:var(--bs-bg);color:var(--bs-text)}.backstage-shell:before,.backstage-shell:after{position:fixed;z-index:-1;inset:auto;width:52vw;height:76vh;pointer-events:none;content:"";opacity:.72;filter:blur(18px)}.backstage-shell:before{bottom:-35vh;left:-12vw;background:radial-gradient(ellipse at 20% 80%,rgba(245,140,26,.2),rgba(217,115,20,.1) 16%,rgba(38,20,5,.02) 45%,transparent 70%);transform:rotate(-16deg)}.backstage-shell:after{right:-12vw;bottom:-35vh;background:radial-gradient(ellipse at 80% 80%,rgba(245,140,26,.18),rgba(217,115,20,.09) 16%,rgba(38,20,5,.02) 45%,transparent 70%);transform:rotate(16deg)}.backstage-sidebar{z-index:20;flex:0 0 var(--bs-sidebar-width);width:var(--bs-sidebar-width);min-width:var(--bs-sidebar-width);max-width:var(--bs-sidebar-width);height:100vh;padding:24px 16px;border-right:1px solid var(--bs-border-warm);border-radius:0;background:#13161cf5;box-shadow:18px 0 44px #00000038;-webkit-backdrop-filter:none;backdrop-filter:none}.backstage-brand{grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;padding:0 8px}.backstage-brand,.backstage-appbar-brand{color:inherit;text-decoration:none;cursor:pointer;border-radius:8px;transition:background-color .16s ease}.backstage-brand:hover,.backstage-appbar-brand:hover{background:#ffffff0e}.backstage-brand:focus-visible,.backstage-appbar-brand:focus-visible{outline:2px solid var(--bs-amber);outline-offset:3px}@media (pointer: coarse){.backstage-brand{min-height:44px;padding-top:6px;padding-bottom:6px}.backstage-appbar-brand{align-self:stretch;min-height:44px}}.backstage-brand-mark{width:32px;height:32px;border:0;border-radius:8px;background:var(--bs-amber);box-shadow:none;color:#090a0d;font-size:11px}.backstage-brand-name{color:var(--bs-text);font-size:16px;font-weight:800}.backstage-brand-sub{margin-top:2px;color:var(--bs-muted);font-family:Outfit,sans-serif;font-size:8px;letter-spacing:.08em}.backstage-profile-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;margin-top:18px;padding:10px;border:1px solid var(--bs-border);border-radius:10px;background:#ffffff05}.backstage-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f2a23c29;color:var(--fms-orange);font-size:12px;font-weight:800;letter-spacing:.02em}.backstage-profile-copy{display:grid;gap:1px;min-width:0}.backstage-profile-copy strong{color:var(--bs-text);font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backstage-profile-copy span{color:var(--bs-muted);font-size:9px;line-height:1.4;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backstage-profile-copy em{justify-self:start;margin-top:7px;padding:3px 9px;border:1px solid rgba(242,162,60,.28);border-radius:999px;background:#f2a23c24;color:var(--fms-orange);font-size:10px;font-style:normal;font-weight:700;letter-spacing:.01em}.backstage-nav{gap:8px;margin-top:32px}.backstage-nav-group{margin:0;padding:0 0 8px}.backstage-nav-label{padding:0 8px 6px;color:var(--bs-muted);font-size:10px;font-weight:700}.backstage-appbar{display:none}.backstage-signout{width:100%;margin-top:8px;min-height:38px;padding:0 12px;border:1px solid var(--bs-border);border-radius:9px;background:transparent;color:var(--bs-muted);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.backstage-signout:hover{border-color:var(--bs-border-warm);color:var(--bs-text)}.backstage-signout:disabled{opacity:.5;cursor:default}.backstage-nav-icon{flex:0 0 16px;width:16px;height:16px}.backstage-nav-item{position:relative;display:flex;min-height:40px;align-items:center;gap:10px;width:100%;padding:12px;border:0;border-radius:8px;background:transparent;color:#b2b8c2;font-family:Noto Sans KR,sans-serif;font-size:12px;font-weight:700;text-align:left;text-decoration:none;color:inherit}.backstage-nav-item:focus-visible{outline:2px solid var(--bs-amber);outline-offset:2px}.backstage-nav-external>span{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backstage-nav-external-mark{flex:0 0 12px;width:12px;height:12px;margin-left:auto}@media (pointer: coarse){.backstage-nav-item{min-height:44px}}.backstage-nav-item small{margin-left:auto;color:var(--bs-muted);font-family:Outfit,sans-serif;font-size:9px}.backstage-nav-item:hover,.backstage-nav-item.active{background:#201e1a;color:var(--bs-text)}.backstage-nav-item.active{box-shadow:inset 0 0 0 1px #f5a64730}.backstage-nav-item.active:before{position:absolute;left:12px;width:3px;height:16px;border-radius:2px;background:var(--bs-amber);content:""}.backstage-nav-item.active>span,.backstage-nav-item.active>small{margin-left:13px}.backstage-main{position:relative;z-index:1;min-width:0;background:transparent}.backstage-main .topbar,.fms-dashboard-app .topbar,.field-survey-page .topbar{min-height:106px;padding:24px 40px;border-bottom:1px solid var(--bs-border);background:#0a0b0ff2;-webkit-backdrop-filter:none;backdrop-filter:none}.backstage-main .page-title,.fms-dashboard-app .page-title,.field-survey-page .page-title{color:var(--bs-text);font-size:22px;font-weight:800}.fms-dashboard-subtitle,.field-survey-page .tb-left p{color:#b2b8c2;font-size:11px}.fms-dashboard-app,.field-survey-page{min-height:100%;background:transparent}.fms-dashboard-app .pg,.field-survey-pg{width:100%;max-width:none;padding:24px 32px 48px}.fms-dashboard-app .card,.fms-dashboard-app .stat,.fms-dashboard-app .dashboard-site-search-card,.fms-dashboard-app .dashboard-recent-card,.fms-dashboard-app .dashboard-priority-card,.fms-dashboard-app .dashboard-process-lane,.fms-dashboard-app .dashboard-schedule-card,.field-survey-page .fs-card{border:1px solid var(--bs-border);border-radius:12px;background:var(--bs-surface);box-shadow:none}.fms-dashboard-app .card-hd,.field-survey-page .fs-card .card-hd{border-bottom-color:var(--bs-border)}.fms-dashboard-app .btn.primary,.field-survey-page .btn.primary{border-color:var(--bs-amber);background:var(--bs-amber);color:#090a0d;box-shadow:0 4px 5px #f5a64721}.fms-dashboard-app .btn,.field-survey-page .btn{border-color:var(--bs-border);border-radius:8px;background:var(--bs-surface-2);color:var(--bs-text)}.fms-dashboard-app .stat:before{display:none}.fms-dashboard-app .stat strong,.fms-dashboard-app .card-title,.field-survey-page .fs-card .card-title,.field-survey-page .fs-section-title h2{color:var(--bs-text)}.fms-dashboard-app .stat small,.fms-dashboard-app .fms-card-sub,.field-survey-page .fs-help,.field-survey-page .fs-section-title p,.field-survey-page .fs-heading p{color:var(--bs-muted)}.field-survey-page .fs-kicker,.field-survey-page .fs-required,.field-survey-page .fs-product-badge strong{color:var(--bs-amber)}@media (max-width: 660px){.backstage-sidebar{flex-basis:min(var(--bs-sidebar-width),calc(100vw - 44px));width:min(var(--bs-sidebar-width),calc(100vw - 44px));min-width:0;max-width:calc(100vw - 44px);z-index:240}.backstage-appbar{position:fixed;top:0;left:0;right:0;z-index:250;display:flex;align-items:center;gap:10px;height:44px;padding:0 6px 0 4px;border-bottom:1px solid var(--bs-border);background:var(--surface)}.backstage-appbar-brand{display:flex;flex:1 1 auto;align-items:center;gap:7px;min-width:0;color:inherit;text-decoration:none}.backstage-appbar-mark{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;background:var(--bs-amber);color:#0a0a0c;font-size:10px;font-weight:800}.backstage-appbar-brand strong{color:var(--bs-text);font-size:12.5px;font-weight:800;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backstage-appbar-signout{display:grid;flex:0 0 38px;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--bs-muted);cursor:pointer}.backstage-appbar-signout svg{width:17px;height:17px}.backstage-appbar-signout:active{background:#ffffff12;color:var(--bs-text)}.backstage-mobile-menu{position:static;flex:0 0 38px;width:38px;min-height:38px;padding:0;border:0;border-radius:9px;background:transparent;box-shadow:none;color:var(--bs-text);font-size:0}.backstage-mobile-menu:before{content:"☰";font-size:17px;line-height:1}.backstage-main{padding-top:44px}.backstage-sidebar{top:44px;height:calc(100dvh - 44px)}.backstage-main .topbar,.fms-dashboard-app .topbar,.field-survey-page .topbar{min-height:68px;padding:12px 16px 12px 66px}.page-title{font-size:19px;line-height:1.25}.back-btn{white-space:nowrap}.card-hd{flex-wrap:wrap;gap:6px 10px}.card-hd>*{min-width:0}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.fms-dashboard-app .stat,.stat{min-height:0;padding:12px 13px}.stat-val,.as-donut-center strong{font-size:1.5rem}.stat-sub{display:none}.stacked-table{min-width:0}.fms-table-wrap:has(.stacked-table){overflow-x:visible}.stacked-table thead{display:none}.stacked-table,.stacked-table tbody,.stacked-table tr,.stacked-table td{display:block;width:100%}.stacked-table tr{margin-bottom:10px;padding:11px 13px;border:1px solid var(--bs-border);border-radius:10px;background:#ffffff04}.stacked-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.stacked-table td{display:grid;gap:1px;padding:0;border:0;white-space:normal;min-width:0}.stacked-table td:before{content:attr(data-label);color:var(--text3);font-size:10px;line-height:1.3}.stacked-table td[data-label=현장명],.stacked-table td[data-label=증상],.stacked-table td[data-label=상태],.stacked-table td:not([data-label]){grid-column:1 / -1}.stacked-table td[data-label=현장명]{font-size:15px;font-weight:700;line-height:1.35}.stacked-table td[data-label=증상]{color:var(--text2);line-height:1.5}.stacked-table td[data-label=현장명]:before,.stacked-table td[data-label=증상]:before{content:none}.stacked-table td[data-label=현장명]{order:1}.stacked-table td[data-label=고객명]{order:2}.stacked-table td[data-label=접수번호]{order:3}.stacked-table td[data-label=증상]{order:4;margin-bottom:2px}.stacked-table td[data-label=분야]{order:5}.stacked-table td[data-label=접수일]{order:7}.stacked-table td[data-label=기한]{order:8}.stacked-table td[data-label=상태]{order:9}.stacked-table td[data-label=일지]{order:10}.stacked-table td[data-label=현장],.stacked-table td[data-label=제품],.stacked-table td[data-label=단계]{grid-column:1 / -1}.stacked-table td[data-label=제품]{order:2}.stacked-table td[data-label=단계]{order:3;justify-items:start;margin:2px 0}.stacked-table td[data-label="조립 완료"]{order:4}.stacked-table td[data-label="출하 준비"]{order:5}.stacked-table td[data-label="시공 예정"]{order:6}.stacked-table td[data-label="시공 완료"]{order:7}.stacked-table td[data-label=현장],.stacked-table td[data-label=상태],.stacked-table td[data-label="연결 현장"],.stacked-table td[data-label=작업]{grid-column:1 / -1}.stacked-table td[data-label=현장]{order:1;font-size:15px;font-weight:700;line-height:1.35}.stacked-table td[data-label=현장]:before{content:none}.stacked-table td[data-label=고객]{order:2}.stacked-table td[data-label=제품]{order:3}.stacked-table td[data-label=상태]{order:4;justify-items:start}.stacked-table td[data-label=수신일]{order:5}.stacked-table td[data-label=담당자]{order:6}.stacked-table td[data-label="연결 현장"]{order:7}.stacked-table td[data-label=작업]{order:8}.stacked-table .ps-row-actions{display:flex;flex-wrap:wrap;gap:8px}.stacked-table .ps-row-actions:before{flex:1 1 100%}.card-hd,.card-bd{padding:12px 14px}.card-hd .fms-card-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.stacked-table td:not([data-label]){grid-template-columns:1fr}.stacked-table td:not([data-label]):before{content:none}.stacked-table .as-status-editor{flex-wrap:wrap}}.fs-attachment-alert{display:grid;gap:5px;margin:0 0 16px;padding:12px 15px;border:1px solid rgba(255,138,138,.45);border-radius:10px;background:#ff6b6b14;font-size:12px;line-height:1.6}.fs-attachment-alert strong{color:#ff8a8a;font-size:12px}.fs-attachment-alert span{color:var(--text2)}.fs-annotation,.fs-annotation .fs-leader-label,[data-dimension-handle],[data-resize-label]{touch-action:none}@media (pointer: coarse){.field-survey-page .fs-annotation [data-resize-label]{position:relative;z-index:6}.field-survey-page .fs-annotation-remove{z-index:6}.field-survey-page .fs-annotation.dimension .fs-dimension-handle:before,.field-survey-page .fs-annotation [data-resize-label]:before{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px}.field-survey-page .fs-annotation-remove:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}}.field-survey-page .fs-canvas.is-zoomed,.field-survey-page .fs-canvas.crop-mode{touch-action:none}.field-survey-page .fs-drawing-card .fs-annotation.dimension b,.field-survey-page .fs-drawing-card .fs-annotation.note b,.field-survey-page .fs-drawing-card .fs-annotation .fs-leader-label{font-size:max(9px,var(--annotation-font-size, 12px))}.field-survey-page .fs-annotation.note b,.field-survey-page .fs-annotation .fs-leader-label{font-size:var(--annotation-font-size, 11px);line-height:1.35}.field-survey-page .fs-zoom-layer{width:100%;min-width:0}.field-survey-page .fs-image-wrap{position:relative;display:block;width:100%;min-width:0;container-type:inline-size;line-height:0}.field-survey-page .fs-image-wrap>img{display:block;width:100%;height:auto}.field-survey-page .fs-drawing-failed{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;padding:18px;border:1px dashed var(--red);border-radius:var(--r-sm);background:color-mix(in srgb,var(--red),transparent 92%);color:var(--text2);font-size:12.5px;line-height:1.6;text-align:center}.field-survey-page .fs-drawing-failed strong{color:var(--red)}.field-survey-page .fs-image-wrap:has(>[data-drawing-failed]){min-height:220px}.field-survey-page .fs-annotation{position:absolute}.field-survey-page .fs-annotation.dimension{z-index:3;display:block;min-width:48px;height:34px;padding:0;border:0;border-radius:0;background:transparent;color:#090a0d;cursor:grab;transform:translate(-50%,-50%);box-shadow:none}.field-survey-page .fs-annotation.dimension:active{cursor:grabbing}.field-survey-page .fs-annotation.dimension b{position:absolute;top:0;left:50%;z-index:2;padding:1px 4px;background:#f0ede0eb;color:#090a0d;font-family:JetBrains Mono,monospace;font-size:var(--annotation-font-size, 12px);line-height:1.35;white-space:nowrap;transform:translate(-50%)}.field-survey-page .fs-dimension-line{position:absolute;top:23px;right:0;left:0;height:1px;background:var(--bs-amber)}.field-survey-page .fs-dimension-line:before,.field-survey-page .fs-dimension-line:after{position:absolute;top:-4px;width:0;height:0;content:"";border-top:4px solid transparent;border-bottom:4px solid transparent}.field-survey-page .fs-dimension-line:before{left:-1px;border-right:7px solid var(--bs-amber)}.field-survey-page .fs-dimension-line:after{right:-1px;border-left:7px solid var(--bs-amber)}.field-survey-page .fs-annotation.dimension .fs-annotation-remove{position:absolute;top:-5px;right:-8px;z-index:4;width:16px;height:16px;padding:0;border:1px solid var(--bs-border);border-radius:50%;background:var(--bs-surface);color:var(--bs-text);font-size:11px;line-height:14px}.field-survey-page .fs-annotation.dimension .fs-dimension-handle{position:absolute;z-index:5;display:none;width:12px;height:12px;border:2px solid var(--bs-amber);border-radius:50%;background:var(--bs-surface);cursor:pointer}.field-survey-page .fs-annotation.dimension.selected .fs-dimension-handle{display:block}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.start{top:17px;left:-6px;cursor:ew-resize}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.end{top:17px;right:-6px;cursor:ew-resize}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.rotate{top:-16px;left:calc(50% - 6px);cursor:grab}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.rotate:after{position:absolute;top:11px;left:4px;width:1px;height:9px;background:var(--bs-amber);content:""}.field-survey-page .fs-direct-edit-hint{align-self:center;color:var(--bs-muted);font-size:10px}.field-survey-page .fs-annotation-toolbar{grid-template-columns:auto auto minmax(130px,1fr) minmax(220px,auto) auto;align-items:center}.field-survey-page .fs-annotation-toolbar label{display:grid;grid-template-columns:auto minmax(60px,1fr) auto;align-items:center;gap:6px;color:var(--bs-muted);font-size:10px;white-space:nowrap}.field-survey-page .fs-annotation-toolbar label input[type=range]{min-width:60px;accent-color:var(--bs-amber)}.field-survey-page .fs-annotation-toolbar label output{min-width:36px;text-align:right}@media (max-width: 900px){.field-survey-page .fs-annotation-toolbar{grid-template-columns:1fr 1fr}.field-survey-page .fs-annotation-toolbar input[data-annotation-text],.field-survey-page .fs-annotation-toolbar .fs-direct-edit-hint,.field-survey-page .fs-annotation-toolbar button[data-action=open-file]{grid-column:1 / -1}}.backstage-main .topbar.page-header,.fms-dashboard-app .topbar.page-header,.field-survey-page .topbar.page-header{min-height:0;padding:18px 40px;gap:16px;align-items:center}.topbar.page-header .tb-left{display:flex;align-items:center;gap:14px;min-width:0}.topbar.page-header .page-heading{min-width:0}.topbar.page-header .page-title-row{display:flex;align-items:baseline;gap:10px;min-width:0}.topbar.page-header .page-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar.page-header .page-count{flex:0 0 auto;padding:2px 9px;border:1px solid var(--bs-border);border-radius:999px;color:var(--bs-text-dim, #b2b8c2);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.topbar.page-header .page-subtitle{margin:3px 0 0;color:#b2b8c2;font-size:11px;line-height:1.5}.topbar.page-header .tb-right{display:flex;flex-shrink:0;align-items:center;gap:8px}@media (max-width: 760px){.backstage-main .topbar.page-header,.fms-dashboard-app .topbar.page-header,.field-survey-page .topbar.page-header{flex-wrap:wrap;padding:14px 18px}}.site-meta-row{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:14px;padding:11px 14px;border:1px solid var(--bs-border);border-radius:10px;background:#ffffff05;font-size:12px;color:var(--bs-text)}.site-meta-row b{margin-right:7px;color:#b2b8c2;font-size:11px;font-weight:600}.back-btn{background:#ffffff0a;color:var(--bs-text-dim, #b2b8c2);font-family:inherit}.back-btn:hover{background:#ffffff17;color:var(--bs-text)}.wbs-wrap{scrollbar-width:thin;scrollbar-color:rgba(255,177,75,.4) transparent}.wbs-wrap::-webkit-scrollbar{height:8px}.wbs-wrap::-webkit-scrollbar-track{background:transparent}.wbs-wrap::-webkit-scrollbar-thumb{border-radius:999px;background:#ffb14b57}.wbs-wrap::-webkit-scrollbar-thumb:hover{background:#ffb14b85}.wbs-undated{margin-top:22px;padding-top:16px;border-top:1px solid var(--bs-border)}.wbs-undated-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:10px}.wbs-undated-head strong{color:var(--bs-text);font-size:13px;font-weight:700}.wbs-undated-head span{color:#b2b8c2;font-size:11px}.product-install-date{display:inline-block;margin-top:2px;color:#b2b8c2;font-size:12px}.product-install-date b{color:var(--bs-text);font-weight:600}.product-install-date.empty{color:var(--text3)}.ps-section-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:20px 0 10px;padding-bottom:7px;border-bottom:1px solid var(--bs-border);color:var(--bs-text);font-size:13px;font-weight:700}.ps-section-label:first-child{margin-top:0}.ps-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.ps-field{display:grid;gap:5px;align-content:start;min-width:0}.ps-field.wide{grid-column:1 / -1}.ps-field[hidden]{display:none}.ps-static{padding:9px 10px;border:1px solid var(--bs-border);border-radius:7px;background:#ffffff05;color:var(--bs-text);font-size:12px}.ps-email-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center}.ps-email-row [hidden]{display:none}.ps-at{color:var(--text3)}.ps-address-row{display:grid;grid-template-columns:minmax(0,160px) auto;gap:8px;margin-bottom:8px}.ps-field .form-input+.form-input{margin-top:8px}.ps-address-embed{height:420px;margin-bottom:8px;border:1px solid var(--bs-border);border-radius:8px;overflow:hidden}.ps-address-embed[hidden]{display:none}.ps-line-list{display:grid;gap:12px}.ps-line{padding:12px;border:1px solid var(--bs-border);border-radius:10px;background:#ffffff05}.ps-line-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.ps-line-no{color:var(--bs-text);font-size:12px;font-weight:700}.ps-line-code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text3);font-family:JetBrains Mono,monospace;font-size:11px}.ps-line-code.ready{color:var(--fms-orange)}.ps-line-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ps-line-grid label{display:grid;gap:4px;min-width:0}.ps-line-grid label[hidden]{display:none}.ps-line-qty{max-width:110px}.ps-line-remove{width:26px;height:26px;border:1px solid var(--bs-border);border-radius:6px;background:#ffffff0a;color:#b2b8c2;cursor:pointer}.ps-line-remove:hover{color:var(--bs-text)}.ps-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:18px}.ps-form-message{color:var(--red);font-size:11px;white-space:pre-line}.ps-row-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ps-row-note{flex-basis:100%;color:#b2b8c2;font-size:11px}.ps-row-note.error{color:var(--red)}.ps-line-grid .form-input.is-derived{background:#ffb14b12;border-color:#ffb14b47;color:var(--fms-orange)}.site-product-form{margin-top:14px}.site-product-list{display:grid;gap:10px;margin-top:14px}.site-product-row{padding:12px;border:1px solid var(--bs-border);border-radius:9px;background:#ffffff05}.site-product-row-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:10px;color:var(--bs-text);font-size:12px}.site-product-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.site-product-empty{margin:12px 0 0;padding:12px;border:1px dashed var(--bs-border);border-radius:9px;color:var(--text3);font-size:12px}.site-form-field.wide{grid-column:1 / -1}.site-address-row{display:grid;grid-template-columns:minmax(0,160px) auto;gap:8px}.site-address-row+.profile-input,.site-address-row~.profile-input{margin-top:8px}.site-address-embed{height:400px;margin-top:8px;border:1px solid var(--bs-border);border-radius:8px;overflow:hidden}.site-address-embed[hidden]{display:none}.site-form-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}.site-form-hint em{color:var(--text3);font-style:normal;font-size:11px}.site-customer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--bs-border)}.site-customer-note{grid-column:1 / -1;margin:0;color:var(--text3);font-size:11px;line-height:1.6}.site-customer-note strong{color:var(--fms-orange);font-weight:600}.site-customer-grid .profile-input[readonly],.site-customer-grid .profile-input[disabled]{color:var(--text3);cursor:not-allowed}.site-product-label{padding:2px 8px;border:1px solid var(--bs-border);border-radius:999px;color:var(--fms-orange);font-size:10px}.site-channel{display:inline-flex;align-items:center;padding:2px 9px;border:1px solid currentColor;border-radius:999px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;letter-spacing:.06em}.site-channel.is-b2c{color:#7fd4a0;background:#7fd4a01a}.site-channel.is-b2b{color:#8fb4ff;background:#8fb4ff1a}.site-channel.is-unset{color:var(--text3);border-style:dashed;font-weight:600;letter-spacing:0}.as-filterbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.as-filter-chip{padding:6px 14px;border:1px solid var(--bs-border);border-radius:999px;background:var(--bs-surface-2);color:var(--bs-text);font-size:13px;cursor:pointer}.as-filter-chip:hover{border-color:#f5a64773}.as-filter-chip.active{border-color:var(--bs-amber);background:var(--bs-amber);color:#090a0d}.as-inline-message{margin-bottom:16px;padding:10px 12px;color:var(--bs-amber);font-size:12px}.as-status-editor{display:flex;align-items:center;gap:6px;min-width:190px}.as-status-editor select{flex:1}.fms-table tbody tr[data-as-open]{cursor:pointer}.as-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.as-sortable:hover{color:var(--bs-text)}.as-sortable.is-sorted{color:var(--bs-amber)}.as-sort-arrow{display:inline-block;min-width:10px;margin-left:4px;font-size:9px}.as-section{margin-bottom:28px}.as-section>h3{margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--bs-border);color:var(--bs-text);font-size:14px;font-weight:700}.as-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.as-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.as-field>label{color:var(--text2);font-size:12px;font-weight:600}.as-input{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--bs-border);border-radius:6px;background:var(--bs-surface-2);color:var(--bs-text);font:inherit;font-size:13px}textarea.as-input{line-height:1.5;resize:vertical}.as-input:focus{outline:none;border-color:var(--fms-orange)}.as-input[readonly]{color:var(--text2);cursor:not-allowed}.as-hint{margin:0 0 12px;color:var(--text3);font-size:12px;line-height:1.6}.as-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-bottom:40px}.as-toast{position:fixed;bottom:24px;left:50%;z-index:9999;transform:translate(-50%);padding:10px 20px;border-radius:8px;background:var(--bs-surface-2);border:1px solid var(--bs-border);color:var(--bs-text);font-size:13px}.as-toast[hidden]{display:none}.as-toast.is-error{border-color:var(--red);color:var(--red)}.ps-modules{margin-top:12px;padding:12px;border:1px solid var(--bs-border);border-radius:9px;background:#ffffff04}.ps-modules[hidden]{display:none}.ps-modules-head{display:grid;grid-template-columns:1fr minmax(0,180px) minmax(0,140px) minmax(0,150px);gap:12px;align-items:end}.ps-modules-head .ps-section-label{margin:0;padding-bottom:9px;border-bottom:0}@media (max-width: 760px){.ps-modules-head{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-modules-head .ps-section-label{grid-column:1 / -1;padding-bottom:0}}.ps-modules-field{display:grid;gap:4px;min-width:0}.ps-modules-field[hidden]{display:none}.ps-run-width{display:inline-flex;align-items:center;gap:3px;margin-left:6px}.ps-run-width input{width:62px;padding:2px 5px;border:1px solid var(--bs-border);border-radius:4px;background:var(--bs-surface);color:var(--bs-text);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:16px;text-align:right}.ps-run-width em{color:var(--text3);font-size:11px;font-style:normal}.ps-run li.is-custom-width .ps-run-sku{color:var(--fms-orange)}.ps-run li.is-custom-width .ps-run-width input{border-color:var(--fms-orange)}.ps-accessory{margin-top:14px;padding:12px 14px;border:1px solid var(--bs-border);border-radius:var(--r-sm);background:var(--bs-surface-2)}.ps-accessory[hidden]{display:none}.ps-accessory .ps-section-label{display:block;margin-bottom:8px}.ps-install-blocked{border-color:var(--red)}.ps-install-block{color:var(--red);font-weight:600}.ps-accessory--new{border-color:var(--fms-orange);box-shadow:0 0 0 3px var(--orange-lt)}.ps-accessory-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,220px));gap:12px}.ps-parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:12px}.ps-part{padding:10px;border:1px solid var(--bs-border);border-radius:8px;background:#ffffff05}.ps-part[hidden]{display:none}.ps-part-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px}.ps-part-head h5{margin:0;color:var(--bs-text);font-size:12px;font-weight:700}.ps-part-sum{color:#b2b8c2;font-family:JetBrains Mono,monospace;font-size:11px}.ps-part-sum.is-matched{color:var(--green, #46c08a)}.ps-run{display:grid;gap:4px;margin:0 0 10px;padding:0;list-style:none}.ps-run li{display:flex;align-items:center;gap:8px;padding:5px 7px;border:1px solid var(--bs-border);border-radius:6px;background:#ffffff08;font-size:12px}.ps-run-no{min-width:16px;color:var(--text3);font-size:11px}.ps-run-name{flex:1;min-width:0;color:var(--bs-text)}.ps-run-sku{color:var(--text3);font-family:JetBrains Mono,monospace;font-size:10px}.ps-run-remove{width:20px;height:20px;border:1px solid var(--bs-border);border-radius:5px;background:#ffffff0a;color:#b2b8c2;line-height:1;cursor:pointer}.ps-run-remove:hover{color:var(--bs-text)}.ps-run-empty{display:block;padding:9px 7px;border:1px dashed var(--bs-border);border-radius:6px;background:none;color:var(--text3);font-size:11px}.ps-adder-row{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-top:1px solid var(--bs-border)}.ps-adder-width{min-width:46px;padding-top:4px;color:#b2b8c2;font-family:JetBrains Mono,monospace;font-size:11px}.ps-chips{display:flex;flex-wrap:wrap;gap:5px}.ps-chip{display:inline-flex;align-items:baseline;gap:5px;padding:4px 8px;border:1px solid var(--bs-border);border-radius:999px;background:#ffffff0a;color:var(--bs-text);font-size:11px;cursor:pointer}.ps-chip:hover{border-color:#ffb14b80;color:var(--fms-orange)}.ps-chip-sku{color:var(--text3);font-family:JetBrains Mono,monospace;font-size:9px}.ps-consent{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:9px 10px;border:1px solid rgba(255,177,75,.35);border-radius:7px;background:#ffb14b0f;color:var(--bs-text);font-size:12px}.ps-consent[hidden]{display:none}.ps-consent-note{flex-basis:100%;color:#b2b8c2;font-size:11px}.ps-checks{display:grid;gap:5px;margin:12px 0 0;padding:0;list-style:none}.ps-checks[hidden]{display:none}.ps-check{padding:6px 9px;border-left:3px solid var(--red);border-radius:0 6px 6px 0;background:#e84c4c14;font-size:11px}.ps-check.is-warn{border-left-color:var(--fms-orange);background:#ffb14b14}.ps-check strong{color:var(--bs-text);font-weight:600}.ps-check span{display:block;margin-top:2px;color:#b2b8c2}.product-family-editor{display:inline-flex;align-items:center;gap:7px;margin:3px 0}.product-family-label{color:#b2b8c2;font-size:11px}.product-family-editor select{width:auto;min-width:130px}.product-family-editor.needs-fix select{border-color:#ffb14b8c;color:var(--fms-orange)}.product-family-note{color:#b2b8c2;font-size:11px}.product-family-note.error{color:var(--red)}.roadmap{display:grid;gap:18px}.roadmap-shared{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.roadmap-node{display:grid;gap:3px;min-width:108px;padding:10px 12px;border:1px solid var(--bs-border);border-radius:9px;background:#ffffff05}.roadmap-node.done{border-color:#ffb14b66}.roadmap-dot{width:8px;height:8px;border-radius:50%;background:var(--text3)}.roadmap-node.done .roadmap-dot{background:var(--fms-orange)}.roadmap-label{color:var(--bs-text);font-size:12px;font-weight:600}.roadmap-date{color:#b2b8c2;font-size:11px}.ps-edit-banner{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;border:1px solid rgba(255,177,75,.45);border-radius:10px;background:#f2a23c14;font-size:12px}.ps-edit-banner[hidden]{display:none}.ps-edit-banner strong{color:var(--fms-orange)}.ps-edit-banner span{color:var(--text3)}.ps-edit-banner button{margin-left:auto}.guide-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:start}.guide-toc{position:sticky;top:18px;display:grid;gap:2px;padding:14px;border:1px solid var(--bs-border);border-radius:12px;background:var(--surface)}.guide-toc-label{margin-bottom:6px;color:var(--text3);font-size:10px;letter-spacing:.06em}.guide-toc button{padding:7px 9px;border:0;border-radius:7px;background:transparent;color:var(--text2);font:inherit;font-size:12px;text-align:left;cursor:pointer}.guide-toc button:hover{background:#ffffff0a;color:var(--bs-text)}.guide-toc button.active{background:#f2a23c1f;color:var(--fms-orange)}.guide-body{display:grid;gap:14px;max-width:860px}.guide-section .card-bd{display:grid;gap:14px}.guide-steps{display:grid;gap:8px;margin:0;padding-left:20px}.guide-steps li{color:var(--text2);font-size:12px;line-height:1.6}.guide-steps strong{display:block;color:var(--bs-text);font-size:13px}.guide-steps span{color:var(--text3)}.guide-rules,.guide-qa{display:grid;gap:4px 14px;margin:0;font-size:12px;line-height:1.65}.guide-rules{grid-template-columns:minmax(140px,240px) 1fr}.guide-qa{grid-template-columns:minmax(160px,260px) 1fr}.guide-rules dt,.guide-qa dt{color:var(--bs-text);font-weight:600}.guide-qa dt:before{content:"Q. ";color:var(--fms-orange)}.guide-rules dd,.guide-qa dd{margin:0;color:var(--text2)}.guide-note{margin:0;padding-left:12px;border-left:2px solid var(--bs-border);color:var(--text3);font-size:11px;line-height:1.7}.guide-warn{display:grid;gap:5px;padding:12px 14px;border:1px solid rgba(255,177,75,.35);border-radius:10px;background:#f2a23c0f;font-size:12px;line-height:1.65}.guide-warn strong{color:var(--fms-orange)}.guide-warn span{color:var(--text2)}.guide-flow{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.guide-flow li{display:flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--bs-border);border-radius:999px;color:var(--text2);font-size:11px}.guide-flow em{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#f2a23c29;color:var(--fms-orange);font-style:normal;font-size:9px;font-weight:700}.guide-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.guide-split-label{margin-bottom:6px;color:var(--text3);font-size:10px;letter-spacing:.05em}.guide-split ul{margin:0;padding-left:18px;color:var(--text2);font-size:12px;line-height:1.7}.guide-table td{vertical-align:top}.guide-role-current td{background:#f2a23c12}.guide-code-sample{padding:12px 14px;border:1px solid var(--bs-border);border-radius:10px;background:var(--surface2);text-align:center}.guide-code-sample code{color:var(--fms-orange);font-size:15px;letter-spacing:.18em}.guide-body code{padding:1px 5px;border-radius:4px;background:#ffffff0d;color:var(--bs-text);font-size:11px}@media (max-width: 900px){.guide-layout{grid-template-columns:1fr}.guide-toc{position:static;display:flex;flex-wrap:wrap}.guide-rules,.guide-qa{grid-template-columns:1fr}.guide-rules dd,.guide-qa dd{margin-bottom:8px}}.delivery-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,240px));gap:12px;margin-bottom:14px}.delivery-late-check{display:flex;align-items:center;gap:8px;padding:9px 0;color:var(--bs-text);font-size:12px;cursor:pointer}.delivery-table tbody tr{cursor:pointer}.delivery-late-row td{background:#ff6b6b0f}.delivery-late-note{color:#ff8a8a}.audit-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,240px));gap:12px;margin-bottom:14px}.audit-table{table-layout:fixed;width:100%}.audit-table td{vertical-align:top}.audit-table th:nth-child(1),.audit-table td:nth-child(1){width:132px}.audit-table th:nth-child(2),.audit-table td:nth-child(2){width:130px}.audit-table th:nth-child(3),.audit-table td:nth-child(3){width:150px}.audit-table th:nth-child(4),.audit-table td:nth-child(4){width:92px}.audit-changes{overflow-wrap:anywhere}.audit-changes dl{display:grid;grid-template-columns:minmax(90px,auto) 1fr;gap:2px 10px;margin:0;font-size:11px}.audit-changes dt,.audit-changes dd,.audit-changes dd *{white-space:normal;min-width:0;overflow-wrap:anywhere;word-break:break-all}.audit-changes dt{color:var(--text3)}.audit-changes dd{margin:0}.audit-changes summary{color:var(--fms-orange);cursor:pointer;font-size:11px}.audit-changes details[open] summary{margin-bottom:6px}.permission-notice{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;border:1px solid rgba(255,177,75,.32);border-radius:10px;background:#f2a23c0f;font-size:12px}.permission-notice strong{color:var(--fms-orange)}.permission-notice span{color:var(--text3)}.user-role-summary{margin-top:4px;color:var(--text3);font-size:10px}.date-field{display:flex;align-items:center;gap:4px}.date-field .profile-input{flex:1;min-width:0}.date-clear{flex:none;width:24px;height:24px;padding:0;border:1px solid var(--bs-border);border-radius:6px;background:transparent;color:var(--text3);font-size:14px;line-height:1;cursor:pointer}.date-clear:hover:not(:disabled){border-color:var(--fms-orange);color:var(--fms-orange)}.date-clear:disabled{opacity:.25;cursor:default}.roadmap-note{color:var(--fms-orange);font-size:10px;letter-spacing:.02em}.site-split-orders{display:grid;gap:8px;margin-top:14px;padding:12px 14px;border:1px dashed rgba(255,177,75,.32);border-radius:11px}.site-split-toggle{display:flex;align-items:center;gap:8px;color:var(--bs-text);font-size:13px;font-weight:600;cursor:pointer}.site-split-hint{margin:0;color:var(--text3);font-size:11px;line-height:1.65}.site-split-hint strong{color:#d9dee6}.site-split-grid{display:grid;gap:10px;margin-top:2px}.site-split-grid[hidden]{display:none}.site-split-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding-top:10px;border-top:1px solid var(--bs-border)}.site-split-family{display:grid;gap:2px;min-width:150px;color:var(--bs-text);font-size:13px;font-weight:600}.site-split-family small{color:var(--text3);font-size:10px;font-weight:400}.site-split-dates{display:grid;flex:1;grid-template-columns:repeat(auto-fit,minmax(150px,200px));gap:12px}.site-order-track-definition{margin:6px 0 0;color:var(--text3);font-size:11px;line-height:1.6}.site-split-na{align-self:center;color:var(--text3);font-size:12px;opacity:.75}.roadmap-quality,.site-quality-editor{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--bs-border);border-radius:11px}.roadmap-quality-item{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--bs-text);font-size:12px}.roadmap-quality-item span,.site-quality-actor{color:var(--text3);font-size:11px}.site-quality-header{display:grid;gap:4px;color:var(--bs-text)}.site-quality-header small{color:var(--text3);font-size:11px;line-height:1.55}.site-quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.site-quality-row{display:grid;grid-template-columns:minmax(60px,auto) minmax(110px,1fr);gap:8px;align-items:center;padding:10px;border:1px solid var(--bs-border);border-radius:9px}.site-quality-row>strong{color:var(--bs-text);font-size:12px}.site-quality-state select,.site-quality-date input{width:100%;min-width:0}.site-quality-date{display:grid;grid-column:1 / -1;gap:4px;color:var(--text3);font-size:10px}.site-quality-actor{grid-column:1 / -1}.site-quality-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.roadmap-orders{display:grid;gap:6px;padding:8px 10px 10px;border:1px dashed rgba(255,177,75,.32);border-radius:11px}.roadmap-orders-label,.roadmap-products-label,.site-progress-products-label{color:var(--text3);font-size:10px;letter-spacing:.04em}.roadmap-orders .roadmap-node{border-style:solid}.roadmap-products{display:grid;gap:8px;padding-top:14px;border-top:1px solid var(--bs-border)}.roadmap-product{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.roadmap-product-name{display:grid;gap:2px;min-width:160px}.roadmap-product-name strong{color:var(--bs-text);font-size:12px}.roadmap-product-name span{color:var(--text3);font-size:10px}.roadmap-product-steps{display:flex;flex-wrap:wrap;gap:8px}.site-progress-products{display:grid;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--bs-border)}.site-progress-product{display:flex;flex-wrap:wrap;align-items:end;gap:12px;padding:12px 0;border-top:1px solid var(--bs-border)}.site-progress-product:first-of-type{border-top:0}.site-progress-product-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;flex:1;min-width:0}.site-progress-product-name{display:grid;gap:2px;min-width:150px;color:var(--bs-text);font-size:12px}.site-progress-product-name small{color:var(--text3);font-size:10px}.site-progress-source{color:var(--fms-orange);font-size:11px}.operations-work-tone{padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700}.operations-work-tone.notice{background:#ffffff0f;color:#b2b8c2}.operations-work-tone.warning{background:#ffb14b29;color:var(--fms-orange)}.operations-work-tone.risk{background:#e5675f2e;color:var(--red)}.operations-work-card.warning{border-left:3px solid rgba(255,177,75,.7)}.operations-work-card.risk{border-left:3px solid var(--red)}.ps-hint{color:var(--text3);font-size:11px}@media (max-width: 660px){.delivery-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.delivery-late{grid-column:1 / -1}.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-split-dates{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.site-quality-grid{grid-template-columns:1fr}.backstage-main .topbar.page-header,.fms-dashboard-app .topbar.page-header,.field-survey-page .topbar.page-header{position:static;height:auto;min-height:0;flex-wrap:wrap;align-items:flex-start;gap:8px;padding:12px 16px 10px}.topbar.page-header .tb-left{flex:1 1 100%;min-width:0}.topbar.page-header .tb-right{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-start}.topbar.page-header .page-heading{min-width:0}.topbar.page-header .page-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.backstage-main .topbar.page-header,.fms-dashboard-app .topbar.page-header,.field-survey-page .topbar.page-header{z-index:210;background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid var(--bs-border)}.backstage-mobile-menu{border-color:transparent;background:transparent;box-shadow:none}.backstage-mobile-menu:active{background:#ffffff12}.wbs-table{min-width:620px}.wbs-table td.wbs-name-cell{width:150px;min-width:150px;max-width:150px;padding:9px 11px;font-size:11px}.wbs-table td.wbs-status-cell{width:82px;max-width:82px}.fms-dashboard-app .topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:0;padding-bottom:12px}.fms-dashboard-app .tb-right{display:flex;flex-wrap:wrap;gap:8px}.fs-field input,.fs-field select,.profile-input,.form-input,.btn{min-height:42px}.fs-field input,.fs-field select,.fs-annotation-toolbar input,.profile-input,.form-input,.user-role-select,.fs-space-name,#fs-space .fs-space-size-card .fs-field input,input,select,textarea{font-size:16px}.field-survey-page .fs-heading{margin-bottom:14px}.field-survey-page .fs-heading h1{margin:2px 0 4px;font-size:20px}.field-survey-page .fs-heading p,.field-survey-page .fs-kicker{display:none}.field-survey-page .fs-product-badge{padding:8px 12px}.field-survey-page #fs-space .fs-grid{grid-template-columns:1fr}.field-survey-page #fs-space .fs-drawing-card{min-height:0}.field-survey-page #fs-space .fs-drawing-card .fs-canvas{min-height:220px;max-height:58vh}.field-survey-page .fs-zoom-controls,.field-survey-page .fs-file-meta{flex-wrap:wrap;justify-content:flex-start;row-gap:6px}.field-survey-page .fs-file-meta>span:first-child{flex:1 1 100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-survey-page .fs-file-meta .fs-download-link{margin-left:0}.field-survey-page .fs-zoom-controls small{display:none}.field-survey-page .fs-annotation-toolbar button,.field-survey-page .fs-zoom-controls button{min-height:42px}.fs-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-photo-grid figcaption{display:grid;gap:4px}.fs-photo-grid figcaption>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fs-media-upload-grid{grid-template-columns:1fr}.field-survey-page .fs-annotation-toolbar .fs-direct-edit-hint{display:none}.field-survey-page .fs-annotation-toolbar button[data-action=open-file]{grid-column:auto}}@media (max-width: 720px){.site-progress-grid,.site-customer-grid,.site-product-fields{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.site-form-field.wide,.site-form-field.site-code-field{grid-column:1 / -1}.site-progress-grid>.site-form-field,.site-customer-grid>.site-form-field,.site-product-fields>.site-form-field,.site-progress-product .site-form-field{margin-bottom:0}.site-progress-product{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));align-items:end;gap:10px}.site-progress-product-name{grid-column:1 / -1;min-width:0}.site-progress-product-dates{display:contents}.site-progress-product .btn{width:100%}.date-field{position:relative}.date-field .profile-input{padding-left:10px;padding-right:26px}.date-field .profile-input::-webkit-calendar-picker-indicator{display:none}.date-clear{position:absolute;top:50%;right:2px;width:22px;height:22px;transform:translateY(-50%);border-color:transparent;background:transparent}.roadmap-product{display:grid;gap:8px}.roadmap-product-name{min-width:0}.roadmap-product-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:6px}.fms-dashboard-app .page-title{font-size:18px}.fms-dashboard-app .stat-val{font-size:20px}.fms-dashboard-app .page-subtitle,.fms-dashboard-app .fms-card-sub{font-size:11px}}.site-progress-editor>.site-progress-editor-summary{display:flex;align-items:baseline;gap:8px;padding:10px 12px;border:1px solid var(--bs-border);border-radius:10px;background:var(--bs-surface-2, rgba(255, 255, 255, .02));color:var(--bs-text);font-size:12px;font-weight:700;cursor:pointer;list-style:none}.site-progress-editor>.site-progress-editor-summary::-webkit-details-marker{display:none}.site-progress-editor>.site-progress-editor-summary:after{content:"펼치기";margin-left:auto;color:var(--fms-orange);font-size:11px;font-weight:600}.site-progress-editor[open]>.site-progress-editor-summary:after{content:"접기"}.site-progress-editor-summary small{color:var(--text3);font-size:10px;font-weight:400}.site-progress-editor[open]>.site-progress-editor-summary{margin-bottom:14px}.cl-site-code-badge{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left;line-height:1.5}@media (max-width: 720px){.cl-site-code-badge{font-size:9.5px}}.ps-approval-rule{margin:0 0 12px;padding:9px 12px;border:1px solid var(--bs-border);border-radius:8px;background:var(--bs-surface-2, rgba(255, 255, 255, .02));color:var(--text2);font-size:11.5px;line-height:1.6}.ps-approval-rule strong{color:var(--bs-text)}.ps-flash{margin:0 0 14px;padding:11px 13px;border:1px solid var(--fms-orange);border-left-width:3px;border-radius:8px;background:var(--accent-soft, rgba(245, 166, 71, .1));color:var(--bs-text);font-size:12px;line-height:1.55}.ps-flash strong{color:var(--fms-orange)}.ps-row-just-saved>td{background:var(--accent-soft, rgba(245, 166, 71, .1))}.cal-install-rule{margin:0;padding:10px 14px;border-bottom:1px solid var(--bs-border);color:var(--text2);font-size:11.5px;line-height:1.6}.cal-install-rule strong{color:var(--bs-text)}.cal-table{width:100%;table-layout:fixed;border-collapse:collapse}.cal-table th{padding:6px 4px;font-size:11px;font-weight:600;color:var(--bs-muted);text-align:left}.cal-cell{height:92px;padding:5px 6px;border:1px solid var(--bs-border);vertical-align:top;overflow:hidden}.cal-day-num{font-size:11.5px;font-weight:600;color:var(--bs-text);margin-bottom:3px}.cal-events{display:grid;gap:2px}.cal-cell.cal-slot--open{background:#7fd4a012;box-shadow:inset 3px 0 #7fd4a073}.cal-slot-open{display:inline-block;width:5px;height:5px;margin-left:5px;border-radius:50%;background:#7fd4a0;vertical-align:middle}.cal-cell.cal-slot--taken{background:#f5a6471a;box-shadow:inset 3px 0 #f5a6478c}.cal-cell.cal-slot--taken .cal-day-num{opacity:.6}.cal-cell.cal-slot--closed{background:repeating-linear-gradient(135deg,transparent,transparent 5px,rgba(255,255,255,.022) 5px,rgba(255,255,255,.022) 10px)}.cal-cell.cal-slot--closed .cal-day-num{opacity:.45}.cal-cell.cal-slot--past .cal-day-num{opacity:.5}.cal-cell.cal-slot--before-rule{background:none;box-shadow:none}.cal-install-rule em{color:var(--fms-orange);font-style:normal}.cal-slot-swatch{display:inline-block;width:12px;height:12px;border:1px solid var(--bs-border);border-radius:3px}.cal-legend-item .cal-slot-swatch.cal-slot--open{background:#7fd4a038}.cal-legend-item .cal-slot-swatch.cal-slot--taken{background:#f5a6473d}.cal-legend-item .cal-slot-swatch{box-shadow:none}.cal-cell.cal-ord--free{background:#7fd4a012;box-shadow:inset 3px 0 #7fd4a073}.cal-cell.cal-ord--window{background:#94918733;box-shadow:inset 3px 0 #949187a6}.cal-cell.cal-ord--tight{background:#f5a6471a;box-shadow:inset 3px 0 #f5a6478c}.cal-cell.cal-ord--full{background:#e04d451f;box-shadow:inset 3px 0 #e04d4599}.cal-cell.cal-ord--full .cal-day-num{opacity:.7}.cal-cell.cal-ord--off{background:repeating-linear-gradient(135deg,transparent,transparent 5px,rgba(255,255,255,.022) 5px,rgba(255,255,255,.022) 10px)}.cal-cell.cal-ord--off .cal-day-num{opacity:.45}.cal-legend-item .cal-slot-swatch.cal-ord--free{background:#7fd4a038}.cal-legend-item .cal-slot-swatch.cal-ord--window{background:#94918747}.cal-legend-item .cal-slot-swatch.cal-ord--tight{background:#f5a6473d}.cal-legend-item .cal-slot-swatch.cal-ord--full{background:#e04d454d}.btn.ps-danger{border-color:color-mix(in srgb,var(--red),transparent 55%);color:var(--red)}.btn.ps-danger:hover:not(:disabled){border-color:var(--red);background:color-mix(in srgb,var(--red),transparent 88%)}.ps-doc-missing{color:var(--red);font-weight:600}.spec-sheet{max-width:60rem}.spec-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:2px solid var(--fms-orange)}.spec-head h1{margin:0 0 6px;font-size:22px;font-weight:800;color:var(--bs-text)}.spec-head p{margin:0;max-width:34rem;color:var(--text2);font-size:12px;line-height:1.6}.spec-stamp{display:grid;grid-template-columns:auto auto;gap:2px 12px;margin:0;font-size:11px}.spec-stamp dt{color:var(--text3)}.spec-stamp dd{margin:0;color:var(--bs-text);font-variant-numeric:tabular-nums}.spec-block{margin-top:30px}.spec-block h2{margin:0 0 10px;padding-bottom:7px;border-bottom:1px solid var(--bs-border);font-size:15px;font-weight:700;color:var(--bs-text)}.spec-lead{margin:0 0 12px;color:var(--text2);font-size:12.5px;line-height:1.7}.spec-note{margin:10px 0 0;color:var(--text3);font-size:11.5px;line-height:1.65}.spec-shape{display:flex;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.spec-shape-name{min-width:3.5rem;color:var(--fms-orange);font-size:12px;font-weight:800}.spec-shape-parts{display:flex;flex-wrap:wrap;gap:5px}.spec-part{display:grid;justify-items:center;gap:1px;padding:6px 9px;border:1px solid var(--bs-border);border-radius:6px;background:var(--bs-surface)}.spec-part b{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:700;color:var(--bs-text);letter-spacing:.02em}.spec-part small{color:var(--text3);font-size:9.5px}.spec-part i{color:var(--fms-orange);font-size:9.5px;font-style:normal}.spec-table-wrap{overflow-x:auto}.spec-table{width:100%;border-collapse:collapse;font-size:12px}.spec-table th{padding:7px 9px;border-bottom:1px solid var(--bs-border);color:var(--text3);font-size:10px;font-weight:600;letter-spacing:.06em;text-align:left}.spec-table td{padding:8px 9px;border-bottom:1px solid var(--bs-border);color:var(--text2);line-height:1.6;vertical-align:top}.spec-table .spec-seg{color:var(--bs-text);font-weight:700;white-space:nowrap}.spec-table .spec-val{font-family:JetBrains Mono,ui-monospace,monospace;color:var(--fms-orange);white-space:nowrap}.spec-only{margin-left:4px;padding:1px 5px;border-radius:999px;background:var(--accent-soft, rgba(245, 166, 71, .12));color:var(--fms-orange);font-size:9px;font-weight:600}.spec-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.spec-card{padding:13px 15px;border:1px solid var(--bs-border);border-left:3px solid var(--bs-border);border-radius:0 8px 8px 0;background:var(--bs-surface)}.spec-card+.spec-card{margin-top:10px}.spec-split .spec-card+.spec-card{margin-top:0}.spec-card h3{margin:0 0 6px;font-size:12.5px;font-weight:700;color:var(--bs-text)}.spec-card p{margin:0 0 6px;color:var(--text2);font-size:12px;line-height:1.65}.spec-card p:last-child{margin-bottom:0}.spec-card ul{margin:0;padding-left:1.1rem;color:var(--text2);font-size:12px;line-height:1.8}.spec-card--ok{border-left-color:#7fd4a0}.spec-card--warn{border-left-color:var(--red)}.spec-card--pending{border-left-color:var(--text3)}.spec-card--warn h3{color:var(--red)}.spec-warn-action{color:var(--bs-text)!important}.spec-kv{display:flex;flex-wrap:wrap;gap:4px 10px}.spec-kv span{color:var(--text3);min-width:8rem}.spec-kv b{color:var(--bs-text);font-weight:600}.spec-sample+.spec-sample{margin-top:12px}.spec-sample-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:6px}.spec-sample-head code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:700;color:var(--fms-orange)}.spec-sample-head span{color:var(--text3);font-size:11px}@media (max-width: 720px){.spec-head{flex-direction:column}.spec-shape{align-items:flex-start}}@media print{.backstage-sidebar,.backstage-sidebar-scrim,.backstage-appbar,.spec-page .topbar{display:none!important}.spec-page,.spec-sheet{max-width:none!important;padding:0!important}.spec-page *{color:#111!important;background:transparent!important}.spec-head{border-bottom-color:#111!important}.spec-head h1{font-size:18px!important}.spec-block{margin-top:18px!important;break-inside:avoid}.spec-block h2{font-size:13px!important;border-bottom-color:#999!important}.spec-part,.spec-card,.spec-table td,.spec-table th{border-color:#999!important}.spec-part b,.spec-table .spec-val,.spec-sample-head code,.spec-shape-name,.spec-only,.spec-part i{color:#111!important}.spec-only{border:1px solid #999!important}.spec-card--warn{border-left:3px solid #111!important}.spec-sample,.spec-card{break-inside:avoid}}.spec-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px}.cal-view-switch{display:inline-flex;padding:2px;border:1px solid var(--bs-border);border-radius:8px;background:var(--bs-surface-2, rgba(255, 255, 255, .02))}.cal-view-switch button{border:0;border-radius:6px;padding:6px 14px;background:transparent;color:var(--text3);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.cal-view-switch button.selected{background:var(--bs-surface);color:var(--bs-text);box-shadow:0 1px 3px #0006}.cal-cell.cal-slot--off{background:none;box-shadow:none}@media (max-width: 660px){.cal-view-switch button{padding:8px 14px}}.ps-install-field{grid-column:1 / -1}.ps-install-pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ps-install-suggest{display:flex;flex-wrap:wrap;gap:6px}.ps-install-day{padding:8px 13px;border:1px solid var(--bs-border);border-radius:7px;background:var(--bs-surface);color:var(--bs-text);font:inherit;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}.ps-install-day:hover{border-color:var(--fms-orange)}.ps-install-day.selected{border-color:var(--fms-orange);background:var(--accent-soft, rgba(245, 166, 71, .12));color:var(--fms-orange)}.ps-install-pick .form-input{flex:0 1 12rem;min-width:9rem}.ps-install-none{color:var(--text3);font-size:12px}.ps-install-why{display:block;margin-top:6px;color:var(--text3);font-size:11px;line-height:1.6}.ps-install-why strong{color:var(--fms-orange)}.ps-install-calendar-open{min-height:42px;padding:9px 14px;border:1px solid #716044;border-radius:8px;background:#292217;color:#f3ce9b;font:inherit;font-size:14px;cursor:pointer}.ps-install-calendar{box-sizing:border-box;width:min(440px,calc(100vw - 24px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:22px;overflow:auto;border:1px solid #47515f;border-radius:16px;background:var(--bs-surface-2, #15181e);color:var(--bs-text, #f0ede0);font-family:Pretendard Variable,Noto Sans KR,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:400;line-height:1.6;box-shadow:0 20px 70px #0009}.ps-install-calendar::backdrop{background:#000a}.ps-install-calendar-header h3{margin:0 0 8px;font-size:19px;font-weight:600}.ps-install-calendar p{margin:8px 0;overflow-wrap:anywhere}.ps-install-calendar button{font:inherit;cursor:pointer}.ps-install-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 12px}.ps-install-calendar-nav strong{font-size:17px;font-weight:600}.ps-install-calendar-nav button,.ps-install-calendar-footer button{min-height:40px;padding:6px 12px;border:1px solid #47515f;border-radius:7px;background:#20262f;color:var(--bs-text, #f0ede0)}.ps-install-calendar-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:3px}.ps-install-calendar-grid th{padding:4px 0 8px;color:#b8c1ce;font-size:12px;font-weight:400;text-align:center}.ps-install-calendar-grid td{padding:0;text-align:center;border:0}.ps-install-calendar .ps-install-calendar-day{display:block;width:100%;min-height:43px;padding:5px 1px;border:1px solid #44755e;border-radius:7px;background:#182f26;color:#bcebd0;font-size:14px;font-variant-numeric:tabular-nums}.ps-install-calendar .ps-install-calendar-day[aria-disabled=true]{border-color:transparent;background:#1c2129;color:#a4adba;text-decoration:line-through;cursor:help}.ps-install-calendar .ps-install-calendar-day[aria-pressed=true],.ps-install-calendar .ps-install-calendar-day[aria-selected=true]{border:2px solid #f3c079;background:#473620;color:#ffe1b7}.ps-install-calendar button:focus-visible,.ps-install-calendar-open:focus-visible{outline:2px solid #9dd9f0;outline-offset:2px}.ps-install-calendar button:disabled,.ps-install-calendar-open:disabled{opacity:.5;cursor:not-allowed}.ps-install-calendar-status{min-height:3.2em;margin-top:12px;color:#ced6e0;overflow-wrap:anywhere}.ps-install-calendar-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px}@media (max-width: 440px){.ps-install-calendar{padding:14px}.ps-install-calendar-grid{border-spacing:2px}.ps-install-calendar-footer button{flex:1 1 auto;padding-inline:8px}}@media print{.ps-install-calendar,.ps-install-calendar-open{display:none!important}}.field-survey-page #fs-space .fs-space-size-card,.field-survey-page #fs-space .fs-drawing-card{grid-column:1 / -1}.field-survey-page .fs-drawing-workspace{min-width:0}.field-survey-page .fs-workspace-toolbar,.field-survey-page .fs-drawing-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.field-survey-page .fs-workspace-toolbar{justify-content:space-between;margin:16px 0 10px}.field-survey-page .fs-workspace-toolbar button{min-height:42px;padding:9px 14px;border:1px solid var(--border2);border-radius:7px;background:var(--surface2);color:var(--text);cursor:pointer}.field-survey-page .fs-drawing-tools button.selected{border-color:var(--fms-orange);color:var(--fms-orange);background:var(--accent-soft, rgba(245, 166, 71, .12))}.field-survey-page .fs-drawing-workspace button:focus-visible,.field-survey-page .fs-drawing-workspace [data-canvas]:focus-visible{outline:2px solid var(--fms-orange);outline-offset:2px}.field-survey-page .fs-drawing-workspace button:disabled{opacity:.45;cursor:not-allowed}.field-survey-page .fs-drawing-workspace .fs-annotation-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin:10px 0}.field-survey-page .fs-drawing-workspace .fs-annotation-input-label{display:grid;flex:1 1 350px;min-width:min(100%,260px);gap:5px;color:var(--text2);font-size:12px}.field-survey-page .fs-drawing-workspace .fs-annotation-input-label input{min-height:42px;min-width:0;font-size:15px;line-height:1.4}.field-survey-page .fs-drawing-workspace .fs-annotation-toolbar button{min-height:42px}.field-survey-page .fs-workspace-hint,.field-survey-page .fs-drawing-source,.field-survey-page .fs-drawing-handoff{margin:8px 0;color:var(--text2);font-size:12px;line-height:1.6}.field-survey-page .fs-drawing-source{border-left:3px solid var(--fms-orange);padding-left:10px}.field-survey-page #fs-space .fs-drawing-card .fs-canvas{height:clamp(420px,62vh,760px);min-height:0;max-height:none;width:100%;background:#202a33;border-color:#465461;cursor:default;background-image:radial-gradient(#ffffff18 1px,transparent 1px);background-size:18px 18px}.field-survey-page .fs-drawing-workspace .fs-zoom-layer{max-width:none;transition:none;flex:none}.field-survey-page .fs-drawing-workspace .fs-image-wrap>img{width:100%;height:auto;max-height:none;max-width:none;background:#fff}.field-survey-page .fs-drawing-workspace .fs-canvas.is-panning{cursor:grab;touch-action:none}.field-survey-page .fs-drawing-workspace .fs-canvas.is-panning:active{cursor:grabbing}.field-survey-page .fs-drawing-workspace .fs-canvas.is-placing{cursor:crosshair}.field-survey-page .fs-drawing-workspace[data-drawing-tool=pan] .fs-annotation{pointer-events:none}.field-survey-page .fs-drawing-workspace .fs-annotation.dimension b,.field-survey-page .fs-drawing-workspace .fs-annotation.note b,.field-survey-page .fs-drawing-workspace .fs-annotation .fs-leader-label{font-size:max(12px,var(--annotation-font-size, 12px));line-height:1.4}.field-survey-page .fs-drawing-workspace .fs-annotation.selected{outline:2px solid #087bec;outline-offset:4px;z-index:12}.field-survey-page .fs-drawing-workspace .fs-annotation:not(.selected) .fs-annotation-remove,.field-survey-page .fs-drawing-workspace .fs-annotation:not(.selected) [data-resize-label],.field-survey-page .fs-drawing-workspace:not([data-drawing-tool=select]) .fs-annotation-remove,.field-survey-page .fs-drawing-workspace:not([data-drawing-tool=select]) [data-resize-label],.field-survey-page .fs-drawing-workspace:not([data-drawing-tool=select]) [data-dimension-handle]{display:none}.field-survey-page .fs-drawing-selection{min-height:24px;margin:8px 0;color:var(--text);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.field-survey-page .fs-drawing-workspace .fs-zoom-controls{justify-content:flex-start;flex-wrap:wrap}.field-survey-page .fs-drawing-workspace .fs-zoom-controls output{min-width:50px;text-align:center;font-variant-numeric:tabular-nums}.field-survey-page .fs-drawing-workspace .fs-file-meta{flex-wrap:wrap;justify-content:flex-start;font-size:12px}.field-survey-page .fs-drawing-workspace .fs-file-meta>span{overflow-wrap:anywhere}.field-survey-page .fs-drawing-workspace.is-expanded{position:fixed;top:12px;right:12px;bottom:12px;left:12px;z-index:1200;display:flex;flex-direction:column;padding:16px;background:var(--surface, #111820);border:1px solid var(--border2);border-radius:12px;box-shadow:0 0 0 100vmax #0009;overflow-y:auto}.field-survey-page .page.active:has(.fs-drawing-workspace.is-expanded){animation:none;transform:none}.field-survey-page .fs-drawing-card:has(.fs-drawing-workspace.is-expanded){-webkit-backdrop-filter:none;backdrop-filter:none;overflow:visible;transform:none;transition:none}.backstage-main:has(.field-survey-page .fs-drawing-workspace.is-expanded){z-index:1200}.field-survey-page .fs-drawing-workspace.is-expanded .fs-workspace-toolbar{margin-top:0}.field-survey-page #fs-space .fs-drawing-card .fs-drawing-workspace.is-expanded .fs-canvas{flex:1 0 280px;height:auto;min-height:280px}body:has(.fs-drawing-workspace.is-expanded){overflow:hidden}.field-survey-page .fs-drawing-output .fs-canvas{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:#fff}.field-survey-page .fs-drawing-output .fs-zoom-layer{width:var(--fs-output-fit-width, 100%)!important;transform:none!important}.field-survey-page .fs-drawing-output .fs-image-wrap{width:100%!important;height:auto!important}.field-survey-page .fs-drawing-output .fs-image-wrap>img{width:100%!important;height:auto!important;max-height:none!important}@media (max-width: 720px){.field-survey-page .fs-drawing-tools{display:grid;grid-template-columns:1fr 1fr;width:100%}.field-survey-page .fs-workspace-toolbar>button{width:100%}.field-survey-page .fs-drawing-workspace .fs-annotation-input-label{flex-basis:100%}.field-survey-page #fs-space .fs-drawing-card .fs-canvas{height:52vh;min-height:280px;max-height:none}.field-survey-page .fs-drawing-workspace.is-expanded{top:4px;right:4px;bottom:4px;left:4px;padding:10px}}@media print{.field-survey-page .fs-drawing-workspace.is-expanded{position:static!important;inset:auto!important;box-shadow:none!important}.field-survey-page .fs-workspace-toolbar,.field-survey-page .fs-workspace-hint,.field-survey-page .fs-drawing-selection{display:none!important}.field-survey-page .fs-drawing-source,.field-survey-page .fs-drawing-handoff{color:#222!important;font-size:9px}}@media (max-width: 720px){.ps-install-pick{flex-direction:column;align-items:stretch}.ps-install-suggest{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ps-install-day{padding:10px 6px;text-align:center}.ps-install-pick .form-input{flex:1 1 auto}}@media print{html:has(.field-survey-page),body:has(.field-survey-page){color-scheme:light!important;background:#fff!important}.backstage-shell:has(.field-survey-page):before,.backstage-shell:has(.field-survey-page):after{display:none!important}.field-survey-page .fs-drawing-output .fs-annotation.dimension b,.field-survey-page .fs-drawing-output .fs-annotation.note b,.field-survey-page .fs-drawing-output .fs-annotation .fs-leader-label{font-size:max(10px,var(--annotation-font-size, 12px))!important}}@font-face{font-family:Pretendard Variable;font-style:normal;font-weight:45 920;font-display:swap;src:url(/fonts/pretendard/PretendardVariable.woff2) format("woff2-variations")}@media screen{.fms-dashboard-layout .dashboard-install-calendar-card{grid-column:1 / -1;min-width:0}.fms-dashboard-layout .dashboard-install-calendar-card .card-hd{gap:12px;flex-wrap:wrap}.fms-dashboard-layout .dashboard-agenda-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px}.fms-dashboard-layout .dashboard-agenda-toolbar [role=group],.fms-dashboard-layout .dashboard-install-calendar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fms-dashboard-layout .dashboard-install-calendar-nav strong{font-size:14px;font-weight:600}.fms-dashboard-layout .dashboard-agenda-meta,.fms-dashboard-layout .dashboard-agenda-caption{padding:0 16px 12px;color:#b5becb;font-size:13px;text-align:left}.fms-dashboard-layout .dashboard-install-calendar-table{width:100%;table-layout:fixed}.fms-dashboard-layout .dashboard-install-calendar-table .cal-cell{height:auto;padding:6px;vertical-align:top}.fms-dashboard-layout .dashboard-agenda-day{width:100%;min-height:64px;padding:6px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;text-align:left;cursor:pointer}.fms-dashboard-layout .dashboard-agenda-day[aria-pressed=true],.fms-dashboard-layout .dashboard-agenda-toolbar button[aria-pressed=true]{border-color:#83cfe8;background:#16303b}.fms-dashboard-layout .dashboard-install-calendar-card button:focus-visible,.fms-dashboard-layout .dashboard-agenda-undated summary:focus-visible{outline:2px solid #83cfe8;outline-offset:2px}.fms-dashboard-layout .dashboard-agenda-count{display:block;font-size:14px;font-weight:600}.fms-dashboard-layout .dashboard-agenda-kinds{display:block;font-size:12px;color:#b5becb;overflow-wrap:anywhere}.fms-dashboard-layout .dashboard-agenda-details{padding:16px}.fms-dashboard-layout .dashboard-agenda-group{margin-bottom:20px}.fms-dashboard-layout .dashboard-agenda-group h3{display:flex;gap:12px;font-size:15px;font-weight:600;margin:0 0 12px}.fms-dashboard-layout .dashboard-agenda-group h3 span{color:#b5becb}.fms-dashboard-layout .dashboard-agenda-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,auto) minmax(100px,auto);gap:12px;align-items:center;padding:14px 0;border-top:1px solid #2c3440}.fms-dashboard-layout .dashboard-agenda-main{min-width:0}.fms-dashboard-layout .dashboard-agenda-site{display:block;max-width:100%;padding:0;text-align:left;border:0;background:transparent;color:#d8f2fb;cursor:pointer;font-size:15px;font-weight:600;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.fms-dashboard-layout .dashboard-agenda-main p{font-size:13px;color:#b5becb;margin:4px 0 0;overflow-wrap:anywhere}.fms-dashboard-layout .dashboard-agenda-labels{display:flex;gap:6px;flex-wrap:wrap;font-size:13px}.fms-dashboard-layout .dashboard-agenda-labels span{padding:3px 7px;border:1px solid #3b4654;border-radius:5px}.fms-dashboard-layout .dashboard-agenda-assignee,.fms-dashboard-layout .dashboard-agenda-empty{font-size:13px;color:#b5becb;overflow-wrap:anywhere}.fms-dashboard-layout .dashboard-agenda-undated{margin:0 16px 16px;padding:12px;border:1px solid #6c5734;border-radius:8px}.fms-dashboard-layout .dashboard-agenda-undated summary{cursor:pointer;color:#ecd09f;font-size:14px}@media (max-width: 700px){.fms-dashboard-layout .dashboard-agenda-row{grid-template-columns:minmax(0,1fr);gap:8px}.fms-dashboard-layout .dashboard-install-calendar-table .cal-cell{padding:2px}.fms-dashboard-layout .dashboard-agenda-day{min-height:56px;padding:3px}.fms-dashboard-layout .dashboard-agenda-kinds{display:none}.fms-dashboard-layout .dashboard-agenda-details{padding:12px}}.fms-dashboard-layout{--dashboard-font-family: "Pretendard Variable", "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--dashboard-font-family);font-weight:400}.fms-dashboard-layout button,.fms-dashboard-layout input,.fms-dashboard-layout select,.fms-dashboard-layout textarea,.fms-dashboard-layout .stat-val,.fms-dashboard-layout .badge,.fms-dashboard-layout .fms-table th,.fms-dashboard-layout .process-step span,.fms-dashboard-layout .as-donut-center strong,.fms-dashboard-layout .as-donut-legend-row strong,.fms-dashboard-layout .quick-action-icon{font-family:var(--dashboard-font-family)}.fms-dashboard-layout .stat-sub,.fms-dashboard-layout .fms-card-sub,.fms-dashboard-layout .process-step small,.fms-dashboard-layout .operations-work-main small,.fms-dashboard-layout .operations-work-detail,.fms-dashboard-layout .operations-work-footer span,.fms-dashboard-layout .dashboard-schedule-row small,.fms-dashboard-layout .quick-action-card small,.fms-dashboard-layout .dashboard-site-result small{color:#b5becb;font-size:13px;font-weight:400;line-height:1.6}.fms-dashboard-layout .card-title,.fms-dashboard-layout .operations-work-main strong,.fms-dashboard-layout .dashboard-schedule-row strong,.fms-dashboard-layout .quick-action-card strong,.fms-dashboard-layout .dashboard-site-result strong{font-size:15px;font-weight:600;line-height:1.5}.fms-dashboard-layout .stat-val{font-weight:650}.fms-dashboard-layout .process-step strong,.fms-dashboard-layout .process-step span,.fms-dashboard-layout .operations-work-badge,.fms-dashboard-layout .operations-work-footer em,.fms-dashboard-layout .badge,.fms-dashboard-layout .btn{font-weight:600}.fms-dashboard-layout .process-step strong,.fms-dashboard-layout .operations-work-badge,.fms-dashboard-layout .operations-work-footer em,.fms-dashboard-layout .stat-lbl{font-size:13px;line-height:1.5}.fms-dashboard-layout .stat-lbl{color:#b5becb;font-weight:500}.fms-dashboard-layout .dashboard-priority-card .card-bd>.fms-card-sub{font-size:13px;line-height:1.65}}@media screen{.calendar-agenda-page,.calendar-agenda-page button,.calendar-agenda-page input,.calendar-agenda-page textarea,.calendar-agenda-page select{font-family:Pretendard Variable,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400}.calendar-agenda-page .card-title,.calendar-agenda-page strong,.calendar-agenda-page .btn,.calendar-agenda-page .cal-day-num,.calendar-agenda-page .cal-view-switch button{font-weight:600}.calendar-agenda-page .card-title{font-size:15px;line-height:1.5}.calendar-agenda-page .btn,.calendar-agenda-page .cal-view-switch button,.calendar-agenda-page .cal-day-num{font-size:13px}.calendar-agenda-page .card-hd{gap:12px;flex-wrap:wrap}.calendar-agenda-page .calendar-agenda-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px}.calendar-agenda-page .calendar-agenda-toolbar [role=group],.calendar-agenda-page .cal-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.calendar-agenda-page [data-cal-mode][aria-pressed=true]{border-color:#83cfe8;background:#16303b}.calendar-agenda-page .cal-install-rule,.calendar-agenda-page .calendar-agenda-note{font-size:13px;line-height:1.65;color:#b5becb}.calendar-agenda-page .calendar-agenda-note{padding:0 16px}.calendar-agenda-page .cal-table{width:100%;table-layout:fixed}.calendar-agenda-page .cal-cell{height:auto;padding:6px;vertical-align:top}.calendar-agenda-page .calendar-agenda-day{display:block;width:100%;min-height:58px;padding:6px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;text-align:left;cursor:pointer}.calendar-agenda-page .calendar-agenda-day[aria-pressed=true]{border-color:#83cfe8;background:#16303b}.calendar-agenda-page .calendar-agenda-count{display:block;font-size:14px;font-weight:600}.calendar-agenda-page .calendar-agenda-kinds{display:block;font-size:12px;line-height:1.5;color:#b5becb;overflow-wrap:anywhere}.calendar-agenda-page button:focus-visible,.calendar-agenda-page [tabindex="0"]:focus-visible{outline:2px solid #83cfe8;outline-offset:2px}.calendar-agenda-page .calendar-agenda-details{padding:16px}.calendar-agenda-page .calendar-agenda-group{margin-bottom:20px}.calendar-agenda-page .calendar-agenda-group h3{font-size:15px;font-weight:600;line-height:1.5;margin:0 0 10px;scroll-margin-top:90px}.calendar-agenda-page .calendar-agenda-group h3 span{font-size:13px;font-weight:400;color:#b5becb;margin-left:8px}.calendar-agenda-page .calendar-agenda-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;border-top:1px solid #2c3440;padding:14px 0}.calendar-agenda-page .calendar-agenda-row:has(>.cal-ev-del){grid-template-columns:minmax(0,1fr) auto auto}.calendar-agenda-page .calendar-agenda-row .cal-ev{min-width:0;margin:0;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.6;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.calendar-agenda-page .calendar-agenda-row .cal-ev span{display:block;white-space:normal;text-overflow:clip;overflow:visible;overflow-wrap:anywhere}.calendar-agenda-page .calendar-agenda-row button.cal-ev{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-left:3px solid currentColor;color:inherit;text-align:left}.calendar-agenda-page .calendar-agenda-row.cal-ev--done .cal-ev{color:#b5becb}.calendar-agenda-page .calendar-agenda-type,.calendar-agenda-page .calendar-agenda-slot,.calendar-agenda-page .calendar-agenda-empty{font-size:13px;color:#b5becb;line-height:1.6}.calendar-agenda-page .calendar-agenda-slot{min-width:0;overflow-wrap:anywhere}.calendar-agenda-page .calendar-agenda-type{padding:4px 8px;border:1px solid #3b4654;border-radius:5px}.calendar-agenda-page .calendar-agenda-row .cal-ev-del{min-width:32px;min-height:32px;font-size:18px}@media (max-width: 700px){.calendar-agenda-page .cal-cell{padding:2px}.calendar-agenda-page .calendar-agenda-day{min-height:54px;padding:3px}.calendar-agenda-page .calendar-agenda-kinds{display:none}.calendar-agenda-page .calendar-agenda-row{grid-template-columns:minmax(0,1fr);gap:8px}.calendar-agenda-page .calendar-agenda-row:has(>.cal-ev-del){grid-template-columns:minmax(0,1fr) auto}.calendar-agenda-page .calendar-agenda-row:has(>.cal-ev-del) .calendar-agenda-type{grid-column:1}.calendar-agenda-page .calendar-agenda-row>.cal-ev-del{grid-column:2;grid-row:1}.calendar-agenda-page .calendar-agenda-type{justify-self:start}.calendar-agenda-page .calendar-agenda-details{padding:12px}}}@media screen{:root,[data-theme=dark],[data-theme=light]{color-scheme:light;--bs-bg: #f4f5f7;--bs-sidebar: #ffffff;--bs-surface: #ffffff;--bs-surface-2: #f0f2f5;--bs-border: #d2d7df;--bs-border-warm: #c9c3ba;--bs-text: #202733;--bs-text-dim: #505c6c;--bs-muted: #586474;--bs-muted-warm: #635d54;--bs-amber: #984507;--bs-green: #176b43;--bs-yellow: #855900;--bs-purple: #7044a3;--bs-red: #b42e29;--bg: var(--bs-bg);--surface: var(--bs-surface);--surface2: var(--bs-surface-2);--surface-glass: rgba(255, 255, 255, .96);--border: var(--bs-border);--border2: #a5afbd;--text: var(--bs-text);--text2: #465364;--text3: var(--bs-muted);--text-muted: var(--bs-muted);--fms-orange: var(--bs-amber);--orange: var(--bs-amber);--accent: var(--bs-amber);--accent-strong: #7c3503;--accent-soft: #fff0df;--orange-lt: var(--accent-soft);--orange-md: #efc599;--blue: #245bb0;--blue-lt: #eaf1ff;--green: var(--bs-green);--green-lt: #e8f5ed;--warn: var(--bs-yellow);--warn-lt: #fff4d8;--red: var(--bs-red);--red-lt: #fceceb;--shadow: 0 2px 8px rgba(25, 39, 58, .06);--shadow-md: 0 8px 24px rgba(25, 39, 58, .1)}body,.backstage-shell,.backstage-main,.fms-dashboard-app,.login-page,.backstage-pending-page{background:var(--bg);color:var(--text)}.backstage-shell:before,.backstage-shell:after,.bg-glow{opacity:0}.backstage-sidebar{background:var(--bs-sidebar);color:var(--text);border-color:var(--border);box-shadow:2px 0 12px #19273a0a;scrollbar-color:var(--border2) transparent}.backstage-sidebar::-webkit-scrollbar-thumb{background:var(--border2)}.backstage-main .topbar,.backstage-main .fms-dashboard-app .topbar,.fms-dashboard-app .topbar,.field-survey-page .topbar{background:var(--surface);border-color:var(--border);box-shadow:none}.backstage-profile-card{background:var(--surface2);border-color:var(--border);box-shadow:none}.backstage-brand-name,.backstage-profile-copy strong{color:var(--text)}.backstage-brand,.backstage-appbar-brand{color:inherit;text-decoration:none}.backstage-brand:hover,.backstage-appbar-brand:hover{background:var(--surface2)}.backstage-brand-sub,.backstage-profile-copy span,.backstage-nav-label{color:var(--text3);opacity:1}.backstage-avatar,.backstage-profile-copy em,.quick-action-icon{background:var(--accent-soft);color:var(--orange);border-color:var(--orange-md);box-shadow:none}.backstage-brand-mark,.backstage-appbar-mark{background:var(--orange);color:#fff;border-color:var(--orange);box-shadow:none}.backstage-nav-item{color:var(--text2);text-decoration:none}.backstage-nav-item:hover,.backstage-mobile-menu:active,.backstage-appbar-signout:active{background:var(--surface2);color:var(--text)}.backstage-nav-item.active{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--orange-md)}.backstage-nav-item small,.backstage-nav-item.active small{background:var(--surface2);color:var(--text3)}.card,.fms-dashboard-app .stat,.dashboard-site-search-card,.dashboard-recent-card,.dashboard-priority-card,.dashboard-process-lane,.dashboard-schedule-card,.quick-action-card,.dashboard-site-result,.operations-work-card,.dashboard-schedule-row{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow)}.card-hd,.fms-table th,.fms-table td{border-color:var(--border)}.card:hover,.dashboard-click-card:hover,.quick-action-card:hover,.dashboard-site-result:hover,.operations-work-card:hover,.dashboard-schedule-row:hover,.fms-dashboard-app .stat:hover{border-color:var(--border2);box-shadow:var(--shadow-md)}.fms-table th,.data-table th,.wbs-table th{background:var(--surface2);color:var(--text2)}.fms-table tbody tr:hover{background:var(--surface2)}.wbs-row-odd td{background:#f7f8fa}.stacked-table tr,.site-meta-row,.site-product-row,.roadmap-node,.ps-static,.ps-line,.ps-modules,.ps-part,.ps-run li{background:var(--surface);border-color:var(--border)}.fms-dashboard-app .btn,.field-survey-page .btn,.btn,.back-btn,.ps-line-remove,.ps-run-remove,.ps-chip{background:var(--surface);color:var(--text2);border-color:var(--border2);box-shadow:none}.fms-dashboard-app .btn:hover,.field-survey-page .btn:hover,.btn:hover,.back-btn:hover{background:var(--surface2);color:var(--text);border-color:var(--text3)}.fms-dashboard-app .btn.primary,.field-survey-page .btn.primary,.btn.primary,.google-login-btn{background:var(--orange);color:#fff;border-color:var(--orange);box-shadow:none}.fms-dashboard-app .btn.primary:hover,.field-survey-page .btn.primary:hover,.btn.primary:hover,.google-login-btn:hover{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong);box-shadow:var(--shadow)}.profile-input,.form-input,.form-select,.form-textarea,.dashboard-site-search-control .profile-input,.login-password-form input{background:var(--surface);color:var(--text);border-color:var(--border2)}.profile-input:focus,.form-input:focus,.form-select:focus,.form-textarea:focus,.dashboard-site-search-control .profile-input:focus{border-color:var(--blue)}.form-input,.form-select,.form-textarea{width:100%;min-width:0;min-height:36px;padding:7px 10px;border:1px solid var(--border2);border-radius:6px;font:inherit;font-size:13px}input::placeholder,textarea::placeholder{color:var(--text3);opacity:1}input,select,textarea{accent-color:var(--orange)}.backstage-shell :is(button,a,input,select,textarea,summary):focus-visible,.login-page :is(button,input):focus-visible{outline:2px solid var(--blue);outline-offset:2px}.login-password-form{border-color:var(--border)}.login-top{background:var(--surface2);color:var(--text)}.login-top .login-logo-sub{color:var(--text3);opacity:1}.lightbox{background:#f4f5f7fa}.lb-title,.lb-memo-txt,.lb-counter{color:var(--text2)}.lb-x,.lb-arrow{background:var(--surface);border-color:var(--border2);color:var(--text)}.lb-x:hover,.lb-arrow:hover{background:var(--surface2)}.fms-dashboard-subtitle,.field-survey-page .tb-left p,.topbar.page-header .page-subtitle,.site-meta-row b,.wbs-undated-head span,.product-install-date,.ps-row-note,.ps-part-sum,.ps-adder-width,.ps-consent-note,.ps-check span,.product-family-label,.product-family-note,.roadmap-date,.operations-work-tone.notice{color:var(--text2)}.site-split-hint strong{color:var(--text)}.delivery-late-note,.wbs-pending,.fs-error{color:var(--red)}.fs-folder-path,.wbs-milestone{color:var(--green)}.operations-work-badge{background:var(--accent-soft);color:var(--orange)}.operations-work-footer em{color:var(--orange)}.operations-work-tone.notice,.as-bar-track,.as-diag-overdue{background:var(--surface2)}.as-diag-overdue--alert{background:var(--red-lt)}.as-bar-other{background:var(--text3)}.badge--type,.b-assembly,.role-letus,.role-b.letus,.as-type-noise,.pfi-model-wally{color:var(--bs-purple)}.b-factory,.doc-mgr-badge,.as-type-elec,.as-st-progress,.fb-cat-improve,.fb-status-review,.pfi-model-ceily{color:var(--blue)}.fb-status-new,.as-st-open{color:var(--orange)}.fb-status-done,.as-st-done,.pfi-model-common{color:var(--green)}.site-channel.is-b2c{background:var(--green-lt);color:var(--green)}.site-channel.is-b2b{background:var(--blue-lt);color:var(--blue)}.as-filter-chip.active{color:#fff}.guide-body code{background:var(--surface2)}.fms-dashboard-app .welcome{background:var(--surface);color:var(--text);border-color:var(--border);box-shadow:var(--shadow)}.fms-dashboard-app .welcome:after{background:var(--accent-soft);border-color:var(--orange-md)}.welcome-kicker{color:var(--text3)}.fms-dashboard-app .welcome-icon{background:var(--accent-soft);color:var(--orange);border-color:var(--orange-md);box-shadow:none}.fms-dashboard-app .welcome-role,.live-sync-pill{background:var(--green-lt);color:var(--green)}.as-donut:after{background:var(--surface);box-shadow:none}.process-step{background:var(--surface2);border-color:var(--border)}.fms-dashboard-layout :is(.stat-sub,.fms-card-sub,.stat-lbl,.process-step small,.operations-work-main small,.operations-work-detail,.operations-work-footer span,.dashboard-schedule-row small,.quick-action-card small,.dashboard-site-result small,.dashboard-agenda-meta,.dashboard-agenda-caption,.dashboard-agenda-kinds,.dashboard-agenda-group h3 span,.dashboard-agenda-main p,.dashboard-agenda-assignee,.dashboard-agenda-empty){color:var(--text2)}.fms-dashboard-layout .dashboard-agenda-site{color:var(--blue)}.fms-dashboard-layout .dashboard-agenda-row,.fms-dashboard-layout .dashboard-agenda-labels span{border-color:var(--border)}.fms-dashboard-layout .dashboard-agenda-undated{background:var(--warn-lt);border-color:#c9a861}.fms-dashboard-layout .dashboard-agenda-undated summary{color:var(--warn)}.fms-dashboard-layout .dashboard-agenda-day[aria-pressed=true],.fms-dashboard-layout .dashboard-agenda-toolbar button[aria-pressed=true],.calendar-agenda-page [data-cal-mode][aria-pressed=true],.calendar-agenda-page .calendar-agenda-day[aria-pressed=true]{background:var(--blue-lt);border-color:var(--blue);color:var(--blue)}.fms-dashboard-layout .dashboard-install-calendar-card button:focus-visible,.fms-dashboard-layout .dashboard-agenda-undated summary:focus-visible,.calendar-agenda-page button:focus-visible,.calendar-agenda-page [tabindex="0"]:focus-visible{outline-color:var(--blue)}.calendar-agenda-page :is(.cal-install-rule,.calendar-agenda-note,.calendar-agenda-kinds,.calendar-agenda-group h3 span,.calendar-agenda-type,.calendar-agenda-slot,.calendar-agenda-empty),.calendar-agenda-page .calendar-agenda-row.cal-ev--done .cal-ev{color:var(--text2)}.calendar-agenda-page .calendar-agenda-row,.calendar-agenda-page .calendar-agenda-type{border-color:var(--border)}.cal-ev--visit,.cal-dot--visit{color:var(--blue)}.cal-ev--contract,.cal-dot--contract{color:var(--bs-purple)}.cal-ev--assembly,.cal-dot--assembly{color:var(--warn)}.cal-ev--ship,.cal-dot--ship{color:#126b63}.cal-ev--install,.cal-dot--install{color:var(--green)}.cal-ev--lab,.cal-dot--lab{color:#a23368}.cal-cell:is(.cal-slot--taken,.cal-slot--closed,.cal-slot--past,.cal-ord--full,.cal-ord--off) .cal-day-num{color:var(--text3);opacity:1}.cal-cell.cal-cell--today .cal-day-num{color:#fff;opacity:1}.cal-cell.cal-slot--closed,.cal-cell.cal-ord--off{background:repeating-linear-gradient(135deg,transparent,transparent 5px,#e7eaef 5px,#e7eaef 10px)}.ps-install-calendar-open{background:var(--accent-soft);color:var(--orange);border-color:#c78a52}.ps-install-calendar{background:var(--surface);color:var(--text);border-color:var(--border2);box-shadow:var(--shadow-md)}.ps-install-calendar::backdrop{background:#19273a66}.ps-install-calendar-nav button,.ps-install-calendar-footer button{background:var(--surface2);border-color:var(--border2);color:var(--text)}.ps-install-calendar-grid th,.ps-install-calendar-status{color:var(--text2)}.ps-install-calendar .ps-install-calendar-day{background:var(--green-lt);color:var(--green);border-color:#79a78c}.ps-install-calendar .ps-install-calendar-day[aria-disabled=true]{background:var(--surface2);color:var(--text3);border-color:var(--border)}.ps-install-calendar .ps-install-calendar-day[aria-pressed=true],.ps-install-calendar .ps-install-calendar-day[aria-selected=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--orange)}.checklist-item{border-bottom-color:var(--border)!important}.checklist-item :is(input:not([type=checkbox]),textarea){background:var(--surface)!important;color:var(--text)!important;border-color:var(--border2)!important}.checklist-item span[style*="color:#aaa"],.backstage-main div[style*="color:#aaa"]{color:var(--text3)!important}.fms-card-sub[style*="color:#ff8a8a"]{color:var(--red)!important}.fs-section-title>span{color:#fff}.fs-toggle button.on i{background:#fff}.fs-annotation-preset.aircon{color:var(--blue)!important}.fs-annotation-preset.outlet{color:var(--red)!important}.fs-canvas{--bs-amber: #f5a647;--bs-border: #262b35;--bs-surface: #0e0f12;--bs-text: #f0ede0;--fms-orange: #f2a23c;--orange: #f2a23c;--surface: #0c0c0c;--surface2: #161616;--text: #f2ebdf;--text2: #b8ae9f;--text3: #7c7263;--border: #3a332c;--border2: #4a4138;--green: #5bbf8a}}.as-staff-fieldset,.as-role-picker{min-width:0;max-width:100%;box-sizing:border-box;border:1px solid var(--border, #ddd);border-radius:8px;padding:10px;margin:8px 0}.as-role-picker p{font-size:12px;margin:0 0 8px;white-space:normal}.as-role-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.as-role-chip{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:100%;padding:6px 8px;border:1px solid var(--border, #ddd);border-radius:16px;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.as-role-chip:has(input:checked){background:var(--bg-secondary, #edf4fa)}.as-role-chip input{width:auto;min-width:0;flex-shrink:0}.as-role-chip small{font-weight:700}.as-role-chip [hidden]{display:none}.as-role-summary{white-space:normal;overflow-wrap:anywhere}.as-role-details{min-width:0;white-space:normal}.as-role-details summary{cursor:pointer;margin-top:6px}@media (max-width: 600px){.as-role-chip{font-size:16px}.as-role-picker{width:100%}}@media (max-width: 1200px){.as-req-table .as-req-row td.as-req-role-cell{grid-column:1 / -1}}.as-req-table .as-req-role-cell{min-width:128px}.as-req-table .as-role-summary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:keep-all}.as-req-table .as-role-details summary{white-space:nowrap;word-break:keep-all}.as-req-table .as-role-chip{word-break:keep-all;overflow-wrap:normal}.as-req-table .as-role-chip span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1200px){.as-req-table .as-req-row td.as-req-role-cell{min-width:0}}@media (max-width: 660px){.as-req-table.stacked-table td[data-label=엔지니어],.as-req-table.stacked-table td[data-label=조치]{order:6}}@media (min-width: 1201px){.as-req-table td[data-label=증상]{min-width:140px;white-space:normal;word-break:keep-all}}.ps-revision-view,[data-revision-panel]{min-width:0;overflow-wrap:anywhere;white-space:normal}.ps-revision-card{border:1px solid var(--bs-border, #ddd);border-radius:8px;padding:12px;margin:12px 0;min-width:0}.ps-revision-card h5{margin:0 0 10px;font-size:14px}.ps-revision-summary{padding:10px 0}.ps-revision-change{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--bs-border, #ddd);padding:8px 0;gap:12px}.ps-revision-change>div{min-width:0}.ps-revision-change span{display:block;color:var(--text3, #666);font-size:11px;margin-bottom:4px}.ps-revision-fields{margin:0}.ps-revision-fields>div{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:8px;padding:4px}.ps-revision-fields dd{margin:0;min-width:0}.ps-revision-fields dt{color:var(--text3, #666)}.ps-revision-highlight{background:var(--warning-bg, #fff2d8);font-weight:700}.ps-revision-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}[data-revision-panel] details>summary{cursor:pointer;padding:10px 0}[data-revision-panel] section[data-revision]{padding:12px 0}@media (max-width: 660px){.ps-revision-columns,.ps-revision-change{grid-template-columns:minmax(0,1fr)}.ps-revision-change>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px}.ps-revision-fields>div{grid-template-columns:100px minmax(0,1fr)}}.ps-sheet-preview{min-width:0;max-width:100%;margin:12px 0}.ps-sheet-actions{display:flex;flex-wrap:wrap;gap:8px}.ps-sheet-preview [hidden],.ps-sheet-dialog [hidden]{display:none!important}.ps-sheet-dialog{box-sizing:border-box;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:clamp(640px,calc(90dvh * .707107 + 48px),960px);max-width:calc(100vw - 32px);height:90dvh;max-height:90dvh;margin:0;padding:0;border:1px solid #bbb;border-radius:12px;background:#f0f1f3;color:#17202b;box-shadow:0 16px 64px #0005;overflow:hidden;color-scheme:light}.ps-sheet-dialog[open]{display:flex;flex-direction:column}.ps-sheet-dialog::backdrop{background:#11182799}.ps-sheet-toolbar{flex:none;padding:14px 18px;background:#fff;border-bottom:1px solid #d5d9de}.ps-sheet-toolbar h2{font:600 16px/1.4 sans-serif;margin:0 0 10px;overflow-wrap:anywhere}.ps-sheet-controls{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.ps-sheet-controls button{min-height:34px;padding:4px 10px;background:#fff;color:#17202b;border:1px solid #c4cad2;border-radius:6px;cursor:pointer;font:13px/1.4 sans-serif}.ps-sheet-controls button:focus-visible{outline:2px solid #2463c7;outline-offset:2px}.ps-sheet-controls [aria-pressed=true]{background:#e9f0fc;border-color:#2463c7}.ps-sheet-controls [data-sheet-close]{margin-left:auto;font-size:22px}.ps-sheet-controls output{min-width:40px;text-align:center;font:12px/1.4 sans-serif}.ps-sheet-scroll{flex:1;min-height:0;min-width:0;width:calc(100% - 32px);margin:16px;overflow:auto;background:#e0e3e7;overscroll-behavior:contain}.ps-sheet-stage{position:relative;margin:0 auto}.ps-sheet-stage iframe{display:block;width:794px;border:0;background:#fff;transform-origin:top left}.ps-sheet-warning{flex:none;margin:0;padding:10px 18px;border-bottom:1px solid #b7791f;background:#fff4d6;color:#573700;font:13px/1.5 sans-serif}.ps-sheet-dialog [data-sheet-modal-error]{flex:none;padding:0 18px;color:#9b2525}@media (max-width: 640px){.ps-sheet-dialog{top:0;right:0;bottom:0;left:0;transform:none;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.ps-sheet-toolbar{padding:12px}.ps-sheet-scroll{width:100%;margin:0}.ps-sheet-controls{gap:4px}.ps-sheet-controls button{min-height:40px;padding:4px 8px}}.ir-section{color:#172b40;font-size:13px;line-height:1.55}[data-installation-reviews] .card-title{font-size:15px;line-height:1.4}.installation-reviews-page .page-title{font-size:20px}.installation-reviews-page .page-subtitle{font-size:12px}.ir-section h3{font-size:15px;line-height:1.4}.ir-section h4,.ir-review-heading strong{font-size:13px;line-height:1.5}.ir-form p,.ir-review>p,.ir-photo p{font-size:12px;font-weight:400;line-height:1.55}.ir-form label,.ir-filters label,.ir-section legend,.ir-review dt{font-size:13px}.ir-section .btn{font-size:12px}.ir-form{display:grid;gap:14px;padding:18px;background:#f6f8fb;border:1px solid #cbd5e1;border-radius:10px;margin-bottom:20px}.ir-form label,.ir-filters label{display:grid;gap:6px;min-width:0;font-weight:600}.ir-section textarea,.ir-section select,.ir-filters input,.ir-filters select{width:100%;box-sizing:border-box;border:1px solid #94a3b8;border-radius:6px;padding:9px;background:#fff;color:#172b40;font:inherit}.ir-section textarea{resize:vertical}.ir-section textarea,.ir-section select,.ir-filters input,.ir-form input[type=file]{font-size:13px;line-height:1.5}.ir-fields,.ir-filters{display:flex;gap:16px;flex-wrap:wrap;align-items:end}.ir-fields label,.ir-filters label{flex:1 1 180px}.ir-review{border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:18px;margin:16px 0;overflow-wrap:anywhere}.ir-review-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.ir-review p{color:#475569}.ir-review dt{font-weight:700;margin-top:12px}.ir-review dd{margin:5px 0 14px;white-space:pre-wrap}.ir-pagination{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.ir-section button:focus-visible,.ir-section select:focus-visible,.ir-section textarea:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.ir-items,.ir-photos{min-width:0;border:1px solid #cbd5e1;border-radius:8px;padding:16px}.ir-items legend,.ir-photos legend{font-weight:700;padding:0 6px}.ir-item-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 140px auto;gap:12px;align-items:end;padding:14px 0;border-bottom:1px solid #cbd5e1;margin-bottom:12px}.ir-item-view{border-left:3px solid #64748b;padding-left:12px;margin-bottom:16px}.ir-item-view h4{margin:8px 0}.ir-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,220px));gap:14px;margin:12px 0}.ir-photo{display:flex;flex-direction:column;gap:8px;border:1px solid #cbd5e1;padding:10px;border-radius:8px;overflow-wrap:anywhere;min-width:0}.ir-photo img{display:block;width:100%;max-height:180px;object-fit:contain;border-radius:4px}.ir-actions{display:flex;flex-wrap:wrap;gap:10px}.ir-form input[type=file]{width:100%;min-width:0}@media (max-width:760px){.ir-item-row{grid-template-columns:1fr}.ir-photo-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.ir-form{padding:12px}}@media (max-width:760px){.ir-section textarea,.ir-section select,.ir-filters input{font-size:16px}}.ir-review{position:relative}.ir-review-summary{cursor:pointer;padding-right:160px;list-style:none;position:relative;padding-left:20px}.ir-review-summary::-webkit-details-marker{display:none}.ir-review-summary:before{content:"▸";position:absolute;left:0;top:0}[data-review-card][open]>.ir-review-summary:before{content:"▾"}.ir-review-summary:focus-visible,.ir-more-items summary:focus-visible{outline:3px solid #2563eb;outline-offset:3px}.ir-review-meta,.ir-review-preview{display:block;color:#475569;font-size:12px;margin-top:4px}.ir-review-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ir-review-actions{position:absolute;right:18px;top:18px;display:flex;gap:8px}.ir-review-body{border-top:1px solid #e2e8f0;margin-top:14px;padding-top:4px}.ir-more-items summary{cursor:pointer;color:#1d4ed8;margin:12px 0}.ir-list-actions,.ir-filter-actions{display:flex;gap:8px;flex-wrap:wrap}.ir-filter-help{font-size:12px;color:#475569}.ir-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px}.ir-filter-actions{justify-content:flex-end}.ir-section [data-filter-error]:empty,.ir-section [data-list-error]:empty{display:none}.ir-list-actions{margin-top:16px}.ir-review .ir-status-open{background:#fff4cc;color:#750}.ir-review .ir-status-progress{background:#e0edff;color:#174ea6}.ir-review .ir-status-resolved{background:#dcfce7;color:#166534}@media (max-width:760px){.ir-filters{grid-template-columns:1fr}.ir-review{padding:12px}.ir-review-summary{padding-right:86px;min-height:88px}.ir-review-actions{right:12px;top:12px;flex-direction:column;width:78px}.ir-review-heading{gap:6px}}#as-product-retry[hidden]{display:none!important}#as-defect-items{display:grid;gap:16px;margin:16px 0}#as-defect-items fieldset{min-width:0;margin:0;padding:16px;border:1px solid #d5dce5;border-radius:10px}#as-defect-items legend{padding:0 6px;font-size:14px;font-weight:700}#as-defect-items label{display:grid;gap:6px;margin-bottom:12px;font-size:13px}#as-defect-items textarea{min-height:96px;resize:vertical}#as-add-defect{margin-bottom:16px}.signage-screen{--signage-bg: #f4f5f7;--signage-card: #fff;--signage-line: #c9ced6;--signage-line-soft: #e3e6eb;--signage-text: #111827;--signage-secondary: #374151;--signage-muted: #4b5563;--signage-risk: #a8201a;--signage-warning: #7a4d00;--signage-info: #1d4f91;position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:block;overflow:hidden;background:var(--signage-bg);color:var(--signage-text);font-family:Pretendard Variable,Pretendard,sans-serif;cursor:none}.signage-screen.signage-controls-visible{cursor:auto}.signage-stage-root{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--signage-bg)}.signage-stage-root:after{content:attr(data-debug-text);display:none;position:fixed;z-index:20;left:18px;bottom:18px;padding:6px 10px;border:2px solid var(--signage-line);background:#fff;color:var(--signage-secondary);font-size:16px;font-weight:700}.signage-stage-root[data-debug="1"]:after{display:block}.signage-content-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;overscroll-behavior:contain;transform:translate(var(--signage-shift-x, 0),var(--signage-shift-y, 0))}.signage-control-layer{position:fixed;z-index:15;top:0;right:0;bottom:0;left:0;pointer-events:none}.signage-controls{position:absolute;right:18px;bottom:18px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}.signage-controls.is-visible{pointer-events:auto}.signage-menu-toggle{min-width:72px;min-height:48px;padding:0 14px;border:2px solid var(--signage-line);background:#fffffff5;color:var(--signage-secondary);font-family:inherit;font-size:18px;font-weight:700;line-height:1;opacity:0;pointer-events:none}.signage-controls.is-visible .signage-menu-toggle{opacity:1;pointer-events:auto}.signage-control-panel{width:400px;display:flex;flex-direction:column;gap:12px;padding:16px;border:2px solid var(--signage-line);background:#fff;color:var(--signage-text);box-shadow:0 10px 30px #11182733;pointer-events:auto}.signage-control-panel h2,.signage-control-panel p{margin:0;color:var(--signage-secondary);font-size:18px;line-height:1.35;font-weight:700}.signage-control-panel small{color:var(--signage-muted);font-size:14px;line-height:1.3}.signage-control-panel>button,.signage-control-panel>div button{min-height:44px;padding:8px 14px;border:1px solid var(--signage-line);background:#fff;color:var(--signage-text);font-family:inherit;font-size:16px;font-weight:700;line-height:1.25;text-align:left}.signage-control-panel>div{display:flex;gap:10px}.signage-control-panel>div button{flex:1;text-align:center}.signage-control-panel button.is-danger{border-color:var(--signage-risk);background:var(--signage-risk);color:#fff}.signage-logout-error{color:var(--signage-risk)!important;font-weight:800!important}.signage-expired-exit{min-height:44px;padding:8px 16px;border:2px solid var(--signage-info);background:#fff;color:var(--signage-info);font-family:inherit;font-size:16px;font-weight:700}.signage-mark{display:grid;width:40px;height:40px;place-items:center;background:var(--signage-text);color:#fff;font-size:18px;font-weight:800}.signage-message{display:flex;min-height:100%;flex-direction:column;align-items:center;justify-content:center;padding:32px;background:var(--signage-bg);color:var(--signage-text);text-align:center}.signage-message h1{margin:16px 0 8px;font-size:28px}.signage-message p{color:var(--signage-secondary);font-size:18px}.signage-stage-root,.signage-stage-root.signage-stage-root--portrait,.signage-stage-root.signage-stage-root--landscape{width:auto;height:auto;transform:none;transform-origin:initial}.matrix-screen{--matrix-bg: #f4f5f7;box-sizing:border-box;display:flex;min-width:100%;min-height:100%;flex-direction:column;gap:8px;padding:8px;overflow:visible;background:var(--matrix-bg);color:#111827;font-family:Pretendard Variable,Pretendard,sans-serif}.matrix-top{box-sizing:border-box;display:grid;flex:none;grid-template-columns:1fr auto auto auto;align-items:center;gap:14px;height:40px;min-width:0}.matrix-title{font-size:16px;line-height:20px;font-weight:800;letter-spacing:.04em}.matrix-clock{font-size:22px;line-height:24px;font-weight:700;font-variant-numeric:tabular-nums}.matrix-date,.matrix-updated{color:#374151;font-size:14px;line-height:18px;white-space:nowrap}.matrix-toolbar{display:flex;flex:none;align-items:center;gap:8px;min-height:32px;flex-wrap:wrap}.matrix-summary{display:flex;align-items:center;gap:12px;flex:1 1 auto;min-width:360px;color:#374151;font-size:14px;line-height:20px;font-weight:600}.matrix-summary .is-risk{color:#a8201a}.matrix-summary .is-soon{color:#7a4d00}.matrix-summary .is-normal{color:#0f6b3e}.matrix-summary .is-complete{color:#374151}.matrix-hide{display:inline-flex;align-items:center;gap:5px;color:#374151;font-size:14px;white-space:nowrap}.matrix-hide input{accent-color:#111827}.matrix-menu-host{position:relative}.matrix-menu-button{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:4px 8px;border:1px solid #4b5563;border-radius:0;background:#fff;color:#111827;font:14px/18px Pretendard Variable,Pretendard,sans-serif;white-space:nowrap}.matrix-menu-button:focus-visible,.matrix-menu [role=menuitemradio]:focus-visible{outline:2px solid #111;outline-offset:1px}.matrix-menu-button svg{width:12px;height:8px;flex:none}.matrix-menu{position:fixed;z-index:1100;display:flex;min-width:210px;max-height:min(70vh,460px);flex-direction:column;overflow:auto;border:1px solid #4b5563;background:#fff;box-shadow:0 4px 12px #0002}.matrix-menu[hidden]{display:none}.matrix-menu [role=menuitemradio]{min-height:32px;padding:5px 10px;border:0;background:#fff;color:#111827;font:14px/20px Pretendard Variable,Pretendard,sans-serif;text-align:left}.matrix-menu [role=menuitemradio][aria-checked=true]{background:#e5e7eb;font-weight:700}.matrix-scroll{flex:1 0 auto;min-height:0;overflow:visible}.matrix-table{width:100%;min-width:0}.matrix-groups,.matrix-step-headings,.matrix-row{display:grid;grid-template-columns:minmax(96px,1.2fr) minmax(44px,.5fr) repeat(3,minmax(0,1fr)) 2px repeat(4,minmax(0,1fr)) 2px repeat(3,minmax(0,1fr)) 2px repeat(3,minmax(0,1fr)) 2px minmax(0,1fr) 2px minmax(0,1fr) minmax(72px,.8fr);gap:1px;min-width:0}.matrix-groups{min-height:22px;align-items:end}.matrix-group{min-width:0;color:var(--step-color);font-size:16px;line-height:20px;font-weight:700;text-align:center;white-space:nowrap}.matrix-step-headings{min-height:26px;align-items:center;border-bottom:1px solid #8b929c}.matrix-name-heading,.matrix-order-heading,.matrix-state-heading{overflow:hidden;color:#374151;font-size:14px;line-height:18px;font-weight:700;white-space:nowrap}.matrix-order-heading{display:flex;min-height:30px;align-items:center;justify-content:center;overflow:visible;line-height:14px;text-align:center;white-space:normal;overflow-wrap:anywhere}.matrix-step-heading{overflow:hidden;color:var(--step-color);font-size:14px;line-height:18px;font-weight:700;text-align:center;white-space:nowrap}.matrix-rows{display:flex;flex-direction:column;gap:8px;padding-top:8px}.matrix-site-block{display:flex;flex-direction:column;gap:1px}.matrix-row{box-sizing:border-box;align-items:stretch;min-height:30px}.matrix-product-row{align-items:center}.matrix-site-heading{min-height:28px;align-items:center;border-bottom:1px solid #d1d5db}.matrix-site-block:nth-child(odd){background:#e9ebef}.matrix-site-block:nth-child(2n){background:#fff}.matrix-site-block{padding-block:1px}.matrix-product{display:flex;min-width:0;align-items:center;gap:6px;padding:1px;overflow:visible}.matrix-title-wide{box-sizing:border-box;display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:1px}.matrix-site-name{min-width:0;flex:1 1 auto;overflow:visible;color:#111827;font-size:18px;line-height:24px;font-weight:700;white-space:nowrap}.matrix-product-row .matrix-product{padding-left:4px}.matrix-product-name{min-width:0;overflow:visible;color:#374151;font-size:14px;line-height:17px;font-weight:500;white-space:normal;overflow-wrap:anywhere}.matrix-order-number,.matrix-order-placeholder{min-width:0;overflow:hidden;color:#111827;font-size:14px;line-height:18px;text-align:right;white-space:nowrap}.matrix-cell{box-sizing:border-box;display:flex;min-width:0;height:30px;align-items:center;justify-content:center;padding:4px;border:0;background:#fff;color:var(--cell-color);font-size:18px;line-height:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.matrix-column-spacer{min-width:0}.matrix-cell--empty{border:1px solid #aeb4bd;outline:none;box-shadow:none!important;color:transparent}.matrix-cell--planned{border:1px solid #aeb4bd}.matrix-cell--planned{color:color-mix(in srgb,var(--cell-color) 50%,white)}.matrix-cell--in_progress{box-shadow:inset 0 0 0 4px var(--cell-color)!important}.matrix-cell--completed{background:var(--cell-background);color:#fff}.matrix-cell-placeholder,.matrix-state-placeholder{min-width:0}.matrix-site-state{flex:none;margin-right:1px;color:var(--state-color);font-size:14px;line-height:18px;font-weight:700;text-align:right;white-space:nowrap}.matrix-empty{grid-column:1 / -1;margin:24px 0;color:#374151;font-size:18px}.matrix-footnote{display:flex;flex:none;justify-content:space-between;min-height:18px;color:#4b5563;font-size:12px;line-height:18px}.matrix-updated.is-warning{color:#7a4d00;font-weight:700}.matrix-screen.is-stale [data-signage-health]{color:#6d210e;font-weight:700}@media screen{.fs-annotation.dimension .fs-dimension-line:before,.fs-annotation.dimension .fs-dimension-line:after{display:none}.field-survey-page .fs-drawing-workspace[data-drawing-tool=dimension] .fs-annotation.dimension.selected [data-dimension-handle],.field-survey-page .fs-drawing-workspace[data-drawing-tool=dimension] .fs-annotation.dimension.selected [data-resize-label],.field-survey-page .fs-drawing-workspace[data-drawing-tool=dimension] .fs-annotation.dimension.selected [data-remove-annotation]{display:block}.field-survey-page .fs-annotation.dimension .fs-dim-text{color:#304e60;white-space:nowrap;pointer-events:auto;z-index:9}.field-survey-page .fs-annotation.dimension:before{content:"";position:absolute;left:0;right:0;top:-13px;height:26px;background:transparent}.field-survey-page .fs-annotation.dimension .fs-dimension-handle{box-sizing:border-box;width:12px;height:12px;min-width:0;min-height:0;margin:0;transform:translate(-50%,-50%);border:2px solid #304e60;background:#fff;z-index:8}.field-survey-page .fs-annotation.dimension .fs-dimension-handle:before{content:"";position:absolute;inset:auto;width:32px;height:32px;left:50%;top:50%;transform:translate(-50%,-50%)}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.start{top:0;left:0;right:auto}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.end{top:0;left:100%;right:auto}.field-survey-page .fs-annotation.dimension .fs-dimension-handle.offset{top:0;left:50%;right:auto;cursor:ns-resize}.field-survey-page .fs-annotation.dimension [data-resize-label]{position:absolute;display:block;box-sizing:border-box;left:100%;right:auto;top:-40px;width:16px;height:16px;min-width:0;min-height:0;transform:translate(-50%);z-index:7}.field-survey-page .fs-annotation.dimension [data-resize-label]:before{content:"";position:absolute;inset:auto;width:32px;height:32px;left:50%;top:50%;transform:translate(-50%,-50%)}.field-survey-page [data-drawing-tool=dimension] .fs-annotation.dimension.selected .fs-dimension-handle{opacity:1;pointer-events:auto}@media (pointer:coarse){.field-survey-page .fs-annotation.dimension:before{top:-23px;height:46px}.field-survey-page .fs-annotation.dimension .fs-dimension-handle:before{width:44px;height:44px}}.fs-dim-editor{position:absolute;z-index:20;display:flex;gap:4px;align-items:center;max-width:100%;padding:6px;background:#fff;border:1px solid #304e60;border-radius:6px;box-shadow:0 3px 12px #0003;transform:translate(-50%,-100%)}.fs-dim-editor input{width:130px;min-width:0;font-size:16px;color:#17252f}.fs-dim-editor button{min-height:36px;min-width:36px;color:#304e60}.fs-dim-preview{pointer-events:none}.fs-dimension-units{font-size:12px;color:#304e60}}@media screen{.field-survey-page [data-canvas]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.field-survey-page .fs-dim-editor input{-webkit-user-select:text;user-select:text}.field-survey-page [data-canvas] [data-drawing-img]{pointer-events:auto;-webkit-user-drag:none}.field-survey-page .fs-dim-start-point{position:absolute;width:12px;height:12px;border:2px solid white;border-radius:50%;background:#304e60;box-shadow:0 0 0 2px #304e60;transform:translate(-50%,-50%);pointer-events:none;z-index:10}.field-survey-page .fs-dimension-tap-status{color:#304e60;padding:8px}.field-survey-page .fs-dimension-tap-status button{margin-left:12px;min-height:44px}.field-survey-page .fs-drawing-debug-toggle{display:block;margin:4px 0 4px auto;padding:4px 8px;font-size:12px;opacity:.65}.field-survey-page .fs-drawing-debug{position:fixed;bottom:0;left:0;right:0;z-index:3000;padding:5px;background:#fff;color:#17252f;font:11px monospace;white-space:nowrap;overflow-x:auto}.field-survey-page [data-dim-tap-status][hidden],.field-survey-page [data-drawing-debug][hidden]{display:none}}@media print{.fs-dimension-tap-status,.fs-drawing-debug-toggle,.fs-drawing-debug,.fs-dim-start-point{display:none!important}}.fs-image-wrap{--annotation-unit: 1cqw;--annotation-view-zoom: 1}.field-survey-page .fs-equipment,.fs-drawing-output .fs-equipment{position:absolute;width:0;height:0;min-width:0;min-height:0;padding:0;border:0;background:none;transform:none;color:var(--equipment-color)}.fs-equipment-symbol{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:calc(var(--equipment-size) * var(--annotation-unit));height:calc(var(--equipment-size) * var(--annotation-unit));font-size:calc(1.5 * var(--annotation-unit));line-height:1;font-style:normal;background:#fff;border:calc(.15 * var(--annotation-unit)) solid currentColor;border-radius:50%;transform:translate(-50%,-50%)}.fs-equipment-hit{position:absolute;left:0;top:0;width:max(calc(44px / var(--annotation-view-zoom)),calc(var(--equipment-size) * var(--annotation-unit)));height:max(calc(44px / var(--annotation-view-zoom)),calc(var(--equipment-size) * var(--annotation-unit)));transform:translate(-50%,-50%);cursor:move;z-index:2}.field-survey-page .fs-equipment-label,.fs-drawing-output .fs-equipment-label{position:absolute;left:var(--label-dx);top:var(--label-dy);transform:translate(-50%,-50%);width:max-content;max-width:40cqw;font-size:calc(var(--equipment-font) * var(--annotation-unit));line-height:1.2;padding:calc(.3 * var(--annotation-unit)) calc(.45 * var(--annotation-unit));border:max(1px,calc(.08 * var(--annotation-unit))) solid currentColor;background:#fff;cursor:move}.fs-equipment-line{position:absolute;left:0;top:0;width:var(--leader-distance);height:max(1px,calc(.12 * var(--annotation-unit)));background:currentColor;transform-origin:0 50%;transform:rotate(var(--leader-angle));pointer-events:none}.fs-equipment-label:empty,.fs-equipment:has(.fs-equipment-label:empty) .fs-equipment-line{display:none}.field-survey-page [data-drawing-tool=dimension] .fs-equipment *,.field-survey-page [data-drawing-tool=memo] .fs-equipment *,.field-survey-page [data-drawing-tool=dimension] .fs-equipment,.field-survey-page [data-drawing-tool=memo] .fs-equipment{pointer-events:none!important}.fs-equipment-actions{position:static;flex-shrink:0;display:flex;gap:4px;background:#fff;padding:0;border:0;border-radius:6px}.fs-equipment-actions button,.fs-equipment-actions select{min-height:44px}.field-survey-page [data-annotation-preset][aria-pressed=true]{background:#fff0dd;border-color:#ad5000}.field-survey-page .fs-drawing-workspace.is-expanded{display:flex!important;flex-direction:column;gap:0!important;padding:4px!important;overflow:hidden!important}.field-survey-page .is-expanded .fs-workspace-toolbar{display:flex!important;flex-wrap:nowrap!important;flex:none;height:52px;max-height:52px;gap:4px;overflow-x:auto;overflow-y:hidden}.field-survey-page .is-expanded .fs-workspace-toolbar>*,.field-survey-page .is-expanded .fs-drawing-tools>*{flex-shrink:0}.field-survey-page .is-expanded .fs-drawing-tools{display:flex;flex-wrap:nowrap}.field-survey-page .fs-drawing-tools button,.field-survey-page .fs-workspace-toolbar button,.field-survey-page .fs-annotation-scale select{min-height:44px}.field-survey-page .is-expanded .fs-zoom-controls{display:flex;flex-wrap:nowrap;margin:0}.field-survey-page .is-expanded .fs-zoom-controls small,.field-survey-page .is-expanded .fs-annotation-toolbar,.field-survey-page .is-expanded .fs-workspace-hint,.field-survey-page .is-expanded .fs-drawing-source,.field-survey-page .is-expanded .fs-file-meta,.field-survey-page .is-expanded .fs-dimension-units,.field-survey-page .is-expanded .fs-drawing-selection{display:none!important}.field-survey-page .is-expanded .fs-canvas{flex:1 1 auto;height:auto!important;min-height:80vh!important;margin:0!important}.field-survey-page .is-expanded.show-info .fs-workspace-hint{display:block!important;position:absolute;top:58px;left:12px;z-index:20;background:#fff;padding:8px}.field-survey-page .is-expanded [data-annotation-small]{position:absolute;bottom:8px;left:12px;background:#fff;z-index:3}.field-survey-page .is-expanded .fs-drawing-debug-toggle{position:absolute;right:8px;bottom:8px;z-index:4}.field-survey-page .is-expanded .fs-workspace-toolbar .fs-annotation-input-label{display:block;width:140px}.field-survey-page .is-expanded .fs-workspace-toolbar .fs-annotation-input-label>span{display:none}.field-survey-page .is-expanded .fs-workspace-toolbar [data-annotation-text]{height:44px;min-height:44px}.field-survey-page .fs-annotation.note.leader .fs-label-resize,.field-survey-page .fs-annotation.note.leader .fs-annotation-remove{display:none}.field-survey-page [data-drawing-tool=equipment] .fs-canvas,.field-survey-page .fs-equipment-hit,.field-survey-page .fs-equipment-label{touch-action:none}.fs-equipment-symbol{left:0;top:0}.fs-equipment-label{z-index:3}.fs-workspace-info{position:absolute;top:58px;left:12px;right:12px;z-index:20;padding:12px;background:#fff;border:1px solid #b7c2cb;border-radius:6px;color:#304e60}.field-survey-page .fs-workspace-toolbar.has-equipment-actions{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden}.field-survey-page .fs-workspace-toolbar.has-equipment-actions>*{flex-shrink:0}@media screen{[data-fs-tablet-only]{display:none}.field-survey-page[data-fs-layout=tablet] .page.active{animation:none;transform:none}}@media screen{.field-survey-page[data-fs-layout=tablet] [data-fs-tablet-only]{display:block}.field-survey-page[data-fs-layout=tablet] [data-fs-inactive]{visibility:hidden;height:0;overflow:hidden;pointer-events:none;margin:0;padding:0;min-height:0}.field-survey-page[data-fs-layout=tablet] .fs-heading{display:none}.field-survey-page[data-fs-layout=tablet] [data-fs-nav]{display:flex;position:sticky;top:64px;z-index:15;gap:4px;padding:16px;background:var(--surface,#222)}.field-survey-page[data-fs-layout=tablet] [data-fs-nav] button{flex:1}.field-survey-page[data-fs-layout=tablet] [aria-selected=true]{color:var(--fms-orange,#ff681e);border-color:currentColor}.field-survey-page[data-fs-layout=tablet] [data-fs-footer]{display:flex;justify-content:space-between;padding:16px}.field-survey-page[data-fs-layout=tablet] [data-fs-chip]{display:none}.field-survey-page[data-fs-layout=tablet][data-fs-current-step="2"] [data-fs-chip],.field-survey-page[data-fs-layout=tablet][data-fs-current-step="3"] [data-fs-chip]{display:block;margin:16px 0}.field-survey-page[data-fs-layout=tablet] :is(button,a[href],input:not([hidden]),select,[role=tab]){min-width:44px;min-height:44px}.field-survey-page[data-fs-layout=tablet] :is(input,select){font-size:16px}}@media screen and (min-width:1024px){.field-survey-page[data-fs-layout=tablet] .field-survey-pg{padding-left:180px}.field-survey-page[data-fs-layout=tablet] [data-fs-nav]{position:fixed;left:0;top:90px;width:170px;flex-direction:column}}@media screen{.field-survey-page[data-fs-layout=tablet] [data-fs-sheet-head]{display:none}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet-parent]{visibility:visible;overflow:visible}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet-parent]>:not(:has([data-fs-opened])){visibility:hidden}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet-parent]>.fs-grid>:not([data-fs-opened]){visibility:hidden}.field-survey-page[data-fs-layout=tablet] [data-fs-backdrop]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:1000}.field-survey-page[data-fs-layout=tablet] [data-fs-opened]{margin:0;position:fixed;inset:auto 0 var(--fs-kb-inset,0px);z-index:1001;visibility:visible;pointer-events:auto;box-sizing:border-box;background:var(--surface,#222);color:var(--text,#fff);border:1px solid var(--border,#555);border-radius:18px 18px 0 0;width:100%;max-height:85vh;max-height:85dvh;overflow:auto;overscroll-behavior:contain;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.field-survey-page[data-fs-layout=tablet] [data-fs-opened] [data-fs-sheet-head]{display:flex;align-items:center;justify-content:space-between;gap:12px;touch-action:none}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet-body]{overflow:auto;overscroll-behavior:contain}.field-survey-page[data-fs-layout=tablet] .fs-space-row{grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) auto 44px}.field-survey-page[data-fs-layout=tablet] .fs-sheet-enter{animation:fs-sheet-in .24s cubic-bezier(.2,.8,.2,1)}.field-survey-page[data-fs-layout=tablet] .fs-leaving{animation:fs-sheet-out .18s cubic-bezier(.2,.8,.2,1)}}@media screen and (min-width:1024px){.field-survey-page[data-fs-layout=tablet] [data-fs-opened]{left:50%;right:auto;top:calc(50% - var(--fs-kb-inset,0px) / 2);bottom:auto;translate:-50% -50%;width:min(640px,calc(100% - 32px));border-radius:18px;max-height:calc(100dvh - 48px - var(--fs-kb-inset,0px))}}@keyframes fs-sheet-in{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fs-sheet-out{to{transform:translateY(24px);opacity:0}}@media screen and (prefers-reduced-motion:reduce){.field-survey-page[data-fs-layout=tablet] *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media screen{.field-survey-page[data-fs-layout=tablet] [data-canvas]{touch-action:none}.field-survey-page[data-fs-layout=tablet] [data-drawing-tool=select]:not(.is-expanded) [data-canvas]:not(.crop-mode){touch-action:pan-y}.field-survey-page[data-fs-layout=tablet] .fs-drawing-workspace.is-expanded{top:0;right:0;bottom:0;left:0;border-radius:0;height:100vh;height:100dvh;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.field-survey-page[data-fs-layout=tablet] .fs-workspace-enter{animation:fs-workspace-in .24s cubic-bezier(.2,.8,.2,1)}.field-survey-page[data-fs-layout=tablet] :is([data-dimension-handle],[data-resize-label],[data-leader-handle]){min-width:0;min-height:0}.field-survey-page[data-fs-layout=tablet] :is([data-dimension-handle],[data-resize-label],[data-leader-handle]):before{content:"";position:absolute;width:32px;height:32px;left:50%;top:50%;transform:translate(-50%,-50%)}}@keyframes fs-workspace-in{0%{transform:scale(.98);opacity:0}to{transform:scale(1);opacity:1}}@media screen{.field-survey-page[data-fs-layout=tablet] [data-fs-sheet=address] [data-fs-sheet-body]{height:60vh;height:60dvh}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet=photo][data-fs-opened]{top:0;right:0;bottom:0;left:0;translate:none;width:100%;max-height:100vh;max-height:100dvh;border-radius:0}.field-survey-page[data-fs-layout=tablet] [data-fs-sheet=photo] img{display:block;width:100%;height:75vh;height:75dvh;object-fit:contain}}@media screen{.field-survey-page[data-fs-layout=tablet].fs-enter-push{animation:fs-push .28s cubic-bezier(.2,.8,.2,1)}.field-survey-page[data-fs-layout=tablet].fs-enter-pop{animation:fs-pop .28s cubic-bezier(.2,.8,.2,1)}.field-survey-page[data-fs-layout=tablet] [data-fs-skeleton]{padding:24px}.field-survey-page[data-fs-layout=tablet] [data-fs-skeleton] i{display:block;height:64px;margin:16px 0;border-radius:8px;background:var(--surface2,#333)}.field-survey-page[data-fs-layout=tablet] .topbar{padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left))}.field-survey-page[data-fs-layout=tablet] [data-fs-footer]{padding-bottom:max(16px,env(safe-area-inset-bottom))}.field-survey-page[data-fs-layout=tablet] [data-action=save]:disabled:after{content:" ◌"}}@keyframes fs-push{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fs-pop{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@media screen and (prefers-reduced-motion:reduce){.field-survey-page[data-fs-layout=tablet]{animation:none!important}}@media screen{.field-survey-page[data-fs-layout=tablet] :is([data-fs-backdrop],[data-fs-dynamic]){display:block}.field-survey-page[data-fs-layout=tablet][data-fs-toast]{min-height:0;height:auto;max-width:calc(100vw - 32px);box-sizing:border-box;display:block;position:fixed;z-index:2000;left:50%;bottom:24px;translate:-50% 0;padding:12px 20px;border-radius:12px;background:#242424;color:#fff;pointer-events:none}.field-survey-page[data-fs-layout=tablet][data-fs-toast]:empty{width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.field-survey-page[data-fs-layout=tablet] .fs-space-selector-card[data-fs-opened] .fs-space-manager{max-height:55vh;max-height:55dvh;overflow:auto;overscroll-behavior:contain}}@media screen{.field-survey-page[data-fs-layout=tablet] select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:44px}.field-survey-page[data-fs-layout=tablet] a[href]{display:inline-flex;align-items:center}}@media screen{.field-survey-page[data-fs-layout=tablet] .fs-step-enter{animation:fs-step-in .2s cubic-bezier(.2,.8,.2,1)}}@keyframes fs-step-in{0%{opacity:0}to{opacity:1}}
