/* School Cabinet builder — metallic/chrome BLUE theme (owner color map, 2026-10-26): deep blue-black, chrome blue, ice highlights. */
:root { --plum:#060d1f; --plum2:#0b1a38; --pink:#1e7ef0; --pink2:#8fc6ff; --gold:#a9d6ff; --cream:#eef6ff; --ink:#0a1c3f; }
* { box-sizing:border-box; }
body { margin:0; font-family:Georgia,'Times New Roman',serif; background:var(--plum); color:var(--cream); }
.hero { padding:3rem 1.25rem 1.5rem; text-align:center; background:radial-gradient(ellipse at top, #14407e, var(--plum)); }
.hero .kicker { letter-spacing:.25em; text-transform:uppercase; color:var(--gold); font-size:.8rem; margin:0 0 .5rem; }
.hero h1 { font-size:2.8rem; margin:.2rem 0; color:#fff; text-shadow:0 0 24px rgba(46,143,255,.55); }
.hero .tag { font-size:1.15rem; max-width:42rem; margin:.5rem auto; }
.hero .tag strong { color:var(--pink2); }
.hero-sub { color:var(--gold); font-style:italic; }
main { max-width:56rem; margin:0 auto; padding:0 1rem 3rem; }
.card { background:var(--plum2); border:1px solid rgba(169,214,255,.35); border-radius:1rem; padding:1.5rem; margin:1.25rem 0; box-shadow:0 8px 30px rgba(0,0,0,.45); }
.card h2 { color:var(--gold); margin-top:0; }
.plans { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
@media (max-width:640px){ .plans{ grid-template-columns:1fr; } .grid3{ grid-template-columns:1fr !important; } }
.plan-card { border:2px solid var(--pink); border-radius:.75rem; padding:1rem; background:rgba(46,143,255,.08); }
.plan-card h3 { margin:.2rem 0; color:#fff; }
.plan-card .price { font-size:1.8rem; color:var(--gold); }
.plan-card .unit { color:var(--pink2); font-size:.9rem; }
.btn { display:inline-block; border:none; cursor:pointer; border-radius:999px; padding:.65rem 1.3rem; font-size:1rem; font-family:inherit; text-decoration:none; }
.btn.pink { background:var(--pink); color:#fff; box-shadow:0 0 16px rgba(46,143,255,.5); }
.btn.gold { background:var(--gold); color:var(--ink); }
.btn.ghost { background:transparent; color:var(--gold); border:1px solid var(--gold); }
.btn.big { font-size:1.15rem; padding:.85rem 1.8rem; }
label { display:block; margin:.7rem 0; }
input, select { width:100%; padding:.55rem; border-radius:.5rem; border:1px solid rgba(169,214,255,.5); background:#fff; color:var(--ink); font-size:1rem; margin-top:.25rem; }
fieldset { border:1px dashed rgba(143,198,255,.6); border-radius:.75rem; margin:1rem 0; }
legend { color:var(--pink2); padding:0 .5rem; }
.kid-row { display:grid; grid-template-columns:2fr 1fr 1fr; gap:.5rem; }
.grid3 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:.75rem; }
.state-summary { background:rgba(169,214,255,.10); border-left:4px solid var(--gold); border-radius:.5rem; padding:.9rem 1rem; margin:.5rem 0 1rem; }
.state-summary h4 { margin:.2rem 0 .5rem; color:var(--gold); }
.msg { min-height:1.2em; color:var(--pink2); }
#planOut { margin-top:1.25rem; }
#planOut .gen { background:#fff; color:var(--ink); border-radius:.75rem; padding:1.25rem; }
#planOut .gen h3 { color:#0f4da8; margin-top:0; }
#planOut table { width:100%; border-collapse:collapse; margin:.5rem 0 1rem; }
#planOut td, #planOut th { border:1px solid #c9dcf2; padding:.4rem .6rem; text-align:left; }
.disclaimer { font-size:.85rem; opacity:.85; background:rgba(0,0,0,.35); border-radius:.5rem; padding:.8rem 1rem; }
.backlink a { color:var(--gold); }
.cta-row { margin-top:1rem; }
#myPlans li { margin:.35rem 0; }
.fineprint { font-size:.85rem; opacity:.85; }
hr { border:none; border-top:1px solid rgba(169,214,255,.3); margin:1.25rem 0; }
