:root { --bg:#fff; --fg:#1a1a1a; --muted:#666; --line:#e3e3e3; --accent:#e8590c; --ok:#1a7f37; --err:#c62828; }
@media (prefers-color-scheme: dark) { :root { --bg:#141414; --fg:#f2f2f2; --muted:#9a9a9a; --line:#333; --ok:#3fb950; --err:#ff6b6b; } }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.5 system-ui, sans-serif; background:var(--bg); color:var(--fg); }
main { max-width:860px; margin:0 auto; padding:32px 16px; }
h1 { margin:0 0 4px; } .muted { color:var(--muted); }
.langs { float:right; display:inline-flex; border:1px solid var(--line); border-radius:999px; padding:2px; }
.langs button { background:none; border:0; border-radius:999px; padding:4px 10px; cursor:pointer; color:var(--muted); font:inherit; font-size:.85rem; font-weight:600; }
.langs button[aria-pressed=true] { background:var(--accent); color:#fff; }
.toggle { display:inline-flex; border:1px solid var(--line); border-radius:8px; overflow:hidden; margin:16px 0; }
.toggle button { border:0; background:none; color:var(--fg); padding:8px 16px; cursor:pointer; font:inherit; }
.toggle button.on { background:var(--accent); color:#fff; }
.plans { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.plan { border:1px solid var(--line); border-radius:12px; padding:24px; }
.plan h2 { margin:0; } .price { font-size:2rem; font-weight:700; margin:8px 0; }
.price s { font-size:1.1rem; font-weight:400; color:var(--muted); margin-right:6px; }
.then { margin:-4px 0 8px; font-size:.9rem; }
.promo { margin:16px 0; }
.promo label { display:block; font-size:.85rem; color:var(--muted); margin-bottom:4px; }
.promo-row { display:flex; gap:8px; }
.promo-row input { flex:1; min-width:0; padding:8px 10px; border:1px solid var(--line); border-radius:8px; font:inherit; background:var(--bg); color:var(--fg); text-transform:uppercase; }
.promo-row input:read-only { color:var(--muted); }
.promo-row .btn { padding:8px 14px; }
.promo-row .btn:disabled, .btn:disabled { opacity:.6; cursor:default; }
.promo-msg { margin:6px 0 0; font-size:.88rem; min-height:1.3em; }
.promo-msg.ok { color:var(--ok); } .promo-msg.err { color:var(--err); }
.btn { display:inline-block; border:0; border-radius:8px; background:var(--accent); color:#fff; padding:10px 18px; font:inherit; cursor:pointer; text-decoration:none; }
.btn.secondary { background:none; color:var(--fg); border:1px solid var(--line); }
input[type=email] { padding:10px; border:1px solid var(--line); border-radius:8px; font:inherit; background:var(--bg); color:var(--fg); width:100%; max-width:320px; }
.bar { height:10px; background:var(--line); border-radius:5px; overflow:hidden; margin:8px 0; }
.bar > div { height:100%; background:var(--accent); }
.card { border:1px solid var(--line); border-radius:12px; padding:24px; margin:16px 0; }
.social-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 0; }
.ok-badge { color:var(--ok); margin-right:8px; }
.notice { padding:12px 16px; border-radius:8px; border:1px solid var(--line); margin:16px 0; }
