@font-face{font-family:Inter;src:url('/account/assets/media/inter.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/account/assets/media/inter-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
@font-face{font-family:Antonio;src:url('/account/assets/media/antonio.ttf') format('truetype');font-weight:100 900;font-display:swap}

/* ---------- tokens (light, dark follows the OS) ---------- */
:root{
  color-scheme:light;
  --ground:#e9e8e3;--panel:#ffffff;--tile:#f5f5f1;--tile-hover:#efeee8;--line:#dcdbd4;--line-strong:#bdbcb4;
  --ink:#0a0a0a;--muted:#55554f;--faint:#68685f;--red:#c62020;--red-hover:#a81a1a;--red-ink:#b01c1c;--red-wash:#fbeaea;--on-red:#ffffff;
  --warn-ink:#7a4a10;--warn-wash:#fdf3e4;--warn-line:#efd6ae;--ok:#1f7a3a;--field:#ffffff;--field-line:#d4d3cc;
  --ease-out:cubic-bezier(.23,1,.32,1);--r:6px;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;
  font-family:Inter,Arial,sans-serif;font-size:16px;background:var(--ground);color:var(--ink)
}
@media(prefers-color-scheme:dark){:root{
  color-scheme:dark;
  --ground:#0b0b0d;--panel:#141417;--tile:#1c1c21;--tile-hover:#232329;--line:#2a2a31;--line-strong:#3c3c45;
  --ink:#f2f2f4;--muted:#a9a9b3;--faint:#91919b;--red:#c62020;--red-hover:#a81a1a;--red-ink:#ff6a62;--red-wash:#2a1416;--on-red:#ffffff;
  --warn-ink:#f2cb8c;--warn-wash:#2a2012;--warn-line:#5a4422;--ok:#5fd18a;--field:#0f0f12;--field-line:#34343c
}}

/* ---------- base ---------- */
*{box-sizing:border-box}
html{background:var(--ground)}
body{margin:0;min-height:100dvh;display:flex;flex-direction:column;background:var(--ground);color:var(--ink);font:400 15px/1.5 Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}button:disabled{cursor:not-allowed}
button,a,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}
::selection{background:var(--red);color:#fff}
input,textarea{caret-color:var(--red)}
h1,h2,h3,h4,p{margin:0}
img{max-width:100%;display:block}svg{flex-shrink:0}
[hidden]{display:none!important}
*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.fine{font-size:13px;line-height:1.55;color:var(--muted)}
.muted{color:var(--muted)}
.skip{position:fixed;left:16px;top:10px;z-index:60;padding:10px 14px;border-radius:var(--r);background:var(--ink);color:var(--panel);clip-path:inset(50%);white-space:nowrap}
.skip:focus{clip-path:none}

/* ---------- buttons ---------- */
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 var(--s5);border:1px solid var(--red);border-radius:var(--r);background:var(--red);color:var(--on-red);font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),color 160ms var(--ease-out),transform 160ms var(--ease-out)}
.button.secondary{background:transparent;border-color:var(--line-strong);color:var(--ink)}
.button.danger{background:var(--red);border-color:var(--red);color:var(--on-red)}
@media(hover:hover) and (pointer:fine){.button:hover:not(:disabled){background:var(--red-hover);border-color:var(--red-hover)}.button.secondary:hover:not(:disabled){background:var(--tile);border-color:var(--ink)}}
.button:active:not(:disabled),.quiet:active:not(:disabled),.payment-option:active:not(:disabled){transform:scale(.97)}
.button:disabled{background:var(--tile-hover);border-color:transparent;color:var(--faint)}
.button[data-busy]::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin 600ms linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.quiet{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 var(--s3);border:0;border-radius:var(--r);background:none;color:var(--muted);font-size:14px;font-weight:600;transition:color 160ms var(--ease-out),background-color 160ms var(--ease-out)}
@media(hover:hover) and (pointer:fine){.quiet:hover:not(:disabled){color:var(--ink);background:var(--tile)}}
.quiet:disabled{opacity:.5}
.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--r);background:transparent;color:var(--muted);transition:border-color 160ms var(--ease-out),color 160ms var(--ease-out)}
.icon-button svg{width:18px;height:18px}
@media(hover:hover) and (pointer:fine){.icon-button:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}}
.back-link::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5m6-6-6 6 6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5m6-6-6 6 6 6'/%3E%3C/svg%3E") center/contain no-repeat}

/* ---------- header ---------- */
.header{border-bottom:1px solid var(--line);background:var(--panel)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);max-width:1440px;height:64px;margin:0 auto;padding:0 var(--s5)}
.brand{display:flex;align-items:center;gap:var(--s3);color:var(--ink);text-decoration:none}
.brand-logo{width:118px;height:auto;fill:currentColor}
.brand-divider{width:1px;height:16px;background:var(--line-strong)}
.brand-caption{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--muted)}

/* ---------- page shell ---------- */
.account-main{flex:1;width:100%;max-width:1440px;margin:0 auto}
.account-main>.notice,.account-main>#retry-account,.account-main>.loading{margin:var(--s5)}
.loading{color:var(--muted)}
#dashboard:not([hidden]){display:grid;grid-template-columns:248px minmax(0,1fr)}
.dashboard-sidebar{position:sticky;top:0;align-self:start;height:calc(100dvh - 64px);min-height:520px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--s5);padding:var(--s6) var(--s4) var(--s5);border-right:1px solid var(--line)}
.sidebar-label{padding:0 var(--s3);font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--faint)}
#account-navigation{display:grid;gap:2px}
#checkout-navigation{display:none}
#account-navigation .button{justify-content:flex-start;gap:var(--s3);width:100%;min-height:44px;padding:0 var(--s3);border:0;background:none;color:var(--muted);font-size:14px;font-weight:600}
#account-navigation .button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#account-navigation .button[aria-pressed=true]{background:var(--tile);color:var(--ink)}
#account-navigation .button[aria-pressed=true] svg{color:var(--red-ink)}
#account-navigation .button:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--line-strong)}
@media(hover:hover) and (pointer:fine){#account-navigation .button:hover:not([aria-pressed=true]){background:var(--tile);color:var(--ink)}}
.sidebar-bottom{display:grid;gap:var(--s4);margin-top:auto;font-size:13px}
.support-link,.sidebar-legal a{color:var(--muted);text-decoration:none;width:max-content}
.sidebar-legal{display:grid;gap:6px}
@media(hover:hover) and (pointer:fine){.support-link:hover,.sidebar-legal a:hover{color:var(--ink);text-decoration:underline}}
.account-identity{padding-top:var(--s4);border-top:1px solid var(--line)}
.account-identity strong{display:block;font-size:13px}
.account-identity p{margin-top:2px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.sidebar-logout{width:100%}
.dashboard-workspace{min-width:0;padding:var(--s6) var(--s6) var(--s7)}
.workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4);max-width:960px;margin-bottom:var(--s5)}
.eyebrow{margin-bottom:var(--s2);font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--muted)}
#dashboard-title{font:500 44px/1 Antonio,Impact,sans-serif;letter-spacing:-.005em}
#billing,#history,#downloads,#settings,#benchmarks,#refunds{max-width:960px}

/* ---------- notices ---------- */
.notice{max-width:960px;margin:0 0 var(--s5);padding:var(--s3) var(--s4);border:1px solid var(--warn-line);border-radius:8px;background:var(--warn-wash);color:var(--warn-ink);font-size:14px;line-height:1.5}
.dashboard-workspace .notice{margin-left:0}

/* ---------- sign-in ---------- */
.signin:not([hidden]){display:grid;place-items:center;min-height:calc(100dvh - 200px);padding:var(--s7) var(--s4)}
.signin-card{width:min(420px,100%);padding:var(--s6);border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.signin-heading h1{font:500 48px/1 Antonio,Impact,sans-serif}
.signin-description{margin-top:var(--s3);color:var(--muted)}
.provider-buttons{display:grid;gap:var(--s2);margin-top:var(--s5)}
.button.provider{justify-content:flex-start;gap:var(--s3);min-height:52px;padding:0 var(--s4);background:var(--field);border-color:var(--line-strong);color:var(--ink)}
.provider-arrow{margin-left:auto}
.button.discord-provider{background:#5865f2;border-color:#5865f2;color:#fff}
@media(hover:hover) and (pointer:fine){.button.provider:hover{background:var(--tile);border-color:var(--ink)}.button.discord-provider:hover{background:#4752c4;border-color:#4752c4}}
.signin-card .notice{margin:var(--s4) 0 0}
.signin-hint{margin-top:var(--s4);font-size:13px;color:var(--muted)}
.signin-help{display:flex;justify-content:space-between;gap:var(--s3);margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.signin-help a{color:var(--ink)}

/* ---------- plans ---------- */
.find-purchase{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:14px}
.find-purchase .quiet{min-height:32px;padding:0;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.plan-eyebrow{margin:0 0 var(--s3);font:500 20px/1 Antonio,Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase}
#purchase-slot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3)}
.tier{display:flex;flex-direction:column;min-width:0;padding:var(--s5) var(--s4) var(--s4);border:1px solid var(--line);border-radius:10px;background:var(--panel);transition:border-color 160ms var(--ease-out)}
@media(hover:hover) and (pointer:fine){.tier:hover{border-color:var(--line-strong)}}
.tier-name{font:600 13px/1 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.tier-meta{margin-top:var(--s2)}
.tier-meta-text{font-size:13px;color:var(--muted)}
.tier-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:var(--s3)}
.tier-price span{font:500 48px/1 Antonio,Impact,sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.tier-price small{font-size:14px;color:var(--muted)}
.tier-effective:empty{display:none}
.tier-effective{margin-top:var(--s3);font-size:12px;line-height:1.5;color:var(--muted)}
.tier-cta-wrap{padding-top:var(--s5)}
.tier-cta{width:100%}
.tier-cta-wrap>.muted{font-size:13px}
.tier-cta-wrap>.muted+.tier-cta{margin-top:var(--s3)}
.tier-renewal{margin-top:var(--s3);font-size:12px;line-height:1.5;color:var(--muted)}
.tier-included-title{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.tier-features{display:grid;gap:6px;margin:var(--s3) 0 0;padding:0;list-style:none;font-size:13px;line-height:1.4}
.tier-features li{position:relative;padding-left:20px}
.tier-features li::before{content:"";position:absolute;left:2px;top:4px;width:9px;height:5px;border-left:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);transform:rotate(-45deg)}
.tier-features li.feature-differentiator{font-weight:700;color:var(--red-ink)}
.tier-features li.feature-differentiator::before{border-color:var(--red-ink)}

/* ---------- buy menu ---------- */
.buy-menu{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:clip;animation:menu-open 240ms var(--ease-out)}
@keyframes menu-open{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
.bm-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--s5);padding:var(--s5) var(--s5) var(--s4);border-bottom:1px solid var(--line)}
.bm-title{font:500 30px/1 Antonio,Impact,sans-serif;letter-spacing:.01em;text-transform:uppercase}
.bm-plan{margin-top:6px;font-size:14px;color:var(--muted)}
.bm-plan strong{font-weight:600;color:var(--muted)}
.bm-email{margin-top:4px;font-size:13px;color:var(--muted)}
.bm-email strong{font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.bm-due{text-align:right}
.bm-due span{display:block;font-size:12px;font-weight:600;color:var(--muted)}
.bm-due strong{display:block;margin-top:2px;font:500 34px/1 Antonio,Impact,sans-serif;font-variant-numeric:tabular-nums}
.bm-body{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:400px}
.bm-rail{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4);border-right:1px solid var(--line);background:var(--tile)}
.rail-title{padding:var(--s2) var(--s2) var(--s1);font:500 15px/1 Antonio,Impact,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.checkout-methods{display:grid;gap:var(--s2)}
.payment-option.cat{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:var(--s2);align-items:baseline;width:100%;min-height:64px;padding:var(--s3);border:1px solid transparent;border-radius:var(--r);background:transparent;text-align:left;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out)}
.payment-option.cat strong{font:500 22px/1 Antonio,Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase}
.payment-option.cat span:not(.key){grid-column:2;margin-top:6px;font-size:13px;line-height:1.35;color:var(--muted)}
@media(hover:hover) and (pointer:fine){.payment-option.cat:hover:not([aria-pressed=true]):not(:disabled){background:var(--tile-hover)}}
.payment-option.cat[aria-pressed=true]{background:var(--panel);border-color:var(--red)}
.payment-option:disabled{opacity:.5}
.key{font:500 14px/1 Antonio,Impact,sans-serif;color:var(--faint)}
[aria-pressed=true]>.key{color:var(--red-ink)}
.items-keys .bm-rail .key{opacity:.35}
.buy-menu:not(.items-keys) .coin .key{opacity:.35}
.bm-main{min-width:0;padding:var(--s5)}
.main-title{font:500 20px/1.1 Antonio,Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.coin-pane .payment-choice-label{margin:6px 0 var(--s2);font-size:14px;color:var(--muted)}
#crypto-offer{margin:0 0 var(--s4)}
#payment-access-note{margin:0 0 var(--s4)}
.payment-method-status{margin:0 0 var(--s4);padding:var(--s3) var(--s4);border:1px solid var(--warn-line);border-radius:8px;background:var(--warn-wash);color:var(--warn-ink)}
.coins{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2)}
.coin{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:112px;padding:var(--s3);border:1px solid var(--line);border-radius:var(--r);background:var(--tile);text-align:left;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out)}
.coin .key{position:absolute;top:var(--s3);right:var(--s3)}
.coin strong{font:500 32px/1 Antonio,Impact,sans-serif;letter-spacing:.01em}
.coin span:not(.key){margin-top:auto;padding-top:var(--s3);font-size:15px;font-weight:700;line-height:1.25}
.coin[aria-pressed=true]{background:var(--red-wash);border-color:var(--red)}
@media(hover:hover) and (pointer:fine){.coin:hover:not([aria-pressed=true]):not(:disabled){background:var(--tile-hover);border-color:var(--line-strong)}}
.card-start .muted,.lifetime-pane .muted{margin-top:var(--s2);max-width:56ch}
.checkout-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4) var(--s5);align-content:start}
.checkout-provider{grid-column:1/-1;font-size:14px}
.checkout-status{grid-column:1/-1;padding:var(--s3) var(--s4);border:1px solid var(--warn-line);border-radius:8px;background:var(--warn-wash);color:var(--warn-ink);font-size:14px;line-height:1.5}
.checkout-status:empty{display:none}
.checkout-steps{display:none}
.checkout-section-title{margin-bottom:var(--s3);font-size:14px;font-weight:700}
.checkout-billing-fields,.checkout-payment-fields{min-width:0}
#checkout-address,#checkout-payment{min-height:0}
#checkout-phone-field{margin-top:10px}
#checkout-phone-field label{display:block;margin-bottom:6px;font-size:13px;color:var(--muted)}
#checkout-phone{width:100%;height:46px;padding:0 12px;border:1px solid var(--field-line);border-radius:var(--r);background:var(--field);font-size:16px}
#checkout-phone:focus-visible{outline:none;border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
#weekly-checkout[data-mode=crypto]{grid-template-columns:1fr}
#weekly-checkout[data-mode=crypto] .checkout-billing-fields,#weekly-checkout[data-mode=crypto] .checkout-section-title{display:none}
.crypto-instructions{display:grid;gap:var(--s4)}
.quote-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s5);align-items:start}
.quote-amount{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;font-weight:400}
.quote-lead{flex-basis:100%;margin-bottom:6px;font-size:12px;font-weight:600;color:var(--muted)}
.quote-amount strong{font:500 52px/1 Antonio,Impact,sans-serif;font-variant-numeric:tabular-nums}
.quote-token{font:500 26px/1 Antonio,Impact,sans-serif;color:var(--muted)}
.crypto-network{margin-top:var(--s2);font-size:15px}
.quote-top .fine{margin-top:2px}
.quote-qr{width:140px;height:140px;padding:8px;border-radius:8px;background:#fff}
.quote-address{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:8px;background:var(--tile)}
.crypto-address{flex:1;min-width:0;font:500 15px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;user-select:all}
.quote-address .button{min-height:44px;padding:0 var(--s4);font-size:14px;white-space:nowrap}
.crypto-recovery{grid-column:1/-1;border-top:1px solid var(--line);padding-top:var(--s3)}
.crypto-recovery summary{min-height:44px;display:flex;align-items:center;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer}
.crypto-recovery p{margin:var(--s2) 0;max-width:60ch}
.crypto-recovery label{display:block;margin-top:var(--s3);font-size:12px;font-weight:600;color:var(--muted)}
.crypto-recovery input{width:100%;height:44px;margin:6px 0 var(--s2);padding:0 12px;border:1px solid var(--field-line);border-radius:var(--r);background:var(--field);font:500 14px ui-monospace,Consolas,monospace}
.bm-consent{padding:var(--s4) var(--s5);border-top:1px solid var(--line)}
.delivery-consent-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3) var(--s5)}
.delivery-consent-label{display:flex;gap:var(--s3);align-items:flex-start;font-size:13px;line-height:1.5;cursor:pointer}
.delivery-consent-box>.fine{grid-column:1;grid-row:2;margin:-6px 0 0 32px;font-size:12px}
.delivery-consent-label:nth-of-type(2){grid-column:2;grid-row:1}
.delivery-consent-label input{appearance:none;-webkit-appearance:none;flex:none;display:grid;place-content:center;width:20px;height:20px;margin:0;border:1.5px solid var(--line-strong);border-radius:5px;background:transparent;cursor:pointer;transition:background-color 120ms var(--ease-out),border-color 120ms var(--ease-out)}
.delivery-consent-label input::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform 120ms var(--ease-out)}
.delivery-consent-label input:checked{background:var(--red);border-color:var(--red)}
.delivery-consent-label input:checked::after{transform:translateY(-1px) rotate(-45deg) scale(1)}
.delivery-consent-label input:invalid:focus{border-color:var(--red)}
.bm-bar{display:grid;grid-template-columns:1fr;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);border-top:1px solid var(--line);background:var(--tile)}
.purchase-terms{max-width:60ch;font-size:15px;font-weight:700;line-height:1.5;color:var(--ink)}
.pay-terms{justify-self:end;text-align:right}
.checkout-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s2)}
.checkout-actions .button{min-width:200px}
.bar-hint{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:200px;padding:0 var(--s5);border-radius:var(--r);background:var(--tile-hover);color:var(--faint);font-size:15px;font-weight:600}

/* ---------- billing history ---------- */
#history{display:grid;gap:var(--s4);max-width:720px}
.billing-summary #subscription-list{display:grid;gap:var(--s3)}
.subscription-card,.empty-state{padding:var(--s5);border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.subscription-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3)}
.subscription-card h3,.empty-state h3{font-size:16px;font-weight:700}
.subscription-card>p,.empty-state p{margin-top:var(--s2);color:var(--muted);max-width:60ch}
.status{font-size:13px;font-weight:700;color:var(--ok)}
.status.neutral{color:var(--muted)}
.subscription-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3);margin:var(--s4) 0 0}
.subscription-details dt{font-size:12px;color:var(--muted)}
.subscription-details dd{margin:2px 0 0;font-size:14px;font-weight:600}
.subscription-bottom{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.empty-state .button{margin-top:var(--s4)}
.billing-invoices-heading{display:flex;justify-content:flex-end}
.select-wrap{display:flex;align-items:center;gap:var(--s2);font-size:13px;color:var(--muted)}
.select-wrap select{min-height:40px;padding:0 var(--s3);border:1px solid var(--field-line);border-radius:var(--r);background:var(--field)}
#invoice-status:empty{display:none}
#invoice-status{padding:var(--s4) var(--s5);border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.purchase-list{margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.purchase{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s3) var(--s4);align-items:center;padding:var(--s4) var(--s5)}
.purchase+.purchase{border-top:1px solid var(--line)}
.purchase-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px var(--s3)}
.purchase-title strong{font-size:15px}
.purchase-price{font-weight:600;font-variant-numeric:tabular-nums}
.purchase-meta{margin-top:4px;font-size:13px;color:var(--muted)}
.purchase-meta a{color:var(--ink)}
.purchase-actions{display:flex;flex-wrap:wrap;gap:var(--s2);justify-content:flex-end}
.purchase-actions:empty{display:none}
.purchase-actions .button{min-height:44px;padding:0 var(--s4);font-size:14px}
.purchase-actions span.invoice-refund{align-self:center}
#more-invoices{justify-self:start}

/* ---------- refunds (consumer rights) ---------- */
.rights-section{display:grid;gap:var(--s3);max-width:720px;margin-top:var(--s4)}
.rights-status:empty{display:none}
.rights-status{color:var(--muted)}
.rights-card{padding:var(--s5);border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.rights-card h3{font-size:16px;font-weight:700}
.rights-card label{display:block;margin-top:var(--s4);font-size:13px;font-weight:600}
.rights-card :is(input,select,textarea){width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid var(--field-line);border-radius:var(--r);background:var(--field)}
.rights-card textarea{resize:vertical}
.rights-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s4)}
.rights-statement{margin-top:var(--s3);font-weight:600}
.rights-summary{display:grid;gap:var(--s2);margin:var(--s4) 0}
.rights-summary dt{font-size:12px;color:var(--muted)}
.rights-summary dd{margin:2px 0 0;overflow-wrap:anywhere}
.rights-card .notice{margin:var(--s3) 0}
.rights-list{margin:var(--s3) 0 0;padding:0;list-style:none}
.rights-list li{display:flex;flex-wrap:wrap;gap:4px var(--s3);padding:var(--s2) 0;font-size:14px}
.rights-list li+li{border-top:1px solid var(--line)}
.rights-reference{color:var(--muted)}

/* ---------- downloads ---------- */
.downloads-section{padding:var(--s5);border:1px solid var(--line);border-radius:10px;background:var(--panel);max-width:640px}
.downloads-section h2{font:500 26px/1.1 Antonio,Impact,sans-serif;letter-spacing:.01em;text-transform:uppercase}
.downloads-section>.muted{margin-top:var(--s2)}
#download-tinyboost{margin-top:var(--s4)}
.download-file{margin-top:var(--s2)}
.download-instructions{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}
.download-instructions h3{font-size:16px;font-weight:700}
.download-instructions ol{margin:var(--s3) 0 0;padding-left:20px;color:var(--muted)}
.download-instructions li+li{margin-top:4px}

/* ---------- settings ---------- */
#settings{display:grid;gap:var(--s3);max-width:640px}
.linked-email{margin-top:var(--s2);font-weight:700}
.email-link-card .button,#discord-link-card .button{margin-top:var(--s4)}
.email-link-form{display:grid;gap:6px;margin-top:var(--s4)}
.email-link-form label{margin-top:var(--s2);font-size:13px;font-weight:600}
.email-link-form input{min-height:46px;padding:0 12px;border:1px solid var(--field-line);border-radius:var(--r);background:var(--field);font-size:16px}
.email-link-message:empty{display:none}
.email-link-message{font-size:14px;color:var(--muted)}
.email-link-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}

/* ---------- benchmarks ---------- */
#benchmarks{display:grid;gap:var(--s3);max-width:720px}
#benchmarks>.muted{max-width:64ch}
.benchmark-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);margin-top:var(--s2)}
.benchmark-count{font-size:13px;color:var(--muted)}
.benchmark-list{border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.benchmark-list:empty{display:none}
.benchmark-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--s1) var(--s3);padding:var(--s3) var(--s5)}
.benchmark-card+.benchmark-card{border-top:1px solid var(--line)}
.benchmark-card h3{font:500 15px/1.3 ui-monospace,Consolas,monospace;overflow-wrap:anywhere}
.benchmark-date,.benchmark-sharing{grid-column:1;font-size:13px;color:var(--muted)}
.benchmark-card .button{grid-column:2;grid-row:1/span 3;min-height:44px;padding:0 var(--s4);font-size:14px}

/* ---------- dialogs ---------- */
dialog{padding:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink)}
dialog::backdrop{background:rgba(0,0,0,.6)}
dialog[open]{animation:pop-in 220ms var(--ease-out)}
@keyframes pop-in{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
#cancel-dialog{width:min(440px,calc(100vw - 32px))}
#cancel-dialog form{position:relative;padding:var(--s5)}
.dialog-close{position:absolute;top:var(--s3);right:var(--s3);width:44px;justify-content:center;font-size:22px}
#cancel-dialog .eyebrow{margin:0}
#cancel-dialog h2{margin-top:var(--s2);font:500 28px/1.1 Antonio,Impact,sans-serif;text-transform:uppercase}
#cancel-dialog p{margin-top:var(--s3)}
#cancel-dialog .notice{margin:var(--s3) 0 0}
.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s2);margin-top:var(--s5)}
.paid-dialog{width:min(640px,calc(100vw - 32px));overflow:clip}
.paid-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--s4);align-items:start;padding:var(--s5)}
.paid-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.paid-mark svg{width:24px;height:24px}
.paid-dialog h2{font:500 34px/1 Antonio,Impact,sans-serif;letter-spacing:.01em;text-transform:uppercase}
.paid-dialog h2:focus{outline:none}
.paid-msg{margin-top:var(--s2);font-size:15px;color:var(--muted)}
.paid-dialog dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--line);background:var(--tile)}
.paid-dialog dl>div{padding:var(--s4) var(--s5)}
.paid-dialog dl>div:nth-child(even){border-left:1px solid var(--line)}
.paid-dialog dl>div:nth-child(n+3){border-top:1px solid var(--line)}
.paid-dialog dt{font-size:12px;color:var(--muted)}
.paid-dialog dd{margin:4px 0 0;font-size:15px;font-weight:700;overflow-wrap:anywhere}
.paid-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s2);padding:var(--s4) var(--s5);border-top:1px solid var(--line)}

/* ---------- footer ---------- */
.account-footer{border-top:1px solid var(--line);background:var(--panel)}
.account-footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s4);max-width:1440px;margin:0 auto;padding:var(--s5);font-size:13px;color:var(--muted)}
.seller-line{display:flex;flex-wrap:wrap;gap:4px var(--s4)}
.seller-line strong{color:var(--ink)}
.seller-details a,.footer-legal a,.footer-link-button{color:var(--muted)}
.footer-legal{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:flex-start}
.footer-link-button{padding:0;border:0;background:none;font-size:13px;text-decoration:underline;text-underline-offset:3px}
@media(hover:hover) and (pointer:fine){.seller-details a:hover,.footer-legal a:hover,.footer-link-button:hover{color:var(--ink)}}
.analytics-consent{flex-basis:100%;padding:var(--s4);border:1px solid var(--line);border-radius:10px;background:var(--tile)}
.analytics-consent h2{font-size:15px;font-weight:700;color:var(--ink)}
.analytics-consent p{margin-top:6px}
.analytics-consent a{color:var(--ink)}
.analytics-consent-actions{display:flex;gap:var(--s2);margin-top:var(--s3)}
.analytics-consent-actions .button{flex:1 1 0;max-width:160px;min-width:0;min-height:44px}
.analytics-consent .fine:empty{display:none}

/* ---------- responsive ---------- */
@media(max-width:1100px){#purchase-slot{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){
  #dashboard:not([hidden]){grid-template-columns:1fr}
  .dashboard-sidebar{position:static;height:auto;min-height:0;flex-direction:row;align-items:center;gap:var(--s3);padding:var(--s2) var(--s4);border-right:0;border-bottom:1px solid var(--line);overflow-x:auto}
  .sidebar-label,.sidebar-bottom{display:none}
  #account-navigation{display:flex;gap:2px}
  #account-navigation .button{width:auto;white-space:nowrap}
  .dashboard-workspace{padding:var(--s5) var(--s4) var(--s6)}
}
@media(max-width:820px){
  .bm-body{grid-template-columns:1fr}
  .bm-rail{border-right:0;border-bottom:1px solid var(--line);padding:var(--s3)}
  .rail-title{display:none}
  .checkout-methods{grid-template-columns:1fr 1fr}
  .coins{grid-template-columns:repeat(3,minmax(0,1fr))}
  .checkout-panel{grid-template-columns:1fr}
  .delivery-consent-box{grid-template-columns:1fr}
  .delivery-consent-label:nth-of-type(2){grid-column:1;grid-row:auto}
  .delivery-consent-box>.fine{grid-row:auto}
}
@media(max-width:640px){
  #account-navigation .button span{display:none}
  #account-navigation .button[aria-pressed=true] span{display:inline}
  .checkout-steps{display:flex;gap:var(--s2);border-bottom:1px solid var(--line)}
  .checkout-steps [aria-pressed=true]{color:var(--ink);box-shadow:inset 0 -2px var(--red)}
  #weekly-checkout[data-mode=card][data-step=payment] #checkout-billing-fields{display:none}
  #weekly-checkout[data-mode=card][data-step=billing] #checkout-payment-fields{display:none}
  #weekly-checkout[data-mode=card][data-step=billing]~* #checkout-pay{display:none}
  .buy-menu:has(#weekly-checkout[data-mode=card][data-step=billing]) #checkout-pay{display:none}
  .buy-menu:has(#weekly-checkout[data-mode=card][data-step=payment]) #checkout-next{display:none}
}
@media(max-width:560px){
  #purchase-slot{grid-template-columns:1fr}
  .workspace-heading #dashboard-title{font-size:34px}
  .brand-divider,.brand-caption{display:none}
  .bm-head{grid-template-columns:minmax(0,1fr) auto;padding:var(--s4)}
  .bm-due{grid-column:1;grid-row:2;text-align:left;display:flex;align-items:baseline;gap:8px}
  .bm-due span{order:2}
  .bm-due strong{font-size:30px}
  #checkout-change-plan{grid-column:2;grid-row:1}
  .bm-main{padding:var(--s4)}
  .coins{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quote-top{grid-template-columns:1fr}
  .quote-qr{width:128px;height:128px}
  .quote-amount strong{font-size:44px}
  .quote-address{flex-wrap:wrap}
  .quote-address .button{width:100%}
  .bm-consent{padding:var(--s4)}
  .bm-bar{position:sticky;bottom:0;z-index:5;grid-template-columns:1fr;gap:var(--s3);padding:var(--s3) var(--s4) var(--s4)}
  .checkout-actions{justify-content:stretch}
  .checkout-actions .button,.bar-hint{flex:1;min-width:0}
  .subscription-details{grid-template-columns:1fr}
  .purchase{grid-template-columns:1fr}
  .purchase-actions{justify-content:flex-start}
  .paid-top{grid-template-columns:auto minmax(0,1fr)}
  .paid-top .icon-button{grid-column:2;grid-row:1;justify-self:end}
  .paid-dialog h2{font-size:28px}
  .paid-actions .button{flex:1}
}
@media(prefers-reduced-motion:reduce){
  .buy-menu,dialog[open]{animation-name:fade}
  @keyframes fade{from{opacity:0}to{opacity:1}}
  .button:active,.quiet:active,.payment-option:active{transform:none!important}
}
@media print{
  .header,.dashboard-sidebar,.account-footer,.skip{display:none!important}
  body.print-target-only *{visibility:hidden}
  body.print-target-only [data-print-target],body.print-target-only [data-print-target] *{visibility:visible}
  body.print-target-only [data-print-target]{position:absolute;left:0;top:0;width:100%}
  body.print-target-only [data-print-target] button{display:none}
}
/* Lifetime pays on Stripe's page: no payment-method rail */
.buy-menu[data-view=lifetime] .bm-body{grid-template-columns:1fr}
.buy-menu[data-view=lifetime] .bm-rail{display:none}
