*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--bg: #f4f2ee;--panel: #ffffff;--panel-2: #f3f1ed;--line: #e2ddd5;--text: #1d1b19;--muted: #7d776e;--accent: #dd4f2e;--danger: #c62828;--warn: #b26a00;--ok: #2e7233}html,body{height:100%;overscroll-behavior:none}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);overflow:hidden}#app{position:fixed;inset:0}button{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 14px;min-height:44px;cursor:pointer}button:active{filter:brightness(.95)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}button.ghost{background:transparent}button:disabled{opacity:.45;cursor:default}input,select{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:10px 12px;min-height:44px}#canvas-wrap{position:absolute;inset:0}#canvas-wrap canvas{display:block;touch-action:none}.mapboxgl-map{position:absolute;inset:0;font-family:inherit}.mapboxgl-control-container{position:absolute;inset:0;z-index:7;pointer-events:none}.mapboxgl-control-container .mapboxgl-ctrl{pointer-events:auto}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right{z-index:7}body.mapbox-board-mode{background:#fff}body.mapbox-board-mode #canvas-wrap{top:52px;background:#fff}body.mapbox-board-mode #canvas-wrap.mapbox-board-loading:after,body.mapbox-board-mode #canvas-wrap.mapbox-board-revealing:after{content:"Preparing map…";position:absolute;inset:0;z-index:30;display:grid;place-items:center;background:#fff;color:#899195;font-size:12px;letter-spacing:.04em;pointer-events:auto;transition:opacity .18s ease}body.mapbox-board-mode #canvas-wrap.mapbox-board-loading:after{opacity:1}body.mapbox-board-mode #canvas-wrap.mapbox-board-revealing:after{opacity:0}.tnt-north-control{overflow:hidden;border:0;border-radius:4px!important;background:#fff!important;box-shadow:0 0 0 2px #0000001a!important}.tnt-north-button{width:29px!important;height:40px!important;min-height:0!important;padding:4px 0 5px!important;display:grid!important;justify-items:center;align-content:center;gap:1px;border:0!important;border-radius:0!important;background:transparent!important}.tnt-north-letter{color:#33373b;font-size:9.5px;font-weight:700;line-height:1}.tnt-north-needle{display:block;color:#c04320;font-size:13px;line-height:1;transform-origin:50% 50%;transition:transform .12s ease-out}.tnt-north-button:hover{background:#f2f2f2!important}.tnt-north-button:focus-visible{outline:2px solid #c04320;outline-offset:-3px}.mapbox-setup{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:24px;background:#f2f3f3;color:#303536}.mapbox-setup-card{width:min(520px,92vw);padding:28px;border:1px solid #d9dddd;border-radius:16px;background:#fffffff0;box-shadow:0 24px 60px -36px #191f2159}.mapbox-setup-card b{display:block;margin-bottom:8px;font-size:18px}.mapbox-setup-card p{color:#687174;font-size:14px;line-height:1.55}.mapbox-setup-card code{display:block;margin-top:16px;padding:11px 12px;border-radius:8px;background:#f0f2f2;color:#3f67b4;font:12px/1.45 ui-monospace,SF Mono,Menlo,monospace}.map-attribution{position:fixed;right:12px;bottom:10px;z-index:8;max-width:min(430px,calc(100vw - 24px));padding:5px 8px;border:1px solid rgba(130,122,108,.18);border-radius:7px;background:#fffdf9d1;color:#6f746f;font-size:10px;line-height:1.25;pointer-events:none;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.topbar{position:absolute;top:0;left:0;right:0;height:52px;display:flex;align-items:center;gap:12px;padding:0 14px;background:#ffffffe0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20}.topbar .brand{font-weight:800;letter-spacing:-.01em;font-size:15px}.topbar .brand span{color:var(--accent)}.topbar .who{color:var(--muted);font-size:13px}.topbar .spacer{flex:1}.topbar .code-chip{display:inline-flex;align-items:baseline;gap:7px;min-height:34px;padding:5px 11px;font-size:13px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.topbar .code-chip:hover{border-color:var(--accent)}.topbar .code-chip .code-chip-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.topbar .code-chip b{font-family:var(--mono, ui-monospace, monospace);letter-spacing:.1em}.code-modal{position:absolute;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;background:#17181a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.code-modal[hidden]{display:none}.code-sheet{background:var(--panel);border-radius:18px;padding:40px 56px 28px;text-align:center;box-shadow:0 40px 90px -30px #00000080;max-width:min(92vw,900px)}.code-sheet-label{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.code-sheet-code{font-family:var(--mono, ui-monospace, monospace);font-weight:700;font-size:min(13vw,120px);line-height:1.05;letter-spacing:.1em;margin:10px 0 6px;white-space:nowrap}.code-sheet-link{font-size:14px;color:var(--muted);word-break:break-all}.code-sheet-actions{display:flex;gap:10px;justify-content:center;margin-top:24px}.inject.sent .k{color:var(--ok)}.inject .sent-order{margin-left:8px;font-size:10px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.topbar .presence{font-size:12.5px;color:var(--muted);white-space:nowrap}.topbar .presence.shared{color:var(--danger);font-weight:600}.topbar .end-run{min-height:38px;padding:7px 12px;font-size:13px;color:var(--danger)}.topbar .end-run.confirm{background:var(--danger);border-color:var(--danger);color:#fff}.threat-seg{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel)}.threat-seg button{border:0;border-radius:0;min-height:38px;padding:6px 12px;font-size:13px;background:transparent}.threat-seg button.sel.low{background:var(--ok);color:#fff}.threat-seg button.sel.medium{background:var(--warn);color:#fff}.threat-seg button.sel.high{background:var(--danger);color:#fff}.side{position:absolute;top:52px;bottom:0;right:0;width:min(360px,88vw);background:#fffffff5;border-left:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translate(100%);transition:transform .25s ease;z-index:19;display:flex;flex-direction:column}.side.open{transform:translate(0)}.side .head{padding:12px 14px;border-bottom:1px solid var(--line);font-weight:600}.side .body{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.inject{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel)}.inject .k{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px;letter-spacing:.04em;color:var(--muted)}.inject .t{font-weight:600;margin:3px 0 6px}.inject .x{font-size:13.5px;color:#57534e;line-height:1.5}.inject.activity{border-color:#dd4f2e59;background:#dd4f2e0a}.inject.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.inject.pending{opacity:.5}.inject .row{display:flex;gap:8px;margin-top:10px}.inject .row button{flex:1;min-height:38px;font-size:13px}.toolbar{position:absolute;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translate(-50%);display:flex;gap:8px;padding:8px;background:#ffffffeb;border:1px solid var(--line);border-radius:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;max-width:96vw;overflow-x:auto;box-shadow:0 10px 30px -18px #1d1b1959}.toolbar button{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:62px;padding:8px 6px;font-size:11px;border-radius:10px;border:1px solid transparent;background:transparent}.toolbar button:hover{background:var(--panel-2)}.toolbar button .ic{font-size:20px;line-height:1}.toolbar button.armed{outline:2px solid var(--accent);background:#dd4f2e14}.toast{position:absolute;top:64px;left:50%;transform:translate(-50%);background:var(--panel);border:1px solid var(--accent);color:var(--text);border-radius:10px;padding:12px 18px;z-index:30;max-width:80vw;box-shadow:0 14px 40px -18px #1d1b1966;font-size:14px}.toast.danger{border-color:var(--danger)}.timerbar{position:absolute;top:60px;right:12px;z-index:18;background:var(--panel);border:1px solid var(--warn);border-radius:10px;padding:8px 14px;font-variant-numeric:tabular-nums;font-size:15px;box-shadow:0 10px 26px -16px #1d1b1959}.timerbar .lbl{font-family:ui-monospace,SF Mono,Menlo,monospace;color:var(--muted);font-size:10.5px;letter-spacing:.08em}.selbox{position:absolute;left:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:21;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;width:230px;display:none;box-shadow:0 14px 36px -20px #1d1b1966}.selbox.open{display:block}.selbox .t{font-weight:600;margin-bottom:8px;font-size:14px}.selbox .warnline{font-size:12.5px;margin:6px 0;color:var(--warn)}.selbox .warnline.danger{color:var(--danger);font-weight:600}.selbox input[type=range]{width:100%;min-height:30px;accent-color:var(--accent)}.selbox .row{display:flex;gap:8px;margin-top:8px}.selbox .row button{flex:1;min-height:38px;font-size:13px}.legend{position:absolute;left:12px;top:60px;z-index:18;font-size:12px;background:#ffffffe6;border:1px solid var(--line);border-radius:10px;padding:8px 12px;color:var(--muted);max-width:260px}.legend b{color:var(--text)}.groups-hud{display:flex;gap:6px;align-items:center;overflow-x:auto;max-width:46vw;scrollbar-width:thin}.groups-hud .chip{font-size:12px;padding:4px 10px;min-height:0;white-space:nowrap;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer}.groups-hud .chip:hover{border-color:var(--accent);color:var(--text)}.groups-hud .chip.sel{background:var(--text);border-color:var(--text);color:#fff;font-weight:600}.groups-hud .chip.low{border-color:var(--ok);color:var(--ok)}.groups-hud .chip.medium{border-color:var(--warn);color:var(--warn)}.groups-hud .chip.high{border-color:var(--danger);color:var(--danger)}.groups-hud .chip.sel.low,.groups-hud .chip.sel.medium,.groups-hud .chip.sel.high{color:#fff}.side.side-left{right:auto;left:0;border-left:0;border-right:1px solid var(--line);transform:translate(-100%)}.side.side-left.open{transform:translate(0)}.roster-note{font-size:12.5px;color:var(--muted);line-height:1.5;padding-bottom:10px;border-bottom:1px solid var(--line)}.roster-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;min-height:0;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer}.roster-row:hover{border-color:var(--accent)}.roster-row.sel{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.roster-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.roster-dot.all{background:conic-gradient(#e6553f,#3f8ee6,#43a047,#ab47bc,#f9a825,#e6553f)}.roster-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.roster-main b{font-size:13.5px}.roster-main em{font-style:normal;font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-meta{font-size:11.5px;color:var(--muted);white-space:nowrap}.roster-empty{font-size:13px;color:var(--muted)}.instructor-statusbar{gap:18px;padding:0 18px;background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.instructor-statusbar .brand{font-size:16px}.instructor-status-title{display:flex;align-items:baseline;gap:9px;min-width:0}.instructor-status-title b{max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.instructor-status-title span{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.session-state{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;color:var(--muted);background:var(--panel-2);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.session-state.live{color:var(--ok);background:#edf7ed}.session-state.live i{width:7px;height:7px;border-radius:50%;background:currentColor}.instructor-rail{position:absolute;top:52px;bottom:0;left:0;z-index:24;width:76px;display:flex;flex-direction:column;justify-content:space-between;padding:10px 8px max(12px,env(safe-area-inset-bottom));color:#d9d9da;background:#19191bf7;border-right:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.instructor-rail-nav{display:flex;flex-direction:column;gap:7px}.instructor-nav-button{min-height:64px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;border-radius:10px;color:#a7a7aa;background:transparent;font-size:10px;font-weight:650;line-height:1.1}.instructor-nav-button:hover{color:#fff;background:#ffffff12}.instructor-nav-button.active{color:#fff;background:var(--accent)}.instructor-nav-icon{font-size:20px;font-weight:400;line-height:1}.instructor-rail-help{padding:0 4px;color:#77777b;font-size:9px;line-height:1.35;text-align:center}.instructor-panel{position:absolute;top:52px;bottom:0;left:76px;z-index:23;width:372px;display:flex;flex-direction:column;background:#f9f8f6fa;border-right:1px solid rgba(29,27,25,.13);box-shadow:18px 0 42px -30px #14141666;transform:translate(-105%);transition:transform .18s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.instructor-panel.open{transform:translate(0)}.instructor-panel-head{min-height:82px;padding:18px 18px 14px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.instructor-panel-eyebrow{display:block;margin-bottom:5px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.instructor-panel-head h2{font-size:23px;line-height:1.15;letter-spacing:-.025em}.icon-button{min-width:36px;min-height:36px;padding:0;border-radius:9px;color:var(--muted);background:transparent;font-size:25px;line-height:1}.instructor-panel-body{flex:1;min-height:0;overflow-y:auto;padding:18px 18px 28px;scrollbar-width:thin}.instructor-panel-body button:not(.map-tool-button):not(.participant-row):not(.session-code-card):not(.panel-back){font-weight:650}.instructor-panel-body button:not(.secondary):not(.danger):not(.map-tool-button):not(.participant-row):not(.session-code-card):not(.panel-back){color:#fff;border-color:var(--accent);background:var(--accent)}.instructor-panel-body button.secondary{background:#fff}.instructor-panel-body button.full{width:100%}.instructor-panel-body button.confirm{color:#fff;border-color:var(--danger);background:var(--danger)}.instructor-panel-body button.danger-text{color:var(--danger)}.panel-intro,.panel-caption,.panel-section p{color:#625e59;font-size:12.5px;line-height:1.55}.panel-intro{margin-bottom:20px}.panel-caption{margin:-2px 0 14px}.panel-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.panel-section.compact{margin-top:8px}.panel-section h3,.tool-category h3{margin-bottom:9px;font-size:13px}.panel-section-heading,.panel-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-section-heading h3{margin:0}.panel-section-heading b{color:var(--accent);font-size:12px}.panel-section-title{margin:22px 0 10px}.panel-section-title h3{font-size:13px}.panel-section-title span{color:var(--muted);font-size:11px}.panel-range{width:100%;min-height:34px;padding:0;accent-color:var(--accent)}.panel-actions{display:grid;gap:8px;margin-top:22px}.panel-back{min-height:36px;margin:-7px 0 11px;padding:5px 0;border:0;color:var(--accent);background:transparent;font-size:12px;font-weight:700}.panel-notice{margin-top:9px;padding:10px 12px;border-radius:9px;color:#73521f;background:#fff5df;font-size:12px;line-height:1.45}.element-summary-card{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff}.element-summary-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:11px;background:var(--panel-2);font-size:25px}.element-summary-card div{display:flex;flex-direction:column;gap:3px}.element-summary-card b{font-size:14px}.element-summary-card span{color:var(--muted);font-size:11px}.tool-category{margin-bottom:21px}.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.map-tool-button{min-height:78px;padding:10px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:12px;background:#fff;font-size:11px}.map-tool-button span{font-size:23px;line-height:1}.map-tool-button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.map-tool-button:hover{border-color:#bbb5ad}.map-tool-button.armed{color:var(--accent);border-color:var(--accent);background:#fff3ef;box-shadow:inset 0 0 0 1px var(--accent)}.exercise-summary{display:flex;align-items:stretch;justify-content:space-between;gap:10px;margin-bottom:4px}.exercise-summary>div:first-child{min-width:0;flex:1;padding:13px 14px;display:flex;flex-direction:column;gap:3px;border:1px solid #cfe4d0;border-radius:12px;background:#f0f8f0}.exercise-summary span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.exercise-summary b{font-size:13px}.exercise-timer{min-width:126px;padding:9px 10px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 6px;border:1px solid #e6c788;border-radius:12px;background:#fff9e9}.exercise-timer[hidden]{display:none}.exercise-timer span{grid-column:1 / -1}.exercise-timer b{font-variant-numeric:tabular-nums;font-size:16px}.exercise-timer button{min-height:28px;padding:3px 7px;font-size:10px}.run-list{display:grid;gap:10px}.run-card{padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff}.run-card.sent{border-color:#cfe4d0}.run-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.run-card-meta span,.run-card-meta b{color:var(--muted);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase}.run-card.sent .run-card-meta b{color:var(--ok)}.run-card h3{margin:8px 0 5px;font-size:14px}.run-card p{color:#625e59;font-size:12px;line-height:1.5}.run-card-actions{display:grid;gap:7px;margin-top:12px}.run-card-actions button{min-height:38px;padding:7px 9px;font-size:11px}.participant-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.participant-summary>div{padding:14px;display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:12px;background:#fff}.participant-summary b{font-size:22px}.participant-summary span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.session-code-card{width:100%;margin-top:8px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;border-color:var(--text);background:#1e1d1c;color:#fff}.session-code-card span{color:#aaa5a0;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.session-code-card b{grid-row:1 / 3;grid-column:2;font:700 20px/1 ui-monospace,monospace;letter-spacing:.12em}.session-code-card em{margin-top:2px;color:#dedbd8;font-size:11px;font-style:normal}.roster-list{display:grid;gap:7px}.participant-row{width:100%;min-height:58px;padding:9px 11px;display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;text-align:left;background:#fff}.participant-row.selected{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.participant-row>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:3px}.participant-row b{font-size:12.5px}.participant-row em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10.5px;font-style:normal}.participant-row strong{color:var(--muted);font-size:11px}.roster-dot.scenario{border:2px solid #78736d;background:#fff}.empty-panel{padding:25px 14px;color:var(--muted);text-align:center;font-size:12px}.session-detail-card{padding:16px;border-radius:13px;color:#fff;background:#1e1d1c}.session-detail-card>span{color:#aaa5a0;font-size:9px;letter-spacing:.09em;text-transform:uppercase}.session-detail-card h3{margin:8px 0 4px;font-size:16px}.session-detail-card p{color:#c9c5c0;font-size:11.5px;line-height:1.4}.session-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:8px 0}.session-facts>div{padding:11px 8px;display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:10px;background:#fff}.session-facts span{color:var(--muted);font-size:8.5px;text-transform:uppercase;letter-spacing:.05em}.session-facts b{font-size:13px;overflow:hidden;text-overflow:ellipsis}.danger-zone{display:grid;gap:8px}.danger-zone p{margin-bottom:3px}@media(max-width:900px){.instructor-status-title span{display:none}.instructor-status-title b{max-width:220px}.instructor-rail{width:66px}.instructor-panel{left:66px;width:min(360px,calc(100vw - 66px))}.instructor-nav-button{min-height:60px;font-size:9px}.instructor-rail-help{display:none}}@media(max-width:640px){.instructor-statusbar{padding:0 10px;gap:9px}.instructor-status-title,.instructor-statusbar .presence{display:none}.instructor-statusbar .code-chip{margin-left:auto}.instructor-rail{top:auto;right:0;width:auto;height:calc(66px + env(safe-area-inset-bottom));padding:6px 8px env(safe-area-inset-bottom);border-top:1px solid rgba(255,255,255,.08);border-right:0}.instructor-rail-nav{height:100%;flex-direction:row;justify-content:space-around}.instructor-nav-button{flex:1;min-width:62px;min-height:52px}.instructor-panel{top:52px;right:0;bottom:calc(66px + env(safe-area-inset-bottom));left:0;width:100%;transform:translateY(105%)}.instructor-panel.open{transform:translateY(0)}.map-attribution{bottom:calc(70px + env(safe-area-inset-bottom))}.mapboxgl-ctrl-bottom-right{bottom:68px}}body.page{background:#faf9f7;overflow:auto}body.page #app{position:static}body.page.dashboard-page{background:#fff}.shell{--bg: #faf9f7;--panel: #ffffff;--band: #f3f1ed;--line: #e8e4de;--line-2: #d8d2c9;--ink: #1d1b19;--ink-2: #57534e;--muted: #8a847c;--red: #DD4F2E;--red-2: #c74527;--red-dim: rgba(221, 79, 46, .1);--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;position:relative;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.shell .wrap{max-width:1080px;margin:0 auto;padding:0 24px}.shell button,.shell input,.shell textarea{background:none;border:none;color:inherit;min-height:0;padding:0;border-radius:0;font:inherit}.shell .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;border:1px solid transparent;text-decoration:none;color:var(--ink);transition:background .15s,border-color .15s,box-shadow .15s,filter .15s}.shell .btn:active{filter:brightness(.94)}.shell .btn-primary{background:var(--red);color:#fff}.shell .btn-primary:not([disabled]):hover{background:var(--red-2);box-shadow:0 6px 18px -8px #dd4f2e99}.shell .btn-ghost{border-color:var(--line-2);background:var(--panel)}.shell .btn-ghost:not([disabled]):hover{border-color:var(--red);color:var(--red)}.shell .btn-lg{height:46px;padding:0 22px;font-size:15px}.shell .btn[disabled]{opacity:.45;cursor:default}.shell .input{width:100%;height:42px;padding:0 12px;border-radius:9px;border:1px solid var(--line-2);background:var(--panel);color:var(--ink);font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.shell .input:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-dim)}.shell .input::placeholder{color:var(--muted)}.shell label{font-size:12.5px;font-weight:600;letter-spacing:.005em;color:var(--ink);display:block;margin-bottom:7px}.shell h1,.shell h2{font-weight:700;letter-spacing:-.025em;line-height:1.1}.shell .nav{height:76px}.shell .nav .wrap{height:100%;display:flex;align-items:center;gap:24px}.shell .nav .spacer{flex:1}.shell .nav .signin{font-size:14px;color:var(--ink-2);text-decoration:none}.shell .nav .signin:hover{color:var(--ink)}.shell .logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-weight:800;font-size:19px;letter-spacing:.02em}.shell .logo .logo-mark{display:block;width:24px;height:24px;flex-shrink:0}.shell footer .logo .logo-mark{width:20px;height:20px}.shell .hero{position:relative;isolation:isolate;overflow:hidden;padding:56px 0 84px;background:linear-gradient(180deg,#f3f1ed52,#faf9f71f)}.shell .hero:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(111,103,93,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(111,103,93,.08) 1px,transparent 1px),linear-gradient(rgba(111,103,93,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(111,103,93,.035) 1px,transparent 1px);background-size:96px 96px,96px 96px,24px 24px,24px 24px;mask-image:radial-gradient(ellipse 92% 92% at 50% 44%,#000 16%,rgba(0,0,0,.66) 62%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 92% 92% at 50% 44%,#000 16%,rgba(0,0,0,.66) 62%,transparent 100%)}.shell .hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.5'/%3E%3C/svg%3E");opacity:.045;mix-blend-mode:multiply}.shell .hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(280px,.98fr);gap:52px;align-items:center}@media(max-width:880px){.shell .hero-grid{grid-template-columns:1fr}}.shell .hero h1{font-size:clamp(38px,4.8vw,56px)}.shell .hero h1 em{font-style:normal;color:var(--red)}.shell .hero .sub{margin:20px 0 28px;font-size:17px;color:var(--ink-2);max-width:520px;line-height:1.65}.shell .hero .ctas{display:flex;gap:12px;flex-wrap:wrap}.shell .meta-row{display:flex;gap:24px;margin-top:26px;font-size:13.5px;color:var(--muted)}.shell .meta-row span{display:inline-flex;align-items:center;gap:8px}.shell .meta-row .mi{color:var(--red);flex-shrink:0}.shell footer{margin-top:auto;border-top:1px solid var(--line);padding:30px 0 32px;font-size:13.5px;color:var(--muted)}.shell footer .wrap{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.shell footer .spacer{flex:1}.shell footer .logo{font-size:16px}.shell footer .logo img{height:30px}.shell footer a{color:inherit;text-decoration:none}.shell footer a:hover{color:var(--ink);text-decoration:underline}.shell footer .footer-links{display:flex;gap:18px}.landing-shell{--red: oklch(.56 .2 30);--red-2: oklch(.51 .2 30);--red-dim: oklch(.56 .2 30 / .1);--bg: #ffffff;--band: #f5f5f4;--line: #e9e9e7;--line-2: #d9d9d6;--display: "Archivo", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;display:flex;flex-direction:column;min-height:100vh}.landing-shell .wrap{max-width:1160px}.landing-shell .hero h1,.landing-shell .how-head h2,.landing-shell .closing h2{font-family:var(--display)}.landing-shell .nav{height:80px;border-bottom:1px solid var(--line)}.landing-shell .nav .logo{letter-spacing:.02em}.landing-shell .hero{position:relative;margin:0;padding:96px 0 108px;background:none;overflow:hidden}.landing-shell .hero:before,.landing-shell .hero:after{display:none}.landing-shell .hero-copy{position:relative;z-index:2;max-width:540px}.landing-shell .eyebrow{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2)}.landing-shell .hero h1{margin-top:18px;font-size:clamp(36px,4.4vw,58px);font-weight:900;letter-spacing:-.018em;line-height:1.06;text-transform:uppercase}.landing-shell .hero h1 em{font-style:normal;color:var(--red)}.landing-shell .hero .sub{margin:24px 0 0;max-width:500px;font-size:17px;line-height:1.65;color:var(--ink-2)}.landing-shell .hero .ctas{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}.landing-shell .hero-meta{margin-top:28px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.landing-shell .hero-map{position:absolute;top:0;right:0;bottom:0;z-index:1;width:min(56vw,980px);pointer-events:none;background:var(--band)}.landing-shell .hero-map-host,.landing-shell .hero-map-host .mapboxgl-map{position:absolute;inset:0}.landing-shell .hero-map-host .mapbox-setup,.landing-shell .hero-map-host .mapboxgl-ctrl-bottom-right{display:none}.landing-shell .hero-map-host .mapboxgl-ctrl-bottom-left{left:auto;right:10px;z-index:4;opacity:.4}.landing-shell .hero-map-still{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover;transition:opacity .9s ease}.landing-shell .hero-map-still.is-hidden{opacity:0}.landing-shell .hero-map-fade{position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,var(--bg) 0%,rgba(255,255,255,.55) 22%,rgba(255,255,255,0) 52%),linear-gradient(180deg,var(--bg) 0%,rgba(255,255,255,0) 18%),linear-gradient(0deg,var(--bg) 0%,rgba(255,255,255,0) 16%)}.landing-shell .built-for{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.landing-shell .built-for .wrap{display:flex;align-items:center;gap:36px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px}.landing-shell .built-for-label{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);flex-shrink:0}.landing-shell .built-for ul{display:flex;gap:12px 36px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.landing-shell .built-for li{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:650;letter-spacing:.01em;color:var(--ink-2);white-space:nowrap}.landing-shell .built-for li svg{width:16px;height:16px;flex-shrink:0;color:var(--muted)}.landing-shell .how{padding:96px 0 104px}.landing-shell .how-head h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.01em;max-width:560px;text-transform:uppercase;font-weight:800}.landing-shell .how-head h2 .accent-line{display:block;color:var(--red)}.landing-shell .how-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:52px;border:1px solid var(--line-2);background:var(--panel)}.landing-shell .how-cell{display:flex;flex-direction:column;border-right:1px solid var(--line)}.landing-shell .how-cell:last-child{border-right:0}.landing-shell .how-shot{position:relative;aspect-ratio:16 / 10;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);background:var(--band);background-image:linear-gradient(rgba(111,111,105,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(111,111,105,.07) 1px,transparent 1px);background-size:24px 24px}.landing-shell .how-shot span{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:4px 10px;background:var(--band)}.landing-shell .how-copy{padding:22px 24px 28px}.landing-shell .step-num{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--muted)}.landing-shell .how-copy h3{margin-top:10px;font-size:18.5px;font-weight:700;letter-spacing:-.015em}.landing-shell .how-copy p{margin-top:10px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}.landing-shell .how-team-row{grid-column:1 / -1;display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:22px;align-items:center;padding:24px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--red) 3%,var(--panel));text-align:left}.landing-shell .how-team-row h3{font-size:18.5px;font-weight:700;letter-spacing:-.015em}.landing-shell .how-team-row p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}.landing-shell .how-team-link{color:var(--red);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.landing-shell .how-team-link:hover{text-decoration:underline}.landing-shell .closing{border-top:1px solid var(--line);background:var(--band)}.landing-shell .closing .wrap{padding-top:88px;padding-bottom:96px;display:flex;flex-direction:column;align-items:center;text-align:center}.landing-shell .closing h2{font-size:clamp(30px,3.4vw,42px);letter-spacing:-.01em;text-transform:uppercase;font-weight:800}.landing-shell .closing p{margin:14px 0 0;font-size:16px;color:var(--ink-2)}.landing-shell .closing .btn{margin-top:30px}.landing-shell footer{margin-top:0;border-top:0;background:#161512;padding:40px 0 42px;color:#ffffff8c}.landing-shell footer .logo{color:#fff}@media(max-width:940px){.landing-shell .hero{padding:60px 0 0;display:flex;flex-direction:column}.landing-shell .hero>.wrap{order:1}.landing-shell .hero-copy{max-width:560px;padding-bottom:56px}.landing-shell .hero-map{position:relative;inset:auto;order:2;width:100%;height:300px;border-top:1px solid var(--line)}.landing-shell .hero-map-fade{background:linear-gradient(180deg,var(--bg) 0%,rgba(255,255,255,0) 24%)}.landing-shell .how-panel{grid-template-columns:1fr}.landing-shell .how-cell{border-right:0;border-bottom:1px solid var(--line)}.landing-shell .how-cell:last-child{border-bottom:0}.landing-shell .how-team-row{grid-template-columns:50px minmax(0,1fr)}.landing-shell .how-team-link{grid-column:2}.landing-shell .how{padding:72px 0 80px}}@media(max-width:680px){.landing-shell .wrap{padding:0 20px}.landing-shell .nav{height:70px}.landing-shell .nav .signin{display:none}.landing-shell .hero{padding:48px 0 60px}.landing-shell .hero h1{font-size:clamp(36px,9.6vw,48px)}.landing-shell .hero .ctas{flex-direction:column;align-items:stretch}.landing-shell .hero .btn-lg{width:100%}.landing-shell .built-for .wrap{gap:14px 24px}.landing-shell .built-for ul{gap:10px 24px}.landing-shell .closing .wrap{padding-top:64px;padding-bottom:72px}}.login-shell{--red: oklch(.56 .2 30);--red-2: oklch(.51 .2 30);--red-dim: oklch(.56 .2 30 / .1);--bg: #ffffff;--display: "Archivo", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:100vh}.login-shell .login-left{display:flex;flex-direction:column;padding:28px 48px 24px}.login-shell .login-top{display:flex;align-items:center;min-height:44px}.login-shell .login-form{width:min(384px,100%);margin:auto 0;align-self:center;padding:48px 0}.login-shell .login-form .eyebrow{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2)}.login-shell .invite-callout{display:flex;flex-direction:column;gap:3px;margin:0 0 24px;padding:13px 14px;border:1px solid rgba(194,65,31,.3);border-radius:10px;background:var(--red-dim);font-size:13px;line-height:1.45}.login-shell .invite-callout b{font-weight:700;color:var(--ink)}.login-shell .invite-callout span{color:var(--ink-2)}.login-shell .login-form h1{margin-top:14px;font-family:var(--display);font-size:34px;font-weight:800;letter-spacing:-.01em;text-transform:uppercase}.login-shell .login-form .hint{margin:8px 0 30px;font-size:14.5px;color:var(--ink-2)}.login-shell .login-form .field{margin-bottom:16px}.login-shell .login-form .btn{width:100%;margin-top:8px}.login-shell .login-form .micro{margin-top:18px;font-size:12.5px;color:var(--muted)}.login-shell .login-bottom{font-size:12px;color:var(--muted)}.login-shell .login-error{margin:2px 0 10px;font-size:13px;color:var(--red, #c2411f);font-weight:500}.login-shell .login-switch .linklike{background:none;border:0;padding:0;margin-left:4px;cursor:pointer;font-size:12.5px;color:var(--ink);font-weight:600;text-decoration:underline}.login-shell .login-visual{position:relative;overflow:hidden;background:#161512}.login-shell .login-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.login-shell .login-visual-scrim{position:absolute;inset:0;background:linear-gradient(15deg,#161512d1,#16151247 38%,#16151200 62%)}.login-shell .login-visual-copy{position:absolute;left:36px;right:36px;bottom:32px;color:#fff}.login-shell .login-visual-copy span{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#ffffffa8}.login-shell .login-visual-copy p{margin-top:10px;font-family:var(--display);font-size:clamp(22px,2.2vw,30px);font-weight:800;letter-spacing:-.01em;text-transform:uppercase;line-height:1.15}@media(max-width:860px){.login-shell{grid-template-columns:1fr}.login-shell .login-visual{display:none}.login-shell .login-left{padding:22px 24px 20px}}.shell .center-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.shell .auth-card{width:min(408px,94vw);border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:34px;box-shadow:0 18px 48px -28px #1d1b194d}.shell .auth-card .logo{margin-bottom:22px}.shell .auth-card h2{font-size:21px;letter-spacing:-.01em;margin-bottom:4px}.shell .auth-card .hint{font-size:14px;color:var(--ink-2);margin-bottom:24px}.shell .auth-card .field{margin-bottom:16px}.shell .auth-card .btn{width:100%}.shell .auth-card .micro{margin-top:18px;font-size:12.5px;color:var(--muted);text-align:center}.shell .auth-card .micro a{color:var(--ink-2)}.shell .seg{display:flex;border:1px solid var(--line-2);border-radius:9px;overflow:hidden}.shell .seg button{flex:1;height:40px;font-size:14px;cursor:pointer;background:var(--panel);color:var(--ink-2)}.shell .seg button.sel{background:var(--red);color:#fff;font-weight:600}.shell .wrap-wide{max-width:1360px;margin:0 auto;padding:0 24px}.editor-shell{--red: oklch(.56 .2 30);--red-2: oklch(.51 .2 30);--red-dim: oklch(.56 .2 30 / .1);--bg: #ffffff;--band: #f3f4f6;--line: #e7e8ea;--line-2: #d7d9dc;--ink: #17181a;--ink-2: #4b4d51;--muted: #898c92;--display: "Archivo", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.shell .editor-bar{width:100%;height:56px;background:#fff;border-bottom:1px solid var(--line);color:var(--ink);position:relative;z-index:20}.shell .editor-bar .editor-bar-inner{width:100%;height:100%;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}.shell .editor-bar-left{display:flex;align-items:center;gap:14px;min-width:0}.shell .editor-bar-right{display:flex;align-items:center;gap:10px}.shell .history-controls{display:flex;align-items:center;gap:4px;padding-right:2px}.shell .history-btn{min-width:62px;padding-inline:12px}.shell .history-btn:disabled{color:var(--muted);border-color:var(--line);background:var(--band);cursor:default;opacity:.62}.shell .history-btn:disabled:hover{color:var(--muted);border-color:var(--line);background:var(--band)}.shell .publish-note{font-size:12px;color:var(--muted);border:1px solid var(--line-2);border-radius:999px;padding:4px 11px;white-space:nowrap}.shell .editor-bar .logo{font-size:17px}.shell .editor-bar .logo .logo-mark{width:22px;height:22px}.shell .editor-bar .mode{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line-2);border-radius:5px;padding:3px 8px;color:var(--ink-2)}.shell .editor-bar .mode-title{font-size:14px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell .editor-bar .btn-primary{height:36px}.shell .btn-bar{border-color:var(--line-2);color:var(--ink);background:#fff;height:36px}.shell .btn-bar:hover{border-color:var(--red);color:var(--red);background:#fff}.editor-shell .edfloat{position:relative;height:calc(100vh - 56px);overflow:hidden;background:#fff}.editor-shell .ed-map{position:absolute;inset:0}.editor-shell .ed-map .scene-host{position:absolute;inset:0;z-index:1;opacity:1;transition:opacity .4s ease}.editor-shell .ed-map .scene-host.mapbox-board-loading,.editor-shell .addr-marker-pending{opacity:0}.editor-shell .mapboxgl-marker{transition:opacity .45s ease}.editor-shell .map-loading{position:absolute;inset:0;z-index:0;display:flex;align-items:center;justify-content:center;font-size:13.5px;color:var(--ink-2);background:transparent}.editor-shell .spinner.dark{border-color:#17181a26;border-top-color:var(--ink-2)}.shell.editor-shell .preview-cap{left:12px;bottom:84px}.editor-shell .map-tools{position:absolute;left:12px;bottom:126px;z-index:5}.editor-shell .map-tools-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#ffffffeb;color:var(--ink-2);cursor:pointer;transition:border-color .15s,color .15s}.editor-shell .map-tools-btn:hover{border-color:var(--red);color:var(--red)}.editor-shell .map-tools-btn svg{width:16px;height:16px}.editor-shell .map-tools-pop{position:absolute;bottom:calc(100% + 6px);left:0;min-width:190px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 40px -20px #17181a59}.editor-shell .tool-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 10px;margin:0;border-radius:7px;cursor:pointer;font-size:13px;font-weight:500;color:var(--ink);letter-spacing:0}.editor-shell .tool-row:hover{background:var(--band)}.editor-shell .switch{appearance:none;width:32px;height:19px;border-radius:999px;background:var(--line-2);position:relative;cursor:pointer;flex-shrink:0;transition:background .15s}.editor-shell .switch:after{content:"";position:absolute;top:2.5px;left:2.5px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .15s}.editor-shell .switch:checked{background:var(--red)}.editor-shell .switch:checked:after{transform:translate(13px)}.editor-shell .ed-map .ph-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.editor-shell .ed-map .ph-wrap:before,.editor-shell .ed-map .map-loading:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(100,105,112,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(100,105,112,.07) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle 460px at 50% 50%,transparent 0%,transparent 34%,#000 78%);-webkit-mask-image:radial-gradient(circle 460px at 50% 50%,transparent 0%,transparent 34%,#000 78%)}.editor-shell .preview-ph{position:relative;text-align:center}.editor-shell .ph-rose{display:block;width:148px;height:148px;margin:0 auto 6px;fill:var(--line-2);opacity:.8}.editor-shell .preview-ph.fade,.editor-shell .map-loading{animation:ph-fade-in .4s ease both}@keyframes ph-fade-in{0%{opacity:0}to{opacity:1}}.editor-shell .spinner.dark.big{display:block;width:26px;height:26px;border-width:3px;margin:0 auto 14px}.editor-shell .preview-ph .ph-cap{max-width:340px}.editor-shell .float-panel{position:absolute;top:16px;z-index:10;display:flex;flex-direction:column;width:372px;max-height:calc(100% - 32px);background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 56px -28px #1d1b1966;overflow:hidden}.editor-shell .float-left{left:16px;bottom:16px}.editor-shell .float-left.collapsed{bottom:auto}.editor-shell .float-left.collapsed .float-body{display:none}.editor-shell .float-left.collapsed .float-head{border-bottom:0}.editor-shell .float-left.collapsed .float-head p{display:none}.editor-shell .float-left.collapsed .panel-toggle svg{transform:rotate(180deg)}.editor-shell .float-right{right:16px;width:356px;transform:translate(calc(100% + 32px));opacity:0;pointer-events:none;transition:transform .24s ease,opacity .2s ease}.editor-shell .float-right.open{transform:none;opacity:1;pointer-events:auto}.editor-shell .float-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px 13px 18px;border-bottom:1px solid var(--line);flex-shrink:0}.editor-shell .float-left .float-head{background:#17181a;border-bottom-color:#17181a}.editor-shell .float-left .float-head h2{color:#fff}.editor-shell .float-left .panel-toggle{border-color:#ffffff3d;background:transparent;color:#fffc}.editor-shell .float-left .panel-toggle:hover{border-color:#fff;color:#fff}.editor-shell .panel-toggle{margin-top:0}.editor-shell .float-head h2{font-family:var(--display);font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.editor-shell .float-head p{margin-top:3px;font-size:12.5px;color:var(--muted)}.editor-shell .panel-toggle{flex-shrink:0;width:26px;height:26px;margin-top:-2px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:7px;background:var(--panel);color:var(--ink-2);cursor:pointer;transition:border-color .15s,color .15s}.editor-shell .panel-toggle:hover{border-color:var(--red);color:var(--red)}.editor-shell .panel-toggle svg{width:14px;height:14px;transition:transform .2s}.editor-shell .float-body{overflow-y:auto;padding:2px 16px 16px}.editor-shell .script-card{display:flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:10px;background:var(--panel);padding:10px 12px;margin-bottom:8px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.editor-shell .script-card:hover{border-color:var(--red)}.editor-shell .script-card.sel{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.editor-shell .script-card .title{flex:1;min-width:0;font-size:13.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-shell .script-card .title.empty{color:var(--muted)}.editor-shell .script-card .mini{min-height:26px;height:26px;width:26px;padding:0;font-size:12px;border:1px solid var(--line-2);border-radius:6px;background:var(--panel);cursor:pointer;color:var(--ink-2);flex-shrink:0}.editor-shell .script-card .mini:hover{border-color:var(--red);color:var(--red)}.editor-shell .script-hint{margin-top:12px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);line-height:1.7}.editor-shell .btn-ghost.danger{color:var(--red);border-color:var(--line-2)}.editor-shell .btn-ghost.danger:hover{border-color:var(--red);background:var(--red-dim)}.editor-shell .el-actions{display:flex;gap:8px}.editor-shell .el-actions .btn-main{flex:1}.editor-shell .place-btn .place-label{display:inline-block}.editor-shell .place-btn.placing{animation:place-pulse 1.6s ease-out infinite}.editor-shell .place-btn.placing .place-label{animation:place-label-in .35s ease both}@keyframes place-label-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes place-pulse{0%{box-shadow:0 0 #d02e1e73}70%,to{box-shadow:0 0 0 9px #d02e1e00}}.editor-shell .seg-4{display:grid;grid-template-columns:repeat(4,1fr)}.editor-shell .seg-4 button{font-size:12.5px;padding:0 4px}.editor-shell .seg-3{display:grid;grid-template-columns:repeat(3,1fr)}.editor-shell .standoff{border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.editor-shell .standoff .so-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;font-size:13px;color:var(--ink-2);border-bottom:1px solid var(--line)}.editor-shell .standoff .so-row:last-child{border-bottom:0}.editor-shell .standoff .so-row b{color:var(--ink);font-weight:600;white-space:nowrap}.editor-shell .so-src{margin:6px 0 0;font-size:11.5px;color:var(--ink-2)}.editor-shell .so-preview{margin-top:10px}.editor-shell .so-preview.on{border-color:var(--red);color:var(--red);font-weight:600}.editor-shell .check-line.soon-line{opacity:.55;cursor:default}.editor-shell .opt-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;margin:0;border-bottom:1px solid var(--line);cursor:pointer;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0}.editor-shell .opt-row:last-of-type{border-bottom:0}.editor-shell .opt-row b{font-weight:550}.editor-shell .opt-row em{display:block;margin-top:2px;font-style:normal;font-size:12px;font-weight:400;color:var(--muted);line-height:1.4}.editor-shell .density-field{padding:12px 0 4px}.editor-shell .element-card .el-icon{font-size:16px;flex-shrink:0}.editor-shell .element-card .kbadge{flex-shrink:0}.editor-shell select.input{height:42px;cursor:pointer;appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234b4d51' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px}.editor-shell select.input:disabled{cursor:default}.editor-shell input[type=range].range{width:100%;height:28px;cursor:pointer;accent-color:var(--red)}.editor-shell .radius-row{display:flex;align-items:center;gap:10px}.editor-shell .radius-row .range{flex:1;min-width:0}.editor-shell .radius-entry{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;height:34px;padding:0 9px 0 4px;border:1px solid var(--line-2);border-radius:9px;background:var(--panel)}.editor-shell .radius-entry:focus-within{border-color:var(--red)}.editor-shell .radius-num{width:52px;height:30px;border:0;background:transparent;text-align:right;font-size:13.5px;color:var(--ink);-moz-appearance:textfield}.editor-shell .radius-num:focus{outline:none}.editor-shell .radius-num::-webkit-outer-spin-button,.editor-shell .radius-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.editor-shell .radius-unit{font-size:12px;color:var(--muted)}.editor-shell .rings-note{margin-top:8px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.03em;color:var(--ink-2)}.editor-shell .pos-note{font-size:13px;color:var(--ink-2);margin-bottom:8px}.editor-shell .pos-note.none{color:var(--muted)}.editor-shell .seg{display:flex;border:1px solid var(--line-2);border-radius:9px;overflow:hidden}.editor-shell .seg button{flex:1;height:38px;font-size:13.5px;cursor:pointer;background:var(--panel);color:var(--ink-2)}.editor-shell .seg button.sel{background:var(--red);color:#fff;font-weight:600}.editor-shell .addr-wrap{position:relative;flex:1;min-width:0}.editor-shell .addr-wrap .input{width:100%}.editor-shell .addr-suggest{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 40px -20px #1d1b1959;max-height:220px;overflow-y:auto}.editor-shell .addr-item{display:block;width:100%;padding:8px 10px;border-radius:7px;font-size:13px;line-height:1.45;color:var(--ink);text-align:left;cursor:pointer}.editor-shell .addr-item:hover,.editor-shell .addr-item.active{background:var(--band)}.editor-shell .spinner{width:13px;height:13px;flex-shrink:0;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:ed-spin .7s linear infinite}@keyframes ed-spin{to{transform:rotate(360deg)}}.editor-shell .venue-note{margin-top:10px;font-size:12px;color:var(--muted);line-height:1.55}.editor-shell .gen-btn{width:40px;height:38px;padding:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.editor-shell .gen-btn svg{width:16px;height:16px}.editor-shell .hint-pill{display:block;width:100%;margin-top:10px;padding:7px 12px;border-radius:999px;background:var(--band);color:var(--ink-2);font-size:12.5px;text-align:center}.editor-shell .venue-current{border:1px solid var(--line-2);border-radius:12px;padding:14px 14px 12px}.editor-shell .venue-current-label{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.editor-shell .venue-current-addr{margin:6px 0 12px;font-size:14px;font-weight:550;color:var(--ink);line-height:1.45}.editor-shell .float-body .acc{margin:0 -16px;padding:0 16px;border-color:var(--line)}.editor-shell .float-body .acc-head,.editor-shell .float-body .acc-body{padding-left:0;padding-right:0}.editor-shell .acc-head .sec-icon{display:inline-flex;width:17px;height:17px;flex-shrink:0;align-items:center;justify-content:center;color:var(--ink-2)}.editor-shell .acc-head .sec-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.editor-shell .btn-block{width:100%}.editor-shell .add-row.add-stack{flex-direction:column}.editor-shell .float-body .field{margin-bottom:16px}.editor-shell .acc.soon .acc-head{opacity:.55}.editor-shell .acc.soon .acc-body .btn[disabled]{opacity:.55;cursor:default}.editor-shell .field-soon{opacity:.55}.editor-shell .switch:disabled{cursor:default}.editor-shell .tool-intro{margin:0 0 12px;font-size:12.5px;line-height:1.55;color:var(--ink-2)}.editor-shell .tool-grid{border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.editor-shell .tool-head,.editor-shell .tool-row{display:grid;grid-template-columns:1fr 76px 82px;align-items:center;gap:6px;padding:8px 12px}.editor-shell .tool-head{background:var(--band);border-bottom:1px solid var(--line-2);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.editor-shell .tool-head span+span,.editor-shell .tool-row .tool-box{justify-self:center}.editor-shell .tool-cat{padding:7px 12px;background:var(--band);color:var(--ink-2);font-size:11.5px;font-weight:600;letter-spacing:.02em;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.editor-shell .tool-grid .tool-cat:first-child{border-top:0}.editor-shell .tool-row{font-size:13px;color:var(--ink)}.editor-shell .tool-row+.tool-row{border-top:1px solid var(--line)}.editor-shell .tool-name{display:flex;align-items:center;gap:8px;min-width:0}.editor-shell .tool-box{width:16px;height:16px;accent-color:var(--red);cursor:pointer}.editor-shell .soon-tag{display:inline-block;margin-left:6px;padding:1px 7px 2px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line-2);border-radius:999px;vertical-align:1px}.editor-shell .check-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 6px;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0;cursor:pointer}.editor-shell .acc-head .chev{width:24px;height:24px}.editor-shell .acc-head .chev .acc-lock{width:22px;height:22px;stroke-width:1.8}@media(max-width:940px){.editor-shell .edfloat{height:auto;overflow:visible}.editor-shell .ed-map{position:relative;height:46vh}.editor-shell .float-panel{position:static;width:auto;max-height:none;margin:12px;box-shadow:none}.editor-shell .float-right{transform:none;opacity:1;pointer-events:auto;display:none}.editor-shell .float-right.open{display:flex}}.shell .ed2{display:flex;min-height:calc(100vh - 56px);align-items:stretch}.shell .ed2-side{width:400px;flex-shrink:0;background:var(--panel);border-right:1px solid var(--line);padding:14px 16px 40px;overflow-y:auto;height:calc(100vh - 56px);position:sticky;top:0}.shell .acc{border-bottom:1px solid var(--line)}.shell .acc:last-child{border-bottom:none}.shell .acc-head{width:100%;display:flex;align-items:center;gap:10px;padding:14px 8px;font-size:14.5px;font-weight:550;color:var(--ink);cursor:pointer;background:transparent;text-align:left}.shell .acc.locked .acc-head{opacity:.45;cursor:default}.shell .lock-hint{font-size:12.5px;color:var(--muted);margin-top:4px}.shell .import-form{display:flex;gap:8px;margin-top:12px}.shell .import-form .input{flex:1;height:38px;font-size:13.5px}.shell .import-form .btn{height:38px;font-size:13px;padding:0 12px;white-space:nowrap}.shell .gen-status{font-size:12.5px;color:var(--muted);margin-top:10px}.shell .gen-status.error{color:var(--red)}.shell .preview-ph .ph-icon{color:var(--line-2);display:flex;justify-content:center}.shell .scene-host{position:absolute;inset:0}.shell .scene-host canvas{display:block}.shell .acc-head .chev{width:16px;height:16px;margin-left:auto;color:#96918a;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.shell .acc-head .chev svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.shell .acc-head .chev .acc-lock{width:13px;height:13px;stroke-width:1.8}.shell .acc-body{display:none;padding:2px 8px 20px}.shell .acc.open .acc-body{display:block}.shell .acc-body .field{margin-bottom:16px}.shell .acc-body .radio-card,.shell .acc-body .check-row{padding:13px}.shell .acc-body .ied-row{padding:12px}.shell .ed2-map{flex:1;min-width:0;padding:0;background:#fff}.shell label .opt{font-weight:400;text-transform:none;letter-spacing:0;color:var(--muted);font-family:Inter,sans-serif;font-size:11.5px}.shell .problems{margin-top:14px;font-size:13.5px;color:var(--red);display:flex;flex-direction:column;gap:6px}.shell .map-card{position:sticky;top:0;border:0;border-radius:0;background:#fff;height:calc(100vh - 56px);overflow:hidden;display:flex;align-items:center;justify-content:center}.shell .preview-ph{text-align:center}.shell .preview-ph .ph-mark{font-weight:800;font-size:42px;letter-spacing:-.02em;color:var(--line-2);-webkit-user-select:none;user-select:none}.shell .preview-ph .ph-cap{margin-top:8px;font-size:13px;color:var(--muted)}.shell .preview-canvas{position:absolute;inset:0;width:100%;height:100%}.shell .preview-cap{position:absolute;left:14px;bottom:12px;font-size:12.5px;color:var(--ink-2);background:#ffffffd9;border:1px solid var(--line);border-radius:8px;padding:5px 10px}.shell .preview-cap b{color:var(--ink)}.shell textarea.input{height:auto;min-height:88px;padding:10px 12px;resize:vertical;line-height:1.5}.shell .wiz{max-width:720px;margin:0 auto;padding-bottom:80px}.shell .wiz-head{padding:10px 0 22px}.shell .wiz-head h2{font-size:26px;letter-spacing:-.02em}.shell .wiz-head p{color:var(--ink-2);margin-top:6px;font-size:14.5px}.shell .wiz-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.shell .wiz-steps .pill{height:32px;padding:0 14px;font-size:13px}.shell .wiz-steps .pill.done{border-color:var(--red);color:var(--red)}.shell .wiz-panel{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:26px}.shell .wiz-panel .field{margin-bottom:18px}.shell .wiz-nav{display:flex;gap:10px;margin-top:22px}.shell .wiz-nav .spacer{flex:1}.shell .radio-card{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line-2);border-radius:12px;padding:16px;cursor:pointer;margin-bottom:12px;background:var(--panel)}.shell .radio-card.sel{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.shell .radio-card.off{opacity:.6;cursor:default}.shell .radio-card h4{font-size:14.5px;font-weight:600}.shell .radio-card p{font-size:13px;color:var(--ink-2);margin-top:3px;line-height:1.5}.shell .radio-card .dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2);flex-shrink:0;margin-top:2px}.shell .radio-card.sel .dot{border-color:var(--red);background:radial-gradient(circle,var(--red) 0 45%,transparent 50%)}.shell .ied-row{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:14px;margin-bottom:10px}.shell .ied-row .ied-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.shell .ied-row .kbadge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;padding:3px 8px;border-radius:5px;background:var(--band);border:1px solid var(--line-2);color:var(--ink-2);flex-shrink:0}.shell .ied-row .kbadge.activity{background:var(--red-dim);border-color:#dd4f2e59;color:var(--red)}.shell .ied-row .ied-head .grow{flex:1}.shell .ied-row .ied-head input{height:36px;font-size:14px}.shell .ied-row .mini{min-height:30px;height:30px;width:30px;padding:0;font-size:13px;border:1px solid var(--line-2);border-radius:7px;background:var(--panel);cursor:pointer;color:var(--ink-2);flex-shrink:0}.shell .ied-row .mini:hover{border-color:var(--red);color:var(--red)}.shell .ied-row .minutes{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;color:var(--ink-2)}.shell .ied-row .minutes input{width:70px;height:34px}.shell .add-row{display:flex;gap:10px;margin-top:14px}.shell .check-row{display:flex;gap:12px;align-items:center;border:1px solid var(--line-2);border-radius:12px;padding:14px 16px;margin-bottom:12px;cursor:pointer;background:var(--panel)}.shell .check-row.sel{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.shell .check-row .ic{font-size:20px}.shell .check-row h4{font-size:14.5px;font-weight:600}.shell .check-row p{font-size:13px;color:var(--ink-2);margin-top:2px}.shell .review-list{display:flex;flex-direction:column;gap:8px;font-size:14px}.shell .review-list .rrow{display:flex;gap:10px}.shell .review-list .rk{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--muted);width:110px;flex-shrink:0;padding-top:2px}.dashboard-shell{--bg: #fff;background:#fff;--red: oklch(.56 .2 30);--red-2: oklch(.51 .2 30);--red-dim: oklch(.56 .2 30 / .1);--display: "Archivo", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.dashboard-shell .nav{border-bottom:1px solid var(--line)}.dashboard-shell>.wrap{width:100%}.dashboard-shell .beta-tag{margin-left:2px;padding:3px 8px;border:1px solid var(--red);border-radius:5px;color:var(--red);font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.dashboard-shell .workspace-context{display:flex;align-items:center;gap:7px;min-width:0;margin-left:10px;padding-left:14px;border-left:1px solid var(--line);text-decoration:none}.dashboard-shell .workspace-context[hidden]{display:none}.dashboard-shell .workspace-context-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;color:var(--ink)}.dashboard-shell .workspace-context-kind,.dashboard-shell .workspace-context-role{padding:3px 7px;border-radius:999px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.dashboard-shell .workspace-context-kind{background:var(--red-dim);color:var(--red-2)}.dashboard-shell .workspace-context-role{background:var(--band);color:var(--ink-2)}.dashboard-shell .dash-head{padding:36px 24px 4px}.dashboard-shell .dash-head .eyebrow{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.dashboard-shell .dash-head h1{margin-top:10px;font-family:var(--display);font-size:32px;font-weight:800;letter-spacing:-.01em;text-transform:uppercase}.dashboard-shell .pill-nav{padding-top:18px}.dashboard-shell .scenario-section-heading h2{font-family:var(--display);font-size:16.5px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.dashboard-shell .user-menu{position:relative}.dashboard-shell .user-chip{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 10px;border-radius:999px;border:1px solid transparent;font-size:13.5px;color:var(--ink-2);transition:border-color .15s,background .15s}.dashboard-shell .user-chip:hover{border-color:var(--line-2);background:var(--bg)}.dashboard-shell .user-chip svg{width:14px;height:14px;color:var(--muted)}.dashboard-shell .user-menu-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:60;min-width:224px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 44px -22px #1d1b1959}.dashboard-shell .user-menu-panel a,.dashboard-shell .user-menu-panel button{display:block;width:100%;padding:9px 12px;border-radius:8px;font-size:13.5px;color:var(--ink);text-decoration:none;text-align:left;cursor:pointer}.dashboard-shell .user-menu-panel a:hover,.dashboard-shell .user-menu-panel button:hover{background:var(--band)}.dashboard-shell .user-menu-panel #signout{color:var(--red)}.dashboard-shell .user-menu-sep{height:1px;margin:6px 4px;background:var(--line)}.dashboard-shell .settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,480px));gap:18px}.dashboard-shell .settings-card{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:26px}.dashboard-shell .settings-card h3{font-family:var(--display);font-size:15px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.dashboard-shell .settings-card>p{margin:6px 0 20px;font-size:14px;color:var(--ink-2)}.dashboard-shell .settings-card .field{margin-bottom:16px}.dashboard-shell .workspace-name-prompt{margin:0 0 16px;padding:11px 12px;border:1px solid #d7cba8;border-radius:9px;background:#fff9e9;color:#69531c;font-size:13px}.dashboard-shell .workspace-name-prompt[hidden],.dashboard-shell #workspace-name-form[hidden],.dashboard-shell #workspace-switch-field[hidden],.dashboard-shell #manage-sub[hidden]{display:none}.dashboard-shell #workspace-name-form{margin-bottom:18px}.dashboard-shell #workspace-owner-message{margin:0 0 14px}.dashboard-shell .settings-note{display:block;margin-top:12px;font-size:13px;color:var(--ink-2)}.dashboard-shell .settings-note[hidden]{display:none}.dashboard-shell .plan-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line-2);border-radius:12px;padding:14px 16px;margin-bottom:16px}.dashboard-shell .plan-name{font-size:14.5px;font-weight:650}.dashboard-shell .plan-detail{font-size:13px;color:var(--ink-2);margin-top:2px}.dashboard-shell .billing-banner{margin-bottom:18px;padding:12px 14px;border:1px solid #d7cba8;border-radius:10px;background:#fff9e9;color:#69531c;font-size:13px}.dashboard-shell .billing-banner.error{border-color:#e2b8af;background:#fff3f0;color:#8a2f20}.dashboard-shell .billing-banner.success{border-color:#b8d8bf;background:#f1faf3;color:#28613a}.dashboard-shell .usage-grid{display:grid;gap:10px;margin:18px 0}.dashboard-shell .usage-meter>div{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-2)}.dashboard-shell .usage-meter b{color:var(--ink);font-variant-numeric:tabular-nums}.dashboard-shell .usage-meter i{display:block;height:5px;margin-top:5px;overflow:hidden;border-radius:99px;background:var(--panel-2)}.dashboard-shell .usage-meter i span{display:block;height:100%;border-radius:inherit;background:var(--red)}.dashboard-shell .plan-picker{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.dashboard-shell .plan-picker>label{display:block;margin-bottom:10px;font-size:13px;font-weight:650}.dashboard-shell .billing-frequency-field{margin-bottom:0}.dashboard-shell .billing-frequency-field label{display:block;margin-bottom:6px;font-size:12px;font-weight:650;color:var(--ink-2)}.dashboard-shell .plan-picker-help{margin:8px 0 12px}.dashboard-shell .plan-picker-row{display:flex;flex-wrap:wrap;gap:8px}.dashboard-shell .plan-picker-row .checkout-plan{flex:1 1 190px}.dashboard-shell .plan-picker-row .btn-current{border:1px solid var(--ink);background:var(--ink);color:var(--panel);cursor:default}.dashboard-shell .plan-picker-row .btn-current:disabled{opacity:1}.dashboard-shell .plan-feedback{margin-top:12px;padding:10px 12px;border:1px solid #d7cba8;border-radius:8px;background:#fff9e9;color:#69531c;font-size:12.5px}.dashboard-shell .plan-feedback[hidden]{display:none}.dashboard-shell .plan-feedback.error{border-color:#e2b8af;background:#fff3f0;color:#8a2f20}.dashboard-shell .plan-feedback.success{border-color:#b8d8bf;background:#f1faf3;color:#28613a}.dashboard-shell .billing-management{margin-top:16px}.dashboard-shell .billing-management[hidden]{display:none}.dashboard-shell .billing-management .settings-note{margin-top:8px}.dashboard-shell .team-members{margin:15px 0}.dashboard-shell .team-list{border-top:1px solid var(--line)}.dashboard-shell .team-row{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.dashboard-shell .team-row>span{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.dashboard-shell .team-row b{overflow:hidden;text-overflow:ellipsis;font-size:13px}.dashboard-shell .team-row em{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11.5px;font-style:normal}.dashboard-shell .team-row.pending{background:linear-gradient(90deg,transparent,rgba(194,65,31,.035))}.dashboard-shell .invite-form{margin-top:16px}.dashboard-shell .invite-form>label{display:block;margin-bottom:7px;font-size:12px;font-weight:650}.dashboard-shell .invite-row{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px}.dashboard-shell #workspace-select{width:100%}.dashboard-shell .seat-control{display:grid;grid-template-columns:1fr 90px auto;align-items:end;gap:8px;margin-top:14px}.dashboard-shell .seat-control[hidden]{display:none}.dashboard-shell .seat-control label{font-size:12px;font-weight:650}.dashboard-shell .disabled{opacity:.48}.dashboard-shell .tool-btn.plan-locked{opacity:.52}@media(max-width:700px){.dashboard-shell .invite-row,.dashboard-shell .seat-control{grid-template-columns:1fr}.dashboard-shell .plan-picker-row>*{width:100%}}.shell .pill-nav{display:flex;gap:10px;flex-wrap:wrap;padding:30px 0 42px}.shell .pill{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--panel);font-size:14px;color:var(--ink-2);text-decoration:none;transition:border-color .15s,background .15s,color .15s}.shell .pill:hover{border-color:var(--red);color:var(--ink)}.shell .pill.active{background:transparent;border-color:var(--red);color:var(--red);font-weight:650}.shell .pill.active:hover{background:var(--red-dim);border-color:var(--red-2);color:var(--red-2)}.shell .pill.disabled{pointer-events:none;opacity:.65}.shell .pill .soon{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;color:var(--muted);border:1px solid var(--line-2);border-radius:4px;padding:1px 6px}.shell .dash-content{width:100%;flex:1;padding-bottom:64px}.shell .user-chip{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-2)}.shell .user-chip .avatar{width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.shell .user-chip button{cursor:pointer;color:var(--muted);font-size:13px;text-decoration:underline}.shell .dash-content #grid{display:flex;flex-direction:column;gap:48px}.shell .scenario-section{display:flex;flex-direction:column;gap:16px}.shell .scenario-section-heading{display:flex;align-items:center;gap:10px}.shell .scenario-section-heading h2{margin:0;font-size:20px}.shell .scenario-section-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--band);color:var(--muted);font-family:var(--mono);font-size:11px}.shell .scenario-empty{padding:24px;border:1px dashed var(--line-2);border-radius:14px;color:var(--muted);font-size:14px}.shell .scen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}.shell .scen-card{border:1px solid var(--line);border-radius:14px;padding:24px;display:flex;flex-direction:column;background:var(--panel);transition:border-color .15s,box-shadow .15s}.shell .scen-card:hover{border-color:var(--line-2);box-shadow:0 12px 30px -20px #1d1b1940}.shell .scen-card.ghost{background:transparent;border-style:dashed;box-shadow:none}.shell .scen-card .tag-row{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.shell .tag{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;padding:3px 8px;border-radius:5px;background:var(--band);border:1px solid var(--line-2);color:var(--ink-2)}.shell .tag.ready{background:#171717;border-color:#171717;color:#fff}.shell .tag.draft{background:transparent;border-color:#b8b4ae;color:#77716a}.shell .scen-card h3{font-size:18px;font-weight:680;line-height:1.3;margin-bottom:8px}.shell .scen-card .scenario-author{margin:-2px 0 8px;color:var(--muted);font-family:var(--mono);font-size:10.5px;letter-spacing:.04em}.shell .scen-card p{font-size:14px;color:var(--ink-2);line-height:1.55}.shell .scenario-address{margin:18px 0 20px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--ink-2)}.shell .scenario-address-label{font-family:var(--mono);font-size:9.5px;font-weight:650;letter-spacing:.04em;color:var(--muted)}.shell .scen-card .actions{margin-top:auto;display:flex;gap:10px}.shell .scen-card .actions .btn{flex:1;height:36px;font-size:13.5px}.shell .scen-card .manage-row{display:flex;flex-wrap:wrap;gap:2px 14px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.shell .scen-card .mng{background:none;border:0;padding:0;cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ink-2);text-decoration:none}.shell .scen-card .mng:hover{color:var(--ink);text-decoration:underline}.shell .scen-card .mng.danger{color:var(--red);margin-left:auto}.shell .scen-card .mng[disabled]{opacity:.5;cursor:default}.shell .scen-card .pw-inline{flex:1;height:32px;font-size:13px;min-width:0}.shell .session-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line-2);border-radius:12px;background:var(--panel);padding:16px 18px;margin-bottom:12px}.shell .session-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.shell .session-info b{font-size:15px}.shell .session-info span{font-size:13px;color:var(--ink-2)}.shell .session-code{font-family:var(--mono);font-weight:700;color:var(--ink);letter-spacing:.08em}.shell .session-row .btn{height:34px;font-size:13px}.shell .session-row .danger{color:var(--red);border-color:var(--line-2)}.shell .scenario-section-heading .section-note{font-style:normal;font-size:12.5px;color:var(--muted);margin-left:4px}@media(max-width:900px){.dashboard-shell .settings-grid,.dashboard-shell .scen-grid{grid-template-columns:minmax(0,1fr)}.dashboard-shell .workspace-context-name{max-width:150px}.dashboard-shell .workspace-context-role{display:none}.dashboard-shell .user-chip #chip-email{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-shell .session-row{align-items:flex-start;flex-wrap:wrap}}@media(max-width:600px){.dashboard-shell .nav .wrap{gap:10px;padding:0 16px}.dashboard-shell .nav .logo span{font-size:16px}.dashboard-shell .beta-tag{display:none}.dashboard-shell .workspace-context{margin-left:0;padding-left:10px}.dashboard-shell .workspace-context-name{max-width:112px}.dashboard-shell .user-chip{padding:5px}.dashboard-shell .user-chip #chip-email,.dashboard-shell .user-chip svg{display:none}.dashboard-shell .dash-head{padding:28px 16px 4px}.dashboard-shell .dash-head h1{font-size:28px}.dashboard-shell>.wrap:not(.dash-head){padding-left:16px;padding-right:16px}.dashboard-shell .pill-nav{gap:8px}.dashboard-shell .pill-nav>span{display:none}.dashboard-shell .pill-nav #create-scenario{width:100%;margin-top:4px}.dashboard-shell .settings-card,.dashboard-shell .scen-card{padding:18px}.dashboard-shell .plan-row{align-items:flex-start;flex-direction:column}.dashboard-shell .team-row{align-items:flex-start;flex-wrap:wrap}.dashboard-shell .session-row{flex-direction:column}.dashboard-shell .session-row .btn{width:100%}}.pricing-shell .price-head .wrap{padding-top:72px;padding-bottom:26px;max-width:880px;display:flex;flex-direction:column;align-items:center;text-align:center}.pricing-shell .price-head h1{font-family:var(--display);font-weight:800;letter-spacing:-.015em;font-size:clamp(34px,4.4vw,54px);line-height:1.06;margin:14px 0 18px}.pricing-shell .price-head h1 em{font-style:normal;color:var(--red)}.pricing-shell .price-head .sub{font-size:17px;color:var(--ink-2);line-height:1.6;max-width:560px}.pricing-shell .beta-banner{margin-top:26px;padding:13px 22px;border-radius:999px;border:1px solid var(--line-2);background:var(--panel);font-size:14px;color:var(--ink-2);max-width:640px}.pricing-shell .beta-banner b{color:var(--ink)}.pricing-shell .term-toggle{margin-top:26px;display:inline-flex;border:1px solid var(--line-2);border-radius:999px;overflow:hidden;background:var(--panel)}.pricing-shell .term-toggle button{padding:9px 20px;font-size:13.5px;font-weight:600;cursor:pointer;background:transparent;color:var(--ink-2);border:0}.pricing-shell .term-toggle button.sel{background:var(--ink);color:#fff}.pricing-shell .term-toggle .save-tag{margin-left:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--red)}.pricing-shell .term-toggle button.sel .save-tag{color:#ffb59e}.pricing-shell .plans .wrap{padding-top:26px;padding-bottom:30px}.pricing-shell .plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}@media(max-width:900px){.pricing-shell .plan-grid{grid-template-columns:1fr}}.pricing-shell .plan-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line-2);border-radius:16px;background:var(--panel);padding:30px 28px 26px}.pricing-shell .plan-card.featured{border-color:var(--red);box-shadow:0 24px 56px -36px #dd4f2e73}.pricing-shell .plan-flag{position:absolute;top:-11px;left:24px;padding:3px 12px;border-radius:4px;background:var(--red);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.pricing-shell .plan-card h2{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.01em}.pricing-shell .plan-blurb{margin-top:6px;font-size:13.5px;color:var(--ink-2);line-height:1.55;min-height:42px}.pricing-shell .plan-price{margin-top:18px;display:flex;align-items:baseline;gap:6px}.pricing-shell .plan-price .amount{font-family:var(--display);font-weight:800;font-size:40px;letter-spacing:-.01em}.pricing-shell .plan-price .per{font-size:14px;color:var(--ink-2);font-weight:500}.pricing-shell .seat-note{margin-top:6px;font-size:12px;color:var(--muted);min-height:16px}.pricing-shell .plan-features{margin:18px 0 26px;padding:0;list-style:none;flex:1}.pricing-shell .plan-features li{position:relative;padding:7px 0 7px 26px;font-size:14px;color:var(--ink);border-bottom:1px solid var(--line);line-height:1.45}.pricing-shell .plan-features li:last-child{border-bottom:0}.pricing-shell .plan-features li:before{content:"✓";position:absolute;left:2px;top:7px;color:var(--red);font-weight:700;font-size:13px}.pricing-shell .plan-cta{width:100%;text-align:center}.pricing-shell .plans-foot{margin-top:26px;text-align:center;font-size:13px;color:var(--muted);max-width:720px;margin-left:auto;margin-right:auto;line-height:1.6}.pricing-shell .ai-tease .wrap{padding-top:8px;padding-bottom:34px}.pricing-shell .ai-tease-card{display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px dashed var(--line-2);border-radius:16px;padding:26px 30px;background:var(--band)}@media(max-width:760px){.pricing-shell .ai-tease-card{flex-direction:column;align-items:flex-start}}.pricing-shell .soon-chip{display:inline-block;padding:2px 10px;border-radius:999px;border:1px solid var(--line-2);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.pricing-shell .ai-tease-card h3{margin-top:10px;font-family:var(--display);font-weight:800;font-size:19px}.pricing-shell .ai-tease-card p{margin-top:6px;font-size:14px;color:var(--ink-2);max-width:560px;line-height:1.55}.pricing-shell .ai-price{font-family:var(--display);font-weight:800;font-size:20px;white-space:nowrap}.pricing-shell .ai-price span{font-size:12.5px;color:var(--ink-2);font-weight:500}.pricing-shell .price-faq .wrap{padding-top:10px;padding-bottom:64px}.pricing-shell .price-faq h2{font-family:var(--display);font-weight:800;font-size:24px;text-align:center;margin-bottom:30px}.pricing-shell .faq-grid{display:grid;grid-template-columns:1fr;gap:14px;max-width:820px;margin:0 auto}.pricing-shell .faq-item{border:1px solid var(--line);border-radius:14px;padding:20px 22px;background:var(--panel)}.pricing-shell .faq-item h4{font-size:14.5px;font-weight:700}.pricing-shell .faq-item p{margin-top:7px;font-size:13.5px;color:var(--ink-2);line-height:1.6}.shell .group-draft-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.shell .group-draft-row .input{flex:1;height:38px}.shell .group-draft-row .mini{width:30px;height:30px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel);color:var(--ink-2);cursor:pointer;font-size:12px}.shell .group-draft-row .mini[disabled]{opacity:.4;cursor:default}.shell .btn-sm{height:34px;padding:0 14px;font-size:13px}.shell .group-pick{display:flex;flex-wrap:wrap;gap:8px}.shell .group-option{padding:9px 16px;border:1px solid var(--line-2);border-radius:999px;background:var(--panel);font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer}.shell .group-option.sel{background:var(--red);border-color:var(--red);color:#fff}.shell .auth-card .field .opt{font-weight:400;color:var(--muted);font-size:11.5px}.shell .auth-card .card-note{margin:0 0 16px;font-size:13px;color:var(--ink-2);line-height:1.6}.shell .auth-card .card-wait{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 0 6px}.shell .auth-card .card-wait .card-note{margin:0}.shell .code-callout{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;margin-bottom:14px;border:1px solid var(--line-2);border-radius:12px;background:var(--band)}.shell .code-callout .code-label{font-size:11.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.shell .session-code.big{font-size:24px;letter-spacing:.14em}.shell .code-callout .mini{margin-left:auto;height:30px;padding:0 12px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel);color:var(--ink-2);cursor:pointer;font-size:12px}.shell .code-callout .mini:hover{border-color:var(--red);color:var(--red)}.shell .name-row{display:flex;gap:12px}.shell .name-row .field{flex:1}.shell .auth-card .opt-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0 14px;margin:0;cursor:pointer;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0}.shell .auth-card .opt-row b{font-weight:600}.shell .auth-card .opt-row em{display:block;margin-top:2px;font-style:normal;font-size:12px;font-weight:400;color:var(--muted);line-height:1.4}.shell .auth-card .switch{appearance:none;width:32px;height:19px;border-radius:999px;background:var(--line-2);position:relative;cursor:pointer;flex-shrink:0;transition:background .15s}.shell .auth-card .switch:after{content:"";position:absolute;top:2.5px;left:2.5px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .15s}.shell .auth-card .switch:checked{background:var(--red)}.shell .auth-card .switch:checked:after{transform:translate(13px)}.shell .auth-card .spinner.dark{width:22px;height:22px;border-width:3px;border-color:#17181a26;border-top-color:var(--ink-2);border-style:solid;border-radius:50%;animation:ed-spin .7s linear infinite}.shell .actions .action-note{align-self:center;font-size:12.5px;color:var(--muted)}.shell .scen-card{position:relative}.shell .card-tools{position:absolute;top:14px;right:14px;display:flex;gap:6px;z-index:12}.shell .card-tool{position:relative}.shell .tool-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:0;padding:0;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--line-2);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.shell .tool-btn:hover{color:var(--ink-2);border-color:var(--line-2)}.shell .tool-btn.on{background:var(--ink);border-color:var(--ink);color:#fff}.shell .tool-btn svg{width:15px;height:15px}.shell .tool-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:min(310px,78vw);padding:12px 12px 13px;background:var(--panel);border:1px solid var(--line-2);border-radius:12px;box-shadow:0 24px 56px -24px #1d1b1973;text-align:left;cursor:default}.shell .tool-pop[hidden]{display:none}.shell .pop-head{font-family:var(--mono);font-size:10px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.shell .pop-note{font-size:12px;color:var(--ink-2);line-height:1.5;margin-bottom:9px}.shell .link-row{display:flex;gap:6px;align-items:center;margin-bottom:8px}.shell .link-row .input{flex:1;height:34px;font-size:12px;font-family:var(--mono);padding:0 9px;min-width:0}.shell .link-row .mini{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:8px;background:var(--panel);color:var(--ink-2);cursor:pointer}.shell .link-row .mini:hover{border-color:var(--red);color:var(--red)}.shell .link-row .mini.done{border-color:var(--red);background:var(--red);color:#fff}.shell .link-row .mini svg{width:15px;height:15px}.shell .tool-pop .input{margin-bottom:8px}.shell .pop-row{display:flex;gap:6px}.shell .pop-act{height:32px;padding:0 12px;font-size:12.5px;font-weight:600;border:1px solid var(--line-2);border-radius:8px;background:var(--panel);color:var(--ink-2);cursor:pointer}.shell .pop-act:hover{border-color:var(--red);color:var(--red)}.shell .pop-act.primary{background:var(--red);border-color:var(--red);color:#fff}.shell .pop-act.danger{color:var(--red)}.shell .pop-act:disabled{opacity:.5;cursor:default}.shell .sessions-head{font-family:var(--mono);font-size:10.5px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.shell .session-row.is-live{border-color:var(--red)}.shell .session-info b{display:flex;align-items:center;gap:8px}.shell .session-ended{font-size:12.5px;color:var(--muted)}.shell .scen-card.is-live{border-color:var(--red)}.shell .tag.live{display:inline-flex;align-items:center;gap:5px;background:var(--red);border-color:var(--red);color:#fff}.shell .tag.live .live-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{50%{opacity:.35}}.shell .live-strip{margin:18px 0 20px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--ink-2)}.shell .scen-card .actions .btn.danger{color:var(--red)}.shell .btn.confirm{background:var(--red);border-color:var(--red);color:#fff}.shell .auth-card .hint-pill{display:block;width:100%;margin:0 0 16px;padding:8px 12px;border-radius:999px;background:var(--band);color:var(--ink-2);font-size:12.5px;text-align:center}.editor-shell .swatches{display:flex;flex-wrap:wrap;gap:8px}.editor-shell .swatch{width:30px;height:30px;border-radius:8px;cursor:pointer;border:1px solid var(--line-2);padding:0}.editor-shell .swatch:hover{transform:scale(1.06)}.editor-shell .swatch.sel{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--ink)}.editor-shell .leave-modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#1d1b1973;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.editor-shell .leave-modal[hidden]{display:none}.editor-shell .leave-card{width:min(430px,90vw);padding:24px 24px 20px;background:var(--panel);border-radius:16px;box-shadow:0 40px 90px -30px #00000073}.editor-shell .leave-card h3{font-size:17px;font-weight:680;margin-bottom:8px}.editor-shell .leave-card p{font-size:13.5px;color:var(--ink-2);line-height:1.6}.editor-shell .leave-actions{display:flex;flex-direction:column;gap:8px;margin-top:18px}.editor-shell .leave-actions .btn{width:100%}.editor-shell .leave-actions .danger{color:var(--red)}.shell :where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--red) 36%,transparent);outline-offset:3px}.landing-shell .footer-links{display:flex;gap:18px}.price-equivalent{min-height:20px;margin:-8px 0 14px;color:var(--muted);font-size:14px}.landing-shell footer a{color:#ffffffb8;text-decoration:none}.landing-shell footer a:hover{color:#fff;text-decoration:underline}.landing-shell .product-preview{padding:18px;overflow:hidden}.landing-shell .product-preview .preview-window{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid var(--line-2);border-radius:10px;background:#fff;box-shadow:0 14px 32px -26px #1d1b1973;padding:14px}.landing-shell .preview-label{font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.landing-shell .preview-search{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;height:34px;padding:0 10px;border:1px solid var(--line-2);border-radius:7px;font-size:10px;color:var(--ink-2);background:#fff}.landing-shell .preview-search b{color:var(--red);font-size:15px}.landing-shell .preview-map-lines{position:absolute;inset:58px 0 0;background:#eeece8}.landing-shell .preview-map-lines i{position:absolute;display:block;height:2px;width:130%;background:#fff;transform:rotate(-20deg)}.landing-shell .preview-map-lines i:nth-child(1){top:20%;left:-15%}.landing-shell .preview-map-lines i:nth-child(2){top:48%;left:-12%;transform:rotate(14deg)}.landing-shell .preview-map-lines i:nth-child(3){top:66%;left:-8%;transform:rotate(-4deg)}.landing-shell .preview-map-lines i:nth-child(4){top:15%;left:8%;width:2px;height:110%;transform:rotate(22deg)}.landing-shell .preview-pin{position:absolute;z-index:2;left:58%;top:62%;width:14px;height:14px;border:4px solid var(--red);border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#fff}.landing-shell .build-preview .preview-window{background:#faf9f7}.landing-shell .build-preview .scene-preview-window{padding:0;background:#182136}.landing-shell .scene-preview-window img{width:100%;height:100%;display:block;object-fit:cover;object-position:60% 50%}.landing-shell .scene-preview-label{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid rgba(255,255,255,.68);border-radius:6px;background:#ffffffe6;box-shadow:0 8px 20px #11182724;color:var(--ink);font-size:8.5px;font-weight:750;letter-spacing:.02em;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.landing-shell .scene-preview-label i{width:7px;height:7px;border-radius:50%;background:var(--red)}.landing-shell .scene-preview-label span{color:var(--muted);font-weight:600}body.capture-hero{overflow:hidden}body.capture-hero .landing-shell .nav,body.capture-hero .landing-shell .hero-copy,body.capture-hero .landing-shell .built-for,body.capture-hero .landing-shell .hero-map-fade{display:none}body.capture-hero .landing-shell .hero{height:100vh;min-height:100vh;padding:0}body.capture-hero .landing-shell .hero-map{inset:0;width:100%;max-width:none}.admin-page{background:#f7f6f3}.admin-shell{min-height:100vh;color:var(--ink)}.admin-nav{height:76px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);background:#fffffff0;position:sticky;top:0;z-index:20}.admin-nav .logo{margin-right:2px}.admin-nav-label{font:700 11px/1 var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);border-left:1px solid var(--line);padding-left:18px}.admin-nav .btn{margin-left:auto}.admin-main{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:64px 0 96px}.admin-loading{min-height:55vh;display:grid;place-content:center;justify-items:center;gap:16px;color:var(--muted)}.admin-heading{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:64px}.admin-heading h1,.admin-denied h1{margin:8px 0 12px;font-size:clamp(48px,7vw,78px);letter-spacing:-.055em}.admin-heading>div:first-child>p:last-child{max-width:650px;color:var(--muted);font-size:18px;line-height:1.55}.admin-identity{min-width:230px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;gap:4px}.admin-identity span,.admin-identity em{color:var(--muted);font-size:12px;font-style:normal}.admin-identity b{overflow-wrap:anywhere}.admin-section{margin-top:42px}.admin-section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:18px}.admin-section-head h2{margin:5px 0 0;font-size:30px;letter-spacing:-.035em}.admin-section-head>p{color:var(--muted);max-width:460px;text-align:right;line-height:1.5}.admin-content-card{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr);background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.admin-scene-preview{min-height:340px;position:relative;background:#e7e8ea;overflow:hidden}.admin-scene-preview img{width:100%;height:100%;object-fit:cover;display:block}.admin-scene-preview span{position:absolute;left:18px;top:18px;padding:7px 10px;background:var(--ink);color:#fff;border-radius:4px;font:700 10px/1 var(--mono);letter-spacing:.14em}.admin-content-copy{padding:clamp(28px,4vw,48px)}.admin-content-title{display:flex;justify-content:space-between;align-items:start;gap:18px}.admin-content-title h3{font-size:28px;margin:0 0 8px;letter-spacing:-.03em}.admin-content-title p,.admin-note{color:var(--muted);line-height:1.55}.admin-live-dot{display:inline-flex;align-items:center;gap:6px;border:1px solid #b8ddc4;color:#287644;background:#effaf3;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:700}.admin-live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#2b9a53}.admin-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;padding:28px 0;margin:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-facts div{display:grid;gap:5px}.admin-facts dt{color:var(--muted);font-size:12px}.admin-facts dd{margin:0;font-weight:700;text-transform:capitalize}.admin-actions{display:flex;gap:10px}.admin-note{font-size:13px;margin:18px 0 0}.admin-checks{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-check{display:flex;align-items:center;gap:12px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:12px}.admin-check>span{width:10px;height:10px;border-radius:50%;background:#2b9a53;box-shadow:0 0 0 5px #e8f7ed}.admin-check.attention>span{background:var(--red);box-shadow:0 0 0 5px #fff0ed}.admin-check div{display:grid;gap:3px}.admin-check em{color:var(--muted);font-size:12px;font-style:normal}.admin-empty,.admin-denied{background:#fff;border:1px solid var(--line);border-radius:18px;padding:42px}.admin-denied{max-width:760px;margin:8vh auto;text-align:center}.admin-denied h1{font-size:clamp(36px,5vw,58px)}.admin-denied>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.6;margin:0 auto 28px;max-width:600px}.admin-lock{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:var(--red);color:#fff;font-size:26px;margin:0 auto 24px}.platform-camera-card{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--band)}.platform-camera-card p{margin:7px 0 12px;color:var(--muted);font-size:13px;line-height:1.45}.platform-camera-card span{display:block;margin-top:10px;color:#287644;font-size:12px;font-weight:700;text-align:center}@media(max-width:820px){.admin-main{width:min(100% - 28px,680px);padding-top:38px}.admin-heading,.admin-section-head{display:grid;gap:20px;align-items:start}.admin-section-head>p{text-align:left}.admin-identity{min-width:0}.admin-content-card{grid-template-columns:1fr}.admin-scene-preview{min-height:250px}.admin-checks{grid-template-columns:1fr 1fr}}@media(max-width:520px){.admin-nav{padding:0 16px}.admin-nav-label{display:none}.admin-nav .btn{padding-inline:12px}.admin-checks,.admin-facts{grid-template-columns:1fr}.admin-actions{display:grid}}.landing-shell .preview-live{font-size:10px;font-weight:700}.landing-shell .preview-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:5px}.landing-shell .preview-code{margin:14px 0 12px;font-size:9px;color:var(--muted)}.landing-shell .preview-code b{display:block;margin-top:4px;font-family:var(--mono);font-size:22px;letter-spacing:.12em;color:var(--ink)}.landing-shell .preview-groups{display:flex;gap:5px;flex-wrap:wrap}.landing-shell .preview-groups span{padding:4px 7px;border-radius:999px;background:var(--band);font-size:8px;color:var(--ink-2)}.landing-shell .preview-joined{margin-top:12px;font-size:8.5px;color:var(--muted)}.login-shell .password-wrap{position:relative}.login-shell .password-wrap .input{padding-right:58px}.login-shell .password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);cursor:pointer;padding:6px 7px;border-radius:6px;font-size:12px;font-weight:650;color:var(--ink-2)}.login-shell .password-toggle:hover{background:var(--band);color:var(--ink)}.login-shell .signup-terms{line-height:1.55}.login-shell .signup-terms a{color:var(--ink-2)}.login-shell .hint .linklike{margin-left:3px;color:var(--ink);text-decoration:underline;cursor:pointer}.legal-shell .legal-main{width:100%;max-width:760px;padding-top:76px;padding-bottom:96px}.legal-shell .legal-main h1{margin:14px 0 20px;font-family:var(--display);font-size:clamp(38px,6vw,62px);text-transform:uppercase}.legal-shell .legal-intro{font-size:18px;line-height:1.7;color:var(--ink-2)}.legal-shell .legal-main section{margin-top:44px;padding-top:26px;border-top:1px solid var(--line)}.legal-shell .legal-main section h2{font-size:19px}.legal-shell .legal-main section p{margin-top:8px;color:var(--ink-2);line-height:1.75}.legal-shell .legal-contact{margin-top:48px;padding:18px;border-radius:12px;background:var(--band)}.legal-shell .legal-contact a{color:var(--red)}.dashboard-shell .settings-layout{display:grid;grid-template-columns:220px minmax(0,720px);gap:38px;align-items:start}.dashboard-shell .settings-sidebar{position:sticky;top:22px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.dashboard-shell .settings-group-label{padding:12px 12px 5px;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.dashboard-shell .settings-nav-item{display:block;width:100%;min-height:40px;padding:8px 12px;border-radius:9px;text-align:left;font-size:14px;color:var(--ink-2);cursor:pointer}.dashboard-shell .settings-nav-item:hover{background:var(--band);color:var(--ink)}.dashboard-shell .settings-nav-item.active{background:var(--ink);color:#fff;font-weight:650}.dashboard-shell .settings-panels{min-width:0}.dashboard-shell .settings-panel{width:100%;padding:32px}.dashboard-shell .settings-panel h3{font-size:18px;text-transform:none;letter-spacing:-.01em}.dashboard-shell .settings-panel>p{font-size:15px;margin-bottom:28px}.dashboard-shell .usage-meter i span{background:var(--ink-2)}.dashboard-shell .billing-banner{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-shell .billing-banner>span{flex:1}.dashboard-shell .billing-banner-action{flex-shrink:0;height:34px;background:#fff}.dashboard-shell #create-scenario[hidden]{display:none!important}.dashboard-shell .scenario-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 180px;gap:10px;max-width:620px;margin-bottom:28px}.shell .tool-btn.share-access{width:auto;min-width:44px;height:34px;padding:0 11px;color:var(--ink-2);font-size:11.5px;font-weight:650}.shell .tool-btn.share-access.on{background:var(--band);border-color:var(--line-2);color:var(--ink)}.shell .tool-pop.access-pop{width:min(350px,84vw);padding:0;overflow:hidden}.shell .access-section{padding:15px}.shell .access-section+.access-section{border-top:1px solid var(--line)}.shell .card-more{position:relative;align-self:flex-start;margin-top:12px}.shell .card-more summary{min-height:36px;display:inline-flex;align-items:center;padding:0 10px;border-radius:8px;color:var(--ink-2);font-size:12.5px;font-weight:650;cursor:pointer;list-style:none}.shell .card-more summary::-webkit-details-marker{display:none}.shell .card-more summary:hover{background:var(--band);color:var(--ink)}.shell .more-menu{position:absolute;left:0;bottom:calc(100% + 6px);z-index:15;min-width:190px;display:flex;flex-direction:column;padding:6px;border:1px solid var(--line-2);border-radius:11px;background:var(--panel);box-shadow:0 18px 44px -22px #1d1b1966}.shell .more-menu .mng{width:100%;min-height:38px;padding:8px 10px;border-radius:7px;text-align:left;font-size:13px;font-weight:550;text-decoration:none;color:var(--ink)}.shell .more-menu .mng:hover{background:var(--band);text-decoration:none}.shell .more-menu .mng.danger{margin-left:0;color:var(--red)}.shell .session-section+.session-section{margin-top:38px}.shell .sessions-head{display:flex;align-items:center;justify-content:space-between}.shell .sessions-head b{color:var(--ink);font-family:var(--display);font-size:16px;letter-spacing:0;text-transform:none}.shell .session-meta{display:flex;gap:12px 22px;flex-wrap:wrap}.shell .session-meta>span{display:flex;flex-direction:column;gap:1px}.shell .session-meta small{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.shell .session-meta strong{font-size:12px;font-weight:600;color:var(--ink-2)}.shell .scenario-empty.compact{padding:16px 18px}.shell .entry-leader,.shell .entry-back{display:block;margin:16px auto 0;min-height:40px;padding:8px;cursor:pointer;color:var(--ink-2);font-size:12.5px;text-decoration:underline}.shell .entry-back{margin:0 0 18px}.editor-shell .field-soon,.editor-shell .soon-line{display:none}@media(max-width:900px){.dashboard-shell .settings-layout{grid-template-columns:1fr;gap:18px}.dashboard-shell .settings-sidebar{position:static;display:flex;gap:6px;overflow-x:auto;padding:6px;-webkit-overflow-scrolling:touch}.dashboard-shell .settings-group-label{display:none}.dashboard-shell .settings-nav-item{width:auto;min-width:max-content;text-align:center;padding:8px 14px}}@media(max-width:680px){.landing-shell .nav .signin-link{display:inline-flex}.landing-shell .nav .pricing-link{display:none}.landing-shell .nav .wrap{gap:12px}.landing-shell .nav .btn{padding:0 13px}.dashboard-shell .settings-panel{padding:22px}.dashboard-shell .scenario-toolbar{grid-template-columns:1fr}.dashboard-shell .billing-banner{align-items:flex-start;flex-direction:column}.dashboard-shell .billing-banner-action{width:100%}.shell .card-tools{top:12px;right:12px}.shell .scen-card .tag-row{padding-right:104px}.shell .scen-card .actions{flex-direction:column}.shell .scen-card .actions .btn{width:100%;min-height:44px}.shell .more-menu{position:fixed;left:16px;right:16px;bottom:16px;min-width:0}}
