:root{--text:#5b6170;--text-h:#101828;--bg:#f5f7fb;--panel:#fff;--border:#d8dfeb;--code-bg:#eef2ff;--accent:#4f46e5;--accent-bg:#4f46e51a;--accent-border:#4f46e559;--shadow:0 18px 40px #0f172a14;--sans:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--heading:Inter, system-ui, sans-serif;font:16px/1.5 var(--sans);letter-spacing:.01em;color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(#eef2ff 0%,#f8fafc 100%)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}body,button,input,select{font:inherit}#root{width:min(1440px,100%);min-height:100vh;margin:0 auto}h1,h2,h3,p,ul,ol{margin-top:0}h1,h2,h3{color:var(--text-h);line-height:1.1}h1{margin-bottom:12px;font-size:clamp(2.4rem,5vw,4.4rem)}h2{font-size:1.35rem}h3{font-size:1rem}button{transition:all .2s}button:hover{transform:translateY(-1px)}.app-shell{text-align:left;padding:32px}.hero-section{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px;padding-bottom:28px;display:grid}.eyebrow,.section-kicker,.metric-label{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-size:12px;font-weight:700}.hero-copy{max-width:760px;font-size:18px}.hero-card,.panel,.score-card,.option-card,.constraint-item,.strategy-list article{border:1px solid var(--border);box-shadow:var(--shadow);background:#ffffff05;border-radius:20px}.hero-card{align-content:start;gap:18px;padding:20px;display:grid}.hero-card strong,.summary-meta strong,.score-card strong,.option-topline strong{color:var(--text-h)}.main-grid{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:24px;margin-top:28px;display:grid}.results-column{gap:24px;display:grid}.panel{padding:22px}.panel-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.panel-header h2,.option-card h3,.constraint-item h3{margin:4px 0 0}.ghost-button,.toggle-chip{border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);cursor:pointer;font:inherit;border-radius:999px;padding:10px 14px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}label{gap:8px;display:grid}.address-field{grid-column:1/-1}.address-field small{color:var(--text);opacity:.82;margin-top:-2px;font-size:12px;line-height:1.5}label span,.summary-meta span,.score-card span,.strategy-list span,.constraint-header span,.option-card p span{color:var(--text);font-size:13px;font-weight:700}input,select{box-sizing:border-box;border:1px solid var(--border);width:100%;font:inherit;color:var(--text-h);background:var(--bg);border-radius:12px;padding:12px 14px}.toggle-grid{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.toggle-chip.active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.summary-lead{color:var(--text-h);margin-bottom:18px;font-size:20px}.summary-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.score-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.score-card{gap:8px;padding:16px;display:grid}.score-card.good{border-color:#22c55e59}.score-card.medium{border-color:#f59e0b59}.score-card.bad{border-color:#ef444459}.option-list,.constraint-list,.strategy-list,.next-steps-list{gap:14px;display:grid}.option-card{padding:18px}.option-topline,.constraint-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.option-card ul,.next-steps-list{margin:14px 0;padding-left:20px}.badge,.pill{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge-very-likely,.badge-likely,.pill-low{color:#15803d;background:#22c55e1f}.badge-possible,.pill-medium{color:#b45309;background:#f59e0b24}.badge-unlikely,.badge-not-suitable,.pill-high{color:#b91c1c;background:#ef444424}.two-up{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.constraint-item,.strategy-list article{padding:16px}.next-steps-list{margin:0}@media (width<=1024px){.app-shell{padding:20px}.hero-section,.main-grid,.two-up,.score-grid,.summary-meta,.form-grid{grid-template-columns:1fr}}
