:root{color-scheme:light;--ink:#102027;--muted:#60717a;--brand:#087f5b;--soft:#eef8f4;--danger:#b42318;--line:#e4ece8}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#fbfdfc}.page{max-width:1120px;margin:auto;padding:32px 20px}.hero{display:grid;grid-gap:28px;gap:28px;grid-template-columns:1.1fr .9fr;align-items:center;min-height:78vh}.card,.panel{background:white;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 16px 50px #10202712}.badge,.eyebrow{display:inline-flex;border-radius:999px;background:var(--soft);color:var(--brand);font-weight:700;padding:8px 12px}h1{font-size:clamp(40px,7vw,74px);line-height:.95;margin:20px 0}h2{font-size:32px}p{color:var(--muted);font-size:18px;line-height:1.55}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:16px;gap:16px}.button,button{border:0;border-radius:14px;background:var(--brand);color:white;padding:14px 18px;font-weight:800;text-decoration:none;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:8px}.button:hover,button:hover{filter:brightness(.96)}button:disabled{background:#aab8b2;cursor:not-allowed;filter:none}input,select{width:100%;padding:14px;border:1px solid #cfdad5;border-radius:14px;font:inherit}.actions,.steps{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.actions{align-items:center}.chart{display:grid;grid-gap:8px;gap:8px}.bar{height:28px;border-radius:8px;background:linear-gradient(90deg,var(--brand) var(--w),#e9f1ee var(--w))}.muted{color:var(--muted)}.error{color:var(--danger);background:#fff1f0;border:1px solid #ffd7d2;border-radius:12px;padding:12px}.notice{background:#f4faf7;border:1px solid var(--line);border-radius:12px;padding:12px}.product-card{transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.product-card.selected{border-color:var(--brand);box-shadow:0 16px 50px #087f5b24;transform:translateY(-1px)}.chip{background:#eef8f4;color:var(--brand)}.chip[aria-pressed=true]{background:var(--brand);color:white}@media(max-width:760px){.hero{grid-template-columns:1fr}h1{font-size:44px}.page{padding:20px 14px}.button,button{width:100%}}