/* Shell palette (the Tailwind variables the sidebar, header and footer use),
   the account menu, mobile menu, toast and the legal pages. Neutral black and
   white only; see platform.css for the design tokens. */
:root,html.dark,.dark{--background:0 0% 3%;--background-hover:0 0% 12%;--foreground:0 0% 83%;--foreground-hover:0 0% 100%;--primary:0 0% 100%;--primary-hover:0 0% 100%;
  --secondary:0 0% 55%;--secondary-hover:0 0% 75%;--accent:0 0% 100%;--accent-hover:0 0% 90%;--card:0 0% 8%;--border:0 0% 11%;--input:0 0% 30%;--field:0 0% 6%;
  --error:0 100% 68%;--success:142 69% 58%;--money:142 69% 58%;--warning:40 86% 62%;--scroll-thumb-color:0 0% 18%;--scroll-track-color:0 0% 4%}
[hidden]{display:none!important}
button,a,input,select{touch-action:manipulation}

/* ---- account menu and sign-in notices (public/auth.js) */
.auth-notice{font-size:12px;color:var(--v2-muted);max-width:220px}.auth-notice:empty{display:none}
.account-menu{position:absolute;right:20px;top:58px;z-index:100;min-width:200px;background:#101010;border:1px solid var(--v2-line-2);border-radius:14px;padding:6px;box-shadow:0 20px 50px -20px #000}
.account-menu strong{display:block;padding:10px 14px;color:var(--v2-muted);font-size:12px;font-weight:500}
.account-menu a,.account-menu button{display:block;width:100%;text-align:left;padding:11px 14px;font-size:14px;text-decoration:none;color:#fff;background:none;border-radius:9px;cursor:pointer}
.account-menu a:hover,.account-menu button:hover{background:rgba(255,255,255,.06)}
button.account-button{width:38px!important;height:38px!important;padding:0!important;min-width:38px;border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;
  background:#1a1a1a;border:1px solid var(--v2-line-hi);font-size:14px;font-weight:600;color:#fff}
button.account-button img{width:100%;height:100%;object-fit:cover;border-radius:50%}

/* ---- mobile menu and toast */
.clone-menu{position:fixed;top:64px;left:0;right:0;bottom:0;z-index:100;background:rgba(8,8,8,.97);backdrop-filter:blur(12px);padding:20px;overflow:auto}
.clone-menu a{display:block;font-size:24px;font-weight:650;letter-spacing:-.02em;color:var(--v2-muted);padding:14px 6px;border-bottom:1px solid var(--v2-line)}
.clone-menu a[aria-current=page]{color:#fff}
.clone-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:200;background:#121212;color:#fff;border:1px solid var(--v2-line-hi);border-radius:999px;padding:12px 22px;font-size:14px;
  max-width:90vw;text-align:center;box-shadow:0 20px 40px -20px #000;animation:v2-in .35s var(--v2-ease) both}

/* ---- legal and opt-out pages */
.page-content{max-width:1060px;margin:48px auto 96px;padding:0 28px}
.page-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--v2-muted);font-weight:600;margin-bottom:22px}
.page-content h1{font-size:clamp(40px,5vw,68px);line-height:1;letter-spacing:-.045em;font-weight:760;color:#fff;max-width:860px}
.page-intro{font-size:18px;color:var(--v2-muted);margin-top:22px;line-height:1.6}
.page-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:44px 0 36px}
.page-cards article{background:var(--v2-glass);border:1px solid var(--v2-line);border-radius:var(--v2-radius);padding:28px;box-shadow:var(--v2-shine)}
.page-cards h2{font-size:21px;font-weight:650;letter-spacing:-.025em;color:#fff;margin-bottom:12px}
.page-cards p{font-size:15px;color:var(--v2-body);line-height:1.75}
.page-link{display:inline-flex;gap:10px;align-items:center;font-size:15px}
.clone-action{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:999px;background:#fff;color:#000!important;font-weight:600;text-decoration:none!important;cursor:pointer}
.clone-action:hover{background:#e8e8e8}
@media(max-width:640px){.page-content{margin:32px auto 56px;padding:0 8px}.page-cards{grid-template-columns:1fr;margin-top:32px}.page-cards article{padding:22px}}
