:root{color-scheme:light dark;--paper:#f5f2e9;--card:#fffcf6;--ink:#28382b;--muted:#566255;--accent:#315c43;--line:#c3cbbc;--on-accent:#fff;--error:#9b3030;--badge:#e3ecd9}
@media(prefers-color-scheme:dark){:root{--paper:#171e1a;--card:#232e26;--ink:#f0f1e8;--muted:#b8c4b7;--accent:#b0d4ae;--line:#526152;--on-accent:#172119;--error:#ffb3a8;--badge:#344833}}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 system-ui,sans-serif}header{display:flex;align-items:center;justify-content:space-between;max-width:1080px;margin:auto;padding:28px 24px}header a{font-family:Georgia,serif;font-size:23px;text-decoration:none;color:var(--ink)}main{max-width:700px;margin:30px auto 80px;padding:0 24px}.eyebrow{color:var(--muted);font-size:13px;letter-spacing:.12em;text-transform:uppercase}h1{font:clamp(32px,5vw,48px)/1.18 Georgia,serif;margin:14px 0 22px}h2{font:27px/1.2 Georgia,serif;margin:0}.intro{font-size:20px;color:var(--muted);max-width:570px}section{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:30px;margin:30px 0}.plan-top{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.badge{font-size:12px;padding:5px 10px;border-radius:14px;background:var(--badge)}.badge:empty{display:none}ul{padding-left:24px}li{margin:10px 0}.muted,.fine,.footer{color:var(--muted)}.fine{font-size:13px}.footer{font-size:14px}.status{font-weight:650}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:600;margin-bottom:12px}fieldset label{display:flex;align-items:center;gap:14px;border:1px solid var(--line);padding:16px;margin:10px 0;border-radius:12px;cursor:pointer}input{accent-color:var(--accent);width:20px;height:20px}small{color:var(--muted)}button{font:inherit;font-weight:650;min-height:48px;padding:12px 18px;border:1px solid transparent;border-radius:10px;cursor:pointer;background:var(--accent);color:var(--on-accent)}button:disabled{opacity:.55;cursor:wait}.secondary{background:transparent;border-color:var(--line);color:var(--ink);font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}#subscribe{width:100%}#message:empty{display:none}#message.error{color:var(--error)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:500px){main{margin-top:20px}section{padding:22px}.actions button{width:100%}}
