:root{--font-sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Consolas, monospace;--radius-control:4px;--control-height:32px;--control-padding:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--text-small:11px;--text-control:12px;--cad-bg:#0a0a10;--cad-panel:#17171f;--cad-surface:#101017;--cad-control:#1a1a23;--cad-hover:#22222d;--cad-border:#262630;--cad-border-strong:#41414e;--cad-text:#f1f0f7;--cad-muted:#aaa8b8;--cad-subtle:#93909f;--cad-disabled:#85818f;--cad-accent:#5fa8f7;--cad-accent-hover:#82bcfa;--cad-selected:#19222c;--cad-success:#38c99b;--cad-warning:#d7aa6e;--cad-warning-bg:#342c23;--cad-warning-border:#70583a;--cad-danger:#e39486;--cad-danger-bg:#392928;--cad-danger-border:#78514a;--cad-wall:#adaab8;--cad-door:#c7a66f;--cad-spawn:#1c1c26;--studio-primary:#7969d8;--studio-primary-hover:#8a7ae5;--cad-shelter:#b09ae3;--cad-spawn-border:#686575;--cad-obstacle:#25221d;--cad-obstacle-border:#a18c73;--cad-obstacle-text:#d7c2a6;--cad-header:#0b0b11;--cad-rail:#17171fe8;--cad-inspector:#17171ff5;--cad-rail-border:#ffffff0d;--studio-primary-text:#fff;--cad-grid:#252530;--cad-grid-major:#343442;--canvas-blueprint:0;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;accent-color:var(--cad-accent);scrollbar-color:var(--cad-border-strong) var(--cad-surface)}canvas{--cad-bg:#0c1830;--cad-surface:#102844;--cad-muted:#abc4db;--cad-accent:#8ac6ff;--cad-success:#a5e2cb;--cad-danger:#ffb7aa;--cad-wall:#c4def2;--cad-door:#e4bd75;--cad-spawn:#173656;--cad-spawn-border:#668cac;--cad-shelter:#c9b4f3;--cad-obstacle:#1a3b5b;--cad-obstacle-border:#9ab5cf;--cad-obstacle-text:#ccdfef;--cad-grid:#193755;--cad-grid-major:#244c70;--canvas-blueprint:1;background:var(--cad-surface)}.analytics-grid .recharts-cartesian-axis-tick-value{fill:var(--cad-muted)}.analytics-grid .recharts-cartesian-grid line{stroke:var(--cad-border)}.analytics-grid .recharts-bar-rectangle path{fill:var(--cad-wall)}.analytics-grid .recharts-default-tooltip{border-radius:var(--radius-control);color:var(--cad-text);font-size:12px;background-color:var(--cad-panel)!important;border-color:var(--cad-border-strong)!important}.analytics-grid .recharts-tooltip-item{color:var(--cad-success)!important}.analytics-grid .recharts-tooltip-cursor{fill:var(--cad-hover)}:root{font-family:var(--font-sans);color:var(--cad-text);background:var(--cad-bg);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;color:var(--cad-text);border:1px solid var(--cad-border);border-radius:var(--radius-control);background:0 0;padding:7px 12px;font-size:13px;font-weight:400;transition:background-color .14s,border-color .14s,color .14s}button:hover:not(:disabled){background:var(--cad-hover)}button:disabled{opacity:.55;cursor:not-allowed}button.primary{background:var(--cad-control);border-color:var(--cad-border-strong);color:var(--cad-text)}button.primary:hover:not(:disabled){background:var(--cad-hover);border-color:var(--cad-text)}:focus-visible{outline:2px solid var(--cad-accent);outline-offset:2px}h1,h2,h3{font-family:inherit}h1{letter-spacing:-1.2px;margin:0 0 8px;font-size:clamp(25px,3vw,36px);line-height:1.2}.page-heading p:last-child{color:var(--cad-muted);margin:0;font-size:14px}h2{letter-spacing:-.4px;margin:0;font-size:17px}h3{margin:0 0 10px;font-size:15px}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){button{transition:none}}html,body,#root{height:100%}.workspace-app{background:var(--cad-bg);height:100dvh;overflow:hidden}.welcome-view{height:100%;overflow-y:auto}.studio-shell{flex-direction:column;height:100%;display:flex}.studio-header{background:var(--cad-header);z-index:30;flex:0 0 64px;justify-content:space-between;align-items:center;gap:28px;height:64px;padding:0 28px;display:flex}.studio-brand{letter-spacing:-.6px;white-space:nowrap;align-items:center;gap:9px;font-size:20px;font-weight:500;display:inline-flex}.studio-brand>span:last-child{text-transform:uppercase;letter-spacing:2px;color:var(--cad-muted);margin-left:6px;font-size:10px;font-weight:400}.studio-symbol{color:var(--cad-text);margin-right:1px;font-size:25px;font-weight:300}.studio-nav{align-items:center;gap:30px;display:flex}.studio-nav button{color:var(--cad-muted);background:0 0;border:0;border-radius:0;padding:21px 0;font-size:12px;position:relative}.studio-nav button:hover:not(:disabled){color:var(--cad-text);background:0 0}.studio-nav button[aria-selected=true]{color:var(--cad-text)}.studio-nav button[aria-selected=true]:after{content:"";background:var(--cad-shelter);height:1px;position:absolute;bottom:12px;left:0;right:0}.studio-header-actions{align-items:center;gap:25px;display:flex}.run-action,.entry-action{background:var(--studio-primary);color:var(--studio-primary-text);border:0;border-radius:5px;justify-content:space-between;align-items:center;gap:24px;padding:11px 17px;font-size:12px;font-weight:500;display:inline-flex}.run-action:hover:not(:disabled),.entry-action:hover:not(:disabled){background:var(--studio-primary-hover)}.entry-action{min-width:160px;padding:14px 20px}.run-action:disabled{opacity:.65}.connection-dot{background:var(--cad-warning);border-radius:50%;width:4px;height:4px;display:inline-block}.connection-dot.online{background:var(--cad-success)}.settings-values{margin:0}.settings-content fieldset{border:1px solid var(--cad-border);margin:12px 0;padding:10px}.settings-content fieldset label{justify-content:space-between;align-items:center;gap:12px;margin:8px 0;display:flex}.settings-content fieldset input{width:76px}.settings-values>div{justify-content:space-between;gap:16px;padding:7px 0;display:flex}.settings-values dt{color:var(--cad-muted)}.settings-values dd{color:var(--cad-text);margin:0}.settings-connection{border-top:1px solid var(--cad-border);min-height:42px;color:var(--cad-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.settings-connection>span{align-items:center;gap:8px;display:flex}.settings-layout,.settings-warning{color:var(--cad-muted);font-size:var(--text-small);margin:8px 0 0;line-height:1.6}.settings-warning{color:var(--cad-warning)}.studio-main{flex:1;min-height:0;position:relative}.layout-comparison{margin-top:24px}.studio-viewport{position:absolute;inset:0;overflow:hidden}.studio-viewport:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(at 40% 10%,#6c59bd08,#0000 60%);position:absolute;inset:0}.studio-notice{background:var(--cad-panel);border:1px solid var(--cad-border);z-index:45;border-radius:5px;align-items:center;gap:18px;max-width:min(440px,100% - 48px);padding:12px 16px;font-size:11px;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0006}.studio-notice button{color:var(--cad-muted);border:0;padding:0 4px;font-size:17px}.analytics-workspace{background:radial-gradient(ellipse at 75% 0, #6c59bd0a, transparent 50%), var(--cad-bg);padding:54px max(32px,50% - 620px);position:absolute;inset:0;overflow-y:auto}.analysis-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:42px;display:flex}.analysis-heading h2{letter-spacing:-1.8px;margin-top:18px;font-size:clamp(34px,4vw,56px);font-weight:400;line-height:1.12}.analysis-heading h2 span{color:var(--cad-muted)}.control-buttons{flex-wrap:wrap;gap:8px;display:flex}.control-buttons button{font-size:11px}.preview-control{color:var(--cad-muted);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:30px;font-size:11px;display:flex}.preview-control label{cursor:pointer;align-items:center;gap:8px;display:flex}.preview-control>span{font-size:10px}.panel{background:var(--cad-panel);border:1px solid var(--cad-border);border-radius:var(--radius-control);min-width:0;padding:20px}.panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.eyebrow{color:var(--cad-muted);letter-spacing:1.2px;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:400}.badge{color:var(--cad-muted);white-space:nowrap;font-size:10px;line-height:1.5}.badge.mock{color:var(--cad-warning)}.canvas-wrap{border:1px solid var(--cad-border);border-radius:var(--radius-control);background:var(--cad-surface);overflow:hidden}canvas{width:100%;height:auto;display:block}.canvas-caption{border-top:1px solid var(--cad-border);color:var(--cad-muted);font-size:10px;font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;gap:10px;padding:8px 12px;display:flex}.note{color:var(--cad-muted);margin:10px 0 0;font-size:11px;line-height:1.6}.empty-state{text-align:center;min-height:220px;color:var(--cad-muted);flex-direction:column;justify-content:center;align-items:center;padding:24px 16px;display:flex}.empty-state h3{font-weight:400}.empty-state p{max-width:320px;margin:0;font-size:12px;line-height:1.7}.empty-state.compact{min-height:200px}.analytics-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.metrics{flex-wrap:wrap;gap:28px;margin:24px 0 8px;display:flex}.metrics div{gap:var(--space-2);flex-direction:column;display:flex}.metrics span{color:var(--cad-subtle);font-size:11px}.metrics strong{font-size:21px;font-weight:500}.chart{width:100%;height:180px;font-size:11px}.analytics-workspace .panel{border:0;border-top:1px solid var(--cad-border);background:0 0;border-radius:0;padding:24px 0}.analytics-workspace .analytics-grid{gap:50px}.analytics-workspace h2,.analytics-workspace h3{font-weight:400}@media (width<=1000px){.studio-header{gap:20px;padding:0 20px}.studio-nav{gap:22px}.studio-header-actions{gap:18px}}@media (width<=760px){.studio-header{flex-wrap:wrap;flex-basis:auto;gap:6px 20px;height:auto;min-height:64px;padding:14px 16px 0}.studio-header>nav{order:3;width:100%}.studio-nav{justify-content:center;gap:clamp(16px,5vw,36px)}.studio-nav button{padding:15px 0}.studio-nav button[aria-selected=true]:after{bottom:6px}.studio-brand{gap:6px;font-size:17px}.studio-brand>span:last-child{letter-spacing:1px;font-size:8px}.studio-header-actions{gap:14px;margin-left:auto}.run-action{gap:10px;padding:9px 12px;font-size:11px}.analytics-workspace{padding:30px 24px}.analytics-grid{grid-template-columns:minmax(0,1fr)}.analytics-workspace .analytics-grid{gap:24px}.analysis-heading{margin-bottom:30px}.studio-notice{top:124px}}@media (width<=480px){.studio-header{gap:6px 8px;padding:12px 12px 0}.studio-brand>span:last-child{display:none}.studio-header-actions{gap:4px}.app-settings>.studio-control{padding-inline:6px}}.halloween-soundtrack{background:var(--cad-panel);color:var(--cad-text);border-bottom:1px solid var(--cad-border);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 20px;font-size:13px;display:flex}.halloween-soundtrack audio{width:min(300px,100%);height:34px}.halloween-soundtrack small{color:var(--cad-muted)}.studio-control{justify-content:center;align-items:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--control-padding);border-radius:var(--radius-control);color:var(--cad-muted);font-family:var(--font-sans);font-size:var(--text-control);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;font-weight:400;line-height:1;text-decoration:none;display:inline-flex}.studio-control:hover:not(:disabled){color:var(--cad-text);background:var(--cad-hover)}.studio-control:active:not(:disabled),.studio-control[aria-expanded=true],.studio-control[aria-pressed=true]{color:var(--cad-text);background:var(--cad-control)}.studio-control:focus-visible{outline:2px solid var(--cad-accent);outline-offset:2px}.studio-control:disabled{color:var(--cad-disabled);opacity:1;cursor:not-allowed;background:0 0}.studio-control--icon{width:var(--control-height);padding:0}.studio-control-group{align-items:center;gap:2px;display:inline-flex}.control-separator{background:var(--cad-border);width:1px;height:16px;margin:0 4px}.control-caret{color:var(--cad-muted);font-size:12px}.studio-popover{position:relative}.studio-popover-panel{--popover-padding:14px;width:248px;max-width:calc(100vw - 24px);max-height:min(500px,100dvh - 140px);padding:var(--popover-padding);background:var(--cad-panel);border:1px solid var(--cad-border);border-radius:var(--radius-control);z-index:60;font-size:var(--text-control);position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 12px 32px #0006}.control-popover-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.control-popover-heading h3{font-size:var(--text-control);margin:0;font-weight:500}.file-actions{gap:2px;display:grid}.file-actions .studio-control{justify-content:flex-start;width:100%}.file-actions hr{border:0;border-top:1px solid var(--cad-border);width:100%;margin:5px 0}@media (prefers-reduced-motion:no-preference){.studio-popover-panel{animation:.12s ease-out control-reveal}@keyframes control-reveal{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}}.note>summary,.shape-note>summary{cursor:pointer;width:fit-content}.note>summary:hover,.shape-note>summary:hover{color:var(--cad-text)}[data-halloween=true]{--cad-bg:#100e15;--cad-panel:#1c1724;--cad-surface:#17131e;--cad-control:#251d2c;--cad-hover:#352338;--cad-accent:#f6a15f;--cad-accent-hover:#ffbb82;--cad-selected:#35243b;--studio-primary:#bc662f;--studio-primary-hover:#d17a3e;--studio-primary-text:#fff8f1}[data-halloween=true] canvas,canvas[data-halloween=true]{--cad-bg:#101424;--cad-surface:#142338;--cad-accent:#f6b276;--cad-wall:#d6d3e7;--cad-grid:#253045;--cad-grid-major:#3d3a58}.template-card[data-halloween=true] h3,.pursuit-controls>strong{color:#f6b276}.template-card[data-halloween=true]{border-color:#795341}.pursuit-controls{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.pursuit-controls p,.pursuit-report p{color:var(--cad-muted);font-size:12px;line-height:1.5}.pursuit-settings-fields{gap:12px;display:grid}.pursuit-report{max-width:680px;padding:24px 0}.pursuit-legend{color:var(--cad-muted);font-size:11px}.pursuit-report .playback-readout{margin-block:24px}.recording-export-dialog{border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);background:var(--cad-panel);width:min(400px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--cad-text);padding:24px;overflow-y:auto}.recording-export-dialog::backdrop{background:#0009}.recording-export-dialog form{gap:16px;display:grid}.recording-export-dialog h2{font-size:17px;font-weight:500}.recording-export-dialog p{color:var(--cad-muted);margin:0;font-size:12px;line-height:1.5}.recording-export-dialog fieldset{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.recording-export-dialog label{gap:8px;font-size:12px;display:grid}.recording-export-dialog select{width:100%;color:var(--cad-text);background:var(--cad-bg);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);padding:8px}.recording-export-dialog .export-check{align-items:center;display:flex}.recording-export-dialog [role=alert]{color:var(--cad-warning)}.export-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.export-dialog-actions .export-primary{background:var(--studio-primary);color:var(--studio-primary-text)}.export-dialog-actions .export-primary:hover:not(:disabled){background:var(--studio-primary-hover)}.export-progress{font:11px var(--font-mono);color:var(--cad-muted);gap:8px;display:grid}.export-progress progress{width:100%;accent-color:var(--studio-primary)}.simulation-panel{flex-direction:column;height:100%;display:flex;position:relative}.simulation-panel .playback-source{z-index:6;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px 4px;display:flex}.playback-source-info{flex-wrap:wrap;align-items:center;gap:8px 18px;min-width:0;display:flex}.agent-chat{z-index:7;background:var(--cad-inspector);border:1px solid var(--cad-border);border-radius:var(--radius-control);flex-direction:column;width:min(320px,100% - 24px);max-height:min(60%,340px);padding:12px;display:flex;position:absolute;bottom:12px;left:12px;box-shadow:0 8px 24px #0004}.agent-chat .control-popover-heading{flex-shrink:0}.agent-chat ol{min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.agent-chat li{border-left:2px solid var(--studio-primary);margin-top:8px;padding:8px 0 8px 10px}.agent-chat time{color:var(--cad-muted);font:10px var(--font-mono)}.agent-chat li p{font-size:var(--text-small);margin:4px 0 0;line-height:1.6}.agent-chat li .chat-message-note{color:var(--cad-muted);font-size:10px}.live-agent-chat{justify-content:flex-end;margin-top:10px;display:flex;position:relative}.live-run-controls{flex-wrap:wrap;gap:8px;display:flex}.live-cancel-button{color:var(--cad-danger)}.live-chat-notification{min-width:0;max-width:100%;color:var(--cad-text);border-color:var(--cad-border);align-items:center;gap:8px;display:flex}.live-chat-preview{text-overflow:ellipsis;white-space:nowrap;max-width:min(32vw,300px);color:var(--cad-muted);font-size:var(--text-small);overflow:hidden}.live-chat-count{background:var(--cad-accent);color:var(--cad-surface);font-size:var(--text-small);font-variant-numeric:tabular-nums;border-radius:12px;padding:2px 6px}.live-agent-chat .agent-chat{width:min(380px,100vw - 48px);max-height:min(50dvh,360px);bottom:calc(100% + 8px);left:auto;right:0}.playback-preview-toggle{color:var(--cad-muted);font-size:var(--text-small);align-items:center;gap:7px;display:flex}.playback-synthetic-note{font-size:var(--text-small);color:var(--cad-warning);flex-shrink:0;margin:0;padding:4px 24px 8px;line-height:1.5}.playback-workspace{flex:1;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;position:relative}.playback-workspace.has-analytics{grid-template-columns:minmax(0,1fr) 280px}.playback-stage{display:contents}.simulation-panel .playback-canvas-wrap{background:0 0;border:0;border-radius:0;grid-area:1/1;min-width:0;min-height:0;position:relative}.playback-canvas-wrap canvas{width:100%;height:100%}.simulation-panel .canvas-caption{display:none}.playback-dock{background:var(--cad-surface);border-top:1px solid var(--cad-border);z-index:6;grid-area:2/1;min-width:0;padding:12px 24px;container-type:inline-size}.playback-transport{grid-template-columns:auto minmax(160px,1fr);align-items:center;gap:18px;display:grid}.playback-controls{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.playback-controls .play-button{color:var(--cad-text);border-color:var(--cad-border-strong)}.playback-controls .play-button:disabled{color:var(--cad-disabled);border-color:var(--cad-border)}.playback-speed{font-size:var(--text-small);color:var(--cad-muted);align-items:center;gap:8px;margin-left:10px;display:flex}.playback-speed select{border-color:var(--cad-border);background:var(--cad-control);color:var(--cad-text);padding-right:4px}.playback-timeline{min-width:0;font-size:var(--text-small);color:var(--cad-muted);align-items:center;gap:12px;display:flex}.playback-timeline label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.playback-timeline input{width:100%;min-width:0;min-height:24px;accent-color:var(--cad-accent);flex:1;margin:0}.playback-timeline input:disabled{opacity:.65}.playback-timeline>span{white-space:nowrap;font-family:var(--font-mono)}.playback-bottomline{justify-content:space-between;align-items:center;gap:10px 18px;margin-top:8px;display:flex}.playback-readout{flex-wrap:wrap;gap:6px 20px;margin:0;display:flex}.playback-readout>div{align-items:baseline;gap:7px;display:flex}.playback-readout dt{font-size:var(--text-small);color:var(--cad-muted)}.playback-readout dd{font-size:var(--text-small);font-family:var(--font-mono);margin:0}.playback-duration{color:var(--cad-muted)}.simulation-details{flex-shrink:0;position:relative}.simulation-details>summary{list-style:none}.simulation-details>summary::-webkit-details-marker{display:none}.simulation-details-popover{z-index:20;background:var(--cad-panel);border:1px solid var(--cad-border);border-radius:var(--radius-control);width:min(320px,100vw - 32px);max-height:min(60dvh,400px);padding:16px;position:absolute;bottom:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 12px 36px #0006}.simulation-details-popover h4{font-size:var(--text-control);color:var(--cad-text);margin:0 0 8px;font-weight:500}.simulation-details-popover .note{font-size:var(--text-small);color:var(--cad-muted);margin:8px 0 0;line-height:1.6}.simulation-detail-section+.simulation-detail-section,.window-readout+.simulation-detail-section{margin-top:16px}.playback-outcome{font-size:var(--text-control);margin:14px 0;line-height:1.7}.playback-analytics-link{margin-top:8px}.playback-help .note,.playback-error{font-size:var(--text-small);margin:6px 0 0;line-height:1.5}.playback-error{color:var(--cad-danger)}.simulation-summary{background:var(--cad-surface);border-left:1px solid var(--cad-border);z-index:8;grid-area:1/2/3;min-width:0;min-height:0;padding:16px 20px;overflow-y:auto}.summary-source{color:var(--cad-muted);font-size:var(--text-small);margin:0 0 22px}.summary-source.is-synthetic,.summary-warning{color:var(--cad-warning)}.summary-playhead{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.summary-playhead span{color:var(--cad-muted);font-size:var(--text-small)}.summary-playhead strong{font:400 24px var(--font-mono);letter-spacing:-1px}.simulation-summary h4{font-size:var(--text-small);margin:0 0 8px;font-weight:500}.summary-values{margin:0}.summary-values>div{justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;display:flex}.summary-values dt{font-size:var(--text-small);color:var(--cad-muted)}.summary-values dd{font-size:var(--text-control);font-variant-numeric:tabular-nums;text-align:right;margin:0}.summary-note,.summary-empty{font-size:var(--text-small);color:var(--cad-muted);line-height:1.65}.summary-warning{color:var(--cad-warning)}.summary-report-link{border-color:var(--cad-border);justify-content:space-between;width:100%;margin-top:12px}@container (width<=900px){.playback-transport{grid-template-columns:minmax(0,1fr);gap:8px}.playback-bottomline{align-items:flex-start}.playback-readout{gap:6px 14px}}@media (width<=1100px){.playback-workspace.has-analytics{grid-template-columns:minmax(0,1fr)}.simulation-summary{border:1px solid var(--cad-border);border-radius:var(--radius-control);grid-area:1/1;place-self:start end;width:min(280px,100% - 24px);max-height:calc(100% - 16px);margin:8px 12px;position:relative;box-shadow:0 12px 36px #0006}}@media (width<=600px){.simulation-panel .playback-source{gap:8px;padding:8px 12px 4px}.playback-source-info{gap:4px}.playback-preview-toggle{font-size:10px}.playback-synthetic-note{padding:4px 12px 8px;font-size:10px}.playback-dock{padding:10px 12px}.playback-speed{gap:4px;margin-left:6px}.playback-bottomline{flex-wrap:wrap;gap:6px}.playback-readout{gap:6px 12px}.playback-duration{display:none}.simulation-details{margin-left:auto}.summary-playhead,.summary-source{margin-bottom:16px}}.window-readout{font-size:var(--text-small);color:var(--cad-muted)}.window-readout .playback-readout{gap:12px;margin-top:8px;display:grid}.window-readout .playback-readout>div{display:block}.window-readout dd{margin-top:4px;line-height:1.6}.dxf-dialog{background:var(--cad-panel);width:min(1060px,94vw);max-height:90vh;color:var(--cad-text);border:1px solid var(--cad-border-strong);border-radius:12px;padding:24px;overflow-y:auto}.dxf-dialog::backdrop{background:#000000b3}.dxf-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dxf-dialog p,.dxf-dialog li{color:var(--cad-muted);font-size:13px;line-height:1.7}.dxf-filename{overflow-wrap:anywhere;margin-left:12px;font-size:13px}.dxf-settings{grid-template-columns:1fr 1fr;gap:16px;margin:20px 0;display:grid}.dxf-dialog fieldset{border:1px solid var(--cad-border);border-radius:6px;min-width:0;padding:14px}.dxf-dialog label{flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;font-size:13px;display:flex}.dxf-dialog input[type=number],.dxf-dialog select{color:var(--cad-text);background:var(--cad-control);border:1px solid var(--cad-border-strong);border-radius:4px;max-width:180px;padding:7px}.dxf-preview{background:var(--cad-bg);border:1px solid var(--cad-border);width:100%;height:380px;display:block}.dxf-wall-list,.dxf-opening-list{max-height:250px;overflow:auto}.dxf-dialog details{border:1px solid var(--cad-border);margin:16px 0;padding:12px}.dxf-dialog .dxf-error{color:var(--cad-danger)}@media (width<=650px){.dxf-settings{grid-template-columns:1fr}.dxf-dialog{padding:16px}}.dxf-guess{color:var(--cad-muted);flex-basis:100%;padding-left:4px;font-size:12px;line-height:1.6;display:block}.scenario-dialog{width:min(620px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--cad-text);background:var(--cad-surface);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);margin:auto;padding:0;position:fixed;inset:0;overflow:hidden;box-shadow:0 24px 80px #0008}.scenario-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#050509b8}.scenario-dialog[open],.scenario-dialog form{flex-direction:column;display:flex}.scenario-dialog form{max-height:inherit;min-height:0}.scenario-dialog-heading,.scenario-dialog-actions{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;display:flex}.scenario-dialog-heading{border-bottom:1px solid var(--cad-border)}.scenario-dialog-heading h2{margin:4px 0 0;font-size:20px;font-weight:500}.scenario-dialog-heading .eyebrow{color:var(--cad-muted);margin:0}.scenario-dialog-body{min-height:0;padding:20px 24px;overflow-y:auto}.scenario-dialog-hint,.scenario-dialog .note{color:var(--cad-muted);margin:0;font-size:11px;line-height:1.6}.scenario-dialog-hint{margin-bottom:20px}.scenario-dialog .disaster-controls{gap:20px;display:grid}.scenario-dialog .scenario-section{border-top:1px solid var(--cad-border);min-width:0;padding-top:18px}.scenario-dialog .scenario-section h3,.scenario-dialog .disaster-dynamics summary{margin:0 0 12px;font-size:12px;font-weight:500}.scenario-dialog .scenario-picker{border:0;min-width:0;margin:0;padding:0}.scenario-dialog .scenario-picker legend{padding:0 0 10px;font-size:12px;font-weight:500}.scenario-dialog .scenario-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.scenario-dialog .scenario-option{cursor:pointer;--scenario-accent:#7cb7f1;display:block;position:relative}.scenario-dialog .scenario-option[data-scenario=fire]{--scenario-accent:#f0a56d}.scenario-dialog .scenario-option[data-scenario=gas_leak]{--scenario-accent:#b3c987}.scenario-dialog .scenario-option[data-scenario=tornado]{--scenario-accent:#b9a1e6}.scenario-dialog .scenario-option input{opacity:0;width:1px;height:1px;position:absolute}.scenario-dialog .scenario-choice{border:1px solid var(--cad-border);border-radius:var(--radius-control);min-height:40px;color:var(--cad-muted);justify-content:center;align-items:center;gap:6px;padding:8px;font-size:11px;transition:background .14s,color .14s;display:flex}.scenario-dialog .scenario-choice svg{width:16px;height:16px;color:var(--scenario-accent);flex-shrink:0}.scenario-dialog .scenario-option:hover .scenario-choice{color:var(--cad-text);background:var(--cad-hover)}.scenario-dialog .scenario-option input:checked+.scenario-choice{color:var(--cad-text);background:var(--cad-selected);border-color:var(--scenario-accent)}.scenario-dialog .scenario-option input:focus-visible+.scenario-choice{outline:2px solid var(--scenario-accent);outline-offset:2px}.scenario-dialog .scenario-field-grid,.scenario-dialog .disaster-parameters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.scenario-dialog .disaster-parameters{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}.scenario-dialog label{color:var(--cad-muted);gap:7px;font-size:11px;display:grid}.scenario-dialog input[type=number]{width:100%;min-width:0;color:var(--cad-text);background:var(--cad-bg);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);padding:8px 10px}.scenario-dialog .disaster-enable{align-items:center;gap:8px;display:flex}.scenario-dialog .disaster-dynamics summary{cursor:pointer}.scenario-dialog .scenario-place{border-color:var(--cad-border-strong);background:var(--cad-control);margin:12px 0 8px}.scenario-dialog .pursuit-controls{gap:14px;display:grid}.scenario-dialog .pursuit-settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.scenario-dialog .pursuit-settings-fields p{grid-column:1/-1;margin:0}.scenario-dialog .scenario-dialog-error{color:var(--cad-warning);margin:16px 0 0;font-size:12px}.scenario-dialog-actions{border-top:1px solid var(--cad-border);justify-content:flex-end}.scenario-dialog .scenario-apply{background:var(--studio-primary);color:var(--studio-primary-text);border-color:#0000}.scenario-dialog .scenario-apply:hover{background:var(--studio-primary-hover)}@media (width<=540px){.scenario-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.scenario-dialog-heading,.scenario-dialog-body,.scenario-dialog-actions{padding:16px}.scenario-dialog .scenario-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.room-fill-dialog{width:min(410px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--cad-text);background:var(--cad-panel);border:1px solid var(--cad-border);border-radius:4px;margin:auto;padding:22px;overflow:auto;box-shadow:0 24px 80px #0008}.room-fill-dialog::backdrop{background:#08090dbf}.room-fill-dialog h2{margin:0;font-size:17px;font-weight:500}.room-fill-dialog p{color:var(--cad-muted);font-size:12px;line-height:1.55}.room-fill-dialog label{gap:7px;margin-top:18px;font-size:12px;display:grid}.room-fill-dialog input{width:100%;min-height:36px;color:var(--cad-text);background:var(--cad-bg);border:1px solid var(--cad-border);border-radius:4px;padding:7px 10px}.room-fill-dialog .room-fill-error{color:var(--cad-warning)}.room-fill-dialog .room-fill-replace{color:var(--cad-text)}.room-fill-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.room-fill-actions .room-fill-apply{color:var(--studio-primary-text);background:var(--studio-primary);border-color:var(--studio-primary)}.editor-panel{flex-direction:column;height:100%;display:flex;position:relative}.editor-panel:fullscreen{background:var(--cad-bg);border:0;width:100%;height:100%;padding:0}.editor-panel .editor-controls{border:0;flex-direction:column;flex:1;min-width:0;min-height:0;margin:0;padding:0;display:flex}.editor-panel .editor-workspace{flex:1;min-height:0;position:relative}.editor-panel .editor-commandbar{display:contents}.editor-panel .editor-rail{z-index:12;background:var(--cad-rail);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--cad-rail-border);border-radius:7px;flex-direction:column;gap:3px;padding:6px;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 12px 34px #0003}.editor-toolbar{left:16px}.editor-utility-rail{right:16px}.editor-panel .editor-rail .rail-button{width:54px;height:54px;color:var(--cad-muted);background:0 0;border-color:#0000;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:6px 2px;font-size:9px;display:flex}.editor-rail .rail-button svg{width:19px;height:19px}.editor-panel .editor-rail .rail-button[aria-pressed=true],.editor-panel .editor-rail .rail-button[aria-expanded=true]{color:var(--cad-accent);background:var(--cad-selected)}.editor-panel .editor-rail .rail-button:hover:not(:disabled){color:var(--cad-text);background:var(--cad-hover)}.editor-panel .editor-rail .rail-button:disabled{color:var(--cad-disabled)}.rail-history{flex-direction:column;gap:3px;display:flex}.rail-separator{background:var(--cad-border);width:30px;height:1px;margin:3px auto}.editor-file .studio-popover-panel{width:180px;padding:6px}.editor-shapes .studio-popover-panel{width:274px;max-height:min(470px,100dvh - 150px);padding:12px}.editor-panel .editor-rail .rail-button>span{white-space:normal;text-align:center;line-height:1.15}.editor-panel .editor-rail .rail-button.is-selected{color:var(--cad-accent);background:var(--cad-selected)}.shape-choice{text-align:left;width:100%;min-height:48px;font-size:var(--text-control);border:0;align-items:center;gap:12px;padding:8px;display:flex}.shape-choice>svg{width:22px;height:22px;color:var(--cad-muted);flex-shrink:0}.shape-choice>span{gap:5px;display:grid}.shape-choice small,.shape-note{color:var(--cad-muted);font-size:10px;line-height:1.6}.shape-choice[aria-pressed=true]{color:var(--cad-accent);background:var(--cad-selected)}.shape-choice:disabled{opacity:1;color:var(--cad-disabled)}.shape-choice:disabled small{color:var(--cad-disabled)}.shape-note{margin:12px 4px 0}.shape-note a{text-underline-offset:3px;text-decoration:underline}.editor-panel .editor-stage{position:absolute;inset:0}.editor-panel .editor-help{z-index:4;color:var(--cad-muted);pointer-events:none;margin:0;font-size:10px;line-height:1.5;position:absolute;bottom:49px;left:24px;right:24px}.editor-panel .editor-help.is-invalid{color:var(--cad-warning)}.editor-panel .editor-canvas-wrap{background:0 0;border:0;border-radius:0;position:absolute;inset:0 0 62px}.editor-panel .editor-canvas-wrap canvas{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.editor-panel .canvas-caption{z-index:4;pointer-events:none;color:var(--cad-subtle);border:0;padding:0;font-size:9px;position:absolute;bottom:19px;left:24px;right:24px}.editor-panel .editor-inspector{z-index:10;background:var(--cad-inspector);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--cad-rail-border);border-radius:6px;width:254px;max-height:calc(100% - 146px);padding:18px;position:absolute;top:18px;right:96px;overflow-y:auto;box-shadow:0 16px 50px #0006}.editor-panel .inspector-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.editor-panel .inspector-heading h3{margin:0;font-size:12px;font-weight:400}.editor-panel .inspector-heading button{color:var(--cad-muted);border-color:#0000;padding:0 6px;font-size:18px}.editor-panel .number-field{color:var(--cad-muted);justify-content:space-between;align-items:center;gap:8px;margin:9px 0;font-size:11px;display:flex}.editor-panel .number-field :is(input,select){border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);width:90px;min-width:0;color:var(--cad-text);background:var(--cad-surface);font-family:var(--font-mono);padding:7px;font-size:11px}.editor-panel .element-select{color:var(--cad-muted);font-size:11px;display:block}.editor-panel .element-select select{background:var(--cad-surface);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);width:100%;font:inherit;color:var(--cad-text);margin-top:8px;padding:8px 5px;display:block}.editor-panel .inspector-fields{margin-top:16px}.canvas-size-controls h3{font-size:var(--text-control);margin:0 0 12px;font-weight:500}.canvas-size-controls>button{border-color:var(--cad-border-strong);width:100%;margin-top:8px}.canvas-size-controls hr{border:0;border-top:1px solid var(--cad-border);margin:14px 0 6px}.editor-panel .block-toggle{align-items:center;gap:6px;margin:12px 0;font-size:11px;display:flex}.editor-panel .delete-button{color:var(--cad-danger);border-color:var(--cad-danger-border);margin-top:8px;padding:7px 10px;font-size:11px}.editor-panel>.editor-error{z-index:15;background:var(--cad-panel);max-width:min(520px,100% - 48px);color:var(--cad-danger);border:1px solid var(--cad-danger-border);border-radius:var(--radius-control);margin:0;padding:9px 12px;font-size:11px;position:absolute;bottom:80px;left:24px}.editor-panel>.legend,.editor-panel>.note{display:none}@media (width<=760px){.editor-panel .editor-rail{flex-direction:row;max-width:calc(100% - 24px)}.editor-panel .editor-toolbar{top:auto;bottom:70px;left:50%;transform:translate(-50%)}.editor-panel .editor-utility-rail{top:12px;left:50%;right:auto;transform:translate(-50%)}.editor-panel .editor-rail .rail-button{width:42px;height:48px}.rail-history{flex-direction:row}.rail-separator{width:1px;height:26px;margin:auto 3px}.editor-panel .editor-canvas-wrap{inset:82px 0 140px}.editor-panel .editor-inspector{width:min(254px,100% - 24px);max-height:calc(100% - 220px);top:82px;right:12px}.editor-panel .editor-help{font-size:9px;bottom:42px;left:16px;right:16px}.editor-panel .canvas-caption{font-size:8px;bottom:14px;left:16px;right:16px}.editor-panel>.editor-error{max-width:calc(100% - 32px);bottom:150px;left:16px}}.editor-selection-feedback{z-index:4;color:var(--cad-accent);font-size:var(--text-control);text-align:center;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;margin:0;position:absolute;top:16px;left:96px;right:96px;overflow:hidden}.object-name-field{margin-bottom:14px}.object-name-field label{color:var(--cad-muted);font-size:var(--text-small);gap:7px;display:grid}.object-name-field input{width:100%;min-width:0;height:var(--control-height);background:var(--cad-surface);color:var(--cad-text);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);font-size:var(--text-control);padding:0 8px}.object-name-field input[aria-invalid=true]{border-color:var(--cad-danger)}.name-hint,.name-error{color:var(--cad-muted);margin:6px 0 0;font-size:10px;line-height:1.5}.name-error{color:var(--cad-danger)}@media (width<=760px){.editor-selection-feedback{font-size:var(--text-small);top:78px;left:16px;right:16px}}.drafting-controls{gap:12px;display:grid}.drafting-controls h3{font-size:var(--text-control);margin:0}.drafting-controls label{color:var(--cad-muted);font-size:var(--text-small);align-items:center;gap:8px;display:flex}.drafting-controls select{min-width:0;height:var(--control-height);color:var(--cad-text);background:var(--cad-surface);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);font-size:var(--text-small);flex:1}.furniture-choices,.object-curves{border-top:1px solid var(--cad-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:8px;padding-top:8px;display:grid}.furniture-choices .shape-choice{align-items:flex-start}.furniture-choices .shape-choice small{font-size:9px}.object-curves{border:0;margin:0;padding:0}.object-curves .shape-choice{gap:8px}.object-curves .shape-choice small{font-size:9px}.window-properties{border:0;border-top:1px solid var(--cad-border);gap:10px;min-width:0;margin:0;padding:12px 0 0;display:grid}.window-properties legend{color:var(--cad-text);font-size:var(--text-small);padding:8px 0}.window-properties .block-toggle{align-items:flex-start;line-height:1.5}.editor-panel .window-properties :is(.number-field,.block-toggle){margin:0}.canvas-navigation{border:1px solid var(--cad-rail-border);background:var(--cad-rail);color:var(--cad-text);z-index:5;white-space:nowrap;border-radius:7px;align-items:center;gap:6px;padding:6px;display:flex;position:absolute;bottom:42px;left:50%;transform:translate(-50%)}.canvas-navigation button{padding:5px 9px}.canvas-navigation output{text-align:center;min-width:44px;font-size:11px}.canvas-navigation span{color:var(--cad-muted);padding:0 6px;font-size:10px}@media (width<=760px){.canvas-navigation span{display:none}}.workspace-shell{background:var(--cad-bg);position:absolute;inset:0}.workspace-view{position:absolute;inset:0}.workspace-view>.panel{background:0 0;border:0;border-radius:0;height:100%;padding:0}.workspace-view>.panel>.panel-heading{display:none}.scenario-replay-context{border-bottom:1px solid var(--cad-border);justify-content:space-between;align-items:center;gap:12px;height:42px;padding:0 16px;font-size:11px;display:flex}.workspace-view.has-scenario-replay>.panel{height:calc(100% - 42px)}.templates-page{padding:40px max(24px,50% - 620px);position:absolute;inset:0;overflow-y:auto}.templates-heading{margin-bottom:32px}.templates-heading h1{letter-spacing:-1px;margin:0 0 10px;font-size:clamp(30px,4vw,44px);font-weight:400}.templates-heading p,.templates-local-note{color:var(--cad-muted);font-size:12px;line-height:1.6}.templates-page section+section{margin-top:38px}.templates-page h2{margin:0 0 18px;font-size:15px;font-weight:500}.template-gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));align-items:start;gap:20px;display:grid}.template-card{isolation:isolate;background:var(--cad-surface);border:1px solid var(--cad-border);border-radius:var(--radius-control);min-width:0;position:relative;overflow:hidden}.template-card:hover{border-color:var(--cad-border-strong)}.template-card-edit:after{content:"";z-index:0;position:absolute;inset:0}.template-card button:not(.template-card-edit){z-index:1;position:relative}.template-card:has(.template-card-edit:focus-visible){outline:2px solid var(--cad-accent);outline-offset:3px}.template-preview{width:100%;height:180px}.template-card-content{padding:16px}.template-card h3{overflow-wrap:anywhere;margin:0 0 10px;font-size:15px;font-weight:500}.template-metadata{color:var(--cad-muted);font:11px var(--font-mono);flex-wrap:wrap;gap:6px;margin:0 0 16px;display:flex}.template-actions{flex-wrap:wrap;gap:8px;display:flex}.template-secondary-actions{gap:18px;display:flex}.template-secondary{color:var(--cad-muted);text-align:left;border:0;padding:12px 0 0;font-size:11px}.template-secondary:hover:not(:disabled){color:var(--cad-text);background:0 0}.template-save-card{border:1px dashed var(--cad-border-strong);border-radius:var(--radius-control);width:100%;min-height:300px;color:var(--cad-muted);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.template-save-card>span:first-child{color:var(--cad-shelter);font-size:28px}.template-save-card strong{color:var(--cad-text);font-size:13px;font-weight:500}.template-save-card>span:last-child{font-size:11px}.templates-error{color:var(--cad-warning);font-size:12px;line-height:1.6}@media (width<=760px){.templates-page{padding:28px 20px}}.studio-main.has-office-demo{flex-direction:column;display:flex}.studio-main.has-office-demo>.studio-viewport,.studio-main.has-office-demo>.analytics-workspace{flex:1;min-height:0;position:relative;inset:auto}.office-demo-notice{background:var(--cad-bg);color:var(--cad-muted);flex:none;grid-template-columns:minmax(0,1fr) auto;gap:7px 20px;padding:10px 26px;font-size:10px;display:grid}.office-demo-context,.office-demo-actions,.office-demo-explanation,.office-demo-legend{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.office-demo-context strong{color:var(--cad-text);font-size:12px;font-weight:500}.office-demo-outcome{color:var(--cad-text);font-family:var(--font-mono)}.office-demo-actions{gap:6px}.office-demo-actions .studio-control{font-size:10px}.office-demo-explanation{grid-column:1/-1;gap:8px 16px;line-height:1.5}.office-demo-legend{flex-shrink:0;gap:7px}.office-demo-scale{background:linear-gradient(90deg,#235ad7,#17c6d5,#46de8f,#fbcf4b,#fa5944);width:90px;height:4px}@media (width<=760px){.office-demo-notice{grid-template-columns:minmax(0,1fr);gap:8px;padding:10px 16px}.office-demo-context{gap:6px 10px}.office-demo-explanation{font-size:9px}}.studio-welcome{background:radial-gradient(ellipse at 74% 42%, #6151ac12, transparent 52%), var(--cad-bg);flex-direction:column;min-height:100dvh;display:flex;overflow:hidden}.welcome-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:26px 5%;display:flex}.welcome-header-actions{align-items:center;gap:20px;display:flex}.welcome-templates-action{border-color:var(--studio-primary);background:var(--cad-control);min-height:44px;color:var(--cad-text);font-size:var(--text-control);gap:16px;padding:12px 16px;font-weight:500}.welcome-templates-action:hover:not(:disabled){border-color:var(--cad-shelter);background:var(--cad-hover)}.welcome-edition{color:var(--cad-muted);font-size:11px}.welcome-composition{flex:1;grid-template-columns:1.02fr 1fr;align-items:center;gap:4%;width:90%;max-width:1600px;margin:30px auto 60px;display:grid;position:relative}.welcome-copy{z-index:2;position:relative}.welcome-kicker{letter-spacing:2.6px;color:var(--cad-muted);margin:0 0 30px;font-size:10px;font-weight:400}.welcome-copy h1{letter-spacing:-5px;margin:0;font-size:clamp(52px,6.5vw,108px);font-weight:400;line-height:1.04}.welcome-copy h1>span{color:var(--cad-shelter)}.welcome-description{max-width:350px;color:var(--cad-muted);margin:30px 0;font-size:15px;line-height:1.85}.welcome-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.welcome-actions>button{border-radius:var(--radius-control);justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:12px 16px;font-size:12px;font-weight:500;display:inline-flex}.welcome-action-secondary{border:1px solid var(--cad-border-strong);background:var(--cad-control);color:var(--cad-text)}.welcome-action-tertiary{border:1px solid var(--cad-border-strong);color:var(--cad-muted)}.welcome-actions>button:not(.entry-action):hover:not(:disabled){border-color:var(--cad-shelter);color:var(--cad-text);background:var(--cad-hover)}.studio-welcome.has-templates .welcome-composition{min-height:calc(100dvh - 176px)}.welcome-templates{border-top:1px solid var(--cad-border);width:90%;max-width:1240px;margin:0 auto 48px;padding-top:32px}.welcome-templates-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.welcome-templates h2{letter-spacing:-.8px;margin:0;scroll-margin-top:24px;font-size:clamp(24px,3vw,34px);font-weight:400}.welcome-templates-heading p{color:var(--cad-muted);margin:10px 0 0;font-size:12px}.welcome-example{color:var(--cad-muted);border:0;padding:10px 0;font-size:12px}.welcome-example>span{padding-left:12px}.welcome-example:hover:not(:disabled){color:var(--cad-text);background:0 0}.welcome-footnote{color:var(--cad-subtle);margin:28px 0 0;font-size:10px}.welcome-drawing{min-width:0;position:relative}.welcome-drawing-heading{color:var(--cad-muted);font:9px var(--font-mono);letter-spacing:1.4px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:0 5%;display:flex}.welcome-drawing canvas{width:100%;height:min(52vh,560px)}.welcome-drawing>p{color:var(--cad-subtle);padding:0 5%;font-size:9px}.welcome-bottom{color:var(--cad-subtle);justify-content:space-between;padding:24px 5%;font-size:10px;display:flex}@media (width<=1000px){.welcome-copy h1{letter-spacing:-3px}.welcome-composition{grid-template-columns:1.15fr 1fr;gap:0}}@media (width<=760px){.welcome-header{padding:22px 24px}.welcome-edition{display:none}.welcome-composition{grid-template-columns:minmax(0,1fr);width:calc(100% - 48px);margin:50px auto 20px}.welcome-actions>button{width:100%}.welcome-templates{width:calc(100% - 48px)}.welcome-copy h1{letter-spacing:-2.5px;font-size:clamp(45px,10vw,72px)}.welcome-description{margin:24px 0;font-size:13px}.welcome-drawing{margin-top:48px}.welcome-drawing canvas{height:300px}.welcome-bottom{gap:20px;padding:20px 24px;line-height:1.5}}.welcome-demo-link{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 20px;padding:0 5%;display:flex}.welcome-demo-link p,.welcome-demo-link>span{color:var(--cad-muted);margin:0;font-size:10px;line-height:1.6}.welcome-demo-link>span{color:var(--cad-subtle);flex-basis:100%;font-size:9px}.welcome-demo-link .welcome-example{color:var(--cad-text)}.welcome-bottom a{color:var(--cad-muted);text-underline-offset:3px;text-decoration:none}.welcome-bottom a:hover{color:var(--cad-text);text-decoration:underline}.welcome-bottom a:focus-visible{outline:2px solid var(--cad-accent);outline-offset:4px}.welcome-preview-controls{letter-spacing:0;gap:2px;display:inline-flex}.welcome-preview-controls .studio-control{height:26px;padding-inline:8px;font-size:10px}.welcome-preview-caption{min-height:32px;color:var(--cad-muted);flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 5%;font-size:9px;line-height:1.5;display:flex}.welcome-preview-legend{align-items:center;gap:6px;display:inline-flex}.welcome-preview-legend .office-demo-scale{width:64px;height:3px}@media (width<=760px){.welcome-preview-controls{order:1;width:100%}}.studio-about{margin-top:var(--space-3);border-top:1px solid var(--cad-border);font-size:var(--text-control);line-height:1.5}.studio-about summary{top:calc(-1 * var(--popover-padding));z-index:1;background:var(--cad-panel);padding:var(--space-3) 2px;color:var(--cad-muted);cursor:pointer;position:sticky}.studio-about summary:hover,.studio-about[open] summary{color:var(--cad-text)}.studio-about summary:focus-visible,.studio-about a:focus-visible{outline:2px solid var(--cad-accent);outline-offset:2px;border-radius:var(--radius-control)}.studio-about-content{gap:var(--space-3);overflow-wrap:anywhere;display:grid}.studio-about-facts{gap:var(--space-1);margin:0;display:grid}.studio-about-facts>div{gap:var(--space-2);grid-template-columns:48px minmax(0,1fr);display:grid}.studio-about dt,.studio-about-team span{color:var(--cad-muted)}.studio-about dd{color:var(--cad-text);margin:0}.studio-about a{width:fit-content;color:var(--cad-muted);text-underline-offset:3px}.studio-about a:hover{color:var(--cad-text)}.studio-about h4{margin:var(--space-1) 0 0;color:var(--cad-text);font-size:inherit;font-weight:500}.studio-about-team{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.studio-about-team li{gap:2px;display:grid}.studio-about-team strong{color:var(--cad-text);font-weight:500}.studio-about-team p,.studio-about-limitation{color:var(--cad-muted);font-size:var(--text-small);margin:0}.studio-about-limitation{padding:var(--space-2) 0 var(--space-1);border-top:1px solid var(--cad-border)}.layout-name-dialog{border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);width:min(380px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--cad-text);background:var(--cad-panel);padding:24px;overflow-y:auto}.layout-name-dialog::backdrop{background:#0009}.layout-name-dialog form{gap:16px;display:grid}.layout-name-dialog h2{font-size:17px;font-weight:500}.layout-name-dialog p{color:var(--cad-muted);margin:0;font-size:12px;line-height:1.5}.layout-name-dialog label{gap:8px;font-size:12px;display:grid}.layout-name-dialog input{width:100%;min-width:0;color:var(--cad-text);background:var(--cad-bg);border:1px solid var(--cad-border-strong);border-radius:var(--radius-control);padding:9px 10px}.layout-name-dialog [role=alert]{color:var(--cad-warning)}.layout-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.layout-dialog-actions .layout-confirm{color:var(--studio-primary-text);background:var(--studio-primary)}.layout-dialog-actions .layout-confirm:hover{background:var(--studio-primary-hover)}.layout-save-controls{align-items:center;gap:6px;min-width:0;display:flex}.layout-save-indicator{color:var(--cad-muted);gap:2px;width:105px;font-size:10px;display:grid}.layout-save-indicator>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.layout-save-indicator[data-dirty=true]{color:var(--cad-warning)}.layout-save-indicator .layout-save-name{color:var(--cad-muted)}@media (width<=1100px){.layout-save-indicator{width:74px}.layout-save-name{display:none}}.computations-popover>.studio-popover-panel{box-sizing:border-box;width:min(540px,100vw - 24px);max-width:calc(100vw - 24px);max-height:min(680px,100dvh - 24px);padding:0;overflow:hidden}.computation-jobs{width:100%;min-width:0;max-height:inherit;flex-direction:column;font-size:12px;display:flex;overflow:hidden}.jobs-header{border-bottom:1px solid var(--cad-border);justify-content:space-between;align-items:start;gap:12px;padding:16px;display:flex}.jobs-header h3{margin:0 0 6px;font-size:15px;font-weight:500}.jobs-header p{color:var(--cad-muted);margin:0;font-size:11px;line-height:1.5}.jobs-count{background:var(--cad-control);color:var(--cad-muted);border-radius:4px;flex-shrink:0;padding:4px 7px;font-size:10px}.jobs-scroll{overscroll-behavior:contain;min-height:0;padding:0 16px;overflow-y:auto}.jobs-group{min-width:0;padding:12px 0}.jobs-group+.jobs-group{border-top:1px solid var(--cad-border)}.jobs-group h4{text-transform:uppercase;letter-spacing:1px;color:var(--cad-muted);align-items:center;gap:8px;margin:0 0 10px;font-size:10px;font-weight:500;display:flex}.jobs-group h4 span{letter-spacing:0}.job-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.job-card{border:1px solid var(--cad-border);background:var(--cad-surface);border-radius:var(--radius-control);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.job-info{overflow-wrap:anywhere;min-width:0}.job-heading{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.job-heading h5{color:var(--cad-text);margin:0;font-size:12px;font-weight:500}.job-status,.job-cached{border-radius:3px;padding:3px 5px;font-size:9px;line-height:1.3}.job-status{text-transform:capitalize;color:var(--cad-muted);background:var(--cad-control)}.job-status[data-status=running]{color:var(--cad-accent);background:var(--cad-selected)}.job-status[data-status=queued],.job-status[data-status=cancelling]{color:var(--cad-warning);background:var(--cad-warning-bg)}.job-status[data-status=completed]{color:var(--cad-success)}.job-status[data-status=failed]{color:var(--cad-danger);background:var(--cad-danger-bg)}.job-cached{color:var(--cad-accent);border:1px solid var(--cad-border)}.job-context{color:var(--cad-muted);margin:7px 0 0;font-size:11px;line-height:1.5}.job-progress{color:var(--cad-text);font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:10px;line-height:1.5}.job-error,.jobs-error{color:var(--cad-danger);overflow-wrap:anywhere;font-size:11px;line-height:1.5}.job-error{margin:7px 0 0}.jobs-error,.jobs-notice{margin:12px 0}.jobs-notice{color:var(--cad-warning);line-height:1.5}.jobs-empty{color:var(--cad-muted);margin:8px 0;font-size:11px}.job-actions .studio-control{border:1px solid var(--cad-border-strong);color:var(--cad-text);padding:0 9px;font-size:11px}.job-actions .studio-control:disabled{color:var(--cad-muted)}.jobs-footer{border-top:1px solid var(--cad-border);color:var(--cad-muted);flex-shrink:0;padding:12px 16px;font-size:10px;line-height:1.5}@media (width<=420px){.jobs-header,.jobs-footer{padding:12px}.jobs-scroll{padding:0 12px}.job-card{grid-template-columns:minmax(0,1fr)}.job-actions{justify-self:start}}
