:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:radial-gradient(circle at top, #f472b62e, transparent 30%), linear-gradient(180deg, #020617 0%, #0f172a 58%, #111827 100%);--panel:#0f172ad1;--panel-muted:#0f172aa3;--border:#94a3b82e;--text-strong:#f8fafc;--text-soft:#cbd5e1;--accent:#f472b6;--accent-soft-text:#fbcfe8;--shadow:0 28px 90px #02061757;color:var(--text-soft);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:#020617}body{background:var(--bg);min-width:320px;min-height:100svh;margin:0;overflow-x:clip}body,button,input,select{font:inherit}button,input,select{margin:0}#root{min-height:100svh;overflow-x:clip}h1,h2,h3,p{margin:0}h1,h2,h3,strong{color:var(--text-strong)}h1{letter-spacing:-.055em;font-size:clamp(2.4rem,4.5vw,4.9rem);line-height:.94}h2{letter-spacing:-.03em;font-size:clamp(1.4rem,2vw,2rem);line-height:1.02}h3{font-size:1.04rem;line-height:1.18}a{color:inherit}sup{font-size:.72em}.app-shell{width:min(1380px,100% - 28px);padding:calc(18px + env(safe-area-inset-top)) env(safe-area-inset-right) calc(32px + env(safe-area-inset-bottom)) env(safe-area-inset-left);margin:0 auto}.panel,.step-card,.stat-card,.summary-card,.placeholder-card,.detail-card,.notes-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.hero-card{gap:22px;margin-bottom:18px;padding:6px 0 12px;display:grid}.eyebrow,.section-kicker,.step-index{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.hero-copy,.placeholder-card p,.step-intro,.wizard-intro,.message-list,.detail-card span,.step-copy small,.hero-meta span{color:var(--text-soft)}.summary-card,.detail-card,.placeholder-card,.notes-card{border-radius:8px;padding:16px 18px}.panel-header h2,.stat-card strong,.summary-card strong,.detail-card strong,.notes-card h3,.choice-card strong,.step-copy strong{color:var(--text-strong)}.workspace-grid{gap:18px;display:grid}.panel{border-radius:10px;min-width:0;padding:20px}.panel-wizard,.panel-results{align-content:start;gap:16px;min-width:0;display:grid}.panel-header{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.panel-header>*{min-width:0}.step-card{border-radius:8px;overflow:hidden}.step-card-open{border-color:#f472b666}.step-trigger{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr auto;gap:14px;padding:16px 18px;display:grid}.step-copy{gap:4px;min-width:0;display:grid}.step-status{background:var(--panel-muted);border:1px solid var(--border);height:fit-content;color:var(--text-soft);border-radius:999px;align-items:center;padding:6px 12px;font-size:.88rem;display:inline-flex}.step-status-complete{color:var(--text-strong);background:#22c55e24;border-color:#22c55e57}.step-body{border-top:1px solid var(--border);gap:18px;padding:0 18px 18px;display:grid}.unit-row,.viewer-toolbar,.viewer-toolbar-actions,.zoom-controls,.step-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.viewer-toolbar-actions{justify-content:flex-end}.wizard-intro{color:var(--text-soft);overflow-wrap:anywhere;margin:0}.viewer-layout{gap:12px;min-width:0;display:grid}.viewer-stage,.viewer-sidebar{align-content:start;gap:12px;min-width:0;display:grid}.segmented-inline{flex-wrap:wrap;gap:8px;display:flex}.chip,.primary-button,.secondary-button,.choice-card,.field-control input,.step-trigger{transition:border-color .16s,background-color .16s,transform .16s}.chip,.primary-button,.secondary-button,.choice-card{border:1px solid var(--border);background:var(--panel-muted);color:var(--text-strong);cursor:pointer;border-radius:6px}.chip{min-height:38px;padding:0 12px}.icon-chip{justify-content:center;align-items:center;width:38px;min-width:38px;padding:0;display:inline-flex}.icon-chip svg{width:18px;height:18px}.chip-active,.choice-card-active{background:#f472b624;border-color:#f472b66b}.primary-button,.secondary-button{min-height:46px;padding:0 16px;font-weight:600}.step-actions .primary-button{min-width:0}.primary-button{background:linear-gradient(135deg,#f472b64d,#6366f133)}.secondary-button{background:var(--panel-muted)}.primary-button:disabled,.secondary-button:disabled{opacity:.45;cursor:not-allowed}.fields-grid,.choice-grid,.stats-grid,.details-grid{gap:12px;display:grid}.choice-card{text-align:left;gap:6px;padding:16px;display:grid}.choice-card span{color:var(--text-soft);font-size:.94rem}.field{gap:8px;display:grid}.field span{color:var(--text-soft);font-size:.92rem}.field-control{position:relative}.summary-card{background:linear-gradient(135deg,#f472b629,#6366f11a);gap:6px;display:grid}.summary-card span,.stat-card span{color:var(--accent-soft-text);text-transform:uppercase;letter-spacing:.08em;font-size:.84rem}.stats-board{gap:12px;min-width:0;display:grid}.stat-card{background:linear-gradient(#0f172ad6,#0f172aa3);border-radius:8px;gap:6px;min-width:0;padding:14px 16px;display:grid}.stat-card strong,.stat-card p,.summary-card strong,.summary-card p,.detail-card strong,.step-copy small,.step-copy strong{overflow-wrap:anywhere}.stat-card p{color:var(--text-soft);margin:0;font-size:.94rem}.summary-card p{color:var(--text-soft);margin:0}.occupancy-inline{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.occupancy-inline-copy{gap:4px;display:grid}.occupancy-inline-copy small{color:var(--text-soft);font-size:.86rem}.occupancy-ring-center{background:#0f172af5;border:1px solid #94a3b81f;border-radius:999px;place-items:center;width:48px;height:48px;display:grid}.scene-frame{background:linear-gradient(#020617a6,#0f172aeb);border:1px solid #94a3b82e;border-radius:8px;min-height:390px;position:relative;overflow:hidden}.scene-frame canvas{display:block;width:100%!important;height:100%!important}.scene-feedback-link{z-index:2;min-height:32px;color:var(--accent);text-underline-offset:.18em;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 2px;font-size:.82rem;font-weight:700;text-decoration:underline;display:inline-flex;position:absolute;top:12px;right:12px}.scene-feedback-link:focus-visible{outline-offset:3px;outline:2px solid #f472b699}.feedback-modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020617b3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.feedback-modal{border:1px solid var(--border);width:min(100%,520px);box-shadow:var(--shadow);background:#0f172afa;border-radius:12px;gap:18px;padding:20px;display:grid}.feedback-modal-header,.feedback-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.feedback-modal-header h3{color:var(--text-strong);margin:4px 0 0}.feedback-form{gap:14px;display:grid}.feedback-form input,.feedback-form textarea{border:1px solid var(--border);width:100%;color:var(--text-strong);font:inherit;background:#0f172ac2;border-radius:10px;padding:14px}.feedback-form textarea{resize:vertical;min-height:130px}.feedback-form input:focus,.feedback-form textarea:focus{outline-offset:2px;outline:2px solid #f472b699}.feedback-status{color:var(--text-soft);margin:0}.feedback-success{text-align:center;justify-items:center;gap:12px;padding:8px 0 4px;display:grid}.feedback-success strong{color:var(--text-strong);font-size:1.05rem}.feedback-success p,.feedback-success small{color:var(--text-soft);margin:0}.feedback-success-icon{color:#86efac;background:#22c55e1f;border:1px solid #86efac47;border-radius:999px;place-items:center;width:64px;height:64px;display:grid}.feedback-success-icon svg{width:32px;height:32px}@media (width<=640px){.feedback-modal{padding:18px}.feedback-actions{flex-direction:column;align-items:stretch}.feedback-actions .primary-button,.feedback-actions .secondary-button{width:100%}}.scene-loading{text-align:center;place-content:center;gap:8px;min-height:390px;padding:24px;display:grid}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.detail-card{gap:6px;min-width:0;display:grid}.notes-card{gap:10px;display:grid}.message-list{margin:0;padding-left:18px}.message-list-error li{color:#fecaca}.zoom-controls span{text-align:center;min-width:3rem;color:var(--text-strong)}code{background:#0f172ae6;border-radius:4px;padding:2px 6px}.field-control input{border:1px solid var(--border);width:100%;min-height:54px;color:var(--text-strong);font:inherit;background:#0f172ac2;border-radius:6px;padding:0 56px 0 14px}.field-control input[aria-invalid=true]{background:#7f1d1d24;border-color:#f87171d1}.field-control em{color:var(--text-soft);font-style:normal;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.field-control input:focus,.choice-card:focus-visible,.chip:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.step-trigger:focus-visible{outline-offset:2px;outline:2px solid #f472b699}.algorithm-card{background:linear-gradient(#0f172ad6,#0f172ab3);gap:10px;display:grid}.algorithm-card span,.stat-card span{color:var(--accent-soft-text);text-transform:uppercase;letter-spacing:.08em;font-size:.84rem}.placeholder-card{gap:8px;display:grid}.occupancy-ring{border-radius:999px;place-items:center;width:74px;height:74px;display:grid;position:relative}@media (width>=780px){.hero-card{gap:12px}.fields-grid-two,.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fields-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-board{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start}}@media (width>=1160px){.workspace-grid{grid-template-columns:minmax(390px,460px) minmax(0,1fr);align-items:start}.stats-board{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-layout{grid-template-columns:minmax(0,1fr) 300px}}@media (width<=779px){.app-shell{width:100%;padding:calc(10px + env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.panel{padding:14px}.hero-card{padding:4px 0 10px}.panel-header{gap:8px}.wizard-intro{font-size:.96rem}.step-trigger{grid-template-columns:1fr;gap:10px;padding:14px}.step-status{width:fit-content}.step-body{gap:16px;padding:0 14px 14px}.step-copy small{font-size:.9rem;line-height:1.35}.unit-row,.viewer-toolbar,.viewer-toolbar-actions,.zoom-controls,.step-actions{align-items:stretch}.unit-row{flex-direction:column}.segmented-inline{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.segmented-inline::-webkit-scrollbar{display:none}.segmented-inline .chip{flex:none}.choice-card{padding:14px}.field-control input{min-height:52px;font-size:16px}.step-actions{flex-direction:column}.step-actions .primary-button,.step-actions .secondary-button{width:100%}.step-back-button{display:none}.details-grid{grid-template-columns:1fr}.occupancy-inline{align-items:flex-start}.scene-frame{min-height:320px}.viewer-layout{gap:10px}.viewer-sidebar{grid-template-columns:1fr}.viewer-toolbar{gap:10px}.viewer-toolbar-actions{justify-content:space-between}.zoom-controls{gap:8px}.summary-card,.detail-card,.placeholder-card,.notes-card,.stat-card{padding:14px}}
