@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;600&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#1e293b;background:#f8fafc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh;background:#f8fafc}.topbar{height:72px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:10}.brand{border:0;background:none;font-size:20px;font-weight:800;color:#0f2d48;display:flex;gap:10px;align-items:center;cursor:pointer}.brand span span{color:#f59e0b}.brand-mark{background:#0f2d48;color:#fff;width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.topbar nav{display:flex;gap:5px}.nav{border:0;background:none;padding:10px 12px;border-radius:8px;color:#64748b;display:flex;gap:6px;align-items:center;cursor:pointer}.nav:hover,.nav.active{background:#eff6ff;color:#0f2d48}.hero{position:relative;overflow:hidden;min-height:620px;background:#0f2d48;color:#fff;padding:100px 7%;display:flex;align-items:center;gap:8%}.grid-bg{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.08;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:40px 40px}.hero-copy{position:relative;max-width:700px}.eyebrow{font:600 12px JetBrains Mono,monospace;letter-spacing:2px;color:#f59e0b}.hero h1{font-size:clamp(44px,6vw,76px);line-height:1.02;margin:18px 0}.hero h1 em{font-style:normal;color:#f59e0b}.hero p{font-size:19px;line-height:1.7;color:#cbd5e1;max-width:650px}.actions{display:flex;gap:12px;margin-top:30px}.primary,.secondary{border:0;border-radius:10px;padding:13px 18px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:#f59e0b;color:#172033}.primary:hover{background:#d97706}.secondary{background:#fff;color:#0f2d48;border:1px solid #cbd5e1}.hero .secondary{background:transparent;color:#fff;border-color:#64748b}.house-card{position:relative;width:330px;height:330px;border:1px solid #49647d;border-radius:24px;background:linear-gradient(145deg,#173d5c,#0a2035);display:grid;place-items:center;box-shadow:0 30px 80px #0005}.mini-house{font-size:180px;color:#f59e0b}.floating{position:absolute;background:#fff;color:#0f2d48;padding:12px 16px;border-radius:10px;font-weight:700;box-shadow:0 10px 30px #0004}.f1{top:35px;left:-50px}.f2{right:-55px;top:120px}.f3{bottom:40px;left:-25px}.section{padding:80px 7%}.section-title{display:flex;gap:15px;align-items:center}.section-title span{font:600 13px JetBrains Mono;color:#f59e0b}.section-title h2{font-size:34px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid article{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:30px}.feature-grid svg{color:#f59e0b}.feature-grid h3{font-size:20px}.feature-grid p{color:#64748b;line-height:1.6}.challenge-banner{margin:20px 7% 80px;padding:45px;border-radius:20px;background:linear-gradient(120deg,#0f2d48,#1a4a7a);color:#fff;display:flex;justify-content:space-between;align-items:center}.challenge-banner h2{font-size:32px;margin:8px 0}.challenge-banner p{color:#cbd5e1}.page{max-width:1400px;margin:auto;padding:45px 5% 80px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.page-head h1{font-size:42px;margin:8px 0}.page-head p{color:#64748b}.estimator-grid,.sim-grid,.budget-grid,.challenge-grid{display:grid;grid-template-columns:420px 1fr;gap:24px}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;margin-bottom:20px}.panel h2{font-size:18px;margin:0 0 18px;color:#0f2d48}.panel h2:not(:first-child){margin-top:28px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head span{font-size:12px;color:#10b981}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:block;font-size:12px;font-weight:700;color:#475569;margin:12px 0}input,select{width:100%;margin-top:7px;padding:11px 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font:inherit;color:#1e293b}input:focus,select:focus{outline:2px solid #93c5fd;border-color:#3b82f6}.checks{display:flex;gap:15px;flex-wrap:wrap}.checks label{display:flex;gap:6px;align-items:center}.checks input{width:auto;margin:0}.live-area{background:#eff6ff;border-radius:10px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.live-area strong{color:#0f2d48}.quality{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quality{margin-bottom:12px}.quality button{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:10px;cursor:pointer;font-weight:600}.quality button.active{border-color:#f59e0b;background:#fff7ed;color:#92400e}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px}.stat-card span{display:block;color:#64748b;font-size:12px}.stat-card strong{display:block;font-size:22px;margin-top:7px;color:#0f2d48}.stat-card.main{background:#0f2d48;color:#fff}.stat-card.main strong{color:#fff}.stat-card.success{border-left:4px solid #10b981}.stat-card.danger{border-left:4px solid #ef4444}.results table{width:100%;border-collapse:collapse}.results th,.results td{text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;font-size:13px}.results th{color:#64748b}.totals{margin-top:18px;display:flex;flex-direction:column;gap:9px}.totals span,.totals strong{display:flex;justify-content:space-between}.totals strong{font-size:18px;border-top:1px solid #e2e8f0;padding-top:14px;color:#0f2d48}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.controls label{font-size:14px}.controls input[type=range]{padding:0}.curve{height:260px;background:#eff6ff;border-radius:12px;display:flex;align-items:end;padding:25px;overflow:hidden}.curve div{width:100%;background:#f59e0b;border-radius:8px 8px 0 0;min-height:25px;display:flex;align-items:flex-start;justify-content:center;padding-top:10px;color:#172033;font-weight:800}.muted{color:#64748b}.budget-grid{grid-template-columns:1fr 1fr}.big-input{font-size:30px;font-weight:800}.budget-meter{height:18px;background:#e2e8f0;border-radius:20px;overflow:hidden;margin:30px 0}.budget-meter div{height:100%;background:#f59e0b}.budget-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #e2e8f0}.budget-result{padding:18px;border-radius:10px;margin-top:20px;font-weight:700}.budget-result.ok{background:#ecfdf5;color:#047857}.budget-result.bad{background:#fef2f2;color:#b91c1c}.phase{display:grid;grid-template-columns:130px 1fr 110px;gap:12px;align-items:center;margin:18px 0}.phase div{height:9px;background:#e2e8f0;border-radius:9px;overflow:hidden}.phase i{display:block;height:100%;background:#f59e0b}.phase b{text-align:right}.challenge-hero{background:#0f2d48;color:#fff;border-radius:20px;padding:50px;margin-bottom:25px}.challenge-hero h1{font-size:48px;margin:10px 0}.challenge-hero p{color:#cbd5e1;font-size:18px}.challenge-grid{grid-template-columns:1fr 360px}.challenge-total{font-size:38px;font-weight:800;padding:25px;border-radius:14px;margin:25px 0;text-align:center}.challenge-total small{display:block;font-size:13px;margin-top:5px}.challenge-total.good{background:#ecfdf5;color:#047857}.challenge-total.bad{background:#fef2f2;color:#b91c1c}.full{width:100%}.score-card{text-align:center}.trophy{font-size:45px}.score{font-size:90px;font-weight:800;color:#f59e0b}.score-card p{color:#64748b}.score-row{display:flex;justify-content:space-between;padding:12px;border-bottom:1px solid #e2e8f0}footer{text-align:center;padding:30px;color:#64748b;border-top:1px solid #e2e8f0;font-size:12px}@media(max-width:1000px){.hero{padding:70px 5%;flex-direction:column;align-items:flex-start}.house-card{align-self:center}.estimator-grid,.sim-grid,.budget-grid,.challenge-grid{grid-template-columns:1fr}.summary{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:1fr}.topbar nav{overflow:auto}.page-head{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.topbar{padding:0 14px}.brand{font-size:17px}.nav{padding:8px;font-size:11px}.nav svg{display:none}.hero h1{font-size:44px}.house-card{width:100%;height:250px}.mini-house{font-size:130px}.f1{left:10px}.f2{right:10px}.f3{left:20px}.challenge-banner{margin:15px;padding:28px;flex-direction:column;align-items:flex-start;gap:20px}.page{padding:30px 14px}.page-head h1{font-size:32px}.summary,.two,.quick-grid{grid-template-columns:1fr}.results{overflow:hidden}.results table{font-size:11px}.results th,.results td{padding:8px}.phase{grid-template-columns:100px 1fr}.phase b{grid-column:2;text-align:left}.challenge-hero h1{font-size:36px}}
