:root { color-scheme: light dark; --fg:#1c1b1f; --bg:#fffbf7; --accent:#00695c; --muted:#5f6368; --card:#f2ede7; --danger:#b3261e; }
@media (prefers-color-scheme: dark) { :root { --fg:#e6e1e5; --bg:#141218; --accent:#4db6ac; --muted:#a8a3ad; --card:#211f26; --danger:#f2b8b5; } }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; color:var(--fg); background:var(--bg); }
main { max-width:720px; margin:0 auto; padding:32px 20px 64px; }
h1 { font-size:1.6rem; } h2 { font-size:1.15rem; margin-top:2em; }
a { color:var(--accent); }
.brand { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.brand .mark { width:34px; height:34px; border-radius:50%; background:var(--accent); position:relative; flex:none; }
.brand .mark::before, .brand .mark::after { content:""; position:absolute; top:9px; width:16px; height:16px; border:2.5px solid #fff; border-radius:50%; }
.brand .mark::before { left:4px; } .brand .mark::after { left:12px; }
.muted { color:var(--muted); }
.card { background:var(--card); border-radius:12px; padding:20px; margin:16px 0; }
label { display:block; margin:12px 0 4px; font-weight:600; font-size:.95rem; }
input { width:100%; padding:10px 12px; border-radius:8px; border:1px solid var(--muted); background:var(--bg); color:var(--fg); font-size:1rem; }
button { padding:12px 18px; border-radius:24px; border:none; font-size:1rem; font-weight:600; cursor:pointer; margin-top:14px; }
button.primary { background:var(--accent); color:#fff; }
button.danger { background:var(--danger); color:#fff; }
button.ghost { background:transparent; color:var(--accent); border:1px solid var(--accent); }
button:disabled { opacity:.45; cursor:not-allowed; }
.error { color:var(--danger); font-weight:600; }
.ok { color:var(--accent); font-weight:700; }
footer { margin-top:48px; font-size:.85rem; color:var(--muted); }
ul { padding-left:1.2em; }
