:root { color-scheme:dark; --bg:#0c1113; --panel:#12191c; --text:#f2eee7; --muted:#aab4b5; --line:#303b3f; --copper:#e0a17f; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:var(--bg); color:var(--text); }
* { box-sizing:border-box; }
body { min-width:280px; min-height:100svh; margin:0; display:flex; flex-direction:column; }
[hidden] { display:none !important; }
a { color:var(--copper); text-underline-offset:4px; }
a:hover { color:#f6cdb3; }
button,input { font:inherit; }
a:focus-visible,button:focus-visible,input:focus-visible { outline:2px solid #f6cdb3; outline-offset:5px; }
.page-header { min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px clamp(24px,5vw,76px); border-bottom:1px solid var(--line); }
.brand { color:var(--text); font-size:12px; font-weight:750; letter-spacing:.12em; text-decoration:none; white-space:nowrap; }
.brand span { margin-left:12px; padding-left:14px; border-left:1px solid var(--line); color:var(--copper); }
.quiet-link { color:var(--muted); font-size:12px; line-height:1.6; }
.page-header .quiet-link { text-decoration:none; text-align:right; }
main { flex:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.88fr); align-items:center; gap:clamp(40px,8vw,110px); width:min(1160px,100%); margin:auto; padding:76px 40px; }
.eyebrow { margin:0 0 26px; color:var(--copper); font-size:10px; font-weight:650; letter-spacing:.16em; line-height:1.5; }
h1 { margin:0 0 26px; font-size:clamp(36px,4.4vw,58px); line-height:1.1; letter-spacing:-.047em; font-weight:500; }
.lead { max-width:420px; margin:0; color:var(--muted); font-size:16px; line-height:1.8; }
.separate-note { max-width:390px; margin:40px 0 0; padding-left:17px; border-left:1px solid #655243; color:var(--muted); font-size:12px; line-height:1.8; }
.preferences { min-width:0; padding:38px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.preferences .eyebrow { margin-bottom:18px; }
h2 { margin:0 0 17px; font-size:28px; line-height:1.2; letter-spacing:-.035em; font-weight:500; }
.preferences p { font-size:13px; line-height:1.75; }
.status { color:var(--muted); min-height:23px; margin:0 0 22px; }
.error { color:#ffc0ae; padding:12px 14px; background:#302020; border:1px solid #664135; border-radius:5px; overflow-wrap:anywhere; }
.preference-label { margin:0 0 25px; color:var(--muted); }
.preference-label strong { display:block; margin-top:4px; color:var(--text); font-size:14px; font-weight:600; }
.consent { display:flex; align-items:flex-start; gap:12px; cursor:pointer; font-size:14px; line-height:1.7; }
.consent input { flex:0 0 20px; width:20px; height:20px; margin:3px 0 0; accent-color:var(--copper); }
.preferences .small { color:var(--muted); font-size:12px; line-height:1.8; }
.button { width:100%; min-height:50px; display:flex; align-items:center; justify-content:center; margin:20px 0 0; padding:13px 16px; border:1px solid #c68564; border-radius:5px; font-size:13px; font-weight:650; line-height:1.5; text-align:center; text-decoration:none; cursor:pointer; }
.primary { background:#dda17f; color:#142022; }
.primary:hover { background:#ecc0a5; color:#142022; }
.secondary { border-color:#4b5a5f; background:transparent; color:var(--text); }
.button:disabled { opacity:.55; cursor:not-allowed; }
#emailActionPanel>.quiet-link { display:inline-block; margin-top:14px; }
.support { margin:28px 0 0; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); }
.support a { overflow-wrap:anywhere; }
footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; min-height:72px; padding:18px clamp(24px,5vw,76px); color:var(--muted); font-size:11px; line-height:1.6; }
footer nav { display:flex; flex-wrap:wrap; gap:12px 24px; }
footer a { color:var(--muted); }
@media(max-width:760px) { main { grid-template-columns:minmax(0,1fr); gap:34px; width:min(560px,100%); padding:42px 24px; } .page-header { min-height:74px; padding:16px 24px; } h1 { font-size:42px; } .separate-note { margin-top:24px; } .preferences { padding:28px; } }
@media(max-width:380px) { .preferences { padding:22px; } h1 { font-size:35px; } .page-header { gap:12px; } .page-header .quiet-link { max-width:115px; } footer { align-items:flex-start; } }
