:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#eef2f6;color:#111827;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--border: #cbd5e1;--border-strong: #94a3b8;--panel: #f8fafc;--panel-strong: #ffffff;--ink: #111827;--muted: #64748b;--blue: #1d4ed8;--green: #13795b;--red: #b42318;--amber: #b45309}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overflow:hidden}button,input,select,textarea{font:inherit}button{min-height:32px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--ink);padding:6px 10px;cursor:pointer}button:hover:not(:disabled){border-color:var(--border-strong);background:#f1f5f9}button:disabled{cursor:not-allowed;opacity:.52}input,select,textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--ink);padding:6px 8px}input[type=color]{height:34px;padding:2px}textarea{resize:vertical}h1,h2,h3,p{margin:0}h2{margin:0 0 10px;font-size:13px;font-weight:750;color:#1f2937}.launch-shell{height:100%;overflow:auto;padding:28px;background:linear-gradient(180deg,#dbeafeb8,#eef2f6f0),#eef2f6}.launch-hero,.launch-projects-panel,.launch-create-panel{border:1px solid var(--border);border-radius:8px;background:#ffffffeb;box-shadow:0 16px 28px #0f172a0d}.launch-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:18px;padding:24px;margin-bottom:18px}.launch-copy{display:grid;gap:12px}.launch-eyebrow{color:var(--blue);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.launch-copy h1{font-size:34px;line-height:1.04;letter-spacing:-.02em}.launch-copy p,.launch-section-heading p,.project-card p,.launch-note p{color:var(--muted);line-height:1.5}.launch-hero-pills{display:flex;flex-wrap:wrap;gap:8px}.launch-actions{display:flex;flex-wrap:wrap;gap:10px}.launch-mode-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.launch-actions .full-button{width:auto}.launch-pill,.project-toolbar-pill,.project-status-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800}.launch-pill{background:#eff6ff;color:var(--blue)}.project-toolbar-pill{background:#e0f2fe;color:#075985}.project-status-pill{background:#dcfce7;color:#166534}.project-status-pill.warning,.project-status-pill.watch{background:#fef3c7;color:#92400e}.project-status-pill.gap{background:#fee2e2;color:#991b1b}.project-status-pill.demo{background:#ede9fe;color:#6d28d9}.project-status-pill.control-tone-ok{background:#dcfce7;color:#166534!important}.project-status-pill.control-tone-watch{background:#fef3c7;color:#92400e!important}.project-status-pill.control-tone-danger{background:#fee2e2;color:#991b1b!important}.project-status-pill.control-tone-neutral{background:#f1f5f9;color:#475569!important}.launch-hero-panel{display:grid;gap:10px}.launch-summary-kpi{display:grid;gap:4px;padding:14px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.launch-summary-kpi span,.project-card small{color:var(--muted);font-size:12px}.launch-summary-kpi strong{font-size:18px}.launch-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:18px}.launch-streams{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:18px}.launch-stream{display:grid;gap:8px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#ffffffeb;box-shadow:0 10px 24px #0f172a0a}.launch-stream strong{font-size:15px}.launch-stream p{color:var(--muted);line-height:1.45;font-size:13px}.launch-stream-kicker{color:var(--blue);font-size:11px;font-weight:800}.project-control-dashboard{display:grid;gap:14px;margin-bottom:18px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 10px 24px #0f172a0a}.control-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr) minmax(260px,.8fr);gap:12px}.control-dashboard-grid.secondary{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr)}.control-panel{display:grid;align-content:start;gap:12px;min-width:0;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.control-panel p{color:var(--muted);line-height:1.5;font-size:13px}.control-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.control-panel-heading div{display:grid;gap:3px;min-width:0}.control-panel-heading span,.control-risk-item span,.control-task-list span,.control-status-list span,.control-metric-row small{color:var(--muted);font-size:12px;font-weight:750}.control-panel-heading strong{font-size:17px}.control-progress{overflow:hidden;height:10px;border-radius:999px;background:#e2e8f0}.control-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#13795b,#1d4ed8)}.control-metric-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.control-metric-row div,.control-status-list div,.control-task-list div{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.control-status-list,.control-task-list,.control-risk-list{display:grid;gap:8px}.control-status-list div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.control-task-list div{grid-template-columns:42px minmax(0,1fr) auto;align-items:center}.control-task-list em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.control-risk-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.control-risk-item div{display:grid;gap:3px}.control-risk-item p{grid-column:1 / -1;font-size:12px}.control-tone-ok{color:var(--green)!important}.control-tone-watch{color:var(--amber)!important}.control-tone-danger{color:var(--red)!important}.control-tone-neutral{color:var(--muted)!important}.recovery-guardrail-panel,.setup-wizard-panel{display:grid;gap:14px;margin-bottom:18px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:0 10px 24px #0f172a0a}.setup-path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.setup-path-card,.measured-rebuild-guide{display:grid;align-content:start;gap:10px;min-width:0;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.setup-path-card span{color:var(--blue);font-size:11px;font-weight:900}.setup-path-card p,.measured-rebuild-guide p,.measured-rebuild-guide li{color:var(--muted);font-size:13px;line-height:1.45}.measured-rebuild-guide{grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr) auto;align-items:start}.measured-rebuild-guide ol{margin:0;padding-left:20px}.recovery-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:12px}.recovery-actions,.recovery-item{display:grid;gap:8px;min-width:0;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.recovery-actions p,.recovery-item p{color:var(--muted);font-size:13px;line-height:1.45}.recovery-button-row,.recovery-list{display:grid;gap:8px}.recovery-item{border-left:4px solid var(--muted)}.recovery-item.tone-ok{border-left-color:var(--green)}.recovery-item.tone-attention{border-left-color:var(--amber)}.recovery-item.tone-danger{border-left-color:var(--red)}.launch-projects-panel,.launch-create-panel{padding:18px}.project-continue-card{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(0,1.1fr);gap:16px;margin-bottom:16px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.project-continue-preview,.project-card-preview{display:grid;place-items:center;overflow:hidden;border:1px solid #dbe4ef;border-radius:8px;background:linear-gradient(180deg,#f8fafc,#eef4f8)}.project-continue-preview{min-height:220px;padding:12px}.project-card-preview{min-height:132px;padding:10px}.project-preview-empty{color:var(--muted);font-size:12px;font-weight:700}.project-continue-copy{display:grid;gap:12px;align-content:start}.project-continue-copy h3{font-size:24px;line-height:1.08}.project-card-pill-row{display:flex;flex-wrap:wrap;gap:8px}.project-continue-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.project-continue-metrics div{display:grid;gap:4px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.project-continue-metrics strong{font-size:14px}.project-continue-actions{display:flex;justify-content:flex-start}.project-continue-actions .full-button{width:auto}.launch-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.launch-section-heading h2{margin:0 0 4px;font-size:18px}.project-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.project-card{display:grid;gap:10px;min-height:312px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#fff;text-align:left}.project-card.active{border-color:var(--blue);box-shadow:0 0 0 2px #1d4ed81f}.project-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.project-card-top strong{display:block;margin-bottom:3px;font-size:16px}.project-card-top span{color:var(--muted);font-size:13px}.project-card-metrics{display:grid;margin-top:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-card-metrics div{display:grid;gap:3px}.project-card-metrics strong{font-size:13px}.launch-note{margin-top:14px;padding:14px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.launch-note strong{display:block;margin-bottom:6px}.template-toggle-row{display:flex;flex-wrap:wrap;gap:8px}.template-toggle{min-height:34px;padding:6px 10px;border-radius:999px}.template-toggle.active{border-color:var(--blue);background:#eff6ff;color:var(--blue);font-weight:750}.app-shell{position:relative;display:grid;grid-template-rows:52px minmax(0,1fr);height:100%;min-width:1120px}.project-workspace-shell{height:100%;min-width:1120px;background:#eef2f6}.project-workspace-main{min-height:0;height:100%}.top-toolbar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border);background:#fff;box-shadow:0 1px #0f172a0a;overflow-x:auto}.top-toolbar.mode-review,.top-toolbar.mode-present{gap:12px;padding-block:10px}.top-toolbar.mode-present{background:#fffffff5}.toolbar-group{display:flex;align-items:center;gap:6px;min-width:max-content}.toolbar-group.compact{gap:4px}.toolbar-save-group{gap:8px;position:relative}.toolbar-button.primary,.full-button.primary{border-color:var(--blue);background:var(--blue);color:#fff}.toolbar-button.attention{border-color:var(--amber);color:#92400e;background:#fffbeb}.icon-button{width:32px;padding:0;font-weight:800}.toolbar-readout{min-width:48px;text-align:center;color:var(--muted);font-size:13px}.toolbar-subtle{color:var(--muted);font-size:12px;font-weight:700}.save-status-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:800}.save-status-pill.tone-ok{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.save-status-pill.tone-attention,.save-status-pill.dirty{border-color:#fcd34d;background:#fffbeb;color:#92400e}.save-status-pill.tone-danger{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.save-status-details{position:relative}.save-status-details summary{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-size:12px;font-weight:900;cursor:pointer;list-style:none}.save-status-details summary::-webkit-details-marker{display:none}.save-status-popover{position:fixed;z-index:30;top:58px;left:12px;width:min(320px,90vw);padding:12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 18px 34px #0f172a29}.save-status-popover strong{display:block;margin-bottom:6px;font-size:13px}.save-status-popover p{margin:0 0 6px;color:var(--muted);font-size:12px;line-height:1.45}.save-status-popover p:last-child{margin-bottom:0}.activity-timeline{display:grid;gap:10px}.activity-item{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.activity-dot{width:10px;height:10px;margin-top:4px;border-radius:999px;background:var(--muted)}.activity-item.tone-ok .activity-dot{background:var(--green)}.activity-item.tone-attention .activity-dot{background:var(--amber)}.activity-item.tone-danger .activity-dot{background:var(--red)}.activity-copy{display:grid;gap:4px;min-width:0}.activity-heading{display:grid;gap:2px}.activity-heading strong{font-size:13px}.activity-heading span,.activity-copy small{color:var(--muted);font-size:11px;font-weight:750}.activity-copy p{color:#334155;font-size:12px;line-height:1.4}.measured-aid-panel{border-color:#bfdbfe;background:#f8fbff}.measured-aid-steps{display:grid;gap:5px;margin:0;padding-left:20px;color:var(--muted);font-size:12px;line-height:1.45}.measured-aid-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.constraint-helper{display:grid;gap:4px;padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.constraint-helper strong{font-size:13px}.constraint-helper span{color:var(--muted);font-size:12px;line-height:1.45}.inline-label{font-size:13px;color:var(--muted)}.calibration-input{width:72px;padding:5px 6px;text-align:right}.fit-pill,.runner-pill{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:750}.fit-pill.ok,.runner-pill.high,.runner-pill.ok{background:#dcfce7;color:#166534}.fit-pill.danger,.runner-pill.low,.runner-pill.gap{background:#fee2e2;color:#991b1b}.runner-pill.medium,.runner-pill.watch{background:#fef3c7;color:#92400e}.segmented{border:1px solid var(--border);border-radius:7px;overflow:hidden;gap:0}.segment{min-height:30px;border:0;border-radius:0;background:#fff}.segment+.segment{border-left:1px solid var(--border)}.segment.active{background:#e0ecff;color:var(--blue);font-weight:750}.workbench-layout{display:grid;grid-template-columns:310px minmax(520px,1fr) 390px;min-height:0;height:100%}.workbench-layout:has(>.workspace-panel:first-child){grid-template-columns:minmax(520px,1fr) 390px}.workbench-layout:has(>.left-sidebar):not(:has(>.right-sidebar)){grid-template-columns:310px minmax(520px,1fr)}.workbench-layout:not(:has(>.left-sidebar)):not(:has(>.right-sidebar)){grid-template-columns:minmax(520px,1fr)}.sidebar{min-height:0;overflow:auto;background:var(--panel);border-color:var(--border);padding:12px}.left-sidebar{border-right:1px solid var(--border)}.right-sidebar{border-left:1px solid var(--border)}.workspace-panel,.canvas-shell{position:relative;min-width:0;min-height:0;overflow:hidden;background:linear-gradient(rgba(148,163,184,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.12) 1px,transparent 1px),#e5ebf2;background-size:28px 28px}.workspace-panel{width:100%;height:100%}.canvas-shell{position:absolute;top:0;right:0;bottom:0;left:0}.app-shell.mode-review .workspace-panel,.app-shell.mode-present .workspace-panel{background:linear-gradient(rgba(148,163,184,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.1) 1px,transparent 1px),#edf2f7}.workspace-loading{display:grid;place-items:center;min-height:100%;color:var(--muted);font-size:14px;font-weight:700}.konva-stage{display:block;width:100%;height:100%;touch-action:none}.canvas-status{position:absolute;right:12px;bottom:12px;padding:5px 9px;border:1px solid rgba(148,163,184,.7);border-radius:999px;background:#ffffffeb;color:var(--muted);font-size:12px;font-weight:700}.review-strip{position:absolute;z-index:5;left:12px;top:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;width:min(760px,calc(100% - 24px));padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fffffff5;box-shadow:0 12px 28px #0f172a14}.review-strip-title{display:grid;gap:3px}.review-strip-title strong{font-size:14px}.review-strip-title span,.review-strip-kpis span{color:var(--muted);font-size:12px;font-weight:700}.review-strip-kpis{display:flex;flex-wrap:wrap;gap:8px}.review-strip-kpis span{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:#f8fafc}.quick-button-row,.button-row,.template-buttons,.version-actions{display:flex;flex-wrap:wrap;gap:6px}.template-card-grid{display:grid;gap:8px}.template-card{display:grid;gap:6px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.template-card span,.template-card p{color:var(--muted);font-size:12px}.auto-fill-placeholder-panel{border-color:#2563eb38;background:linear-gradient(180deg,#eff6fff0,#fffffff5)}.proposal-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.proposal-status-grid div{min-width:0;border:1px solid var(--border);border-radius:8px;background:#ffffffd1;padding:8px}.proposal-status-grid span,.proposal-status-grid strong{display:block}.proposal-status-grid span{color:var(--muted);font-size:11px}.proposal-status-grid strong{margin-top:2px;color:var(--text);font-size:12px}.proposal-safety-note{margin:10px 0 0;color:#1d4ed8;font-size:12px;line-height:1.45}.proposal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.proposal-comparison-panel{display:grid;gap:10px;margin-top:10px}.proposal-comparison-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.proposal-comparison-top strong{color:var(--text);font-size:12px}.proposal-comparison-top span{color:#1d4ed8;font-size:11px}.proposal-comparison-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.proposal-preview-card{display:grid;gap:7px;border:1px solid rgba(37,99,235,.18);border-radius:8px;background:#ffffffe0;padding:9px}.proposal-preview-card.recommended{border-color:#2563eb8c;box-shadow:0 0 0 1px #2563eb1a,0 10px 20px #2563eb14}.proposal-preview-card.selected{outline:2px solid rgba(37,99,235,.3);outline-offset:2px}.proposal-preview-card.rejected{opacity:.68;border-style:dashed;background:#f8fafcb8}.proposal-preview-card.validation-blocked_preview{border-color:#dc262670}.proposal-preview-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.proposal-preview-heading strong{min-width:0;color:var(--text);font-size:12px}.proposal-preview-heading span{color:#1d4ed8;font-size:11px;text-transform:capitalize}.proposal-recommendation{display:grid;gap:3px;border-radius:7px;background:#f8fafc;padding:7px}.proposal-recommendation strong{color:var(--text);font-size:11px}.proposal-recommendation span{color:var(--muted);font-size:11px;line-height:1.35}.proposal-score-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.proposal-score-row span{min-width:0;border-radius:6px;background:#eff6ff;color:#1e3a8a;font-size:11px;padding:4px 5px}.proposal-recommended-badge{border-radius:6px;background:#dbeafe;color:#1e40af!important;font-weight:700;padding:5px 6px}.proposal-validation-badge{margin:0;border-radius:6px;font-size:11px;font-weight:700;padding:5px 6px}.proposal-validation-badge.validation-valid_preview{background:#dcfce7;color:#166534}.proposal-validation-badge.validation-warning_preview{background:#fef3c7;color:#92400e}.proposal-validation-badge.validation-blocked_preview{background:#fee2e2;color:#991b1b}.proposal-preview-card p,.proposal-preview-card small,.proposal-mini-list{color:var(--muted);font-size:11px;line-height:1.4}.proposal-preview-card p,.proposal-preview-card small{margin:0}.proposal-mini-list{display:grid;gap:4px;margin:0;padding-left:16px}.proposal-lifecycle-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.proposal-detail-panel{display:grid;gap:9px;border:1px solid rgba(37,99,235,.22);border-radius:8px;background:#eff6ffb8;padding:10px}.proposal-detail-kpis,.proposal-detail-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.proposal-detail-kpis span,.proposal-detail-scores span{border-radius:6px;background:#ffffffdb;color:#1e3a8a;font-size:11px;padding:5px 6px}.proposal-detail-copy{display:grid;gap:5px}.proposal-detail-copy strong{color:var(--text);font-size:11px}.proposal-detail-copy p,.proposal-detail-copy li{color:var(--muted);font-size:11px;line-height:1.4}.proposal-detail-copy p,.proposal-detail-copy ul{margin:0}.proposal-detail-copy ul{padding-left:16px}.simulation-preview-panel{border-color:#0e749038;background:linear-gradient(180deg,#ecfeffdb,#fffffff5)}.simulation-preview-result{display:grid;gap:9px;margin-top:10px}.simulation-preview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.simulation-input-authoring{display:grid;gap:9px;margin-top:10px;padding:10px;border:1px solid rgba(14,116,144,.18);border-radius:8px;background:#ffffffc7}.simulation-assumption-field{display:grid;gap:4px;color:#334155;font-size:12px;font-weight:650}.simulation-input-lane-list{display:grid;gap:8px}.simulation-input-lane-row{display:grid;gap:7px;border:1px solid rgba(14,116,144,.14);border-radius:8px;background:#f8fafccc;padding:8px}.simulation-lane-toggle{display:flex;gap:8px;align-items:center;color:var(--text);font-size:12px;font-weight:700}.simulation-lane-toggle input{width:auto}.simulation-lane-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.simulation-lane-fields label{display:grid;gap:3px;color:var(--muted);font-size:11px;font-weight:650}.simulation-validation-panel{display:grid;gap:6px;border:1px solid rgba(14,116,144,.18);border-radius:8px;background:#ecfeff8f;padding:8px}.simulation-validation-panel.status-valid{border-color:#16a34a42;background:#dcfce794}.simulation-validation-panel.status-warning{border-color:#d9770647;background:#fef3c794}.simulation-validation-panel.status-blocked{border-color:#dc262647;background:#fee2e299}.simulation-saved-scenarios{display:grid;gap:8px;padding-top:8px;border-top:1px solid rgba(14,116,144,.16)}.simulation-scenario-save-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.simulation-saved-scenario-list{display:grid;gap:7px}.simulation-saved-scenario-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(14,116,144,.16);border-radius:8px;background:#ffffffdb;padding:8px}.simulation-saved-scenario-row.status-stale,.simulation-saved-scenario-row.status-orphaned{border-color:#d9770647;background:#fef3c794}.simulation-saved-scenario-row.status-blocked,.simulation-saved-scenario-row.status-unsupported{border-color:#dc262647;background:#fee2e294}.simulation-saved-scenario-row strong,.simulation-saved-scenario-row span,.simulation-saved-scenario-row small{display:block}.simulation-saved-scenario-row strong{color:var(--text);font-size:12px}.simulation-saved-scenario-row span,.simulation-saved-scenario-row small{color:var(--muted);font-size:11px;line-height:1.35}.simulation-review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.simulation-review-summary div{min-width:0;border:1px solid rgba(14,116,144,.16);border-radius:8px;background:#ffffffdb;padding:8px}.simulation-review-summary span,.simulation-review-summary strong{display:block}.simulation-review-summary span{color:var(--muted);font-size:11px}.simulation-review-summary strong{margin-top:2px;color:#155e75;font-size:12px;overflow-wrap:anywhere}.simulation-zone-list{display:grid;gap:7px}.simulation-zone-row{display:grid;gap:3px;border:1px solid rgba(14,116,144,.16);border-radius:8px;background:#ffffffdb;padding:8px}.simulation-zone-row strong{color:var(--text);font-size:12px}.simulation-zone-row span,.simulation-zone-row small{color:var(--muted);font-size:11px;line-height:1.4}.simulation-scenario-comparison{display:grid;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(14,116,144,.18)}.simulation-scenario-list{display:grid;gap:8px}.simulation-scenario-card{display:grid;gap:8px;border:1px solid rgba(14,116,144,.18);border-radius:8px;background:#ffffffe6;padding:9px}.panel-section{margin-bottom:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--panel-strong)}.stacked-form{display:grid;gap:10px}.stacked-form label{display:grid;gap:4px;min-width:0;color:#334155;font-size:12px;font-weight:650}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wide-field{grid-column:1 / -1}.full-button{width:100%;justify-content:center}.backup-import-panel{display:grid;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.visually-hidden-file{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.danger-button{border-color:#fecaca;color:var(--red);background:#fff5f5}.checkbox-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px}.checkbox-row input{width:auto}.property-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.muted-text{color:var(--muted);font-size:13px;line-height:1.5}.ok-text{color:var(--green);font-size:13px;font-weight:700}.warning-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.warning-list li{padding:8px 10px;border-radius:6px;font-size:13px;line-height:1.4}.warning-list .warning{border:1px solid #fde68a;background:#fffbeb;color:#92400e}.warning-list .error{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.summary-list,.analysis-detail-list,.evaluation-metrics,.selected-storage-demand-totals{display:grid;gap:7px;margin:0}.summary-list div,.analysis-detail-list div,.evaluation-metrics div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e8f0;padding-bottom:6px;font-size:13px}.summary-list dt,.analysis-detail-list dt,.evaluation-metrics dt{color:var(--muted)}.summary-list dd,.analysis-detail-list dd,.evaluation-metrics dd{margin:0;font-weight:800;color:var(--ink)}.capacity-callout,.print-fit,.analysis-source-note,.flow-step-readout{border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1e3a8a;padding:10px;font-size:13px}.print-fit.ok{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.print-fit.danger{border-color:#fecaca;background:#fef2f2;color:#991b1b}.capacity-location-list,.storage-demand-list,.analysis-location-list,.version-list{display:grid;gap:8px}.capacity-location-card,.storage-demand-row,.version-row,.pn-stock-card,.pn-cockpit-chip,.flow-toggle,.layout-preview-card{border:1px solid var(--border);border-radius:8px;background:#fff}.capacity-location-card,.storage-demand-row,.version-row,.pn-stock-card{padding:9px}.version-row{display:grid;gap:8px}.checkpoint-row{gap:10px}.checkpoint-main{display:grid;gap:4px}.checkpoint-main span,.checkpoint-main small{color:var(--muted);font-size:12px}.version-row.active,.layout-preview-card.active,.storage-demand-row.active,.allocation-sequence-row.active,.pn-stock-card.active,.pn-cockpit-chip.active{border-color:var(--blue);box-shadow:0 0 0 2px #1d4ed826}.capacity-location-card.has-buffer{border-color:#fcd34d}.capacity-location-card.full{border-color:#bbf7d0}.capacity-location-top,.selected-storage-demand-heading,.selected-allocation-plan-heading,.pn-stock-board-heading,.pn-card-top,.pn-row-footer,.analysis-panel-heading,.evaluation-section-heading,.flow-header,.flow-controls,.analysis-header,.analysis-controls,.evaluation-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.subsection-title{margin:0;font-size:13px;font-weight:800}.pn-stock-board,.pn-cockpit-strip,.selected-storage-demand,.selected-allocation-plan{display:grid;gap:10px}.selected-allocation-plan{padding:10px;border:1px solid #dbe7f5;border-radius:8px;background:#f8fafc}.pn-cockpit-strip{margin-top:10px;padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.pn-cockpit-strip-heading,.pn-cockpit-chip-top,.pn-cockpit-main-kpi,.pn-cockpit-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.pn-cockpit-strip-heading span,.pn-cockpit-chip small,.pn-cockpit-meta,.selected-allocation-plan-heading span,.selected-allocation-plan-heading em{color:var(--muted);font-size:11px}.allocation-sequence-list{display:grid;gap:6px}.allocation-sequence-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:8px;border:1px solid #dbe7f5;border-radius:8px;background:#fff;text-align:left}.allocation-sequence-order{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#0f172a;font-size:11px;font-weight:700}.allocation-sequence-role{display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:700}.allocation-sequence-role.direct{background:#dcfce7;color:#166534}.allocation-sequence-role.reserve{background:#dbeafe;color:#1d4ed8}.allocation-sequence-role.buffer{background:#ffedd5;color:#c2410c}.allocation-sequence-row small{color:var(--muted)}.pn-cockpit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pn-cockpit-chip{display:grid;gap:6px;min-height:0;padding:8px;text-align:left}.pn-cockpit-chip.high{background:#ecfdf5}.pn-cockpit-chip.medium{background:#f7fee7}.pn-cockpit-chip.low{background:#f8fafc}.pn-cockpit-main-kpi strong{font-size:14px}.pn-stock-legend,.pn-kpi-strip,.pn-location-tags,.storage-demand-kpis{display:flex;flex-wrap:wrap;gap:6px}.pn-health{display:inline-block;width:10px;height:10px;border-radius:999px;background:#94a3b8}.pn-health.ok{background:#16a34a}.pn-health.watch{background:#f59e0b}.pn-health.gap{background:#dc2626}.pn-id-block,.storage-demand-main{min-width:0;overflow-wrap:anywhere}.pn-stock-bar,.storage-demand-pressure,.coverage-bar,.demand-bar-cell{display:flex;height:8px;overflow:hidden;border-radius:999px;background:#e2e8f0}.pn-stock-bar span,.coverage-bar span,.storage-demand-pressure span,.demand-bar-cell span{display:block;min-width:2px}.pn-stock-bar .direct,.coverage-bar.ok{background:#16a34a}.pn-stock-bar .reserve{background:#0ea5e9}.pn-stock-bar .unassigned,.coverage-bar.risk{background:#f97316}.pn-demand-strip,.storage-demand-months,.seasonality-grid,.zone-signal-grid,.analysis-kpi-grid{display:grid;gap:8px}.pn-demand-strip,.storage-demand-months{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;min-height:34px}.pn-demand-strip span,.storage-demand-months span{display:block;min-height:3px;border-radius:999px 999px 0 0;background:#60a5fa}.pn-delta,.trend-up,.trend-badge.up{color:#166534;font-weight:800}.trend-badge.down{color:#991b1b;font-weight:800}.storage-demand-role{display:inline-flex;margin-top:4px;border-radius:999px;padding:2px 7px;background:#e2e8f0;color:#334155;font-size:11px;font-weight:800}.storage-demand-role.primary{background:#dbeafe;color:#1d4ed8}.storage-demand-role.reserve{background:#fef3c7;color:#92400e}.analysis-page,.compare-page,.evaluation-page,.flow-page,.assistant-page{height:100%;overflow:auto;background:#eef2f6;padding:18px}.analysis-header,.compare-header,.evaluation-header,.flow-header,.assistant-header{align-items:flex-end;margin-bottom:14px}.analysis-header h1,.compare-header h1,.evaluation-header h1,.flow-header h1,.assistant-header h1{margin:0 0 4px;font-size:24px;letter-spacing:-.01em}.analysis-header p,.compare-header p,.evaluation-header p,.flow-header p,.assistant-header p{max-width:820px;color:var(--muted);line-height:1.45}.analysis-header-actions,.compare-controls,.flow-header-actions,.assistant-header-actions,.flow-map-nav,.score-legend,.matrix-preview-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.analysis-controls,.flow-controls{flex-wrap:wrap;justify-content:flex-start;margin-bottom:14px}.analysis-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.analysis-kpi,.zone-signal,.flow-cycle-summary{border:1px solid var(--border);border-radius:8px;background:#fff;padding:12px}.analysis-kpi strong,.zone-signal strong,.flow-cycle-summary strong{display:block;margin-top:6px;font-size:22px}.analysis-kpi.good,.zone-signal.high{border-color:#bbf7d0;background:#f0fdf4}.analysis-kpi.attention,.zone-signal.medium{border-color:#fde68a;background:#fffbeb}.analysis-kpi.risk,.zone-signal.low{border-color:#fecaca;background:#fef2f2}.analysis-grid,.compare-grid,.evaluation-focus,.flow-grid,.assistant-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;margin-bottom:14px}.analysis-grid.lower{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-panel,.compare-layout-panel,.compare-analysis-panel,.selected-layout-preview,.selected-layout-summary,.evaluation-matrix-section,.flow-map-panel,.flow-side-panel,.flow-panel-section,.assistant-chat-panel,.assistant-context-card{border:1px solid var(--border);border-radius:8px;background:#fff;padding:14px}.assistant-kpi-grid,.assistant-context-panel{display:grid;gap:12px}.assistant-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.compare-layout-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:14px}.compare-card{display:grid;gap:8px;padding:10px;text-align:left}.compare-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.compare-kpi-grid,.compare-analysis-grid{display:grid;gap:12px;margin-bottom:14px}.compare-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.compare-analysis-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.compare-metric-card{display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.compare-metric-card span,.compare-metric-card small,.compare-layout-panel-heading span,.compare-panel-heading span,.compare-detail-list dt,.compare-cell-stack small{color:var(--muted);font-size:12px}.compare-metric-card strong{font-size:20px}.compare-metric-card.better{border-color:#bbf7d0;background:#f0fdf4}.compare-metric-card.worse{border-color:#fecaca;background:#fef2f2}.compare-layout-panel,.compare-analysis-panel{display:grid;gap:12px}.compare-layout-panel-heading,.compare-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.compare-detail-list,.compare-readout-list{display:grid;gap:8px}.compare-detail-list div{display:flex;justify-content:space-between;gap:12px;padding-bottom:6px;border-bottom:1px solid #e2e8f0;font-size:13px}.compare-detail-list dd{margin:0;font-weight:800}.compare-cell-stack{display:grid;gap:3px}.compare-delta{font-weight:800}.compare-delta.better{color:#166534}.compare-delta.worse{color:#991b1b}.compare-delta.neutral{color:#475569}.compare-readout-card{display:grid;gap:6px;padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.compare-readout-card p{color:#1e293b;line-height:1.5}.matrix-preview-legend.compact{gap:6px}.matrix-preview-legend.compact span{font-size:11px}.assistant-kpi-card{border:1px solid var(--border);border-radius:8px;background:#fff;padding:12px}.assistant-kpi-card span,.assistant-kpi-card small{color:var(--muted);font-size:12px}.assistant-kpi-card strong{display:block;margin:6px 0 3px;font-size:22px}.assistant-chat-panel{display:grid;gap:12px;min-width:0}.assistant-disclosure{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;color:#1e3a8a;padding:10px;font-size:13px}.assistant-status-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800}.assistant-status-pill.remote{background:#dcfce7;color:#166534}.assistant-status-pill.local{background:#fef3c7;color:#92400e}.assistant-context-warning{border:1px solid #fde68a;border-radius:8px;background:#fffbeb;color:#92400e;padding:10px;font-size:13px}.assistant-quick-row{display:flex;flex-wrap:wrap;gap:8px}.assistant-chip{border-radius:999px;min-height:32px;background:#f8fafc}.assistant-thread{display:grid;gap:10px;min-height:380px;align-content:start}.assistant-message{display:grid;gap:7px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.assistant-message.assistant{border-color:#bfdbfe;background:#f8fbff}.assistant-message.user{border-color:#dbeafe;background:#fff}.assistant-message-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.assistant-message-top span{color:var(--muted);font-size:12px}.assistant-message p{color:#1e293b;line-height:1.55;white-space:pre-wrap}.assistant-composer{display:grid;gap:10px}.assistant-context-panel{align-content:start}.trend-panel{min-width:0}.demand-chart,.layout-preview,.flow-map{width:100%;height:auto;display:block}.demand-chart{min-height:280px}.demand-chart-bg,.preview-boundary,.flow-boundary{fill:#f8fafc}.chart-grid-line,.preview-grid line,.flow-grid-line{stroke:#dbe3ef;stroke-width:.08}.chart-axis-line{stroke:#64748b;stroke-width:1}.chart-axis-label,.chart-unit-label{fill:#64748b;font-size:11px}.chart-bar{fill:#bfdbfe}.chart-line{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.seasonality-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.seasonality-cell{min-height:54px;border-radius:6px;background:#e0f2fe;padding:7px;font-size:12px}.demand-table-wrap,.evaluation-matrix-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px}.demand-table,.evaluation-matrix{width:100%;border-collapse:collapse;font-size:13px}.demand-table th,.demand-table td,.evaluation-matrix th,.evaluation-matrix td{border-bottom:1px solid #e2e8f0;padding:8px;text-align:left;vertical-align:top}.demand-table th,.evaluation-matrix th{background:#f8fafc;color:#475569;font-size:12px}.demand-table tr.selected,.evaluation-matrix tr.active{background:#eff6ff}.pn-demand-button,.matrix-layout-button,.flow-pn-button{width:100%;justify-content:flex-start;text-align:left}.layout-preview-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:14px}.layout-preview-card{padding:10px;text-align:left}.layout-preview.large{min-height:420px}.preview-object{stroke:#0f172a8c;stroke-width:.08}.preview-object.storage,.preview-object.flow-object-storage{fill:#bbf7d0}.preview-object.aisle{fill:#dbeafe}.preview-object.buffer{fill:#fde68a}.preview-object.process{fill:#fed7aa}.preview-object.dock{fill:#c7d2fe}.preview-object.footprint,.preview-object.pillar{fill:#cbd5e1}.score-icon{display:inline-grid;place-items:center;width:12px;height:12px;color:#94a3b8;font-size:13px;font-weight:900;line-height:1}.score-icon.circle{border-radius:999px;background:#16a34a}.score-icon.triangle{width:0;height:0;border-right:7px solid transparent;border-bottom:13px solid #f59e0b;border-left:7px solid transparent}.score-icon.cross{color:#dc2626}.score-button.circle{background:#dcfce7;color:#166534}.score-button.triangle{background:#fef3c7;color:#92400e}.score-button.cross{background:#fee2e2;color:#991b1b}.selected-score-stack,.zone-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.flow-grid{grid-template-columns:minmax(0,1fr) 380px}.flow-map-panel{min-width:0;padding:0;overflow:hidden}.flow-map{min-height:620px;background:#f8fafc;cursor:grab}.flow-map.panning{cursor:grabbing}.flow-side-panel{display:grid;align-content:start;gap:12px;padding:0;border:0;background:transparent}.flow-panel-section{display:grid;gap:10px}.flow-panel-section.attention{border-color:#fcd34d;background:#fffbeb}.flow-day-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.flow-day-footnote{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;color:#334155;padding:10px;font-size:13px;line-height:1.45}.flow-coverage-list,.flow-pn-grid,.flow-toggle-list,.flow-cycle-steps,.flow-step-list{display:grid;gap:8px}.flow-pn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-day-pn-card{display:grid;gap:3px;cursor:default}.flow-day-task-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.flow-day-task{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:#fff}.flow-day-task.active{border-color:var(--blue);background:#eff6ff}.flow-pn-button.active,.flow-toggle.active{border-color:var(--blue);background:#eff6ff;color:#1e3a8a}.flow-toggle{display:flex;align-items:flex-start;gap:8px;padding:8px;text-align:left}.legend-dot{flex:0 0 auto;width:10px;height:10px;margin-top:4px;border-radius:999px;background:#2563eb}.legend-dot.inbound,.legend-dot.outbound{background:#16a34a}.legend-dot.pick,.legend-dot.return{background:#2563eb}.legend-dot.poort2{background:#d97706}.legend-dot.waste{background:#dc2626}.flow-route.pick,.flow-route.return{stroke:#2563eb}.flow-route.inbound,.flow-route.outbound{stroke:#16a34a}.flow-route.poort2{stroke:#d97706}.flow-route.waste{stroke:#dc2626}.flow-route.day{stroke:#2563eb;stroke-width:.24}.flow-arrow-blue{stroke:#2563eb;fill:#2563eb}.flow-arrow-green{stroke:#16a34a;fill:#16a34a}.flow-arrow-amber{stroke:#d97706;fill:#d97706}.flow-arrow-red{stroke:#dc2626;fill:#dc2626}.flow-route{fill:none;stroke-width:.18;stroke-linecap:round;stroke-linejoin:round;opacity:.88}.flow-object{stroke:#0f172a80;stroke-width:.08}.flow-object-label,.flow-icon-text{fill:#0f172a;font-size:.6px;font-weight:700;pointer-events:none}.flow-object-aisle{fill:#dbeafe}.flow-object-dock{fill:#c7d2fe}.flow-object-pillar{fill:#cbd5e1}.flow-object-manipulation{fill:#fed7aa}.flow-object-waste{fill:#fecaca}.flow-object-gate,.flow-object-door{fill:#bae6fd}.flow-object-buffer{fill:#fde68a}.flow-object-stock-370,.flow-object-storage{fill:#bbf7d0}.flow-object-default{fill:#e2e8f0}.flow-object.important{stroke:#1d4ed8;stroke-width:.16}.flow-active-target rect,.flow-gate-end rect{fill:none;stroke:#1d4ed8;stroke-width:.18;stroke-dasharray:.5 .25}.flow-day-target rect{fill:none;stroke:#64748b;stroke-width:.12;stroke-dasharray:.35 .18}.flow-day-target-label{fill:#334155;font-size:.56px;font-weight:800;pointer-events:none}.flow-map-callout{fill:#1e293b;font-size:.7px;font-weight:800}.flow-map-callout.end{fill:#166534}.flow-forklift-body{fill:#f59e0b}.flow-forklift-mast,.flow-forklift-fork,.flow-wheel{fill:#334155}.flow-stillage-icon{fill:#dbeafe;stroke:#1d4ed8;stroke-width:.05}.flow-worker circle,.flow-piece rect,.flow-waste-icon rect{fill:#fff;stroke:#334155;stroke-width:.05}.flow-worker rect{fill:#60a5fa;stroke:#1e3a8a;stroke-width:.05}.flow-worker circle{fill:#bfdbfe}.flow-worker line,.flow-waste-icon line{stroke:#1e293b;stroke-width:.05}.three-d-preview-page{min-height:100%;padding:28px;overflow:auto;background:linear-gradient(180deg,#f8fafcfa,#f1f5f9f5),#f8fafc}.three-d-preview-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,340px);gap:20px;align-items:stretch;margin-bottom:20px}.three-d-preview-hero h1{margin:10px 0;color:#0f172a;font-size:32px;line-height:1.05}.three-d-preview-hero p{max-width:780px;margin:0;color:#475569;line-height:1.55}.three-d-status-pill{display:inline-flex;align-items:center;width:fit-content;padding:5px 9px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:800;text-transform:uppercase}.three-d-source-card,.three-d-info-panel{border:1px solid #dbe3ef;border-radius:8px;background:#fff;box-shadow:0 12px 30px #0f172a14}.three-d-source-card{display:grid;gap:7px;align-content:center;padding:18px}.three-d-source-card span,.three-d-source-card small{color:#64748b}.three-d-source-card strong{color:#0f172a;font-size:18px}.three-d-static-stage{position:relative;display:grid;min-height:340px;margin-bottom:20px;overflow:hidden;border:1px solid #cbd5e1;border-radius:8px;background:linear-gradient(135deg,#e2e8f0e6,#f8fafcf5),#f1f5f9}.three-d-floor-plane{position:absolute;left:50%;top:54%;width:min(62vw,720px);height:230px;border:1px solid rgba(100,116,139,.28);border-radius:8px;background:linear-gradient(90deg,rgba(148,163,184,.15) 1px,transparent 1px),linear-gradient(0deg,rgba(148,163,184,.15) 1px,transparent 1px),#ffffffb8;background-size:38px 38px;transform:translate(-50%,-50%) skew(-18deg) rotateX(55deg);box-shadow:0 36px 80px #0f172a2e}.three-d-block{position:absolute;border:1px solid rgba(15,23,42,.12);border-radius:4px;opacity:.82}.block-storage{left:15%;top:22%;width:25%;height:27%;background:#bbf7d0}.block-wall{left:7%;top:10%;width:84%;height:5%;background:#94a3b8}.block-path{left:44%;top:21%;width:12%;height:62%;background:#fef08a}.block-dock{right:7%;bottom:12%;width:20%;height:12%;background:#bae6fd}.three-d-stage-note{position:absolute;left:18px;bottom:18px;display:grid;gap:3px;max-width:min(420px,calc(100% - 36px));padding:12px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fffffff0;color:#334155;box-shadow:0 10px 28px #0f172a1f}.three-d-stage-note strong{color:#0f172a}.three-d-stage-note span{color:#64748b;font-size:13px}.three-d-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.three-d-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.three-d-summary-card{display:grid;gap:6px;min-height:118px;padding:16px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;box-shadow:0 10px 26px #0f172a12}.three-d-summary-card span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.three-d-summary-card strong{color:#0f172a;font-size:28px;line-height:1}.three-d-summary-card small{color:#475569;line-height:1.35}.three-d-info-panel{padding:18px}.three-d-info-panel h2{margin:0 0 12px;color:#0f172a;font-size:16px}.three-d-info-panel ul,.three-d-info-panel ol{display:grid;gap:8px;margin:0;padding-left:18px;color:#475569;line-height:1.4}.three-d-muted{margin:0;color:#64748b;line-height:1.5}@media(max-width:1180px){body{overflow:auto}.app-shell{min-width:0}.top-toolbar{min-height:52px}.review-strip{width:calc(100% - 24px)}.workbench-layout{grid-template-columns:280px minmax(520px,1fr) 340px}.analysis-grid,.compare-grid,.compare-analysis-grid,.evaluation-focus,.flow-grid,.assistant-grid,.analysis-grid.lower,.flow-day-summary-grid,.flow-pn-grid{grid-template-columns:1fr}.analysis-kpi-grid,.compare-kpi-grid,.assistant-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.launch-hero,.launch-grid,.launch-streams,.setup-path-grid,.measured-rebuild-guide,.recovery-grid,.control-dashboard-grid,.control-dashboard-grid.secondary,.three-d-preview-hero,.three-d-preview-grid,.three-d-summary-grid,.project-continue-card{grid-template-columns:1fr}}@media(max-width:760px){.launch-shell{padding:18px}.launch-copy h1{font-size:28px}.project-card-grid,.project-continue-metrics,.project-card-metrics,.control-metric-row,.control-task-list div,.control-risk-item{grid-template-columns:1fr}.launch-actions .full-button{width:100%}.assistant-kpi-grid,.compare-kpi-grid{grid-template-columns:1fr}.review-strip{align-items:flex-start}}
