:root{--fg:#111;--muted:#555;--bg:#fff;--card:#f5f5f7;--accent:#4f46e5}
@media(prefers-color-scheme:dark){:root{--fg:#eee;--muted:#aaa;--bg:#0b0b0f;--card:#17171d}}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,sans-serif;color:var(--fg);background:var(--bg)}
.wrap{max-width:960px;margin:0 auto;padding:1.5rem}a{color:var(--accent)}
.nav{display:flex;justify-content:space-between;align-items:center}.nav nav a{margin-left:1rem}.brand{font-weight:700;text-decoration:none;color:var(--fg)}
.hero{text-align:center;padding:4rem 1.5rem}.hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;margin:0 0 1rem}.sub{color:var(--muted);font-size:1.2rem}
.waitlist{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:2rem}.waitlist input{padding:.75rem;border:1px solid #ccc;border-radius:8px;min-width:260px;font:inherit}
.waitlist .note{flex-basis:100%;color:var(--muted);font-size:.9rem}.hp{position:absolute;left:-9999px}
button,.btn{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:.75rem 1.25rem;font:inherit;cursor:pointer;text-decoration:none;display:inline-block}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card{background:var(--card);border-radius:12px;padding:1.25rem}
.price{max-width:360px}.amount{font-size:2rem;font-weight:700}.amount span{font-size:1rem;color:var(--muted)}
details{background:var(--card);border-radius:8px;padding:.75rem 1rem;margin:.5rem 0}summary{cursor:pointer;font-weight:600}
.cta{text-align:center}footer{color:var(--muted);font-size:.9rem}.legal{max-width:720px}
h1{line-height:1.2}.lead{font-size:1.1rem;color:var(--muted)}.crumbs{font-size:.85rem;color:var(--muted)}
form.calc{background:var(--card);border-radius:12px;padding:1rem;margin:1rem 0}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.6rem}
.fields label{display:flex;flex-direction:column;font-size:.85rem;gap:.2rem}.fields label.chk{flex-direction:row;align-items:center;gap:.4rem}
.fields input,.fields select{padding:.5rem;border:1px solid #ccc;border-radius:6px;font:inherit;background:var(--bg);color:var(--fg)}
form.calc details{background:transparent;padding:.3rem 0}
.results{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.8rem}table.res{flex:1 1 260px;border-collapse:collapse;background:var(--bg);border-radius:8px}
table.res caption{font-weight:700;text-align:left;padding:.4rem 0}table.res td{padding:.3rem .6rem;border-bottom:1px solid #8883}table.res td:last-child{text-align:right;font-variant-numeric:tabular-nums}
tr.tot td{font-weight:700}tr.pos td:last-child{color:#15803d;font-weight:700}tr.neg td:last-child{color:#b91c1c;font-weight:700}
.extras-out{font-size:.9rem}.cta-track{margin:.6rem 0 0}.notice{border-left:4px solid #f59e0b;padding:.5rem .8rem;background:#f59e0b18}
.tbl{overflow-x:auto}table.fees{border-collapse:collapse;width:100%;font-size:.9rem}table.fees td,table.fees th{border-bottom:1px solid #8883;padding:.4rem;text-align:left;vertical-align:top}
.badge{font-size:.7rem;background:#4f46e522;border-radius:4px;padding:0 .3rem}.badge.warn{background:#f59e0b44}
.log time{font-variant-numeric:tabular-nums;color:var(--muted)}.links{columns:2}.preview{max-width:100%;height:auto;border-radius:12px}
a.card{text-decoration:none;color:inherit}.hp{position:absolute;left:-9999px}
.btn.disabled{opacity:.55;cursor:not-allowed;pointer-events:none}
