/* Scoped account surfaces: preserve the landing page's hero, editor and reviews. */
@font-face{font-family:LanaPixel;src:url('/assets/LanaPixel.ttf') format('truetype');font-display:swap}
@font-face{font-family:Paperlogy;src:url('/assets/Paperlogy-7Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
.demi-account-trigger{appearance:none;border:0!important;background:none!important;box-shadow:none!important;color:#fff!important;padding:10px 0!important;border-radius:0!important;font:16px LanaPixel,sans-serif;white-space:nowrap;cursor:pointer;min-width:3em;transition:opacity .2s}
.demi-account-trigger:hover{opacity:.7}.demi-account-trigger:disabled{opacity:.5}
.hero-scene>header>.demi-account-trigger{grid-column:3;grid-row:1;justify-self:end;flex-shrink:0}
.demi-account-dialog{--account-accent:#ff8a18;box-sizing:border-box;width:min(400px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:28px;border:1px solid #ffffff1b;border-radius:24px;background:#202023;color:#f5f5f7;box-shadow:0 24px 80px #0007;font:15px LanaPixel,sans-serif;overflow-y:auto}
.demi-account-dialog::backdrop{background:#08080c9c;backdrop-filter:blur(8px)}
.demi-account-dialog h2{font:700 25px/1.3 Paperlogy,sans-serif;letter-spacing:-.6px;margin:4px 52px 28px 0;color:#fff}
.demi-account-close{float:right;padding:5px 0;border:0;background:none;color:#a5a4ac;font:13px LanaPixel,sans-serif;cursor:pointer}
.demi-account-dialog button:disabled{opacity:.5;cursor:default}
.demi-google-button{min-height:44px;display:flex;align-items:center;justify-content:center}
.demi-account-remember{display:flex;align-items:center;gap:10px;margin:24px 0 21px;cursor:pointer;color:#d0cdd5;font:14px/1.5 LanaPixel,sans-serif}
.demi-account-remember input{width:16px;height:16px;margin:0;accent-color:var(--account-accent);flex:none;cursor:pointer}
.demi-account-policies{display:flex;gap:16px;font:12px/1.6 LanaPixel,sans-serif;margin-top:18px;color:#a7a3ac}
.demi-account-policies a{text-decoration:none}.demi-account-policies a:hover{color:#fff;text-decoration:underline}
.demi-account-status{font:13px/1.7 LanaPixel,sans-serif;color:#ffbd83;margin:18px 0 0;overflow-wrap:anywhere}
.demi-account-status:empty{display:none}
.demi-account-email{color:#aba8b2;overflow-wrap:anywhere;font:14px/1.6 LanaPixel,sans-serif;margin:0 0 24px}
.demi-account-plan{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0;padding:22px 0;border-top:1px solid #ffffff13;border-bottom:1px solid #ffffff13}
.demi-account-plan dt{font-size:12px;color:#a7a3ad;margin-bottom:10px}
.demi-account-plan dd{font:700 18px/1.5 Paperlogy,sans-serif;color:#fff;margin:0;overflow-wrap:anywhere}
.demi-account-plan>div:first-child dd{color:#ff9a3d}
.demi-account-badge{font:12px/1.5 LanaPixel,sans-serif;color:#b8b2bd;margin:14px 0 25px}
.demi-account-badge[data-state=active]{color:#ffad63}.demi-account-badge[data-state=expired],.demi-account-badge[data-state=revoked]{color:#ff9999}
.demi-account-actions{display:flex;gap:10px;flex-wrap:wrap}
.demi-account-secondary,.demi-account-primary,.demi-account-page button,.demi-account-dialog>button:not(.demi-account-close){border:1px solid #ffffff20;border-radius:12px;background:#2b2b30;color:#eee;padding:10px 15px;cursor:pointer;font:14px/1.5 LanaPixel,sans-serif;transition:background .2s}
.demi-account-secondary:hover,.demi-account-page button:hover,.demi-account-dialog>button:not(.demi-account-close):hover{background:#36363c}
.demi-account-primary,.demi-account-page .demi-account-primary{background:var(--account-accent,#ff8a18);border-color:transparent;color:#19120c}
.demi-account-primary:hover,.demi-account-page .demi-account-primary:hover{background:#ffa344}
.demi-account-dialog [hidden],.demi-account-page [hidden]{display:none!important}
.demi-account-dialog :focus-visible,.demi-account-page :focus-visible{outline:2px solid var(--account-accent,#ff8a18);outline-offset:4px}
.demi-account-page{--account-accent:#ff8a18;box-sizing:border-box;display:block;width:min(620px,calc(100% - 40px));margin:8vh auto auto;padding:32px;background:#202023;border:1px solid #ffffff1b;border-radius:24px;box-shadow:0 24px 75px #0004;color:#f5f5f7;font:15px/1.6 LanaPixel,sans-serif}
.demi-account-page h1{font:700 30px/1.3 Paperlogy,sans-serif;margin:10px 0 28px;letter-spacing:-.8px}
.demi-account-page .eyebrow{font-size:11px;color:#a4a2ad;letter-spacing:2px}
.account-page-header{margin:0 auto;height:92px}.account-page-footer{margin-top:60px}
.account-admin-nav{display:flex;gap:20px;align-items:center;font-size:14px}
.demi-account-admin{--account-accent:#258bff;width:min(900px,calc(100% - 40px));margin-top:4vh}
.account-admin-page .account-page-header .brand img{filter:hue-rotate(184deg)}
.account-admin-page .demi-account-primary,.account-admin-page .demi-account-page .demi-account-primary{background:#258bff;color:#071829}
.account-admin-page .demi-account-primary:hover{background:#5ba8ff}
.account-admin-page .demi-account-dialog{--account-accent:#258bff}
.account-admin-session{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:24px}
.account-admin-session .demi-account-email{margin:0;margin-right:auto}.account-admin-session button{padding:4px 0;background:none;border:0;color:#b9c7d6}
.demi-account-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0}
.demi-account-tools input{flex:1;min-width:160px}
.demi-account-page input:not([type=checkbox]),.demi-account-page select,.demi-account-dialog input:not([type=checkbox]),.demi-account-dialog select{box-sizing:border-box;padding:11px 13px;background:#29292e;border:1px solid #ffffff24;border-radius:10px;color:#eee;font:14px/1.5 LanaPixel,sans-serif;max-width:100%}
.demi-account-dialog label:not(.demi-account-remember){display:block;margin:16px 0 10px;color:#aba8b2;font-size:13px}
.demi-account-dialog label input:not([type=checkbox]),.demi-account-dialog label select{display:block;width:100%;margin-top:8px}
.demi-account-dialog>input:not([type=checkbox]),.demi-account-dialog>select{display:block;width:100%;margin:10px 0}
.demi-account-dialog>button:not(.demi-account-close){margin:6px 8px 4px 0}
.demi-account-card{padding:22px 0;border-top:1px solid #ffffff16}
.demi-account-card strong{overflow-wrap:anywhere;font-weight:400;color:#fff;font-size:16px}
.demi-account-card p{font-size:13px;color:#aeb8c9;margin:10px 0 14px}
.demi-account-card button{margin-right:8px;padding:7px 12px}
.demi-account-page button:disabled{opacity:.5;cursor:default}
.account-empty{padding:24px 0;color:#aaa}
.account-policy-draft{color:#ffb36c!important}
.account-link-page{font-family:var(--cut-pixel,LanaPixel,sans-serif)}
.account-link-steps{display:grid;grid-template-columns:1fr 1fr;list-style:none;gap:12px;margin:0 0 28px;padding:0;counter-reset:connection}
.account-link-steps li{counter-increment:connection;display:flex;gap:10px;align-items:center;color:#85838d;font-size:14px;padding:12px 0;border-bottom:2px solid #ffffff12}
.account-link-steps li::before{content:counter(connection);display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;background:#ffffff09}
.account-link-steps li[data-state=current]{color:#fff;border-color:#ff981e}
.account-link-steps li[data-state=complete]{color:#ffb164;border-color:#a76327}
.account-link-steps li[data-state=complete]::before{content:'✓';color:#171310;background:#ffb164}
.account-link-description{margin:0 0 24px;color:#cfccd3;line-height:1.8}
.account-link-page .demi-account-email:empty{display:none}
.account-link-footnote{font-size:12px;line-height:1.8;color:#94909a;margin:28px 0 0;padding-top:20px;border-top:1px solid #ffffff12}
.account-link-page h1{font-family:var(--cut-title,Paperlogy,sans-serif)}
@media(max-width:420px){.account-link-steps{gap:10px}.account-link-steps li{font-size:12px;gap:7px}}
.demi-account-admin-dialog{--account-accent:#258bff}
.demi-account-admin-dialog .demi-account-primary{background:#258bff;color:#071829}
.demi-account-admin-dialog .demi-account-primary:hover{background:#5ba8ff}
.demi-account-admin-dialog form>button{margin-top:20px}
.demi-account-admin-dialog form>input{width:100%}
.demi-account-card small{display:block;overflow-wrap:anywhere;color:#9da8b9;font:12px/1.6 LanaPixel,sans-serif;margin-top:6px}
.admin-card .code-actions{flex:0 1 240px}
.code-info small{overflow-wrap:anywhere}
.account-manager-session{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px;color:#adbccc;font-size:13px}
.account-manager-session span{overflow-wrap:anywhere}
.account-email-search{display:flex;gap:8px}.account-email-search input{flex:1}.account-email-search button{flex:none}
#grantAccountsField{margin-top:16px}#grantTerms{margin-top:22px}#customMonthsField{width:100px}#expiryDateField{max-width:50%}
.demi-account-admin-dialog form>p:not([role=status]){font-size:13px;color:#adbccc;line-height:1.7}
.account-admin-page .demi-account-status:empty{display:none}
@media(max-width:600px){.admin-card .code-actions{flex-basis:100%}}
@media(max-width:600px){.account-page-header{height:76px}.account-admin-nav{font-size:12px;gap:12px}.demi-account-page{padding:24px;margin-top:4vh}.demi-account-page h1{font-size:25px}.account-admin-session{gap:12px}.account-admin-session .demi-account-email{width:100%}.demi-account-plan{gap:12px}.demi-account-plan dd{font-size:16px}.demi-account-dialog{padding:24px}.demi-account-trigger{font-size:15px}}
@media(prefers-reduced-motion:reduce){.demi-account-trigger,.demi-account-dialog button{transition:none}}

.demi-login-body{min-height:100dvh;background:#111113;display:grid;place-items:center;margin:0;padding:20px;box-sizing:border-box}
.demi-login-page{box-sizing:border-box;width:min(400px,100%);margin:0;padding:28px}
.demi-login-brand{display:block;width:126px;margin-bottom:28px}.demi-login-brand img{display:block;width:100%;height:auto}
.demi-login-page h1{font-size:26px;margin:0 0 28px}
@media(max-width:600px){.demi-login-page{margin:0;padding:24px;width:min(400px,100%)}}
