:root{--bg: #d7dadd;--panel: #eef0f2;--panel-2: #e4e6e9;--border: #c1c4c8;--text: #181a1d;--text-dim: #666a70;--room: #0092a8;--zone: #e8302f;--source: #e08b00;--ok: #1f9e5c;--warn: #e8302f;--accent: #0092a8;--zone-tint: rgba(232, 48, 47, .1);--zone-tint-hover: rgba(232, 48, 47, .17);--source-tint: rgba(224, 139, 0, .1);--source-tint-hover: rgba(224, 139, 0, .17);--amp-tint: rgba(31, 158, 92, .1);--amp-tint-hover: rgba(31, 158, 92, .17);--warn-tint: rgba(232, 48, 47, .12);--room-tint: rgba(0, 146, 168, .1);--room-border: rgba(0, 146, 168, .35);--tab-idle: #dadcdf;--overlay: rgba(18, 20, 23, .45);--map-filter: none;--mono: "JetBrains Mono", "Cascadia Code", "Consolas", monospace;--sans: "Space Grotesk", "Segoe UI", system-ui, sans-serif;--font-display: "Oswald", "Segoe UI", system-ui, sans-serif;--grid-line: rgba(0, 0, 0, .05)}:root[data-theme-family=technique]{--bg: #dde6f0;--panel: #ffffff;--panel-2: #e7eef5;--border: #c3d0de;--text: #0c1420;--text-dim: #5b6b80;--room: #1400ff;--zone: #d1293a;--source: #b8790a;--ok: #0f8f57;--warn: #d1293a;--accent: #1400ff;--zone-tint: rgba(209, 41, 58, .08);--zone-tint-hover: rgba(209, 41, 58, .15);--source-tint: rgba(184, 121, 10, .1);--source-tint-hover: rgba(184, 121, 10, .17);--amp-tint: rgba(15, 143, 87, .09);--amp-tint-hover: rgba(15, 143, 87, .16);--warn-tint: rgba(209, 41, 58, .1);--room-tint: rgba(20, 0, 255, .07);--room-border: rgba(20, 0, 255, .3);--tab-idle: #e7eef5;--overlay: rgba(12, 20, 32, .45);--map-filter: none;--font-display: "Space Grotesk", "Segoe UI", system-ui, sans-serif;--grid-line: rgba(20, 0, 255, .055)}:root[data-theme-family=technique][data-theme=night]{--bg: #07080a;--panel: #0d0f14;--panel-2: #141822;--border: #262b36;--text: #eef1f6;--text-dim: #7d8494;--room: #00f0ff;--zone: #ff4d5e;--source: #ffb020;--ok: #2ee88a;--warn: #ff4d5e;--accent: #00f0ff;--zone-tint: rgba(255, 77, 94, .13);--zone-tint-hover: rgba(255, 77, 94, .2);--source-tint: rgba(255, 176, 32, .12);--source-tint-hover: rgba(255, 176, 32, .2);--amp-tint: rgba(46, 232, 138, .12);--amp-tint-hover: rgba(46, 232, 138, .2);--warn-tint: rgba(255, 77, 94, .16);--room-tint: rgba(0, 240, 255, .1);--room-border: rgba(0, 240, 255, .35);--tab-idle: #141822;--overlay: rgba(0, 0, 0, .65);--map-filter: saturate(1.05) brightness(.9);--grid-line: rgba(255, 255, 255, .04)}:root[data-theme-family=chassis]{--bg: #d7dadd;--panel: #eef0f2;--panel-2: #e4e6e9;--border: #c1c4c8;--text: #181a1d;--text-dim: #666a70;--room: #0092a8;--zone: #e8302f;--source: #e08b00;--ok: #1f9e5c;--warn: #e8302f;--accent: #0092a8;--zone-tint: rgba(232, 48, 47, .1);--zone-tint-hover: rgba(232, 48, 47, .17);--source-tint: rgba(224, 139, 0, .1);--source-tint-hover: rgba(224, 139, 0, .17);--amp-tint: rgba(31, 158, 92, .1);--amp-tint-hover: rgba(31, 158, 92, .17);--warn-tint: rgba(232, 48, 47, .12);--room-tint: rgba(0, 146, 168, .1);--room-border: rgba(0, 146, 168, .35);--tab-idle: #dadcdf;--overlay: rgba(18, 20, 23, .45);--map-filter: none;--grid-line: rgba(0, 0, 0, .05)}:root[data-theme-family=chassis][data-theme=night]{--bg: #131418;--panel: #1c1e21;--panel-2: #232629;--border: #0c0d0f;--text: #e9ebee;--text-dim: #888d95;--room: #00e5ff;--zone: #ff3b3b;--source: #ffb020;--ok: #2ee88a;--warn: #ff3b3b;--accent: #00e5ff;--zone-tint: rgba(255, 59, 59, .14);--zone-tint-hover: rgba(255, 59, 59, .22);--source-tint: rgba(255, 176, 32, .12);--source-tint-hover: rgba(255, 176, 32, .2);--amp-tint: rgba(46, 232, 138, .13);--amp-tint-hover: rgba(46, 232, 138, .21);--warn-tint: rgba(255, 59, 59, .16);--room-tint: rgba(0, 229, 255, .12);--room-border: rgba(0, 229, 255, .35);--tab-idle: #232629;--overlay: rgba(0, 0, 0, .65);--map-filter: saturate(1.05) brightness(.88);--grid-line: rgba(255, 255, 255, .045)}:root{--danger: var(--warn);--caution: #a15c00;--on-accent: #ffffff;--shadow-lg: 0 12px 40px rgba(0, 0, 0, .4)}:root[data-theme=night]{--caution: #f0b040;--on-accent: #07080a}:root{--action: #ea580c;--action-hover: #f97316;--action-border: #f97316;--on-action: #ffffff}.btn{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 11px;cursor:pointer;transition:border-color .15s,background .15s;white-space:nowrap;font-weight:600}.btn:hover{border-color:var(--zone)}.btn.primary{background:var(--zone);border-color:var(--zone);color:var(--bg)}.btn.primary:hover{filter:brightness(1.08)}.modal-overlay{position:fixed;inset:0;background:var(--overlay);display:none;align-items:center;justify-content:center;z-index:1000}.modal-overlay.open{display:flex}.modal-box{width:340px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:18px 20px;box-shadow:0 12px 40px #00000080}.modal-box h2{margin:0 0 4px;font-size:14px;font-weight:700}.modal-box .modal-sub{margin:0 0 12px;font-size:11px;color:var(--text-dim);line-height:1.4}.modal-type-tabs{display:flex;gap:6px;margin-bottom:12px}.modal-type-tab{flex:1;text-align:center;padding:8px 4px;border-radius:6px;border:1px solid var(--border);background:var(--panel-2);color:var(--text-dim);cursor:pointer;font-size:11.5px;font-weight:700}.modal-type-tab.active{color:var(--bg);background:var(--source);border-color:var(--source)}.modal-type-tab.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.modal-field{margin-bottom:11px}.modal-field label{display:block;font-size:11px;font-weight:700;color:var(--text);margin-bottom:3px}.modal-field input,.modal-field select{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 8px;font-family:var(--mono);font-size:12px}.modal-field input[type=checkbox],.modal-field input[type=radio]{width:auto}.modal-field input:focus,.modal-field select:focus{outline:none;border-color:var(--zone)}.modal-field .modal-hint{font-size:10px;color:var(--text-dim);margin-top:3px;line-height:1.35}.mfa-qr{display:block;width:192px;height:192px;border:1px solid var(--border);border-radius:6px}.modal-actions{display:flex;gap:8px;margin-top:14px}.scope-single{display:none}.seg{display:inline-flex;gap:2px;padding:3px;margin-bottom:14px;background:var(--bg);border:1px solid var(--border);border-radius:8px}.seg-btn{font:inherit;font-size:12px;font-weight:700;padding:6px 16px;border:0;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer}.seg-btn:hover{color:var(--text)}.seg-btn.active{background:var(--panel-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.acct-sub[hidden]{display:none}.acct-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:14px 16px 6px;margin-bottom:12px}.acct-card[hidden]{display:none}.acct-card h3{margin:0 0 10px;font-size:12.5px;font-weight:700}.acct-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.acct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}@media (max-width: 560px){.acct-grid{grid-template-columns:1fr}}.acct-logo-row{display:flex;align-items:center;gap:10px}.acct-savebar{position:sticky;bottom:0;z-index:1;display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:10px 0;background:var(--panel);border-top:1px solid var(--border)}.acct-badge{font-size:11px;font-weight:700;padding:2px 10px;border-radius:10px;border:1px solid var(--border);color:var(--text-dim)}.acct-badge.on{color:var(--ok);border-color:var(--ok)}.acct-mfa-setup{display:flex;gap:18px;align-items:flex-start;margin-top:10px}.acct-mfa-steps{flex:1;min-width:0}.acct-card .modal-hint{font-size:11px;color:var(--text-dim);line-height:1.4;margin:0 0 8px}@media (max-width: 560px){.acct-mfa-setup{flex-direction:column}}.acct-codes{font-size:12px;user-select:all;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px}.modal-actions .btn{flex:1}.menu{position:relative;display:inline-flex}.menu-panel{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:1100;min-width:200px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-lg);padding:6px}.menu-panel.right{left:auto;right:0}.menu.open>.menu-panel{display:block}.menu-head{padding:6px 9px 8px;font-size:12px;font-weight:700;word-break:break-all}.menu-head .menu-sub{margin-top:2px;font-size:10.5px;font-weight:400;color:var(--text-dim)}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text);font-size:12px;text-align:left;cursor:pointer}.menu-item:hover{background:var(--border)}.menu-item.active{border-color:var(--border);background:var(--panel-2);font-weight:700}.menu-sep{border-top:1px solid var(--border);margin:5px 2px}.info{position:relative;padding:8px 10px 8px 32px;font-size:11px;line-height:1.45;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--border);border-radius:6px}.info:before{content:"i";position:absolute;left:9px;top:8px;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--on-accent);font:italic 700 10px/1 serif}.info b{color:var(--text)}.info.ok{border-color:var(--ok)}.info.ok:before{background:var(--ok);color:var(--bg)}.info.warn{border-color:var(--warn);color:var(--text)}.info.warn:before{background:var(--warn);color:var(--bg)}.info a{color:var(--zone);font-weight:700}:root{--topbar-h: 52px}#app-topbar{flex:0 0 auto;height:var(--topbar-h);display:flex;align-items:center;gap:14px;padding:0 12px;background:var(--panel);border-bottom:1px solid var(--border)}#topbar-logo{display:flex;align-items:center;flex:none}#topbar-logo img{display:block;height:34px;width:auto}#topbar-logo .logo-night{display:none}:root[data-theme=night] #topbar-logo .logo-day{display:none}:root[data-theme=night] #topbar-logo .logo-night{display:block}#topbar-menu,#topbar-tools{display:flex;align-items:center;gap:6px}.tb-spacer{flex:1 1 auto}.lf-section-btn,.tb-btn{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 11px;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer;position:relative}.lf-section-btn:hover,.tb-btn:hover{border-color:var(--zone)}.lf-section.open>.lf-section-btn,.menu.open>.menu-trigger{border-color:var(--zone);color:var(--zone)}.tb-icon{width:34px;padding:0;justify-content:center;font-size:15px;line-height:1}.lf-icon{flex:none;width:18px;height:18px}.lf-section>.lf-section-btn:after{content:"\25be";font-size:10px;color:var(--text-dim)}.lf-section-btn.build-sv{background:var(--action);border-color:var(--action-border);color:var(--on-action)}.lf-section-btn.build-sv:hover{background:var(--action-hover)}.lf-section-btn.build-sv:after{color:var(--on-action);opacity:.75}.menu-up>.menu-panel{top:auto;bottom:calc(100% + 6px)}.menu-item .lf-badge{margin-left:auto}.tb-dot{position:absolute;top:3px;right:3px;width:9px;height:9px;border-radius:50%;background:var(--warn);border:2px solid var(--panel-2)}.lf-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--warn);color:var(--on-action);font-size:10px;font-weight:700}#lang-trigger .flag svg,#lang-switch .menu-item .flag svg{display:block;width:19px;height:13px;border-radius:1.5px}#lang-trigger:after{content:"\25be";font-size:10px;color:var(--text-dim)}#lang-switch .menu-panel{min-width:150px}.lf-section-body.menu-panel{width:320px;padding:12px}.lf-section.open>.lf-section-body{display:flex;flex-direction:column;gap:6px;max-height:calc(100vh - var(--topbar-h) - 90px);overflow-y:auto}body:has(.modal-overlay.open) .menu-panel{display:none!important}.scope-off,#app-topbar [hidden]{display:none!important}.menu-panel{max-width:calc(100vw - 24px)}@media (max-width: 1100px){#topbar-tools .lf-label{display:none}#topbar-tools .lf-section-btn{width:34px;padding:0;justify-content:center}}@media (max-width: 760px){#app-topbar{gap:8px;padding:0 8px}#topbar-menu .lf-label{display:none}#topbar-menu .lf-section-btn{padding:0 8px}#topbar-logo img{height:28px}#topbar-tools{gap:4px}}@media (max-width: 520px){#topbar-logo{display:none}}.lf-section-btn:disabled{opacity:.55;cursor:wait}.lf-section-btn .busy-spinner{border-color:currentColor;border-top-color:transparent}*{box-sizing:border-box}:root{--frame-pad: 8px}body{margin:0;padding:var(--frame-pad);background:var(--frame-bg, var(--bg));color:var(--text);font-family:var(--sans);height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-body{position:relative;flex:1;display:flex;min-height:0}#app-footer{flex:0 0 auto;min-height:46px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 10px;padding:4px 18px;background:var(--panel);border-top:1px solid var(--border)}#footer-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 14px;font-size:11px;color:var(--text-dim);text-align:center}#footer-legal a{color:inherit;text-decoration:none;white-space:nowrap}#footer-legal a:hover{color:var(--zone);text-decoration:underline}#sidebar-actions{flex:none;display:flex;flex-direction:column;gap:8px;padding:10px 18px 12px;background:var(--panel);border-top:1px solid var(--border)}#sidebar-brands{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-action-row{display:flex;gap:8px}.sidebar-action-row>.btn,.sidebar-action-row>.lf-section-btn{flex:1 1 0;min-width:0}.sidebar-action-row>.btn{height:36px;display:inline-flex;align-items:center;justify-content:center}.sidebar-action-row .lf-section-btn{width:100%;height:36px;justify-content:center}.sidebar-action-row .lf-section-btn.locked{opacity:.6}.footer-brand-btn{display:flex;align-items:center;justify-content:center;flex:1 1 0;min-width:32px;height:36px;padding:0;background:transparent;border:1px solid transparent;border-radius:5px;cursor:pointer;transition:background .15s,border-color .15s}.footer-brand-btn:hover{background:var(--panel-2);border-color:var(--border)}.footer-brand-btn.active{background:var(--panel-2);border-color:var(--ok)}.footer-brand-btn img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.footer-brand-btn img.brand-mark{height:26px}.footer-brand-btn img.coda-mark{height:22px}.footer-brand-btn .logo-night{display:none}:root[data-theme=night] .footer-brand-btn .logo-day{display:none}:root[data-theme=night] .footer-brand-btn .logo-night{display:block}#map{flex:1;height:100%;isolation:isolate;filter:var(--map-filter, saturate(1.05))}.leaflet-div-icon.source-marker{background:transparent;border:none}.source-marker-badge{width:100%;height:100%;box-sizing:border-box;background:var(--sm-color, #c9822f);border:2px solid #1a1206;border-radius:7px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 7px #0000008c}.source-marker-badge svg{width:76%;height:76%;display:block}.edge-length-label{pointer-events:none}.edge-length-label span{display:inline-block;transform:translate(-50%,-50%);white-space:nowrap;padding:1px 6px;border-radius:9px;background:var(--panel);color:var(--text);border:1px solid var(--border);font:600 10px var(--mono);box-shadow:0 1px 4px #00000059}.leaflet-div-icon.zone-point-marker{background:transparent;border:none}.zone-point-marker-dot{width:12px;height:12px;margin:2px;box-sizing:border-box;background:var(--zp-color, #ef4a4a);border:2px solid #1a1206;border-radius:50%;box-shadow:0 2px 6px #00000080}#interior-view{flex:1;height:100%;display:none;background:var(--bg);align-items:center;justify-content:center}#interior-view.on{display:flex}body.interior #map{display:none}#interior-view svg{width:100%;height:100%}#interior-view svg *{vector-effect:non-scaling-stroke}#interior-view .room-fill{fill:var(--panel);stroke:var(--border);stroke-width:1.5px}#interior-view .room-edge{stroke:var(--zone);stroke-width:3px;stroke-linecap:round;cursor:crosshair;opacity:.55}#interior-view .room-edge:hover{opacity:1}#interior-view .room-axis{stroke:#2f6feb;stroke-width:1px;stroke-dasharray:3 3;opacity:.55;pointer-events:none}#interior-view .audience-excluded{fill:var(--zone-tint);pointer-events:none}#interior-view .audience-frontier{stroke:var(--zone);stroke-width:1px;stroke-dasharray:4 3;opacity:.7;pointer-events:none}#interior-view .heatmap-cell{fill-opacity:.55;pointer-events:none}#interior-view .sub-footprint{fill:var(--source);fill-opacity:.12;stroke:var(--source);stroke-width:1px;stroke-dasharray:2 2;pointer-events:none}#interior-view .placement-ghost{fill:var(--source);fill-opacity:.35;stroke:var(--source);stroke-width:1.5px;stroke-dasharray:3 2;pointer-events:none}#interior-view .placement-aim-line{stroke:var(--source);stroke-width:2px;stroke-linecap:round;pointer-events:none}#interior-view .placement-aim-arrow{fill:var(--source);pointer-events:none}#interior-view .src-dot{fill:var(--source);stroke:var(--bg);stroke-width:1.5px}#interior-view .src-aim{stroke:var(--source);stroke-width:1.5px;stroke-linecap:round}#interior-view .src-label{fill:var(--text);font-family:var(--sans);font-weight:600;paint-order:stroke;stroke:var(--panel);stroke-width:3px;stroke-linejoin:round}#interior-view .dim-label{fill:var(--text-dim);font-family:var(--mono)}#interior-view{position:relative;align-items:stretch}#interior-view .iv-plan,#interior-view .iv-3d{flex:1 1 0;min-width:0;height:100%;position:relative;display:flex;align-items:center;justify-content:center}#interior-view .iv-3d{border-left:1px solid var(--border)}#interior-view.iv-mode-plan .iv-3d,#interior-view.iv-mode-3d .iv-plan{display:none}#interior-view .iv-3d canvas{position:absolute;inset:0;width:100%;height:100%;display:block}#interior-view .iv-3d[data-state]{color:var(--text-dim);font-family:var(--sans);font-size:13px;padding:16px;text-align:center}#interior-view .iv-bar{position:absolute;top:10px;left:10px;z-index:5;display:flex;gap:8px}#interior-view .iv-seg{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--panel)}#interior-view .iv-seg-btn,#interior-view .iv-stage-btn,#interior-view .iv-chip{background:var(--panel-2);border:1px solid var(--border);color:var(--text);padding:6px 11px;cursor:pointer;font-family:var(--sans);font-size:12px;font-weight:600;white-space:nowrap}#interior-view .iv-seg-btn{border:0;border-radius:0;background:transparent}#interior-view .iv-stage-btn{border-radius:6px}#interior-view .iv-chip{border-radius:6px;padding:5px 9px}#interior-view .iv-seg-btn:hover,#interior-view .iv-stage-btn:hover,#interior-view .iv-chip:hover{border-color:var(--accent)}#interior-view .iv-seg-btn.on,#interior-view .iv-stage-btn.on,#interior-view .iv-chip.on{background:var(--accent);border-color:var(--accent);color:var(--bg)}#interior-view .iv-chip i{font-style:normal;margin-left:6px;opacity:.8;font-family:var(--mono);font-size:11px}#interior-view .iv-panel{position:absolute;top:52px;left:10px;z-index:5;width:330px;max-width:calc(100% - 20px);padding:10px 12px;display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 24px #00000040}#interior-view .iv-panel[hidden]{display:none}#interior-view .iv-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;color:var(--text)}#interior-view .iv-cap{color:var(--text-dim);margin-right:2px}#interior-view .iv-row input.iv-h{width:64px;padding:4px 6px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;font-family:var(--mono)}#interior-view .iv-bom{font-family:var(--mono);font-size:11px;color:var(--text)}#interior-view .iv-note{font-size:11px;color:var(--warn)}#interior-view .iv-info{margin-left:auto;color:var(--text-dim);font-size:15px;line-height:1;cursor:help}#interior-view .iv-info:hover,#interior-view .iv-info:focus-visible{color:var(--accent)}#interior-view .stage-layer,#interior-view .stage-grid{pointer-events:none}#interior-view .stage-mod{fill:var(--accent);fill-opacity:.35;stroke:var(--accent);stroke-width:1.2px}#interior-view .stage-label{fill:var(--text);font-family:var(--mono);paint-order:stroke;stroke:var(--panel);stroke-width:3px;stroke-linejoin:round}#interior-view .stage-grid-minor{stroke:var(--border);stroke-width:.5px;fill:none;opacity:.22}#interior-view .stage-grid-major{stroke:var(--border);stroke-width:.6px;fill:none;opacity:.5}#interior-view .stage-hit{fill:transparent;cursor:crosshair;pointer-events:all}#interior-view .stage-ghost{pointer-events:none;stroke-width:1.5px}#interior-view .stage-ghost.ok{fill:var(--accent);fill-opacity:.45;stroke:var(--accent)}#interior-view .stage-ghost.bad{fill:var(--warn);fill-opacity:.4;stroke:var(--warn)}#interior-view .stage-ghost-label{pointer-events:none;fill:var(--accent);font-family:var(--mono);font-weight:600;paint-order:stroke;stroke:var(--panel);stroke-width:3px;stroke-linejoin:round}body.interior #zone-top-bar,body.interior .mode-tab.zone,body.interior #zone-group-title,body.interior #zone-list{display:none}.busy-bar{display:flex;align-items:center;gap:9px;margin:0 11px 8px;padding:6px 10px;border-radius:6px;background:var(--panel-2);border:1px solid var(--border);font-size:11.5px;font-weight:600;color:var(--text);line-height:1.35}.busy-bar[hidden]{display:none}.busy-spinner{flex:none;width:14px;height:14px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--zone);animation:busy-spin .8s linear infinite}@keyframes busy-spin{to{transform:rotate(360deg)}}body.busy #step-3 .step-body{opacity:.55;transition:opacity .15s}body.busy-brand #sidebar-brands,body.busy-build #sidebar-brands,body.busy-build .brand-card{pointer-events:none;opacity:.6}#build-busy{margin:0}@media (prefers-reduced-motion: reduce){.busy-spinner{animation-duration:2.4s}}#sidebar-toggle{position:absolute;top:50%;right:440px;z-index:500;transform:translateY(-50%);width:18px;height:56px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--border);border-right:none;border-radius:6px 0 0 6px;color:var(--text-dim);font-size:12px;cursor:pointer}#sidebar-toggle:before{content:"\203a"}#sidebar-toggle:hover{color:var(--zone);border-color:var(--zone)}body.sidebar-collapsed #sidebar{display:none}body.sidebar-collapsed #sidebar-toggle{right:0}body.sidebar-collapsed #sidebar-toggle:before{content:"\2039"}#sidebar{width:440px;min-width:440px;height:100%;background:var(--panel);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.search-row{display:flex;gap:8px;padding:10px 18px;border-bottom:1px solid var(--border)}.project-row{display:flex;gap:6px;padding:10px 18px;border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center}.project-row input,.project-row select{flex:1;min-width:80px}#project-name{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 9px}#project-name:focus{outline:none;border-color:var(--zone)}#project-load-btn{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 9px;font-size:12px}#project-status{margin:8px 18px 0;font-size:11.5px;padding:8px 10px;border-radius:6px;background:var(--panel-2);border:1px solid var(--border);line-height:1.5}input,select,button,textarea{font-family:var(--sans);font-size:13px}#search{flex:1;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 9px}#search:focus{outline:none;border-color:var(--zone)}.btn.build-sv{background:#ea580c;border-color:#f97316;color:#fff;font-weight:700}.btn.build-sv:hover{background:#f97316;border-color:#fdba74;color:#fff}.btn.new-zone{background:#16a34a;border-color:#22c55e;color:#fff;font-weight:700}.btn.new-zone:hover{background:#22c55e;border-color:#86efac;color:#fff}.btn.report{background:var(--panel-2);border-color:var(--room-border);color:var(--room);font-weight:700}.btn.report:hover{background:var(--room-tint);border-color:var(--room);color:var(--text)}.mode-tabs{display:flex;gap:5px;padding:10px 18px 0}.mode-tab{flex:1;text-align:center;padding:8px 3px;border-radius:6px 6px 0 0;border:1px solid var(--border);border-bottom:none;background:var(--panel-2);color:var(--text-dim);cursor:pointer;font-size:11.5px;font-weight:600}.mode-tab.active{color:var(--text);background:var(--bg)}.mode-tab.zone.active{box-shadow:inset 0 2px 0 var(--zone)}.mode-tab.source.active{box-shadow:inset 0 2px 0 var(--source)}.lf-item{text-align:left;padding:7px 9px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text);font-size:12px;cursor:pointer;width:100%}.lf-item:hover:not(:disabled){background:var(--border)}.lf-item:disabled{opacity:.42;cursor:not-allowed}.lf-item.report{color:var(--room);font-weight:700}.lf-item.report:hover:not(:disabled){background:var(--room-tint)}.lf-sep{border-top:1px solid var(--border);margin:6px 2px 2px}.lf-subtitle{font-size:10px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin:6px 2px 2px}.lf-field-label{font-size:10px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin:4px 2px 0}.lf-field-label:first-child{margin-top:0}.lf-date-range{display:flex;align-items:center;gap:6px}.lf-date-range input[type=date]{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 7px;font-family:var(--mono);font-size:11.5px;min-width:0}.lf-date-range input[type=date]:focus{outline:none;border-color:var(--zone)}.lf-date-range span{color:var(--text-dim);font-size:11px}.lf-budget-note{font-size:11.5px;color:var(--text-dim);margin-top:4px;line-height:1.35}.lf-budget-card{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:7px 9px;margin-top:4px;font-size:11.5px}.lf-budget-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:2px 0;color:var(--text-dim)}.lf-budget-row span:last-child{font-family:var(--mono);color:var(--text)}.lf-budget-row.total{margin-top:3px;padding-top:5px;border-top:1px solid var(--border);font-weight:700;color:var(--text)}.lf-budget-row.total span:last-child{font-size:12.5px}.lf-budget-row.margin{margin-top:3px;padding-top:5px;border-top:1px dashed var(--border);font-style:italic}.lf-budget-row.margin span:last-child{color:var(--ok);font-style:normal}.lf-budget-link-btn{display:block;width:100%;margin-top:5px;text-align:center;font-size:11px;padding:5px 7px;border-radius:6px;background:var(--panel);border:1px solid var(--border);color:var(--text);cursor:pointer}.lf-budget-link-btn:hover{border-color:var(--zone);color:var(--zone)}.lf-provider-mini{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:7px 9px;margin-bottom:6px;font-size:11.5px}.lf-provider-mini-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.lf-provider-mini-distance{flex:none;font-size:10.5px;font-weight:700;color:var(--ok);font-family:var(--mono)}.lf-provider-mini-btn{display:block;margin-top:5px;text-align:center;font-size:11px;padding:5px 7px;background:var(--panel);border:1px solid var(--border)}.lf-provider-mini-btn:disabled{opacity:.5;cursor:not-allowed}.lf-provider-mini-web{display:inline-block;margin-top:4px;font-size:11px;color:var(--text-dim);text-decoration:none}.lf-provider-mini-web:hover{color:var(--zone);text-decoration:underline}.provider-map-link{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px}.provider-map-link:hover{color:var(--zone)}.leaflet-div-icon.provider-map-pin{background:transparent;border:none}.provider-map-pin-body{width:26px;height:26px;margin:2px;box-sizing:border-box;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:2px solid #1a1206;box-shadow:0 2px 8px #0000008c;display:flex;align-items:center;justify-content:center;cursor:pointer}.provider-map-pin-body span{transform:rotate(45deg);font-size:12px;font-weight:700;color:#fff;line-height:1}.provider-map-pin-body.provider{background:#2f7de1}.provider-map-pin-body.project{background:#d63a3a}.lf-combobox{position:relative}#project-client-input{width:100%;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:7px 9px;font-size:12px}#project-client-input:focus{outline:none;border-color:var(--zone)}.lf-combobox-list{position:absolute;top:100%;left:0;right:0;z-index:30;margin-top:3px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;max-height:220px;overflow-y:auto;box-shadow:0 10px 26px #00000073}.lf-combobox-item{display:block;width:100%;text-align:left;padding:7px 9px;border:none;background:transparent;color:var(--text);font-size:12px;cursor:pointer;font-family:inherit}.lf-combobox-item:hover{background:var(--border)}.lf-combobox-item.create{color:var(--ok);font-weight:700;border-bottom:1px solid var(--border)}.lf-combobox-item.create.disabled{color:var(--text-dim);font-weight:400;cursor:default}.lf-combobox-item.create.disabled:hover{background:transparent}.lf-combobox-empty{padding:7px 9px;font-size:11px;color:var(--text-dim)}.lf-project-row{display:flex;align-items:stretch}.lf-project-row .lf-project-open{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lf-project-del{border:none;background:transparent;cursor:pointer;padding:0 9px;font-size:13px;opacity:.55;color:var(--text)}.lf-project-del:hover{opacity:1;background:var(--border)}.lf-project-export{border:none;background:transparent;cursor:pointer;padding:0 9px;font-size:13px;opacity:.55;color:var(--text)}.lf-project-export:hover{opacity:1;background:var(--border)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn:disabled:hover{border-color:var(--border)}.env-tabs{display:flex;gap:5px;padding:10px 18px 0}.env-tab{flex:1;text-align:center;padding:6px 4px;border-radius:6px 6px 0 0;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--text-dim);background:var(--tab-idle);border:1px solid var(--border);border-bottom:none}.env-tab.active{color:var(--text);background:var(--bg);box-shadow:inset 0 2px 0 var(--accent, #8ab)}.hist-arrows{display:inline-flex;gap:3px}.btn.hist{padding:4px 8px;font-size:13px;line-height:1}.zone-top-bar{margin:8px 18px 0;display:flex;gap:6px;align-items:center}.zone-top-bar select{flex:1;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 8px;font-size:12px}.zone-top-bar select:focus{outline:none;border-color:var(--zone)}#list-wrap{flex:1;overflow-y:auto;padding:10px 18px}.mode-tabs[hidden]{display:none}.steps{counter-reset:step;padding:10px 14px}.step{counter-increment:step;margin-bottom:8px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.step-head{display:flex;align-items:center;gap:9px;width:100%;padding:9px 11px;text-align:left;background:transparent;border:none;color:var(--text);cursor:pointer;font-size:12.5px;font-weight:700}.step-num{flex:none;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);font-size:11px;font-weight:700}.step-num:before{content:counter(step)}.step.done .step-num{background:var(--ok);border-color:var(--ok);color:var(--bg)}.step.done .step-num:before{content:"\2713"}.step.open .step-num{border-color:var(--zone);color:var(--zone)}.step.done.open .step-num{color:var(--bg)}.step-title{flex:none}.step-summary{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;color:var(--text-dim)}.step-chevron:before{content:"\25b8";color:var(--text-dim);font-size:11px;display:inline-block;transition:transform .12s}.step.open .step-chevron:before{transform:rotate(90deg)}.step-body{display:none;padding:2px 11px 12px}.step.open>.step-body{display:block}.step-body>.env-tabs,.step-body>.search-row{padding-left:0;padding-right:0}.step-body>.search-row{border-bottom:none}.step-body>.zone-top-bar{margin:4px 0 0}.step-body>.info{margin:8px 0 4px}.step-subtitle{margin:12px 0 6px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.step-body>.step-subtitle:first-child,.step-body>.busy-first+.step-subtitle{margin-top:4px}.step-body #zone-group-title,.step-body #source-group-title{display:none}body.interior .ext-only,body.interior #step-2 .step-body>:not(#interior-zone-form){display:none}body:not(.interior) #interior-zone-form{display:none}.int-corners{display:grid;grid-template-columns:auto 1fr 1fr;gap:3px 10px;font-family:var(--mono);font-size:11px;color:var(--text-dim);margin-bottom:10px}.int-corners b{color:var(--text);font-weight:600}#settings-material-margin-row[hidden]{display:none!important}#sidebar-brands{margin-bottom:8px}#sidebar-brands[hidden]{display:none}#sidebar-actions.not-ready .sidebar-action-row{opacity:.45;pointer-events:none}#sidebar-actions-hint{display:none}#sidebar-actions.not-ready #sidebar-actions-hint{display:block}.group-title{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);margin:12px 0 6px;display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none;padding:4px 2px;border-radius:4px}.group-title:hover{color:var(--text);background:var(--panel-2)}.group-title:first-child{margin-top:0}.group-chevron{display:inline-block;font-size:9px;width:10px;text-align:center;transition:transform .15s ease;color:var(--text-dim)}.group-title.collapsed .group-chevron{transform:rotate(-90deg)}.group-count{color:var(--text-dim);font-weight:400;text-transform:none;letter-spacing:0}.source-subgroup{margin:10px 0 0}.source-subgroup:first-child{margin-top:0}.subgroup-title{font-size:10px;margin:0 0 5px;padding:3px 6px;border-radius:4px;background:var(--panel-2)}.source-subgroup-body.collapsed{display:none}.dot{display:inline-block;vertical-align:-3px}.dot.zone{width:12px;height:12px;box-sizing:border-box;border:2px solid var(--zone);border-radius:2px;background:none}svg.dot{width:18px;height:18px;overflow:visible}.dot.source .dot-bg{fill:var(--source)}.dot.amp .dot-bg{fill:var(--ok)}.dot .dot-icon{fill:#1a1f27}.dot .dot-wave{fill:none;stroke:#1a1f27;stroke-width:1;stroke-linecap:round}#zone-group-title,#source-group-title,#amp-group-title{margin:0;padding:8px 10px;border-radius:6px 6px 0 0}#zone-list,#source-list,#amp-list{padding:8px 10px;border-radius:0 0 6px 6px;margin-bottom:14px}#zone-group-title.collapsed,#source-group-title.collapsed,#amp-group-title.collapsed{border-radius:6px;margin-bottom:14px}#zone-group-title,#zone-list{background:var(--zone-tint)}#source-group-title,#source-list{background:var(--source-tint)}#amp-group-title,#amp-list{background:var(--amp-tint)}#zone-group-title:hover{background:var(--zone-tint-hover)}#source-group-title:hover{background:var(--source-tint-hover)}#amp-group-title:hover{background:var(--amp-tint-hover)}.zone-card{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:8px 9px;margin-bottom:8px;font-size:12px}.zone-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.zone-card-title{font-weight:700;font-size:12px;display:flex;align-items:center;gap:6px}.zone-card-actions{display:flex;gap:6px;align-items:center}.zone-card-actions .rm-zone{color:var(--text-dim);cursor:pointer;padding:2px 4px;border-radius:3px}.zone-card-actions .rm-zone:hover{color:var(--warn);background:var(--warn-tint)}.point-row{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:6px 8px;margin-bottom:5px;font-family:var(--mono);font-size:11.5px}.point-row .top-line{display:flex;align-items:center;gap:6px}.point-row .idx{width:18px;height:18px;border-radius:50%;background:var(--zone);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;font-family:var(--sans)}.point-row.source .idx{background:var(--source);color:var(--bg)}.point-row.source.role-main .idx{background:#d63a3a;color:#fff}.point-row.source.role-subs .idx{background:#8b5a2b;color:#fff}.point-row.source.role-fills .idx{background:#2f9e44;color:#fff}.point-row .coords{flex:1;color:var(--text-dim)}.point-row .coords b{color:var(--text);font-weight:600}.point-row .pair-tag{color:var(--zone);font-weight:700}.point-row .z-input{width:44px;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:2px 4px;font-family:var(--mono);font-size:11px;text-align:center}.point-row .z-input[readonly]{opacity:.6;cursor:not-allowed}.point-row .rm{color:var(--text-dim);cursor:pointer;padding:2px 4px;border-radius:4px}.point-row .rm:hover{color:var(--warn);background:var(--warn-tint)}.point-row .aim-btn{padding:2px 4px;border-radius:4px;font-size:12px;line-height:1}.point-row .aim-btn:hover{background:var(--panel-2)}.point-row .mute-btn{padding:2px 4px;border-radius:4px;font-size:12px;line-height:1;cursor:pointer;opacity:.85}.point-row .mute-btn:hover{background:var(--panel-2)}.point-row .mute-btn.is-muted{opacity:1;color:var(--warn);background:var(--warn-tint)}.src-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.src-fields label{font-size:9px;color:var(--text-dim);text-transform:uppercase;display:block;margin-bottom:2px;font-family:var(--sans);letter-spacing:.3px}.src-fields input,.src-fields select{width:100%;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:4px 6px;font-family:var(--mono);font-size:11px}.src-fields .full{grid-column:1 / -1}.pair-badge{font-size:10px;color:var(--zone);font-weight:700;margin-bottom:2px;display:flex;align-items:center;gap:4px}.rigger-badge{font-size:11px;background:var(--room-tint);border:1px solid var(--room-border);color:var(--text);border-radius:6px;padding:6px 8px;margin-top:5px;font-family:var(--mono);line-height:1.5}.rigger-badge b{color:var(--text)}.mp-sub{grid-column:1 / -1;margin:2px 0 4px;border-left:2px solid var(--source);padding-left:7px;display:flex;flex-direction:column;gap:2px}.mp-sub-row{font-size:10px;font-family:var(--mono);color:var(--text-dim);line-height:1.4}.mp-sub-row b{color:var(--source)}.empty{color:var(--text-dim);font-size:12px;text-align:center;padding:18px 10px;border:1px dashed var(--border);border-radius:6px}.leaflet-control-attribution{font-size:9px!important}.rec-box{width:420px;max-width:calc(100vw - 32px)}.rec-option{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;padding:10px 12px;margin-bottom:8px;display:flex;gap:10px;align-items:center}.rec-option .rec-info{flex:1;font-size:11px;color:var(--text-dim);line-height:1.45}.rec-option .sil-field{margin:4px 0}.rec-option .sil-field label{display:block;font-size:11px;margin-bottom:2px}.rec-option .sil-field select,.rec-option .sil-field input{width:100%}.rec-option .rec-info b{display:block;font-size:13px;color:var(--text)}.rec-option .rec-ok{color:#2f9e44;font-weight:700}.rec-option .rec-warn{color:#d9822b;font-weight:700}.rec-option .rec-off{color:#d63a3a;font-weight:700}.rec-option .rec-best{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.02em;color:var(--bg);background:var(--source);border-radius:4px;padding:1px 5px;vertical-align:middle}.rec-note{font-size:10px;color:var(--text-dim);margin-top:6px;line-height:1.4}.gs-riser-select{margin-top:4px;font-size:11px;padding:2px 4px;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:4px}.np-step{display:none}.np-step.active{display:block}.np-progress{font-size:10px;color:var(--text-dim);text-align:right;margin:-4px 0 10px}.np-choice-wrap{flex-wrap:wrap}.np-choice-wrap .modal-type-tab{flex:1 1 40%}.np-actions #np-back{flex:0 0 auto}.settings-window{width:min(820px,94vw);height:min(780px,calc(100vh - var(--topbar-h) - 60px))}.settings-window-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:14px 20px 16px}.settings-window #settings-tabs{flex:none;flex-wrap:wrap;margin-bottom:12px}.settings-panels{flex:1 1 auto;min-height:0;overflow-y:auto}.settings-panel[hidden]{display:none}.brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.brand-card{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:var(--panel-2);border:2px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;font-family:inherit;text-align:left}.brand-card:hover{border-color:var(--zone)}.brand-card.active{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--panel-2))}.brand-card .brand-name{font-size:13px;font-weight:700;color:var(--text)}.brand-card .brand-status{font-size:10px;color:var(--text-dim)}.brand-card.active .brand-status{color:var(--ok);font-weight:700}.client-card{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin-bottom:6px;cursor:pointer;text-align:left;width:100%;font-family:inherit;color:var(--text)}.client-card:hover{border-color:var(--zone)}.client-card .name{font-weight:700;font-size:12.5px}.client-card .company{font-size:10.5px;color:var(--text-dim)}.client-card .summary{font-size:10.5px;color:var(--text-dim);text-align:right;white-space:nowrap}.client-detail-panel[hidden]{display:none}.client-projects-row{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:6px 10px;margin-bottom:6px;font-size:11.5px}.client-projects-row .total{color:var(--ok);font-weight:700;font-family:var(--mono)}.client-projects-total{text-align:right;font-size:13px;font-weight:700;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.quotes-row{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:9px 11px;margin-bottom:8px}.quotes-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.quotes-row-client{font-weight:700;font-size:12.5px}.quotes-row-project{font-size:11px;color:var(--text-dim)}.quotes-row-summary{font-size:10.5px;color:var(--text-dim);margin-top:3px}.quotes-row-sent{font-size:10.5px;margin-top:5px}.quotes-row-sent a{color:var(--ok)}.quotes-row-pending{color:var(--warn)}.quotes-row-actions{display:flex;gap:8px;margin-top:8px}.quotes-row-actions .btn{font-size:11px;padding:5px 10px}.settings-fleet-row{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:6px 10px;margin-bottom:6px;font-size:11.5px}.settings-fleet-row .ref{flex:none;font-weight:700;color:var(--text)}.settings-fleet-row .price{flex:none;color:var(--ok);font-weight:700;font-family:var(--mono)}.settings-fleet-row button{flex:none;padding:2px 8px;font-size:11px}.settings-fleet-qty-edit{flex:none;width:52px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:4px 6px;font-family:var(--mono);font-size:11.5px;text-align:center}.settings-fleet-qty-edit:focus{outline:none;border-color:var(--zone)}.settings-fleet-text-edit{flex:1;min-width:70px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:4px 7px;font-family:var(--mono);font-size:11.5px}.settings-fleet-text-edit:focus{outline:none;border-color:var(--zone)}.settings-subrental-price{flex:none;width:130px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:4px 7px;font-family:var(--mono);font-size:11.5px}.settings-subrental-price:focus{outline:none;border-color:var(--zone)}.settings-subrental-cat{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin-bottom:8px}.settings-subrental-cat>summary{cursor:pointer;font-weight:700;color:var(--text);font-size:12px;list-style:none;display:flex;align-items:center;gap:6px}.settings-subrental-cat>summary::-webkit-details-marker{display:none}.settings-subrental-cat>summary:before{content:"\25b8";color:var(--text-dim)}.settings-subrental-cat[open]>summary:before{content:"\25be"}.settings-subrental-cat-count{font-weight:400;color:var(--text-dim)}.settings-subrental-cat-body{margin-top:8px}#settings-subrental-estimate{color:var(--ok);font-weight:700;margin-bottom:10px}.settings-fleet-other-toggle{margin:4px 0 8px}.settings-fleet-other-toggle .btn{width:100%;font-size:11px;border-style:dashed;color:var(--text-dim)}.settings-fleet-other-group{border-top:1px dashed var(--border);padding-top:6px}.settings-fleet-add-row{display:flex;gap:6px;align-items:center;margin-top:8px}.settings-fleet-add-row select{flex:2}.settings-fleet-add-row input{flex:1}.settings-fleet-add-row #settings-fleet-qty{flex:none;width:60px}.settings-fleet-add-row select,.settings-fleet-add-row input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 8px;font-family:var(--mono);font-size:11.5px}#settings-logo-preview{width:56px;height:56px;object-fit:contain;background:var(--panel-2);border:1px solid var(--border);border-radius:6px}.provider-card{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-bottom:10px}.provider-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.provider-card-name{font-size:13.5px;font-weight:700;color:var(--text)}.provider-card-distance{flex:none;font-size:11.5px;font-weight:700;color:var(--ok);font-family:var(--mono);background:color-mix(in srgb,var(--ok) 12%,transparent);border-radius:5px;padding:2px 7px}.provider-card-notes{font-size:11px;color:var(--text-dim);margin-top:3px}.provider-card-contact{display:flex;flex-direction:column;gap:2px;margin-top:8px;font-size:11.5px;color:var(--text);font-family:var(--mono)}.provider-card-contact a{color:var(--text);text-decoration:none}.provider-card-contact a:hover{color:var(--zone);text-decoration:underline}.provider-card-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.provider-card-actions a.btn{text-decoration:none;display:inline-block}.provider-card-actions .btn{font-size:11.5px;padding:6px 12px}.provider-card-actions .btn[disabled]{opacity:.5;cursor:not-allowed}.es-window{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 50px #000000bf;display:none;flex-direction:column;overflow:hidden;z-index:1000;min-width:320px;min-height:220px}.es-window.open{display:flex}.es-window.maximized{top:calc(var(--topbar-h) + var(--frame-pad))!important;left:var(--frame-pad)!important;right:var(--frame-pad);bottom:var(--frame-pad);width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;transform:none!important;border-radius:0}.es-window-titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 14px 8px;cursor:move;user-select:none;border-bottom:1px solid var(--border);flex:none}.es-window.dragging,.es-window.resizing{user-select:none}.es-window-titlebar h2{margin:0;font-size:15px;font-weight:700;color:var(--text)}.es-window-controls{display:flex;gap:4px;flex:none;cursor:default}.es-window-controls .btn{padding:2px 9px;font-size:12px;line-height:1.6}.es-window-toolbar{display:flex;align-items:center;gap:8px;padding:8px 14px 0;font-size:11.5px;color:var(--text-dim);flex:none}.es-window-footer{flex:none;margin:8px 14px 14px;border-top:1px solid var(--border);padding-top:8px}.es-resize-handle{position:absolute;z-index:1}.es-resize-handle.n,.es-resize-handle.s{left:8px;right:8px;height:6px;cursor:ns-resize}.es-resize-handle.e,.es-resize-handle.w{top:8px;bottom:8px;width:6px;cursor:ew-resize}.es-resize-handle.n{top:-3px}.es-resize-handle.s{bottom:-3px}.es-resize-handle.w{left:-3px}.es-resize-handle.e{right:-3px}.es-resize-handle.ne,.es-resize-handle.nw,.es-resize-handle.se,.es-resize-handle.sw{width:12px;height:12px}.es-resize-handle.ne{top:-3px;right:-3px;cursor:nesw-resize}.es-resize-handle.nw{top:-3px;left:-3px;cursor:nwse-resize}.es-resize-handle.se{bottom:-3px;right:-3px;cursor:nwse-resize}.es-resize-handle.sw{bottom:-3px;left:-3px;cursor:nesw-resize}.es-window.maximized .es-resize-handle{display:none}.report-modal-box{width:96vw;max-width:1400px;height:93vh;max-height:93vh;padding:0}.report-body{flex:1;overflow-y:auto;padding:0 18px 0 24px;margin:12px 0;font-size:12px;line-height:1.5}.report-table{width:100%;border-collapse:collapse;margin:6px 0 14px;font-size:11.5px}.report-table th{background:var(--panel-2);color:var(--text);text-align:left;padding:6px 8px;font-weight:700;border-bottom:1px solid var(--border);font-size:10.5px;text-transform:uppercase;letter-spacing:.5px}.report-table td{padding:5px 8px;border-bottom:1px solid var(--border);color:var(--text-dim);font-family:var(--mono);font-size:11px}.report-table tr:hover td{background:var(--panel-2);color:var(--text)}.report-cluster-card{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:10px 12px;margin-bottom:10px}.report-cluster-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:5px;margin-bottom:8px}.report-cluster-title{font-weight:700;font-size:12.5px;color:var(--source)}@media print{body *{visibility:hidden}#report-window,#report-window *,#quote-window,#quote-window *{visibility:visible}#report-window,#quote-window{position:absolute;left:0;top:0;width:100%;height:auto;transform:none!important;background:#fff!important;color:#000!important}.report-modal-box{width:100%!important;max-width:100%!important;border:none!important;box-shadow:none!important;background:#fff!important;color:#000!important}.report-table th{background:#f0f0f0!important;color:#000!important}.report-table td{color:#000!important;border-bottom:1px solid #ccc!important}.report-cluster-card{background:#fafafa!important;border:1px solid #ddd!important;color:#000!important}.modal-actions{display:none!important}}.amp-row{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:7px 10px;margin-bottom:5px;font-size:11.5px;line-height:1.5}.amp-row .amp-model{font-weight:700;color:var(--text)}.amp-row .amp-amp{color:var(--source);font-weight:600}.amp-row .amp-count{color:var(--ok);font-weight:700}.amp-row .amp-ip{color:var(--zone);font-family:var(--mono);font-size:11px}.amp-level-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:11.5px;color:var(--text-dim)}.amp-level-row select{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:4px 7px;font-family:var(--sans);font-size:11.5px}.total-enc-hint{font-size:10px;color:var(--ok);margin-top:3px;font-family:var(--sans)}#notif-wrap{position:relative;display:flex;align-items:center}#notif-wrap[hidden]{display:none}#notif-btn{display:inline-flex;align-items:center;gap:3px}#notif-count{font:700 10px var(--sans);color:#fff;background:var(--warn);border-radius:8px;min-width:15px;height:15px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center}#notif-panel{display:none;position:absolute;top:100%;right:0;width:320px;max-width:calc(100vw - 24px);padding-top:8px}#notif-wrap:hover #notif-panel,#notif-wrap.open #notif-panel{display:block}#notif-list{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px #00000073;max-height:60vh;overflow-y:auto}.notif-item{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border-bottom:1px solid var(--border);font-size:12px;line-height:1.4;color:var(--text)}.notif-item:last-child{border-bottom:none}.notif-text{flex:1}.notif-x{opacity:.6;border:none;background:transparent;color:var(--text);cursor:pointer;font-size:16px;line-height:1;padding:0 4px;border-radius:3px}.notif-x:hover{opacity:1;background:var(--border)}.lf-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:5px;border-radius:8px;background:var(--warn);color:#fff;font-size:10px;font-weight:700;font-family:var(--sans);vertical-align:middle}.messaging-body{display:flex;flex:1;min-height:0}.messaging-threads{width:240px;flex:none;overflow-y:auto;border-right:1px solid var(--border);padding:8px;display:flex;flex-direction:column;gap:6px}.messaging-thread-item{text-align:left;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:8px 9px;cursor:pointer;color:var(--text);font-family:var(--sans)}.messaging-thread-item:hover{border-color:var(--zone)}.messaging-thread-item.active{border-color:var(--zone);background:var(--zone-tint)}.messaging-thread-item.unread .messaging-thread-item-head span:first-child{font-weight:700}.messaging-thread-item-head{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px}.messaging-thread-dot{width:7px;height:7px;border-radius:50%;background:var(--warn);flex:none}.messaging-thread-item-project{font-size:10.5px;color:var(--text-dim);margin-top:2px}.messaging-thread-item-preview{font-size:11px;color:var(--text-dim);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messaging-thread-item-pending{font-size:10px;color:var(--warn);margin-top:4px}.messaging-conversation{flex:1;min-width:0;display:flex;flex-direction:column}.messaging-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:12.5px}.messaging-thread-view{flex:1;min-height:0;display:flex;flex-direction:column}.messaging-thread-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border);flex:none}.messaging-thread-counterpart{font-size:13.5px;font-weight:700}.messaging-thread-project{font-size:11px;color:var(--text-dim);margin-top:2px}.messaging-thread-actions{display:flex;gap:8px;flex-wrap:wrap}.messaging-thread-actions .btn{font-size:11px;padding:6px 10px}.messaging-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}.messaging-bubble{max-width:72%}.messaging-bubble.mine{align-self:flex-end}.messaging-bubble.theirs{align-self:flex-start}.messaging-bubble-body{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;padding:8px 11px;font-size:12.5px;line-height:1.5;white-space:pre-wrap}.messaging-bubble.mine .messaging-bubble-body{background:var(--zone-tint);border-color:var(--zone)}.messaging-bubble-attachment{margin-top:4px;font-size:12px}.messaging-bubble-attachment a{display:inline-block;background:var(--panel-2);border:1px solid var(--ok);color:var(--ok);border-radius:6px;padding:5px 9px;text-decoration:none;font-weight:700}.messaging-bubble-attachment a:hover{text-decoration:underline}.messaging-compose{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--border);flex:none}.messaging-compose textarea{flex:1;resize:none;background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font-family:var(--sans);font-size:12.5px}.messaging-compose textarea:focus{outline:none;border-color:var(--zone)}[data-feature-off]{display:none!important}.mode-tab,.env-tab,.group-title,.subgroup-title,.lf-label,.modal-type-tab,.btn,.theme-family-name,.lf-section-btn,.tb-btn{text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-display);line-height:1.25}.theme-family-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.theme-family-card{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:var(--panel-2);border:2px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;font-family:inherit;text-align:left}.theme-family-card:hover{border-color:var(--zone)}.theme-family-card.active{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--panel-2))}.theme-family-card .theme-family-name{font-size:13px;font-weight:700;color:var(--text)}.theme-family-card .theme-family-desc{font-size:10.5px;color:var(--text-dim);text-transform:none;letter-spacing:normal}.theme-family-card.active .theme-family-desc{color:var(--text)}.es-tip{position:fixed;z-index:100000;pointer-events:none;max-width:320px;padding:6px 9px;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 14px #00000047;font:11.5px/1.4 var(--sans, system-ui, sans-serif);white-space:pre-line}.es-tip[hidden]{display:none}:root[data-theme-family=technique] #map,:root[data-theme-family=technique] #interior-view{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:24px 24px}:root[data-theme-family=technique] .es-window,:root[data-theme-family=technique] .modal-box{border-radius:4px;box-shadow:0 0 0 1px var(--accent) inset,0 10px 40px #00000059}:root[data-theme-family=technique] .btn,:root[data-theme-family=technique] .lf-section-btn,:root[data-theme-family=technique] .modal-type-tab,:root[data-theme-family=technique] .mode-tab,:root[data-theme-family=technique] .env-tab,:root[data-theme-family=technique] .zone-card,:root[data-theme-family=technique] .amp-row,:root[data-theme-family=technique] #zone-group-title,:root[data-theme-family=technique] #zone-list,:root[data-theme-family=technique] #source-group-title,:root[data-theme-family=technique] #source-list,:root[data-theme-family=technique] #amp-group-title,:root[data-theme-family=technique] #amp-list,:root[data-theme-family=technique] .modal-box,:root[data-theme-family=technique] .es-window,:root[data-theme-family=technique] .theme-family-card,:root[data-theme-family=technique] .brand-card,:root[data-theme-family=technique] .client-card,:root[data-theme-family=technique] .provider-card,:root[data-theme-family=technique] .quotes-row,:root[data-theme-family=technique] .messaging-thread-item,:root[data-theme-family=technique] .messaging-bubble-body{border-radius:2px}:root[data-theme-family=technique] .point-row .idx{border-radius:2px}:root[data-theme-family=chassis]{--frame-bg: linear-gradient(150deg, #eef0f2 0%, #c9cbcf 35%, #b7b9bd 60%, #d8dadd 100%)}:root[data-theme-family=chassis][data-theme=night]{--frame-bg: linear-gradient(150deg, #5a5d63 0%, #34363a 35%, #222427 60%, #3a3c40 100%)}:root[data-theme-family=chassis] .app-body,:root[data-theme-family=chassis] #app-topbar:first-child{border-radius:0}:root[data-theme-family=chassis] #app-topbar{border-top-left-radius:6px;border-top-right-radius:6px}:root[data-theme-family=chassis] #app-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px}:root[data-theme-family=chassis] #app-topbar,:root[data-theme-family=chassis] #app-footer{box-shadow:inset 0 1px #fff6}:root[data-theme-family=chassis][data-theme=night] #app-topbar,:root[data-theme-family=chassis][data-theme=night] #app-footer{box-shadow:inset 0 1px #ffffff0f}#app-frame-deco{display:none}:root[data-theme-family=chassis] #app-frame-deco{display:block}.afd-screw{position:fixed;z-index:1300;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f4f5f6,#9a9ca0 55%,#6a6c6f);box-shadow:0 1px 1px #0006,inset 0 0 1px #ffffff80}.afd-screw:after{content:"";position:absolute;top:49%;left:12%;width:76%;height:1.4px;background:#0006;transform:rotate(38deg)}.afd-tl{top:5px;left:5px}.afd-tr{top:5px;right:5px}.afd-bl{bottom:5px;left:5px}.afd-br{bottom:5px;right:5px}:root[data-theme-family=chassis] .btn,:root[data-theme-family=chassis] .lf-section-btn,:root[data-theme-family=chassis] .modal-type-tab,:root[data-theme-family=chassis] .mode-tab,:root[data-theme-family=chassis] .env-tab,:root[data-theme-family=chassis] .footer-brand-btn,:root[data-theme-family=chassis] .brand-card,:root[data-theme-family=chassis] .theme-family-card{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 85%,#fff 15%),var(--panel-2));box-shadow:inset 0 1px #ffffff8c,0 1px 2px #00000024}:root[data-theme-family=chassis][data-theme=night] .btn,:root[data-theme-family=chassis][data-theme=night] .lf-section-btn,:root[data-theme-family=chassis][data-theme=night] .modal-type-tab,:root[data-theme-family=chassis][data-theme=night] .mode-tab,:root[data-theme-family=chassis][data-theme=night] .env-tab,:root[data-theme-family=chassis][data-theme=night] .footer-brand-btn,:root[data-theme-family=chassis][data-theme=night] .brand-card,:root[data-theme-family=chassis][data-theme=night] .theme-family-card{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 78%,#fff 22%),var(--panel-2));box-shadow:inset 0 1px #ffffff1a,0 1px 2px #0000008c}:root[data-theme-family=chassis] .btn:active,:root[data-theme-family=chassis] .mode-tab.active,:root[data-theme-family=chassis] .env-tab.active,:root[data-theme-family=chassis] .footer-brand-btn.active,:root[data-theme-family=chassis] .brand-card.active,:root[data-theme-family=chassis] .theme-family-card.active{background:var(--panel-2);box-shadow:inset 0 2px 5px #00000038}:root[data-theme-family=chassis][data-theme=night] .btn:active,:root[data-theme-family=chassis][data-theme=night] .mode-tab.active,:root[data-theme-family=chassis][data-theme=night] .env-tab.active,:root[data-theme-family=chassis][data-theme=night] .footer-brand-btn.active,:root[data-theme-family=chassis][data-theme=night] .brand-card.active,:root[data-theme-family=chassis][data-theme=night] .theme-family-card.active{box-shadow:inset 0 2px 6px #000000b3}:root[data-theme-family=chassis] .modal-type-tab.active{background:#101114;color:var(--source);border-color:var(--source);text-shadow:0 0 6px var(--source),0 0 2px var(--source);box-shadow:inset 0 2px 5px #00000080,0 0 10px color-mix(in srgb,var(--source) 55%,transparent)}:root[data-theme-family=chassis] .btn.primary{background:#101114;color:var(--zone);border-color:var(--zone);text-shadow:0 0 6px var(--zone),0 0 2px var(--zone);box-shadow:inset 0 2px 5px #00000080,0 0 10px color-mix(in srgb,var(--zone) 55%,transparent)}:root[data-theme-family=chassis] .btn.new-zone{background:#101114;color:#22c55e;border-color:#22c55e;text-shadow:0 0 6px #22c55e,0 0 2px #22c55e;box-shadow:inset 0 2px 5px #00000080,0 0 10px #22c55e8c}:root[data-theme-family=chassis] .btn.build-sv,:root[data-theme-family=chassis] .lf-section-btn.build-sv{background:#101114;color:#f97316;border-color:#f97316;text-shadow:0 0 6px #f97316,0 0 2px #f97316;box-shadow:inset 0 2px 5px #00000080,0 0 10px #f973168c}:root[data-theme-family=chassis] .lf-section-btn.build-sv:after{color:#f97316bf}:root[data-theme-family=chassis] .modal-type-tab.active:hover,:root[data-theme-family=chassis] .btn.primary:hover,:root[data-theme-family=chassis] .btn.new-zone:hover,:root[data-theme-family=chassis] .btn.build-sv:hover,:root[data-theme-family=chassis] .lf-section-btn.build-sv:hover{filter:brightness(1.15)}:root[data-theme-family=chassis] input,:root[data-theme-family=chassis] select,:root[data-theme-family=chassis] textarea{box-shadow:inset 0 2px 4px #00000024}:root[data-theme-family=chassis][data-theme=night] input,:root[data-theme-family=chassis][data-theme=night] select,:root[data-theme-family=chassis][data-theme=night] textarea{box-shadow:inset 0 2px 5px #000000a6}:root[data-theme-family=chassis] .es-window,:root[data-theme-family=chassis] .modal-box{border:3px solid transparent;border-image:linear-gradient(135deg,#f5f6f7,#9a9ca0 40%,#6a6c6f 60%,#d6d9dc) 1;box-shadow:0 3px 12px #0000004d,inset 0 0 0 1px #ffffff2e}:root[data-theme-family=chassis][data-theme=night] .es-window,:root[data-theme-family=chassis][data-theme=night] .modal-box{border-image:linear-gradient(135deg,#7a7d82,#3a3c40 40%,#1c1e21 60%,#55585d) 1;box-shadow:0 3px 14px #0009,inset 0 0 0 1px #ffffff0f}:root[data-theme-family=chassis] .point-row .idx{box-shadow:0 0 6px var(--zone)}:root[data-theme-family=chassis] .point-row.source .idx{box-shadow:0 0 6px var(--source)}:root[data-theme-family=chassis] .point-row.source.role-main .idx{box-shadow:0 0 6px #d63a3a}:root[data-theme-family=chassis] .point-row.source.role-subs .idx{box-shadow:0 0 6px #8b5a2b}:root[data-theme-family=chassis] .point-row.source.role-fills .idx{box-shadow:0 0 6px #2f9e44}:root[data-theme-family=chassis] .messaging-thread-dot{box-shadow:0 0 6px var(--warn)}:root[data-theme-family=chassis] .lf-badge{box-shadow:0 0 6px var(--warn)}#auth-gate{position:fixed;inset:0;z-index:9999;overflow-y:auto;display:flex;background:var(--bg);color:var(--text);font-family:var(--sans)}#auth-gate .auth-shell{margin:auto;width:100%;max-width:420px;padding:32px 16px}#auth-gate .auth-shell.wide{max-width:560px}#auth-gate .auth-brand{display:flex;justify-content:center;margin-bottom:22px}#auth-gate .auth-brand img{height:64px;width:auto}#auth-gate .auth-brand .logo-night{display:none}:root[data-theme=night] #auth-gate .auth-brand .logo-day{display:none}:root[data-theme=night] #auth-gate .auth-brand .logo-night{display:block}#auth-gate .auth-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:var(--shadow-lg)}#auth-gate h2{margin:0 0 6px;font-size:16px}#auth-gate p{margin:0 0 14px;font-size:12px;color:var(--text-dim);line-height:1.45}#auth-gate .modal-field input,#auth-gate .modal-field select{font-family:var(--sans);font-size:13px;padding:8px 10px}#auth-gate .auth-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}#auth-gate .auth-grid .full{grid-column:1 / -1}#auth-gate .auth-section{margin:4px 0 8px;font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}#auth-gate .tos{display:flex;gap:7px;align-items:flex-start;margin:12px 0 2px;font-size:11px;line-height:1.4}#auth-gate .tos input{margin-top:2px}#auth-gate .tos a,#auth-gate .toggle a{color:var(--zone);cursor:pointer}#auth-gate .toggle a{text-decoration:underline}#auth-gate .err{color:var(--danger);font-size:11.5px;margin-top:10px;min-height:14px}#auth-gate .row{display:flex;gap:8px;margin-top:14px}#auth-gate .row .btn{flex:1;padding:9px}#auth-gate .btn:disabled{opacity:.5;cursor:not-allowed}#auth-gate .toggle{margin-top:12px;font-size:11.5px;text-align:center}#auth-gate .toggle select{padding:3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:inherit;font-size:11px}@media (max-width: 480px){#auth-gate .auth-grid{grid-template-columns:1fr}}
