:root{--bg:#e7f1fb;--card:#fff;--ink:#122238;--muted:#5a6b82;--accent:#1f7ae0;--accent-ink:#fff;--line:#cfdcef;--good:#1f9d63;--bad:#e5484d;
  --display:"Baloo 2","Trebuchet MS",system-ui,sans-serif;--body:"Nunito","Segoe UI",system-ui,sans-serif;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0f1826;--card:#17233a;--ink:#e8f0fb;--muted:#9db0cc;--accent:#5aa6ff;--accent-ink:#0c1930;--good:#3fc98a;--bad:#ff6b6f;--line:#243a5a}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;padding:0 0 60px}
.wrap{max-width:760px;margin:0 auto;padding:24px 16px;display:flex;flex-direction:column;gap:18px}
h1{font-family:var(--display);font-size:1.9rem;font-weight:800;margin:0}
h2{font-family:var(--display);font-size:1.15rem;font-weight:800;margin:0 0 8px}
p{margin:0;line-height:1.55}
a{color:var(--accent);font-weight:700;text-decoration:none}
.panel{background:var(--card);border:2px solid var(--line);border-radius:20px;padding:22px}
.tip{color:var(--muted);font-size:.9rem}
input,select{font:inherit;background:var(--bg);color:var(--ink);border:2px solid var(--line);border-radius:10px;padding:9px 12px;width:100%}
button,.btn{font:inherit;font-family:var(--display);font-weight:800;background:var(--accent);color:var(--accent-ink);border:none;border-radius:10px;padding:10px 20px;cursor:pointer;text-align:center;text-decoration:none;display:inline-block}
button.ghost,.btn.ghost{background:var(--bg);color:var(--ink);border:2px solid var(--line)}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.plancard{background:var(--card);border:2px solid var(--line);border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:10px;text-align:center}
.plancard .price{font-family:var(--display);font-size:2rem;font-weight:800}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th,td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left}
th{color:var(--muted);font-weight:800;text-transform:uppercase;font-size:.7rem}
.top{display:flex;justify-content:space-between;align-items:center;padding:16px;max-width:760px;margin:0 auto}
.err{color:var(--bad)}
