.t2e-canvas-map{position:relative;width:100%;min-height:360px;overflow:hidden;background:#0f172a;touch-action:none;-webkit-user-select:none;user-select:none;isolation:isolate}.t2e-canvas-map canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.t2e-canvas-map-base{z-index:1}.t2e-canvas-map-raster{z-index:2}.t2e-canvas-map-overlay{z-index:3}.t2e-canvas-map-interaction{z-index:4;cursor:grab}.t2e-canvas-map.is-dragging .t2e-canvas-map-interaction{cursor:grabbing}.t2e-canvas-map-controls{position:absolute;left:12px;top:12px;z-index:20;display:grid;gap:4px}.t2e-canvas-map-controls button{width:30px;height:30px;border:1px solid rgba(15,23,42,.18);border-radius:6px;background:#fffffff0;color:#111827;font-size:18px;font-weight:700;line-height:1;box-shadow:0 10px 24px #0f172a33;cursor:pointer}.t2e-map-viewport-action{position:absolute;left:12px;top:148px;z-index:24;max-width:min(180px,calc(100% - 24px));border:1px solid rgba(15,23,42,.16);border-radius:999px;background:#fffffff0;color:#111827;padding:8px 11px;font-size:12px;font-weight:800;line-height:1;box-shadow:0 12px 26px #0f172a2e;cursor:pointer;-webkit-backdrop-filter:blur(10px) saturate(1.1);backdrop-filter:blur(10px) saturate(1.1)}.t2e-map-viewport-action:hover,.t2e-map-viewport-action:focus-visible{border-color:#2563eb6b;box-shadow:0 14px 30px #2563eb2e;outline:none}.t2e-canvas-map-attribution{display:none}.t2e-canvas-map-status{position:absolute;left:50%;bottom:14px;z-index:20;transform:translate(-50%);border:1px solid rgba(15,23,42,.14);border-radius:999px;background:#ffffffeb;color:#334155;padding:5px 10px;font-size:12px;box-shadow:0 12px 30px #0f172a2e;pointer-events:none}.t2e-canvas-map-status.is-error{border-color:#e11d4861;background:#fff1f2f5;color:#9f1239;font-weight:700}.t2e-canvas-map-status.is-live{border-color:#16a34a47;color:#166534}:root{color:#1f2937;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:clamp(360px,34vw,520px) minmax(0,1fr);min-height:100vh;gap:0;transition:grid-template-columns .22s ease}.app-shell:has(.earthlet-stage.has-insights.focus-analysis){grid-template-columns:clamp(300px,25vw,380px) minmax(0,1fr)}.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active){grid-template-columns:100px minmax(0,1fr)}.app-shell:has(.earthlet-stage.has-insights.focus-analysis) .chat-panel{grid-template-rows:auto 1fr}.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed) .chat-panel{grid-template-rows:auto 1fr}.app-shell:has(.earthlet-stage.has-insights.focus-analysis) .chat-header,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed) .chat-header{display:grid;gap:10px;justify-content:stretch;padding:14px 12px}.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-header,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-header{min-height:84px;padding:12px 8px}.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-header>*,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-header>*{opacity:0;pointer-events:none}.app-shell:has(.earthlet-stage.has-insights.focus-analysis) .chat-header h1,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed) .chat-header h1{font-size:15px}.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-header p,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .messages,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .toolbar,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-input,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .save-panel,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-header p,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .messages,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .toolbar,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-input,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .save-panel{opacity:0;pointer-events:none}.app-shell.chat-active{grid-template-columns:clamp(360px,34vw,520px) minmax(0,1fr)}.app-shell.chat-active:has(.earthlet-stage.has-insights.focus-analysis){grid-template-columns:clamp(300px,25vw,380px) minmax(0,1fr)!important}.app-shell.chat-active .chat-header{display:flex;justify-content:space-between;padding:18px 20px 12px}.app-shell.chat-active:has(.earthlet-stage.has-insights.focus-analysis) .chat-header,.app-shell.chat-active:has(.earthlet-stage.has-insights.analysis-collapsed) .chat-header{display:flex;justify-content:space-between;padding:18px 20px 12px}.app-shell.chat-active .chat-header h1{font-size:22px}.app-shell.chat-active:has(.earthlet-stage.has-insights.focus-analysis) .chat-header h1,.app-shell.chat-active:has(.earthlet-stage.has-insights.analysis-collapsed) .chat-header h1{font-size:22px}.app-shell.chat-active .chat-header p,.app-shell.chat-active .messages,.app-shell.chat-active .toolbar,.app-shell.chat-active .chat-input,.app-shell.chat-active .save-panel{opacity:1;pointer-events:auto}.chat-column{border-right:1px solid #d8dee8;background:#fff;min-width:0;position:relative}.analysis-collapse-button svg,.analysis-rail-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.stage-column{min-width:0;min-height:100vh;position:relative}.chat-panel{height:100vh;display:flex;flex-direction:column}.chat-header{position:relative;padding:18px 20px 12px;display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0f4;z-index:40}.chat-header h1{font-size:22px;line-height:1.1;margin:0}.chat-header p{margin:4px 0 0;color:#667085;font-size:13px}.header-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.icon-button{min-width:34px;height:34px;border-radius:999px;border:1px solid #d0d5dd;background:#fff;cursor:pointer;padding:0 10px}.menu-button{width:auto;font-size:12px;font-weight:700}.history-panel{position:fixed;top:0;left:0;z-index:2100;width:min(360px,88vw);height:100vh;display:grid;grid-template-rows:auto auto 1fr;gap:12px;padding:18px 16px;background:linear-gradient(180deg,#141f37fa,#0c1834fa),#0f172a;color:#f8fafc;box-shadow:18px 0 44px #0f172a57;transform:translate(-104%);transition:transform .16s ease}.history-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2090;border:0;background:#0f172a38;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default}.history-panel.is-open{transform:translate(0)}.history-panel-header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:2px 2px 6px}.history-panel-header div{display:grid;gap:3px}.history-panel-header span,.history-item small{color:#94a3b8;font-size:12px}.history-panel .icon-button{border-color:#e2e8f03d;background:#0f172a99;color:#f8fafc}.history-new,.history-switch,.history-rename,.history-delete{border:1px solid rgba(226,232,240,.2);border-radius:11px;background:#ffffff14;color:#f8fafc;cursor:pointer;padding:8px 10px}.history-new{width:100%;text-align:left;font-weight:700;min-height:42px}.history-list{display:grid;gap:8px;overflow:auto;padding-right:4px;align-content:start}.history-item{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;border:1px solid rgba(226,232,240,.14);border-radius:13px;background:#0f172a9e;padding:8px;align-content:start}.history-item.is-active{border-color:#60a5fa;background:#1e40af57}.history-switch{display:grid;gap:4px;width:100%;min-height:58px;text-align:left}.history-switch span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-switch small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25}.history-actions{display:flex;justify-content:flex-end;gap:7px}.history-rename,.history-delete{height:30px;padding:5px 9px;font-size:12px}.history-delete{border-color:#f871716b;background:#7f1d1d5c;color:#fecaca}.messages{flex:1 1 auto;min-height:0;overflow:auto;padding:16px 18px}.request-stopwatch{position:sticky;top:0;z-index:5;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;max-width:100%;margin:0 0 10px;padding:6px 10px;border:1px solid #d0d5dd;border-radius:999px;background:#fffffff5;box-shadow:0 8px 18px #10182814;color:#344054;font-size:12px;line-height:1}.request-stopwatch span{color:#667085}.request-stopwatch strong{color:#101828;font-variant-numeric:tabular-nums}.request-stopwatch.running{border-color:#84caff;background:#eff8ff}.request-stopwatch.rendered{border-color:#abefc6;background:#ecfdf3}.request-stopwatch.failed{border-color:#fda29b;background:#fff1f3}.message{max-width:92%;border-radius:8px;padding:10px 12px;margin:8px 0;line-height:1.45;font-size:14px}.message.user{margin-left:auto;background:#1f2937;color:#fff}.message.assistant{background:#eef4ff;color:#1d2939}.message.error{background:#fff1f3;color:#b42318}.extended-intake-card{display:grid;gap:10px;max-width:92%;margin:10px 0;padding:12px;border:1px solid #9db2ce;border-left:4px solid #2563eb;border-radius:8px;background:#f7fbff;color:#1d2939;font-size:13px}.extended-intake-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.extended-intake-header span{border:1px solid #bfd0e8;border-radius:999px;padding:3px 7px;color:#175cd3;font-size:11px;text-transform:uppercase}.extended-intake-card p{margin:0;color:#475467;line-height:1.35}.extended-intake-card dl{display:grid;gap:6px;margin:0}.extended-intake-card dl div{display:grid;gap:2px}.extended-intake-card dt,.extended-intake-lists span{color:#667085;font-size:11px;text-transform:uppercase}.extended-intake-card dd{margin:0;overflow-wrap:anywhere;font-weight:700}.extended-intake-lists{display:grid;grid-template-columns:1fr 1fr;gap:10px}.extended-intake-lists ul{display:grid;gap:4px;margin:5px 0 0;padding:0;list-style:none}.extended-intake-lists li{overflow-wrap:anywhere;color:#344054;font-size:12px}.extended-intake-actions{display:flex;flex-wrap:wrap;gap:8px}.extended-intake-actions button{border:1px solid #b8c7dc;border-radius:8px;background:#fff;padding:8px 10px;cursor:pointer}.extended-intake-actions button.primary{border-color:#175cd3;background:#175cd3;color:#fff}.extended-intake-actions button:disabled{cursor:wait;opacity:.68}.debug-output-toggle{margin:12px 0;border:1px solid #d0d5dd;border-radius:8px;background:#f8fafc}.debug-output-toggle summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;color:#344054;cursor:pointer;list-style:none}.debug-output-toggle summary::-webkit-details-marker{display:none}.debug-output-toggle summary span{color:#475467;font-size:12px;font-weight:800;text-transform:uppercase}.debug-output-toggle summary strong{color:#101828;font-size:13px}.debug-output-toggle[open] summary{border-bottom:1px solid #d0d5dd}.diagnostics-panel{display:grid;gap:8px;margin:12px 0}.debug-output-toggle .diagnostics-panel{margin:0;padding:10px}.diagnostics-header{display:flex;align-items:center;justify-content:space-between;color:#344054;font-size:12px}.diagnostics-header button{border:1px solid #d0d5dd;border-radius:999px;background:#fff;padding:4px 9px;color:#475467;cursor:pointer}.diagnostic-card{display:grid;gap:5px;border:1px solid #d0d5dd;border-left:4px solid #2563eb;border-radius:8px;background:#f8fafc;padding:10px 12px}.diagnostic-card.warning{border-left-color:#d97706;background:#fff8eb}.diagnostic-card.error{border-left-color:#dc2626;background:#fff1f3}.diagnostic-card div{display:flex;gap:8px;align-items:center;color:#667085;font-size:11px;text-transform:uppercase}.diagnostic-card code{border-radius:999px;background:#ffffffb8;padding:2px 7px;color:#344054;text-transform:none}.diagnostic-card strong{color:#101828}.diagnostic-card p,.diagnostic-card small{margin:0;color:#475467;font-size:12px;line-height:1.35}.welcome{display:grid;gap:9px;margin-bottom:16px}.welcome-demo,.guided-followup{display:grid;gap:6px;border-top:1px solid #edf0f4;padding-top:10px}.chat-space-attachments,.space-demo-observation{display:grid;gap:8px;max-width:92%;margin:10px 0 12px;border:1px solid rgba(22,101,52,.18);border-radius:8px;background:#f0fdf4;padding:10px}.space-demo-observation{border-color:#f59e0b52;background:#fffbeb}.chat-active-space-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 12px 10px;border:1px solid rgba(22,101,52,.22);border-radius:8px;background:#f0fdf4;padding:9px 10px;color:#14532d}.chat-active-space-banner div{display:grid;gap:2px;min-width:0}.chat-active-space-banner span{color:#166534;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.chat-active-space-banner strong{min-width:0;overflow:hidden;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.chat-active-space-banner button{flex:0 0 auto;min-height:32px;border:1px solid #166534;border-radius:8px;background:#166534;color:#fff;cursor:pointer;font-size:12px;font-weight:800;padding:6px 9px}.chat-space-attachments>div:first-child{display:grid;gap:2px}.welcome-demo span,.guided-followup span,.chat-space-attachments span,.space-demo-observation span{color:#667085;font-size:11px;font-weight:800;letter-spacing:0;text-transform:uppercase}.chat-space-attachments strong{min-width:0;overflow:hidden;color:#14532d;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.space-demo-observation button{width:100%;border:1px solid #f59e0b;border-radius:8px;background:#fff;color:#7c2d12;cursor:pointer;font-size:13px;font-weight:800;line-height:1.35;padding:9px 10px;text-align:left}.chat-space-attachment-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.chat-space-attachment-actions button:not(.chat-space-upload-all){display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid rgba(22,101,52,.28);border-radius:999px;background:#fffffff5;color:#166534;cursor:pointer;padding:0}.chat-space-attachment-actions button:not(.chat-space-upload-all):hover{border-color:#166534;background:#166534;color:#fff}.chat-space-attachment-actions button:disabled{cursor:not-allowed;opacity:.55}.chat-space-upload-all{min-height:34px;border:1px solid #166534;border-radius:8px;background:#166534;color:#fff;cursor:pointer;font-size:12px;font-weight:900;padding:7px 11px}.chat-space-attachment-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}.welcome-demo button,.guided-followup button{border-color:#f59e0b;background:#fffbeb;color:#7c2d12;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.guided-followup{max-width:92%;margin:10px 0 12px}.guided-followup button{width:100%}.welcome button,.toolbar button,.chat-input button,.save-actions button,.earthlet-list button{border:1px solid #d0d5dd;border-radius:999px;padding:8px 12px;background:#fff;cursor:pointer;text-align:left}.welcome button:hover,.toolbar button:hover,.chat-input button:hover,.save-actions button:hover{border-color:#98a2b3}.toolbar{border-top:1px solid #edf0f4;padding:10px 12px;display:grid;grid-template-columns:auto auto auto 1fr;gap:8px;align-items:start}.toolbar button:disabled{opacity:.45;cursor:not-allowed}.toolbar details{justify-self:end;position:relative}.toolbar summary{cursor:pointer;padding:8px 12px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;list-style:none}.earthlet-list{position:absolute;right:0;bottom:42px;width:min(360px,82vw);max-height:420px;overflow:auto;background:#fff;border:1px solid #d0d5dd;border-radius:8px;box-shadow:0 18px 48px #1018282e;padding:8px;z-index:20}.earthlet-list button{width:100%;border-radius:8px;display:grid;grid-template-columns:76px 1fr;gap:10px;align-items:center;margin-bottom:6px;padding:8px}.earthlet-list-preview{width:76px;height:48px;object-fit:cover;border-radius:10px;border:1px solid rgba(148,163,184,.34);box-shadow:0 10px 24px #0f172a1f}.earthlet-list-copy{min-width:0;display:grid;gap:2px}.earthlet-list-copy strong{overflow:hidden;color:#101828;text-overflow:ellipsis;white-space:nowrap}.earthlet-list-copy span{color:#667085;font-size:12px}.extended-preview-stage{min-height:100%;padding:32px;color:#192126;background:#f6f8f4;overflow:auto}.extended-preview-header{max-width:920px}.extended-preview-header span{display:inline-flex;padding:4px 8px;border:1px solid #9ba8a0;border-radius:6px;color:#445148;font-size:.78rem;text-transform:uppercase}.extended-preview-header h2{margin:14px 0 8px;font-size:2rem;line-height:1.1}.extended-preview-header p{max-width:760px;color:#4d5a55}.extended-preview-user-status{display:grid;gap:10px;max-width:760px;margin:22px 0;padding:16px;border:1px solid #b7c4bc;border-radius:8px;background:#fff}.extended-preview-user-status span{color:#192126;font-weight:700}.extended-preview-user-status p{margin:0;color:#405047;line-height:1.45}.extended-preview-user-status .extended-preview-next-step{color:#26362f}.extended-preview-user-status button{width:fit-content;min-width:180px;padding:10px 14px;border:1px solid #1f7a54;border-radius:8px;background:#1f7a54;color:#fff;font-weight:700}.extended-preview-user-status button:disabled{opacity:.58;cursor:wait}.extended-preview-rendered-earthlet{display:grid;gap:12px;max-width:min(1380px,100%);margin:22px 0;padding:14px;border:1px solid #b7c4bc;border-radius:8px;background:#fff}.extended-preview-rendered-header{display:grid;gap:4px;max-width:920px}.extended-preview-rendered-header span{color:#5b6963;font-size:.76rem;font-weight:800;text-transform:uppercase}.extended-preview-rendered-header strong{color:#192126;font-size:1.05rem}.extended-preview-rendered-header p,.extended-preview-render-missing p{margin:0;color:#405047;line-height:1.4}.extended-preview-rendered-earthlet .earthlet-stage{min-height:min(760px,calc(100vh - 180px));border:1px solid #d5ded8;border-radius:8px;overflow:hidden}.extended-preview-render-missing{max-width:760px;margin:18px 0;padding:14px;border:1px solid #d7a76e;border-radius:8px;background:#fff8ee}.extended-preview-render-missing strong{display:block;margin-bottom:6px;color:#7c3e08}.extended-preview-technical{max-width:980px;margin:0 0 20px}.extended-preview-technical summary{width:fit-content;cursor:pointer;color:#405047;font-size:.88rem}.extended-preview-status{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin:12px 0 0;max-width:980px}.extended-preview-status div,.extended-preview-grid section{border:1px solid #ccd6cf;border-radius:8px;background:#fff;padding:14px}.extended-preview-status span,.extended-preview-grid dt,.extended-preview-grid small{color:#5b6963;font-size:.78rem}.extended-preview-status strong{display:block;margin-top:6px}.extended-preview-build-diagnostics{margin-top:12px;padding:12px 14px;border:1px solid #d5ded8;border-radius:8px;background:#f8faf8}.extended-preview-build-diagnostics ul{margin:8px 0 0;padding-left:18px}.extended-preview-build-diagnostics li{color:#405047;font-size:.84rem;line-height:1.4}.extended-preview-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(260px,.8fr);gap:16px;max-width:1180px}.extended-preview-grid h3{margin:0 0 8px}.extended-preview-grid ul{margin:12px 0 0;padding:0;list-style:none}.extended-preview-grid li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:8px 0;border-top:1px solid #e2e8e4}.extended-preview-grid li strong{overflow-wrap:anywhere}.extended-preview-grid dl{margin:0 0 14px}.extended-preview-grid dl div{display:flex;justify-content:space-between;gap:16px;padding:6px 0;border-bottom:1px solid #e2e8e4}.extended-preview-grid dd{margin:0;font-weight:700}.extended-preview-grid button{width:100%;margin:6px 0 8px;padding:10px 12px;border-radius:8px;border:1px solid #a9b5ad;background:#e7ece8;color:#4d5a55}.extended-preview-errors{max-width:980px;margin-top:16px}.extended-preview-surface-review{position:absolute;top:16px;right:16px;z-index:35;width:min(380px,calc(100% - 32px));display:grid;gap:10px;padding:12px;border:1px solid rgba(30,45,37,.18);border-radius:8px;background:#fffffff0;box-shadow:0 14px 34px #19231e29;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.extended-preview-surface-review .extended-preview-user-status{padding:0;border:0;background:transparent}.extended-preview-surface-review .extended-preview-user-status button{width:100%;margin-top:8px}.extended-preview-surface-review .extended-preview-technical{margin:0}.extended-preview-surface-review .extended-preview-status{grid-template-columns:repeat(3,minmax(0,1fr))}.extended-promotion-review{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:16px;max-width:980px;margin:18px 0 0;padding:16px;border:1px solid #c4d2c8;border-radius:8px;background:#fff}.extended-promotion-review.compact{grid-template-columns:1fr;max-width:none;margin:0;padding:12px}.extended-promotion-review span{display:inline-flex;width:fit-content;padding:4px 8px;border:1px solid #8fa39a;border-radius:6px;color:#405047;font-size:.78rem;text-transform:uppercase}.extended-promotion-review h3{margin:10px 0 8px}.extended-promotion-review p{margin:0 0 8px;color:#405047;line-height:1.45}.extended-promotion-review ul{margin:0;padding-left:18px}.extended-promotion-review li{margin:0 0 6px;color:#26362f}.extended-promotion-review .extended-promotion-review-boundary{grid-column:1 / -1;margin:0;padding:10px 12px;border-radius:8px;background:#f3f6f4;color:#26362f;font-weight:700}@media(max-width:820px){.extended-preview-stage{padding:20px}.extended-preview-status,.extended-preview-grid,.extended-promotion-review,.extended-intake-lists{grid-template-columns:1fr}.extended-preview-surface-review{position:relative;top:auto;right:auto;width:auto;margin:12px}}.chat-input{border-top:1px solid #edf0f4;padding:12px;display:grid;grid-template-columns:1fr auto;gap:8px}.chat-input input,.save-panel input,.save-panel textarea,.recipe-repair-panel textarea,.recipe-author-panel input,.recipe-author-panel select,.recipe-author-panel textarea{width:100%;border:1px solid #d0d5dd;border-radius:8px;padding:9px 10px}.save-panel,.recipe-repair-panel,.recipe-author-panel{padding:12px;border-top:1px solid #edf0f4;display:grid;gap:10px}.save-panel label,.recipe-repair-panel label,.recipe-author-panel label{display:grid;gap:5px;color:#475467;font-size:13px}.save-panel textarea{min-height:88px;resize:vertical}.save-actions{display:flex;justify-content:flex-end;gap:8px}.recipe-repair-panel summary,.recipe-author-panel summary{cursor:pointer;font-weight:700}.recipe-repair-panel textarea,.recipe-author-panel textarea{min-height:130px;max-height:260px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.35}.recipe-repair-actions{display:flex;flex-wrap:wrap;gap:8px}.recipe-repair-result,.recipe-author-result{display:grid;gap:6px;border:1px solid #d0d5dd;border-radius:8px;background:#f8fafc;padding:10px;color:#344054;font-size:12px}.recipe-repair-result ul,.recipe-author-result ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.recipe-repair-result li,.recipe-author-result li{display:grid;gap:2px;border-left:3px solid #d97706;padding-left:8px}.recipe-repair-result small,.recipe-author-result small{color:#667085}.recipe-smart-fixes{display:grid;gap:10px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;padding:10px}.recipe-smart-fixes section{display:grid;gap:8px}.recipe-smart-fixes section>strong{color:#344054;font-size:13px}.recipe-param-editor,.recipe-module-replace,.recipe-edge-helper{display:grid;gap:6px;border-left:3px solid #2563eb;border-radius:6px;background:#f8fafc;padding:8px;color:#475467;font-size:12px}.recipe-param-editor input,.recipe-module-replace select{width:100%;border:1px solid #d0d5dd;border-radius:6px;padding:7px 8px;background:#fff}.recipe-module-replace,.recipe-edge-helper{border-left-color:#d97706}.recipe-edge-helper small{color:#667085}.recipe-param-source{color:#667085;font-size:11px;line-height:1.35}.start-stage,.earthlet-stage{height:100vh;position:relative}.earthlet-stage{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;background:radial-gradient(circle at 14% 8%,rgba(59,130,246,.16),transparent 32%),linear-gradient(135deg,#07111f,#0f172a 46%,#101827)}.earthlet-stage.has-insights{grid-template-columns:minmax(420px,1fr) minmax(380px,1fr);transition:grid-template-columns .22s ease}.earthlet-stage.has-insights.focus-map,.earthlet-stage.has-insights.focus-analysis{grid-template-columns:minmax(420px,1fr) minmax(380px,1fr)}.earthlet-stage.has-insights.analysis-collapsed{grid-template-columns:minmax(0,1fr) 100px}.earthlet-stage.has-insights.analysis-collapsed.focus-map{grid-template-columns:minmax(0,1fr) 100px!important}.earthlet-stage.has-insights .stage-title,.earthlet-stage.has-insights.focus-analysis .stage-title{top:86px;left:18px;right:auto;max-width:min(364px,calc(100% - 390px))}.earthlet-stage.has-insights.focus-analysis .stage-title{top:126px;width:auto;max-width:min(364px,calc(100% - 36px))}.earthlet-stage.has-insights .stage-title span,.earthlet-stage.has-insights.focus-analysis .stage-title span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.earthlet-stage.has-insights .t2e-map-viewport-action{top:190px}.earthlet-stage.has-insights.focus-analysis .t2e-map-viewport-action{top:232px}.earthlet-map-canvas{position:relative;min-width:0;min-height:0;overflow:hidden}.earthlet-map-canvas .t2e-canvas-map{height:100%;min-height:0}.t2e-layer-control,.t2e-colorbar{position:absolute;z-index:500;border:1px solid rgba(15,23,42,.12);background:#ffffffe6;box-shadow:0 18px 44px #0f172a2e;-webkit-backdrop-filter:blur(14px) saturate(1.12);backdrop-filter:blur(14px) saturate(1.12)}.t2e-layer-control{top:16px;right:16px;width:min(272px,calc(100% - 104px));max-height:min(34vh,190px);overflow:auto;border-radius:16px;padding:10px 11px}.t2e-layer-control-title{margin-bottom:7px;color:#0f172a;font-size:12px;font-weight:800;letter-spacing:-.01em}.t2e-layer-control-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center;min-height:22px;margin-top:5px;color:#334155;font-size:12px;line-height:1.25;cursor:pointer}.t2e-layer-control-row input{width:14px;height:14px;margin:0;accent-color:#2563eb}.t2e-layer-control-row span,.t2e-layer-control-row div{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t2e-colorbar{left:16px;right:16px;bottom:16px;border-radius:10px;padding:3px 8px}.t2e-colorbar-title{margin-bottom:2px;color:#334155;font-size:9px;font-weight:700;line-height:1}.t2e-colorbar-ramp{height:5px;border-radius:999px}.t2e-colorbar-scale{display:flex;justify-content:space-between;margin-top:1px;color:#334155;font-size:8px}.earthlet-map-canvas:has(.t2e-colorbar) .t2e-canvas-map-status{bottom:44px}.earthlet-stage.has-insights .t2e-canvas-map-status{display:none}.stage-title,.stage-diagnostic-overlay{position:absolute;left:18px;top:86px;z-index:510;max-width:min(440px,calc(100% - 330px));display:grid;gap:4px;background:#fffffff0;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:10px 12px;box-shadow:0 12px 30px #10182829}.stage-title{max-width:min(308px,calc(100% - 330px));gap:3px;border-radius:6px;padding:7px 8px;box-shadow:0 8px 22px #10182824;pointer-events:none}.earthlet-stage:not(.has-insights) .stage-title{max-width:min(336px,calc(100% - 330px))}.earthlet-stage:not(.has-insights) .t2e-map-viewport-action{top:190px}.stage-title strong{min-width:0;overflow:hidden;color:#1f2937;font-size:13px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.stage-title span{font-size:11px;color:#475467;line-height:1.25}.stage-diagnostic-overlay span,.stage-diagnostic-overlay small{font-size:13px;color:#475467;line-height:1.35}.stage-diagnostic-overlay{top:auto;bottom:18px;border-left:4px solid #d97706;max-width:min(520px,calc(100% - 36px))}.stage-diagnostic-overlay.error{border-left-color:#dc2626}.stage-diagnostic-overlay p{margin:0;color:#344054;font-size:13px;line-height:1.4}.stage-diagnostic-overlay summary{display:grid;gap:3px;cursor:pointer;list-style:none}.stage-diagnostic-overlay summary::-webkit-details-marker{display:none}.stage-diagnostic-overlay summary strong{min-width:0;overflow:hidden;color:#101828;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.stage-diagnostic-overlay[open] summary{margin-bottom:7px}.insight-rail{position:relative;z-index:20;width:100%;min-width:0;height:100%;display:flex;flex-direction:column;gap:10px;overflow:hidden;pointer-events:auto;border-left:1px solid rgba(226,232,240,.16);background:linear-gradient(180deg,#f8fafcfa,#eef4fff0),#f8fafc;padding:14px 16px 96px;box-shadow:-18px 0 54px #0f172a33}.insight-rail-toolbar{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:#ffffffd1;padding:9px 10px 9px 12px;box-shadow:0 14px 34px #0f172a14}.insight-rail-toolbar div{display:grid;min-width:0;gap:2px}.insight-rail-toolbar span{overflow:hidden;color:#64748b;font-size:10px;font-weight:850;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.insight-rail-toolbar strong{overflow:hidden;color:#0f172a;font-size:14px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.analysis-collapse-button,.analysis-rail-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;min-width:40px;height:40px;border:1px solid rgba(148,163,184,.32);border-radius:14px;background:#fff;color:#0f172a;cursor:pointer;box-shadow:0 14px 30px #0f172a1f}.insight-rail.is-collapsed{align-items:center;justify-content:flex-start;gap:14px;width:100px;max-width:100px;min-width:100px;padding:18px 10px;overflow:hidden}.insight-rail.is-collapsed span{color:#0f172a;font-size:12px;font-weight:900;letter-spacing:.08em;text-orientation:mixed;text-transform:uppercase;writing-mode:vertical-rl}.miniapp-control-panel{display:grid;flex:0 1 auto;gap:8px;max-height:min(330px,42vh);overflow:auto;border:1px solid rgba(34,197,94,.24);border-radius:18px;background:radial-gradient(circle at 12% 0%,rgba(34,197,94,.14),transparent 36%),linear-gradient(180deg,#fffffff0,#f0fdf4d6);padding:10px;box-shadow:0 18px 42px #0f172a14}.miniapp-control-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.miniapp-control-header span,.miniapp-control-grid label>span,.miniapp-thresholds label>span{color:#64748b;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.miniapp-control-header strong{color:#14532d;font-size:13px}.miniapp-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.miniapp-control-grid label,.miniapp-thresholds label{display:grid;gap:5px}.miniapp-control-grid select{min-width:0;width:100%;border:1px solid rgba(15,23,42,.14);border-radius:12px;background:#ffffffeb;color:#0f172a;padding:8px 9px;font:inherit;font-size:12px;font-weight:750}.miniapp-layer-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:120px;overflow:auto;padding-right:2px}.miniapp-layer-picker button{display:grid;gap:2px;min-height:42px;border:1px solid rgba(15,23,42,.12);border-radius:13px;background:#fffc;color:#334155;cursor:pointer;padding:7px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.miniapp-layer-picker button:hover,.miniapp-layer-picker button.is-active{border-color:#16a34a6b;box-shadow:0 14px 30px #16a34a29;transform:translateY(-1px)}.miniapp-layer-picker button.is-active{background:linear-gradient(180deg,#dcfce7f5,#ffffffdb)}.miniapp-layer-picker span{color:#0f172a;font-size:12px;font-weight:850;line-height:1.15}.miniapp-layer-picker small{color:#64748b;font-size:10px;line-height:1.25}.miniapp-thresholds{display:grid;gap:6px;border-top:1px solid rgba(22,163,74,.18);padding-top:8px}.miniapp-thresholds label{grid-template-columns:minmax(0,1fr) auto;align-items:center}.miniapp-thresholds select{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:12px;background:#ffffffeb;color:#14532d;padding:8px 9px;font:inherit;font-size:12px;font-weight:850}.miniapp-thresholds button{border:0;border-radius:999px;background:#14532d;color:#fff;cursor:pointer;padding:8px 12px;font-size:12px;font-weight:850;box-shadow:0 16px 34px #14532d38}.miniapp-control-grid select:disabled,.miniapp-layer-picker button:disabled,.miniapp-thresholds select:disabled,.miniapp-thresholds button:disabled{cursor:wait;opacity:.58}.runtime-status-dock{display:grid;gap:6px;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#ffffffc7;padding:9px 11px}.runtime-status-dock div{display:flex;align-items:center;justify-content:space-between;gap:10px}.runtime-status-dock span,.runtime-status-dock small{color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.runtime-status-dock strong{color:#0f172a;font-size:13px}.runtime-status-dock p{margin:0;color:#475569;font-size:12px;line-height:1.35}.runtime-status-dock.success{border-color:#16a34a47;background:linear-gradient(180deg,#f0fdf4f5,#ffffffd1)}.runtime-status-dock.info{border-color:#2563eb47;background:linear-gradient(180deg,#eff6fff5,#ffffffd1)}.runtime-status-dock.warning{border-color:#d9770657;background:linear-gradient(180deg,#fffbebf5,#ffffffd1)}.insight-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:#ffffffe0;padding:4px;box-shadow:0 14px 36px #1018281a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.insight-tabs button{border:0;border-radius:999px;background:transparent;color:#475467;cursor:pointer;padding:7px 10px;font-size:12px;font-weight:800}.insight-tabs button.is-active{background:#101828;color:#fff}.insight-tabs button:disabled{opacity:.42;cursor:not-allowed}.insight-panel{flex:1 1 auto;min-height:220px;overflow:auto;display:grid;align-content:start;gap:10px;padding:2px 4px 4px 0}.parameter-dock,.runtime-debug-dock{display:grid;gap:10px}.parameter-dock>p,.runtime-debug-dock>p{margin:0;color:#475467;font-size:12px;line-height:1.35;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#ffffffdb;padding:10px 12px}.parameter-grid{display:grid;gap:8px}.runtime-card{display:grid;gap:3px;border:1px solid rgba(148,163,184,.26);border-left:4px solid #2563eb;border-radius:14px;background:#ffffffeb;padding:11px 12px;box-shadow:0 14px 34px #0f172a14}.runtime-card.success{border-left-color:#16a34a}.runtime-card.warning{border-left-color:#d97706}.runtime-card.danger{border-left-color:#dc2626}.runtime-card span,.runtime-card small{min-width:0;overflow-wrap:anywhere;color:#667085;font-size:12px;line-height:1.35}.runtime-card strong{min-width:0;overflow-wrap:anywhere;color:#101828;font-size:15px;line-height:1.18}.runtime-layer-status{border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#ffffffdb;overflow:hidden}.runtime-layer-status summary{cursor:pointer;padding:10px 12px;color:#344054;font-size:12px;font-weight:800}.runtime-layer-status ul{display:grid;gap:6px;margin:0;padding:0 12px 12px;list-style:none}.runtime-layer-status li{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:8px;align-items:center;border-radius:10px;background:#f8fafce6;padding:7px 8px;color:#475467;font-size:12px}.runtime-layer-status li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runtime-layer-status li strong{color:#101828;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.runtime-layer-status li.error strong{color:#b42318}.recipe-inspector{position:absolute;left:18px;top:122px;z-index:512;width:min(430px,calc(100% - 36px));max-height:min(360px,calc(100% - 210px));overflow:auto;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:#fffffff0;color:#182230;box-shadow:0 16px 42px #0f172a2e;pointer-events:auto}.recipe-inspector summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;cursor:pointer;list-style:none;font-size:12px}.recipe-inspector summary::-webkit-details-marker{display:none}.recipe-inspector summary span{color:#667085;font-weight:700;text-transform:uppercase}.recipe-inspector summary strong{color:#101828;font-size:13px}.recipe-inspector-grid{display:grid;grid-template-columns:max-content 1fr;gap:5px 12px;border-top:1px solid rgba(15,23,42,.08);padding:10px 12px;font-size:12px}.recipe-inspector-grid span{color:#667085}.recipe-inspector-grid strong{min-width:0;overflow-wrap:anywhere}.recipe-inspector-warning{margin:0 12px 10px;border-left:3px solid #d97706;border-radius:6px;background:#fff7ed;padding:7px 9px;color:#9a3412;font-size:12px}.recipe-inspector-ops{margin:0;padding:0 12px 10px;list-style:none;display:grid;gap:6px}.recipe-inspector-ops li{display:grid;gap:2px;border-radius:6px;background:#f8fafceb;padding:7px 8px;font-size:12px}.recipe-inspector-ops code{color:#175cd3;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:11px;overflow-wrap:anywhere}.recipe-inspector-ops span{color:#475467;overflow-wrap:anywhere}.recipe-inspector-section{display:grid;gap:7px;border-top:1px solid rgba(15,23,42,.08);padding:9px 12px 10px}.recipe-inspector-section>strong{color:#344054;font-size:12px}.recipe-inspector-trace,.recipe-inspector-repairs{display:grid;gap:6px;margin:0;padding:0;list-style:none}.recipe-inspector-trace li,.recipe-inspector-repairs li{display:grid;gap:2px;border-radius:6px;background:#f8fafceb;padding:7px 8px;font-size:12px}.recipe-inspector-trace li{grid-template-columns:minmax(0,1fr) max-content;align-items:center}.recipe-inspector-trace code{min-width:0;overflow-wrap:anywhere;color:#175cd3;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:11px}.recipe-inspector-trace span,.recipe-inspector-repairs small,.recipe-inspector-ok{color:#667085;font-size:11px;line-height:1.35}.recipe-inspector-repairs span{color:#9a3412;font-size:12px;font-weight:700}.recipe-inspector-ok{margin:0}.recipe-inspector-cookbook{background:linear-gradient(180deg,#eef4ff6b,#fff0)}.recipe-inspector-card{display:grid;gap:3px;border-radius:6px;background:#f8fafcf0;padding:8px;font-size:12px}.recipe-inspector-card span{color:#101828;font-weight:700;overflow-wrap:anywhere}.recipe-inspector-card small{color:#667085;font-size:11px;line-height:1.35;overflow-wrap:anywhere}.recipe-json-export{display:grid;gap:7px;border-top:1px solid rgba(15,23,42,.08);padding:9px 12px 10px}.recipe-json-export span{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#344054;font-size:12px;font-weight:700}.recipe-json-export strong{border-radius:999px;background:#eef4ff;padding:3px 7px;color:#175cd3;font-size:11px}.recipe-json-export textarea{width:100%;min-height:92px;max-height:180px;resize:vertical;border:1px solid rgba(15,23,42,.14);border-radius:6px;background:#ffffffdb;padding:8px;color:#344054;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:11px;line-height:1.35}.recipe-inspector-invariants{display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid rgba(15,23,42,.08);padding:9px 12px 12px}.recipe-inspector-invariants span{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.recipe-inspector-invariants .ok{background:#ecfdf3;color:#027a48}.recipe-inspector-invariants .fail{background:#fff1f2;color:#be123c}.chart-dock,.analysis-dock{position:static;width:100%;display:grid;gap:12px}.user-explainer-summary{display:grid;gap:10px;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:#ffffffdb;padding:12px}.user-explainer-summary>header{display:grid;gap:3px}.user-explainer-summary>header span,.user-explainer-summary-section h3,.user-explainer-actions h3{margin:0;color:#475467;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.user-explainer-summary>header strong{color:#0f172a;font-size:15px;line-height:1.2}.user-explainer-summary-text{margin:0;color:#344054;font-size:13px;line-height:1.45}.user-explainer-summary-section{display:grid;gap:7px}.user-explainer-summary-section ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.user-explainer-summary-section li{position:relative;padding-left:15px;color:#344054;font-size:12px;line-height:1.4}.user-explainer-summary-section li:before{content:"";position:absolute;top:.58em;left:4px;width:6px;height:6px;border-radius:999px;background:#2563eb}.user-explainer-summary-section.limits li:before{background:#d97706}.user-explainer-choice-list,.user-explainer-actions div{display:flex;flex-wrap:wrap;gap:6px}.user-explainer-choice-list article,.user-explainer-actions span{border:1px solid rgba(148,163,184,.24);border-radius:999px;background:#f8fafce6;color:#344054;padding:6px 9px;font-size:12px;line-height:1.2}.user-explainer-choice-list article{display:inline-flex;gap:5px;align-items:baseline}.user-explainer-choice-list article span{color:#667085}.user-explainer-choice-list article strong{color:#101828;font-weight:850}.user-explainer-actions{display:grid;gap:7px}.user-explainer-actions span{background:#16a34a14;border-color:#16a34a2e;color:#166534}.analysis-dock p{margin:0;color:#475467;font-size:12px;line-height:1.35;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#ffffffdb;padding:10px 12px}.analysis-section-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;border:1px solid rgba(15,23,42,.1);border-radius:22px;background:radial-gradient(circle at 8% 0%,rgba(59,130,246,.1),transparent 34%),#ffffffc7;padding:8px}.analysis-section-tabs button{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;min-height:42px;border:0;border-radius:15px;background:#f8fafcd1;color:#475467;cursor:pointer;padding:9px 11px;font-size:12px;font-weight:850;line-height:1.12;text-align:left;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.analysis-section-tabs button.is-active{background:linear-gradient(135deg,#0f172a,#16233b),#0f172a;color:#fff;box-shadow:0 16px 34px #0f172a33;transform:translateY(-1px)}.analysis-section-tabs button span{color:inherit;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.analysis-section-header{display:flex;align-items:end;justify-content:space-between;gap:14px;border:1px solid rgba(148,163,184,.2);border-radius:18px;background:linear-gradient(135deg,#0f172af5,#1e293beb),#0f172a;padding:13px 15px;box-shadow:0 18px 38px #0f172a24}.analysis-section-header div{display:grid;min-width:0;gap:2px}.analysis-section-header span{color:#93c5fd;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.analysis-section-header strong{overflow:hidden;color:#fff;font-size:20px;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.analysis-section-header small{flex:0 0 auto;color:#cbd5e1;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.analysis-section-lead{border-color:#16a34a2e!important;background:radial-gradient(circle at 12% 0%,rgba(34,197,94,.12),transparent 38%),#ffffffe6!important}.analysis-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px}.analysis-item{display:grid;gap:2px;width:100%;border:1px solid rgba(148,163,184,.26);border-left:4px solid #2563eb;border-radius:14px;background:#ffffffeb;min-height:86px;padding:11px 12px;text-align:left;box-shadow:0 14px 34px #0f172a14;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.analysis-item.warning{border-left-color:#d97706}.analysis-item.danger{border-left-color:#dc2626}.analysis-item.success{border-left-color:#16a34a}.analysis-item.is-primary{grid-column:span 2;min-height:106px;border-left-width:6px;background:radial-gradient(circle at 12% 8%,rgba(37,99,235,.13),transparent 42%),#fffffff5}.analysis-item.is-context{grid-column:span 2}.analysis-item.is-method-context{border-left-color:#64748b;background:#f8fafcf0}.analysis-item.is-boundary{border-left-color:#d97706;background:#fffbebf0}.analysis-item.is-compact{min-height:74px;padding:9px 11px}.analysis-item:hover,.analysis-item.is-active,.chart-card:hover,.chart-card.is-active{border-color:#2563eb6b;box-shadow:0 18px 42px #2563eb2e;transform:translateY(-1px)}.analysis-item span,.analysis-item small{color:#667085;font-size:11px;line-height:1.25}.analysis-item strong{color:#101828;font-size:17px;line-height:1.1}.analysis-item.is-primary strong{font-size:24px;letter-spacing:-.02em}.analysis-item.is-context strong{font-size:18px}.dashboard-context-card{border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#f8fafcf0;box-shadow:0 12px 28px #0f172a0f}.dashboard-context-card summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:12px 14px;list-style:none}.dashboard-context-card summary::-webkit-details-marker{display:none}.dashboard-context-card summary span,.dashboard-boundary-list header span{color:#475467;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.dashboard-context-card summary strong,.dashboard-boundary-list header strong{color:#101828;font-size:13px}.dashboard-context-grid{display:grid;gap:8px;padding:0 12px 12px}.dashboard-context-grid article{display:grid;gap:2px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#ffffffc7;padding:9px 10px}.dashboard-context-grid article span,.dashboard-context-grid article small,.dashboard-boundary-list article span,.dashboard-boundary-list article small{color:#667085;font-size:11px;line-height:1.3}.dashboard-context-grid article strong,.dashboard-boundary-list article strong{color:#101828;font-size:14px;line-height:1.2}.dashboard-boundary-list{display:grid;gap:8px;border:1px solid rgba(217,119,6,.24);border-radius:16px;background:#fffbebe6;padding:12px}.dashboard-boundary-list header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-boundary-list article{display:grid;gap:2px;border:1px solid rgba(217,119,6,.16);border-radius:12px;background:#ffffffb8;padding:9px 10px}.dashboard-boundary-list article.pending{border-color:#2563eb2e}.dashboard-next-actions{display:grid;gap:8px;margin-top:14px;border:1px solid rgba(37,99,235,.16);border-radius:12px;background:#ffffffdb;padding:12px}.dashboard-next-actions header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dashboard-next-actions header span{color:#667085;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.dashboard-next-actions header strong{color:#1d4ed8;font-size:11px;font-weight:800;white-space:nowrap}.dashboard-next-actions ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.dashboard-next-actions li{position:relative;padding-left:18px;color:#344054;font-size:13px;line-height:1.4}.dashboard-next-actions li:before{content:"";position:absolute;top:.58em;left:4px;width:6px;height:6px;border-radius:999px;background:#2563eb}.chart-card{background:#ffffffeb;border:1px solid rgba(148,163,184,.26);border-radius:18px;padding:16px;box-shadow:0 14px 34px #0f172a14;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.metric-chart{display:grid;gap:3px}.metric-chart span,.metric-chart small,.chart-scale{color:#667085;font-size:12px}.metric-chart strong{font-size:24px;line-height:1.1}.metric-chart p{margin:3px 0 0;color:#475467;font-size:12px;line-height:1.35}.series-chart{display:grid;gap:10px}.chart-status-card{display:grid;gap:10px;background:linear-gradient(145deg,#fffbebf5,#ffffffeb);border-color:#f59e0b6b}.chart-status-card p{margin:0;color:#78350f;font-size:13px;line-height:1.45}.series-chart-header{display:flex;align-items:start;justify-content:space-between;gap:10px}.series-chart-header strong{color:#0f172a;font-size:14px;line-height:1.2}.series-chart-header span{flex:0 0 auto;border-radius:999px;background:#eff6ff;color:#1e40af;padding:4px 7px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.chart-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.chart-stat-grid span{display:grid;gap:2px;min-width:0;border:1px solid rgba(148,163,184,.22);border-radius:12px;background:linear-gradient(180deg,#f8fafcf5,#ffffffd1),#fff;padding:7px 8px}.chart-stat-grid small{color:#64748b;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.chart-stat-grid strong{overflow:hidden;color:#0f172a;font-size:12px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.line-chart{width:100%;height:clamp(260px,36vh,380px);overflow:visible;border-radius:16px;background:linear-gradient(180deg,#eff6fff5,#ffffff7a),#f8fafc}.line-chart .chart-axis-line{stroke:#0f172a80;stroke-width:.9}.line-chart .chart-grid-line{stroke:#47556952;stroke-width:.72;stroke-dasharray:3 3}.line-chart .chart-grid-line-vertical{stroke:#64748b2e;stroke-dasharray:2 4}.line-chart .chart-area{fill:#2563eb24}.line-chart .chart-line{fill:none;stroke:#2563eb;stroke-width:3.25;stroke-linecap:round;stroke-linejoin:round}.line-chart .chart-line-series-1{stroke:#f97316}.line-chart .chart-line-series-2{stroke:#0f766e}.line-chart circle{fill:#fff;stroke:#2563eb;stroke-width:2.35;cursor:pointer}.line-chart .chart-y-label,.line-chart .chart-x-label,.line-chart .chart-series-end-label,.line-chart .chart-point-label{fill:#334155;font-size:4.7px;font-weight:850;paint-order:stroke;stroke:#fffffff0;stroke-width:2.8px;stroke-linejoin:round;text-anchor:start}.line-chart .chart-x-label{fill:#475569;font-size:4.35px;text-anchor:middle}.line-chart .chart-point-label{fill:#0f172a;font-size:4.3px;text-anchor:middle}.line-chart .chart-series-end-label{font-size:3.9px;text-anchor:end}.line-chart .chart-series-end-label.chart-point-series-0{fill:#2563eb}.line-chart .chart-series-end-label.chart-point-series-1{fill:#f97316}.line-chart .chart-series-end-label.chart-point-series-2{fill:#0f766e}.line-chart circle.chart-point-series-1{stroke:#f97316}.line-chart circle.chart-point-series-2{stroke:#0f766e}.line-chart circle:hover,.line-chart circle.is-active{fill:#2563eb;stroke:#fff}.chart-legend{display:flex;flex-wrap:wrap;gap:7px 10px;margin-top:-4px}.chart-legend span{display:inline-flex;align-items:center;gap:5px;color:#475467;font-size:11px;font-weight:800}.chart-legend-swatch{width:14px;height:4px;border-radius:999px;background:#2563eb}.chart-legend-swatch.chart-line-series-1{background:#f97316}.chart-legend-swatch.chart-line-series-2{background:#0f766e}.bar-chart{min-height:138px;display:grid;align-items:stretch;gap:7px}.bar-chart button{display:grid;grid-template-rows:auto minmax(80px,1fr) auto;gap:5px;min-height:126px;width:100%;border:0;padding:0;background:transparent;cursor:pointer}.bar-chart button:hover,.bar-chart button.is-active{transform:translateY(-1px)}.bar-value{color:#0f172a;font-size:11px;font-weight:850;line-height:1.1}.bar-track{position:relative;display:block;overflow:hidden;min-height:80px;border-radius:10px 10px 6px 6px;background:linear-gradient(180deg,#e2e8f09e,#f8fafceb),#f8fafc}.bar-fill{position:absolute;right:0;bottom:0;left:0;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#93c5fd,#1d4ed8);box-shadow:inset 0 2px #ffffff61}.bar-chart button:hover .bar-fill,.bar-chart button.is-active .bar-fill{background:linear-gradient(180deg,#bfdbfe,#2563eb 48%,#1e40af);box-shadow:inset 0 2px #ffffff7a,0 0 0 3px #2563eb29}.bar-label{overflow:hidden;color:#667085;font-size:10px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.chart-scale{display:flex;justify-content:space-between}.chart-narrative{margin:0;border-left:3px solid rgba(37,99,235,.34);color:#475467;font-size:12px;line-height:1.35;padding-left:9px}.chart-provenance{margin:-2px 0 0;border-radius:999px;background:#10b9811a;color:#065f46;display:inline-flex;justify-self:start;max-width:100%;overflow:hidden;padding:5px 8px;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:850;letter-spacing:.02em}.chart-provenance.pending,.chart-provenance.unavailable{background:#f59e0b1f;color:#92400e}.analysis-table-dock{display:grid;gap:10px}.analysis-table-card{overflow:hidden;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#ffffffe6;box-shadow:0 14px 34px #0f172a14}.analysis-table-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;align-items:center;cursor:pointer;list-style:none;padding:13px 15px}.analysis-table-card summary::-webkit-details-marker{display:none}.analysis-table-card summary span{color:#64748b;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.analysis-table-card summary strong{overflow:hidden;color:#0f172a;font-size:15px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.analysis-table-card summary small{grid-row:1 / span 2;grid-column:2;border-radius:999px;background:#eff6ff;color:#1e40af;padding:5px 8px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.analysis-table-card>p{margin:0 15px 12px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:#f8fafcdb;padding:10px 12px;color:#475569;font-size:12px;line-height:1.4}.analysis-table-scroll{max-height:310px;overflow:auto;border-top:1px solid rgba(148,163,184,.16)}.analysis-table-card table{width:100%;border-collapse:collapse;min-width:560px;color:#334155;font-size:12px}.analysis-table-card th,.analysis-table-card td{border-bottom:1px solid rgba(148,163,184,.16);padding:9px 10px;text-align:left;vertical-align:top}.analysis-table-card th{position:sticky;z-index:1;top:0;background:#f8fafcfa;color:#475569;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.analysis-table-card th small{display:block;margin-top:2px;color:#94a3b8;font-size:9px}.analysis-table-card td{line-height:1.35}.analysis-table-card tr:last-child td{border-bottom:0}.analysis-table-card .align-right{text-align:right}.analysis-table-card .align-center{text-align:center}.analysis-table-card .chart-provenance{margin:10px 15px 14px}.split-divider{position:absolute;top:0;bottom:0;z-index:505;width:42px;border:0;padding:0;background:transparent;cursor:ew-resize;pointer-events:auto;touch-action:none;transform:translate(-50%)}.split-divider:before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 1.5px);width:3px;border-radius:999px;background:#ffffffeb;box-shadow:0 0 0 1px #11182738,0 0 18px #11182747}.split-divider:after{content:"";position:absolute;top:50%;left:50%;width:34px;height:54px;border:1px solid rgba(17,24,39,.16);border-radius:999px;background:linear-gradient(90deg,transparent 10px,rgba(17,24,39,.24) 10px 12px,transparent 12px 22px,rgba(17,24,39,.24) 22px 24px,transparent 24px),#ffffffeb;box-shadow:0 14px 34px #0f172a42;transform:translate(-50%,-50%);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.split-divider:hover:after,.split-divider:focus-visible:after,.is-dragging-split .split-divider:after{background:linear-gradient(90deg,transparent 10px,rgba(17,24,39,.38) 10px 12px,transparent 12px 22px,rgba(17,24,39,.38) 22px 24px,transparent 24px),#fffffffa;box-shadow:0 18px 42px #0f172a57;transform:translate(-50%,-50%) scale(1.04)}.split-divider:focus-visible{outline:3px solid rgba(37,99,235,.42);outline-offset:6px}.is-dragging-split{-webkit-user-select:none;user-select:none}.split-label{position:absolute;bottom:52px;z-index:510;max-width:min(280px,38%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid rgba(0,0,0,.14);border-radius:999px;background:#fffffff0;padding:6px 10px;color:#344054;font-size:12px;font-weight:700;box-shadow:0 8px 24px #10182824}.split-label.left{left:18px}.split-label.right{right:18px}.earthlet-stage.has-insights.focus-analysis .split-label{bottom:52px;max-width:min(220px,calc(50% - 28px))}.t2e-map-timeline{position:absolute;left:18px;right:18px;bottom:16px;z-index:515;display:grid;gap:7px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:#fffffff2;padding:9px 12px;box-shadow:0 14px 34px #0f172a2e}.t2e-map-timeline-header{display:flex;justify-content:space-between;gap:12px;color:#344054;font-size:12px}.t2e-map-timeline input{width:100%;accent-color:#2563eb}.t2e-map-timeline-steps{display:grid;grid-auto-flow:column;gap:4px}.t2e-map-timeline-steps button{height:5px;border:0;border-radius:999px;background:#d0d5dd;cursor:pointer}.t2e-map-timeline-steps button.is-active,.t2e-map-timeline-steps button:hover{background:#2563eb}.animation-media-panel-stack{position:absolute;left:18px;bottom:104px;z-index:516;width:min(300px,calc(100% - 36px));display:grid;gap:8px;pointer-events:auto}.animation-media-panel{width:100%;display:grid;gap:8px;border:1px solid rgba(15,23,42,.14);border-left:4px solid #2563eb;border-radius:16px;background:#fffffff0;padding:10px;box-shadow:0 18px 46px #0f172a3d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.animation-media-panel.ready{border-left-color:#16a34a}.animation-media-panel.failed{border-left-color:#dc2626}.animation-media-panel.disabled{border-left-color:#d97706}.animation-media-panel div{display:grid;gap:2px}.animation-media-panel span,.animation-media-panel small,.animation-media-panel p{margin:0;color:#475569;font-size:12px;line-height:1.35}.animation-media-panel span{color:#2563eb;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.animation-media-panel.ready span{color:#15803d}.animation-media-panel.failed span{color:#b42318}.animation-media-panel strong{color:#0f172a;font-size:14px;line-height:1.15}.animation-media-panel img{width:100%;max-height:180px;object-fit:cover;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#0f172a}.animation-media-panel video{width:100%;max-height:180px;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#0f172a}@media(max-width:900px){.app-shell{display:block;min-height:100dvh}.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-header>*,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-header>*,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-header p,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .messages,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .toolbar,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .chat-input,.app-shell:has(.earthlet-stage.has-insights.focus-analysis):not(.chat-active) .save-panel,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-header p,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .messages,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .toolbar,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .chat-input,.app-shell:has(.earthlet-stage.has-insights.analysis-collapsed):not(.chat-active) .save-panel{opacity:1;pointer-events:auto}.chat-column{border-right:none;border-bottom:1px solid #d8dee8}.chat-panel{height:auto;min-height:360px}.stage-column,.start-stage,.earthlet-stage{height:auto;min-height:620px}.earthlet-stage,.earthlet-stage.has-insights,.earthlet-stage.has-insights.focus-map,.earthlet-stage.has-insights.focus-analysis{grid-template-columns:1fr;grid-template-rows:minmax(430px,58dvh) auto;overflow:visible}.earthlet-map-canvas{min-height:430px}.insight-rail{height:auto;max-height:none;border-left:0;border-top:1px solid rgba(226,232,240,.4);padding:14px 12px 18px;box-shadow:0 -20px 48px #0f172a24}.recipe-inspector{left:12px;top:118px;width:min(360px,calc(100% - 24px));max-height:210px}.split-label{display:none}.stage-title{left:14px;top:114px;max-width:min(266px,calc(100% - 28px));padding:6px 7px}.stage-title strong{font-size:12px;line-height:1.15}.stage-title span{font-size:10px;line-height:1.25}.t2e-layer-control{top:12px;right:12px;width:min(260px,calc(100% - 74px));max-height:98px;border-radius:14px;padding:8px 9px}.t2e-layer-control-title{margin-bottom:4px;font-size:11px}.t2e-layer-control-row{min-height:20px;margin-top:3px;font-size:11px}.t2e-colorbar{left:12px;right:12px;bottom:12px;padding:3px 8px;border-radius:10px}.t2e-colorbar-title{display:none}.animation-media-panel-stack{left:12px;right:12px;bottom:86px;width:auto}.animation-media-panel{padding:8px}.animation-media-panel img{max-height:120px}.earthlet-map-canvas:has(.t2e-colorbar) .t2e-canvas-map-status{bottom:40px}}@media(min-width:901px)and (max-width:1280px){.app-shell{grid-template-columns:clamp(340px,36vw,460px) minmax(0,1fr)}.earthlet-stage.has-insights{grid-template-columns:1fr;grid-template-rows:minmax(500px,62vh) minmax(0,1fr)}.earthlet-stage.has-insights.analysis-collapsed{grid-template-columns:minmax(0,1fr) 100px;grid-template-rows:1fr;height:100vh;overflow:hidden}.earthlet-stage.has-insights.analysis-collapsed.focus-map{grid-template-columns:minmax(0,1fr) 100px!important;grid-template-rows:1fr}.insight-rail{height:100%;min-height:0;grid-template-rows:auto auto auto auto minmax(0,1fr);border-left:0;border-top:1px solid rgba(226,232,240,.4);padding:12px 14px 16px;box-shadow:0 -18px 44px #0f172a24}.earthlet-stage.has-insights.analysis-collapsed .insight-rail{height:100%;border-top:0;border-left:1px solid rgba(226,232,240,.62);padding:18px 10px;box-shadow:-20px 0 48px #0f172a24}.stage-title,.earthlet-stage:not(.has-insights) .stage-title{max-width:min(308px,calc(100% - 320px))}}@media(max-width:720px){.history-panel{width:100vw;height:100dvh;padding:18px}.history-backdrop{background:#0f172a85;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.history-switch{min-height:66px}.history-actions{justify-content:stretch}.history-rename,.history-delete{flex:1}.stage-title{left:12px;top:114px;max-width:calc(100% - 24px)}.stage-title span{display:none}.insight-tabs{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:20px}.insight-tabs button{padding:8px 9px}}.chat-spaces-header button,.chat-spaces-list button,.chat-spaces-list a,.space-header button,.space-header a,.space-toolbar button,.space-assistant-actions button,.space-editor-actions button,.space-tone-row button,.space-note-list button,.space-comment-submit{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;cursor:pointer;font-weight:700}.chat-spaces-panel{position:absolute;z-index:2200;top:calc(100% + 8px);right:12px;left:12px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;max-height:min(420px,calc(100vh - 112px));padding:14px;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:#fffffff5;box-shadow:0 22px 54px #0f172a38;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.chat-spaces-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-spaces-header div{display:grid;gap:2px}.chat-spaces-header span,.space-header span,.space-rail-section>span,.space-editor>span,.space-assistant span,.space-comment-box span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.chat-spaces-header strong{color:#0f172a;font-size:16px}.chat-spaces-header button{padding:7px 10px}.chat-spaces-list{display:grid;gap:8px;min-height:0;overflow:auto}.chat-space-create{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;border:1px solid #dbe3ed;border-radius:8px;background:#f8fafc;padding:10px}.chat-space-create label{display:grid;gap:5px;color:#475569;font-size:12px;font-weight:800;text-transform:uppercase}.chat-space-create input{min-width:0;height:36px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:7px 9px;color:#0f172a;font-size:14px;text-transform:none}.chat-space-create button{min-height:36px;padding:7px 10px}.chat-active-space{margin:0;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4;padding:8px 10px;color:#166534;font-size:13px;font-weight:700}.chat-spaces-list button,.chat-spaces-list a{display:grid;gap:4px;min-height:74px;padding:10px 11px;text-align:left;text-decoration:none}.chat-spaces-list .chat-space-create button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 10px;text-align:center}.chat-spaces-list button:hover,.chat-spaces-list a:hover,.space-toolbar button:hover,.space-assistant-actions button:hover,.space-note-list button:hover,.space-header button:hover,.space-header a:hover{border-color:#64748b}.chat-spaces-list button:disabled,.space-assistant-actions button:disabled,.space-editor-actions button:disabled,.space-comment-submit:disabled{cursor:not-allowed;opacity:.55}.chat-spaces-list strong,.space-note-list strong{min-width:0;overflow:hidden;color:#0f172a;text-overflow:ellipsis;white-space:nowrap}.chat-spaces-list span{display:-webkit-box;overflow:hidden;color:#475569;font-size:13px;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.space-layer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:720;pointer-events:none}.space-target-pin{position:absolute;width:18px;height:18px;border:3px solid #dc2626;border-radius:999px;background:#ffffffeb;box-shadow:0 0 0 4px #dc26262e,0 8px 18px #0f172a3d;transform:translate(-50%,-50%)}.space-map-label{position:absolute;display:grid;width:186px;max-width:min(390px,calc(100vw - 32px));border:1px solid rgba(15,23,42,.18);border-radius:8px;background:#fffffff5;padding:0;color:#0f172a;box-shadow:0 10px 26px #0f172a2e;transform:translate(-50%,calc(-100% - 16px));transition:width .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease;pointer-events:auto}.space-map-label:after{content:"";position:absolute;left:50%;bottom:-9px;width:14px;height:14px;border-right:1px solid rgba(15,23,42,.18);border-bottom:1px solid rgba(15,23,42,.18);background:#fffffff5;transform:translate(-50%) rotate(45deg)}.space-map-label[data-pending-environmental=true]{border-color:#166534;box-shadow:0 0 0 3px #16653424,0 18px 36px #0f172a3d}.space-map-label:hover,.space-map-label:focus-within,.space-map-label.is-expanded{width:390px;z-index:2;box-shadow:0 22px 52px #0f172a47;transform:translate(-50%,calc(-100% - 20px)) scale(1.015)}.space-label-summary{display:grid;gap:2px;width:100%;min-width:0;border:0;border-radius:8px;background:transparent;padding:7px 10px 8px;color:inherit;cursor:pointer;text-align:left}.space-label-summary strong{min-width:0;overflow:hidden;color:#0f172a;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.space-label-detail{display:grid;gap:8px;border-top:1px solid rgba(15,23,42,.08);padding:0 10px 10px}.space-label-detail p{margin:0;color:#334155;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.space-label-data{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;align-items:stretch;overflow:hidden}.space-label-data.no-image{grid-template-columns:minmax(0,1fr)}.space-label-data a{display:block;width:130px;height:92px;border-radius:7px;overflow:hidden}.space-label-data img{width:100%;height:100%;border-radius:6px;object-fit:cover}.space-label-data dl{display:grid;gap:4px;margin:0}.space-label-data div{display:flex;justify-content:space-between;gap:8px}.space-label-data dt,.space-label-data dd{margin:0;font-size:11px;line-height:1.2}.space-label-data dt{color:#64748b}.space-label-data dd{color:#0f172a;font-weight:800}.space-shell{min-height:100vh;display:grid;grid-template-rows:auto minmax(0,1fr);background:#eef2f6;color:#0f172a}.space-shell.loading,.space-shell.error{place-items:center;padding:24px}.space-shell.error section{display:grid;gap:10px;width:min(420px,100%);border:1px solid #e2e8f0;border-left:4px solid #dc2626;border-radius:8px;background:#fff;padding:16px}.space-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:12px 18px;border-bottom:1px solid #d8dee8;background:#fff}.space-header h1{margin:2px 0;color:#0f172a;font-size:20px;line-height:1.1}.space-header p{margin:0;color:#475569;font-size:13px}.space-header nav{display:flex;gap:8px;align-items:center}.space-header button,.space-header a{min-height:36px;padding:8px 11px;text-decoration:none}.space-workbench{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,28vw,430px);min-height:0}.space-map-column{position:relative;min-width:0;min-height:0}.space-toolbar{position:absolute;z-index:740;top:18px;left:18px;display:inline-flex;gap:8px;padding:8px;border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#fffffff0;box-shadow:0 16px 38px #0f172a29}.space-toolbar button{min-width:72px;min-height:34px;padding:7px 10px}.space-toolbar button.is-active,.space-tone-row button.is-active{border-color:#175cd3;background:#175cd3;color:#fff}.space-map-shell{position:relative;height:100%;min-height:0;overflow:hidden;background:#0f172a}.space-map-shell.tool-label .t2e-canvas-map-interaction,.space-map-shell.tool-sticky .t2e-canvas-map-interaction,.space-map-shell.tool-marker .t2e-canvas-map-interaction{cursor:crosshair}.space-map-title{position:absolute;z-index:700;left:18px;bottom:18px;display:grid;gap:4px;max-width:min(520px,calc(100% - 36px));border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#fffffff0;padding:10px 12px;box-shadow:0 16px 38px #0f172a29}.space-map-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-map-title span{display:-webkit-box;overflow:hidden;color:#475569;font-size:13px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.space-map-missing{display:grid;place-content:center;gap:8px;height:100%;padding:24px;color:#475569;text-align:center}.space-rail{display:grid;align-content:start;gap:12px;min-width:0;min-height:0;overflow:auto;border-left:1px solid #d8dee8;background:#fff;padding:14px}.space-rail-section,.space-assistant,.space-editor{display:grid;gap:9px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:11px}.space-assistant{background:#f9fafb}.space-assistant>div{display:grid;gap:3px}.space-assistant strong{color:#0f172a;font-size:15px;line-height:1.2}.space-assistant small{color:#475569;font-size:12px;line-height:1.35}.space-assistant form{display:grid;gap:8px}.space-assistant textarea{width:100%;min-height:92px;resize:vertical;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;padding:9px 10px;font:inherit;line-height:1.35}.space-assistant-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.space-assistant-actions button{min-height:34px;min-width:0;padding:7px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.space-assistant-actions button.primary{border-color:#166534;background:#166534;color:#fff}.space-assistant-log{display:grid;gap:7px;max-height:190px;overflow:auto}.space-assistant-log p{display:grid;gap:3px;margin:0;border:1px solid #e2e8f0;border-radius:8px;background:#fff;padding:8px}.space-assistant-log p.user{border-color:#bfdbfe;background:#eff6ff}.space-assistant-log strong{font-size:12px}.space-assistant-log span{color:#334155;font-size:13px;line-height:1.35;text-transform:none}.space-participant-list{display:flex;flex-wrap:wrap;gap:7px}.space-participant-list span{display:inline-flex;align-items:center;gap:6px;min-height:28px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;padding:4px 8px;color:#334155;font-size:12px;font-weight:700}.space-participant-list span.is-you{border-color:#86efac;background:#f0fdf4}.space-participant-list i{width:9px;height:9px;border-radius:999px}.space-editor input,.space-editor textarea,.space-comment-box textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;padding:9px 10px}.space-editor textarea,.space-comment-box textarea{min-height:96px;resize:vertical}.space-tone-row{display:flex;flex-wrap:wrap;gap:6px}.space-tone-row button{min-height:30px;padding:5px 8px;color:#334155;font-size:12px}.space-editor-actions{display:flex;justify-content:flex-end;gap:8px}.space-editor-actions button,.space-comment-submit{min-height:34px;padding:7px 10px}.space-editor-actions button.primary,.space-comment-submit{border-color:#166534;background:#166534;color:#fff}.space-note-list{display:grid;gap:8px}.space-note-list button{display:grid;gap:4px;min-height:68px;padding:9px 10px;text-align:left}.space-note-list button.is-active{border-color:#175cd3;background:#eff6ff}.space-note-list small{color:#64748b;font-size:12px}.space-note-list span{display:-webkit-box;overflow:hidden;color:#475569;font-size:13px;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.space-note-list em{border-top:1px solid #e2e8f0;color:#334155;font-size:12px;font-style:normal;line-height:1.35;padding-top:6px}.space-rail-section p{margin:0;color:#475569;font-size:13px;line-height:1.35}.selected-note article{display:grid;gap:6px;border:1px solid #dbe3ed;border-radius:8px;background:#fff;padding:10px}.selected-note small{color:#64748b}.space-comments{display:grid;gap:7px}.space-comments p{display:grid;gap:3px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;padding:8px}.space-comments strong{color:#0f172a;font-size:12px}.space-comments span{color:#334155;font-size:13px;line-height:1.35}.space-comment-box{display:grid;gap:6px}@media(max-width:900px){.stage-title{right:18px;max-width:none}.chat-spaces-panel{left:10px;right:10px;max-height:min(360px,calc(100vh - 112px))}.space-header{align-items:flex-start;flex-direction:column}.space-workbench{grid-template-columns:1fr;grid-template-rows:minmax(58vh,1fr) auto}.space-toolbar{top:12px;left:12px;max-width:calc(100% - 24px);overflow-x:auto}.space-toolbar button{min-width:68px}.space-map-title{left:12px;right:12px;bottom:12px;max-width:none}.space-rail{max-height:42vh;border-top:1px solid #d8dee8;border-left:0}.space-assistant-actions{grid-template-columns:1fr}}
