/* Ascension identity. This skin extends the supplied portal and its API-backed UI. */
@font-face{font-family:Manrope;src:url('/static/assets/identity/manrope-latin-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/static/assets/identity/cormorant-latin-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/static/assets/identity/cormorant-latin-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/static/assets/identity/cormorant-latin-500-italic.woff2') format('woff2');font-style:italic;font-weight:500;font-display:swap}
:root{
  color-scheme:dark;
  --bg:#0a0c0e;--panel:#151716;--panel-high:#1d201d;--surface:var(--panel);--surface-raised:var(--panel-high);
  --line:#34392f;--line-soft:rgba(213,205,177,.13);--text:#f0ecd9;--muted:#b1b6ad;--dim:#929b8e;
  --gold:#d6bc7c;--gold-bright:#eeddaa;--gold-dim:#aa905e;--green:#b1ed88;--cyan:var(--green);--purple:#ad80ce;
  --red:#efb2a5;--radius:6px;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
}
html{scroll-padding-top:104px}
body{font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.7;background:var(--bg);color:var(--text)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.12;text-wrap:balance}
p{text-wrap:pretty}
button,input,select,textarea{font:inherit}
button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}
button,a,input,select,textarea,summary{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--green);outline-offset:5px}
::selection{background:var(--gold);color:var(--bg)}
.container{width:min(1240px,calc(100% - 96px))}
.site-shell{overflow:clip}
.site-header{height:88px;background:rgba(10,12,14,.97);border-color:var(--line-soft)}
.header-inner{width:min(1440px,calc(100% - 64px));gap:24px}
.brand{gap:12px}
.brand img.brand-wordmark,.brand-wordmark{width:172px;height:auto;object-fit:contain}
.brand:has(.brand-wordmark) .brand-type{display:none}
.brand-type{font-size:24px;letter-spacing:2px;color:var(--text)}
.brand-type>span{font-family:Manrope,Arial,sans-serif;font-size:12px;letter-spacing:.5px;color:var(--gold-dim);margin-top:3px;text-transform:none}
.desktop-nav{gap:22px}
.desktop-nav>a{font-size:14px;color:var(--muted)}
.desktop-nav>a:hover,.desktop-nav>a.active{color:var(--gold-bright)}
.desktop-nav>a.active:after{width:24px;left:calc(50% - 12px);background:var(--gold);box-shadow:none}
.header-actions,.header-tools{display:flex;align-items:center;gap:10px}
.icon-button{width:44px;height:44px;min-width:44px;border-radius:5px;color:var(--muted)}
.icon-button:hover{background:var(--panel-high);color:var(--gold)}
.player-button{width:auto;min-width:44px;padding-inline:10px}
#header-player{font-size:12px;max-width:95px}
.button{font-family:Manrope,Arial,sans-serif;min-height:48px;padding:12px 22px;font-size:14px;font-weight:650;letter-spacing:0;border-radius:4px;line-height:1.5;white-space:normal;text-align:center;transition:background .18s,border-color .18s,color .18s,transform .18s}
.button:hover:not(:disabled){transform:translateY(-1px)}
.button-gold{background:var(--gold);color:#131710;border-color:var(--gold);box-shadow:none}
.button-gold:hover:not(:disabled){background:var(--gold-bright);border-color:var(--gold-bright);box-shadow:none}
.button-outline{background:rgba(10,12,14,.3);border-color:#666a58;color:var(--text)}
.button-outline:hover:not(:disabled){background:rgba(213,188,124,.08);border-color:var(--gold)}
.button-cyan{color:var(--green);background:rgba(138,236,73,.06);border-color:rgba(177,237,136,.35)}
.button-cyan:hover:not(:disabled){background:rgba(138,236,73,.12);border-color:var(--green)}
.button-subtle{background:var(--panel);border-color:var(--line);color:var(--muted)}
.button-subtle:hover:not(:disabled){background:var(--panel-high);border-color:var(--gold-dim);color:var(--text)}
.button-small,.nav-play{font-size:14px;min-height:44px;padding:10px 16px}
.nav-play{gap:10px;white-space:nowrap}
.text-link{font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.6;min-height:44px;white-space:normal;gap:10px;color:var(--gold)}
.text-link:hover{gap:13px;color:var(--gold-bright)}
.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:none;font-weight:600;color:var(--gold);line-height:1.6}
.eyebrow-line:before{background:var(--gold-dim)}
.section{padding-top:88px;padding-bottom:0}
.section-heading{margin-bottom:32px;gap:32px;align-items:flex-end}
.section-heading h2{font-size:clamp(34px,3.4vw,48px);letter-spacing:-.7px;margin-top:12px;line-height:1.12}
.section-heading>p{font-size:16px;max-width:370px;line-height:1.7;color:var(--muted)}
.section-heading>.text-link{flex-shrink:0}
.panel{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:28px}
.page{padding-bottom:88px;min-height:65vh;animation:page-enter .25s ease-out}
.page-header{padding-top:65px;padding-bottom:44px}
.page-header:before{background:radial-gradient(ellipse,rgba(138,236,73,.035),transparent 70%)}
.page-header h1{font-size:clamp(44px,4.4vw,64px);line-height:1.03;letter-spacing:-1.1px;margin:20px 0}
.page-header p{font-size:16px;max-width:600px;line-height:1.75}
.breadcrumb{font-size:13px;color:var(--dim);padding-top:24px;min-height:44px;gap:12px}
.breadcrumb a{padding-block:8px}
.notice{font-size:14px;color:var(--muted);background:rgba(214,188,124,.04);border-color:rgba(214,188,124,.24);padding:17px 20px;gap:12px;line-height:1.7}
.notice .icon{width:18px;height:18px;margin-top:3px}
.notice.cyan-notice{background:rgba(177,237,136,.035);border-color:rgba(177,237,136,.2);color:var(--muted)}
.notice p{font-size:inherit}
.notice button,.notice a{font-size:inherit;color:var(--gold)}
.empty-state{border-style:solid;background:var(--panel);padding:48px 28px;border-color:var(--line)}
.empty-state h3{font-size:32px}
.empty-state p{font-size:16px;line-height:1.75;max-width:520px}
.empty-state .button{margin-top:20px}
.inline-loading{font-size:14px;color:var(--muted);padding:38px}
.initial-loader{font-size:16px;min-height:60vh}
/* A fresh homepage, with artwork framing live, readable type. */
.home-hero{position:relative;isolation:isolate;background:var(--bg);min-height:620px;overflow:hidden}
.home-hero:before{content:'';position:absolute;inset:0;z-index:-2;background:url('/static/assets/identity/hero-1920.webp') center right/cover no-repeat}
.home-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,12,14,.98),rgba(10,12,14,.78) 30%,rgba(10,12,14,.10) 63%),linear-gradient(0deg,var(--bg),transparent 22%);pointer-events:none}
.home-hero>.container{min-height:620px;padding-top:96px;padding-bottom:84px;display:flex;align-items:center;justify-content:space-between;gap:48px;position:relative}
.home-hero .hero-copy{width:auto;max-width:560px;flex:0 1 560px}
.hero-kicker{display:flex;align-items:center;gap:12px;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.12em;margin-bottom:25px}
.hero-kicker:before{content:'';width:24px;height:1px;background:var(--gold-dim)}
.home-hero h1{font-size:clamp(62px,5.5vw,82px);line-height:.98;letter-spacing:-1.6px;text-shadow:0 3px 30px rgba(0,0,0,.3);margin:0 0 26px;max-width:590px}
.home-hero h1 em{font-weight:500;color:var(--gold-bright)}
.home-hero .hero-copy>p,.home-hero .hero-description{font-size:17px;color:#c5c8ba;line-height:1.75;max-width:430px}
.home-hero .hero-actions{margin-top:30px;gap:14px;flex-wrap:wrap;display:flex}
.home-hero .hero-actions .button{font-size:14px;min-height:48px;padding:12px 22px}
.home-hero .hero-notes{font-size:13px;color:var(--muted);gap:16px;margin-top:22px;flex-wrap:wrap}
.hero-aside{align-self:flex-end;max-width:230px;padding:18px 20px;border-left:1px solid rgba(214,188,124,.6);background:rgba(10,12,14,.78);font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:0;backdrop-filter:blur(8px)}
.hero-aside strong{display:block;color:var(--gold-bright);font-weight:600;margin-bottom:5px}
.hero-aside .eyebrow{margin-bottom:8px}
.hero-aside .text-link{font-size:13px;margin-top:4px}
.service-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);background:var(--panel);margin-top:0;position:relative}
.service-strip>div,.service-strip>a,.service-strip>button{padding:25px 28px;text-align:left;min-width:0;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:5px}
.service-strip>:last-child{border-right:0}
.service-strip small,.service-strip .service-label{font-size:12px;color:var(--dim);letter-spacing:.04em}
.service-strip strong{font-size:14px;color:var(--text);font-weight:500}
.service-strip .text-link{font-size:14px;min-height:0}
.service-strip a:hover,.service-strip button:hover{background:var(--panel-high)}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portal-card{position:relative;border:1px solid var(--line);border-radius:6px;background:var(--panel);padding:30px;display:flex;flex-direction:column;align-items:flex-start;min-width:0;transition:border-color .2s,background .2s}
a.portal-card:hover{background:var(--panel-high);border-color:var(--gold-dim)}
.portal-card>img{height:72px;width:72px;object-fit:contain;margin-bottom:26px}
.portal-card .eyebrow{margin-bottom:10px}
.portal-card h3{font-size:32px;margin-bottom:15px}
.portal-card p{font-size:16px;color:var(--muted);line-height:1.7}
.portal-card .text-link{margin-top:18px}
.portal-card .card-number{position:absolute;top:28px;right:28px;font-size:12px;color:var(--dim)}
.home-feature{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:64px;align-items:center}
.home-feature figure,.home-feature .feature-art{margin:0;min-width:0;position:relative;overflow:hidden;border-radius:6px}
.home-feature figure>img,.home-feature>.feature-art img,.home-feature>img{width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:6px}
.home-feature .feature-copy{padding-block:18px}
.home-feature h2{font-size:clamp(36px,3.8vw,54px);letter-spacing:-.7px;line-height:1.1;margin:16px 0 20px}
.home-feature p{font-size:16px;line-height:1.8;color:var(--muted)}
.home-feature .button,.home-feature .text-link{margin-top:24px}
.home-feature figcaption{position:absolute;left:24px;bottom:22px;max-width:calc(100% - 48px);font-size:12px;color:var(--gold-bright);background:rgba(10,12,14,.82);padding:6px 10px}
.chapter-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-block:1px solid var(--line);margin-top:38px}
.chapter-links>a,.chapter-links>article,.chapter-links>div{padding:24px 28px;border-right:1px solid var(--line);min-width:0}
.chapter-links>:first-child{padding-left:0}.chapter-links>:last-child{border-right:0}
.chapter-links h3{font-size:26px;margin-bottom:8px}
.chapter-links p{font-size:14px;color:var(--muted)}
.chapter-links .text-link{margin-top:8px}
.editorial-empty{padding:32px;border:1px solid var(--line);border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--panel)}
.editorial-empty h3{font-size:30px;margin-bottom:10px}
.editorial-empty p{font-size:16px;line-height:1.75;color:var(--muted);max-width:680px}
.editorial-empty .button{flex-shrink:0}
.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.journey-step{position:relative;padding-top:28px;border-top:1px solid var(--line)}
.journey-step>span,.journey-step .step-number{font-size:12px;color:var(--gold);display:block;margin-bottom:17px}
.journey-step h3{font-size:30px;margin-bottom:14px}
.journey-step p{font-size:16px;line-height:1.8;color:var(--muted)}
.journey-step .text-link{margin-top:14px}
.community-feature{margin-top:88px;margin-bottom:88px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);position:relative;border-block:1px solid var(--line);background:var(--panel);overflow:hidden}
.community-feature .community-copy,.community-feature>div:first-child{padding:54px 52px;position:relative;z-index:1}
.community-feature .community-art,.community-feature>figure{min-width:0;min-height:340px;margin:0;background:url('/static/assets/identity/ruins-1440.webp') center/cover no-repeat}
.community-feature img{width:100%;height:100%;object-fit:cover;min-height:340px}
.community-feature h2{font-size:clamp(36px,3.7vw,50px);margin:16px 0 18px;letter-spacing:-.6px}
.community-feature p{font-size:16px;color:var(--muted);line-height:1.8}
.community-feature .button,.community-feature .text-link{margin-top:24px}
/* API-backed services retain the bundle's controls and state markers. */
.page-toolbar{margin-block:30px;gap:20px}
.reward-avatar{background:var(--panel-high);width:44px;height:44px}
.reward-name small{font-size:12px;letter-spacing:.05em;margin-bottom:3px;color:var(--dim)}
.reward-name strong{font-size:16px;color:var(--text)}
.reward-name .text-link{font-size:14px}
.currency-label{font-size:13px;color:var(--muted)}
.pack-grid{gap:24px;margin-top:42px;align-items:stretch}
.pack-card{background:var(--panel);border-color:var(--line);padding:32px 24px 24px;display:flex;flex-direction:column;min-width:0}
.pack-card.popular{background:linear-gradient(160deg,rgba(214,188,124,.075),transparent 60%),var(--panel);box-shadow:none;border-color:var(--gold-dim)}
.pack-tag{font-size:12px;padding:4px 13px;line-height:1.4;color:#141910;background:var(--gold);white-space:nowrap}
.pack-tag.subtle{background:var(--panel-high);color:var(--muted);border-color:var(--line)}
.pack-icon{margin-bottom:20px}
.pack-card:nth-child(1) .pack-icon{color:var(--muted)}
.pack-card:nth-child(3) .pack-icon{color:var(--purple)}
.pack-card:nth-child(4) .pack-icon{color:var(--green)}
.pack-card h2{font-size:34px;line-height:1.1}
.pack-subtitle{font-size:14px;line-height:1.6;min-height:45px;margin-top:12px;color:var(--muted)}
.pack-price{font-size:46px;line-height:1.3;margin-top:22px}
.pack-price .dollar{font-family:Manrope,Arial,sans-serif;font-size:17px;line-height:2.5}
.pack-price small{font-family:Manrope,Arial,sans-serif;font-size:12px}
.pack-credits{font-size:14px;margin-top:5px;padding-bottom:24px}
.pack-features{padding:24px 0;gap:13px;flex:1;min-height:140px}
.pack-features li{font-size:14px;line-height:1.65;color:var(--muted);gap:9px}
.pack-features .icon{margin-top:4px;color:var(--gold)}
.pack-card .button{font-size:14px;min-height:48px;padding-inline:12px}
.store-trust{font-size:13px;color:var(--dim);gap:24px;padding:28px 0;flex-wrap:wrap}
.faq-section{max-width:850px;margin-top:64px}
.faq-heading h2{font-size:40px;line-height:1.15;margin-bottom:12px}
.faq-heading p{font-size:16px;color:var(--muted)}
summary{font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--text);padding:22px 3px;min-height:64px}
summary:after{font-size:24px;flex-shrink:0;line-height:1.2;color:var(--gold)}
details>p{font-size:16px;line-height:1.8;padding-bottom:24px;color:var(--muted)}
.vote-layout{grid-template-columns:minmax(0,1fr) 320px;gap:28px}
.vote-list{gap:16px}
.vote-card{background:var(--panel);gap:20px;padding:26px;flex-wrap:wrap}
.vote-monogram{width:54px;height:54px;font-size:32px;background:rgba(177,237,136,.04);border-color:rgba(177,237,136,.25)}
.vote-card-info{min-width:180px}
.vote-card-info h3{font-family:Manrope,Arial,sans-serif;font-size:17px;font-weight:600;line-height:1.4;margin-bottom:7px;text-wrap:initial}
.vote-card-info>p{font-size:14px;line-height:1.6}
.vote-meta{font-size:12px;gap:13px;flex-wrap:wrap;color:var(--dim);margin-top:12px}
.vote-action{min-width:136px;margin:0;width:auto;display:block}
.vote-action .button{font-size:14px;min-height:44px}
.vote-action small{font-size:12px;margin-top:8px;line-height:1.5;color:var(--dim)}
.vote-sidebar{background:var(--panel);padding:28px}
.vote-sidebar .eyebrow{font-size:12px;letter-spacing:.05em}
.vote-sidebar h3{font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.5;font-weight:600;color:var(--text)}
.vote-balance{font-size:54px}
.vote-balance-label{font-size:13px;margin-bottom:24px}
.sidebar-step{gap:12px}
.sidebar-step>span{width:24px;height:24px;line-height:22px;font-size:12px}
.sidebar-step p{font-size:14px;line-height:1.75}
.sidebar-note p{font-size:14px}
.vote-helper{font-size:13px;flex-wrap:wrap}
.score-controls{gap:24px;align-items:stretch;margin:32px 0 24px}
.segmented-control{background:var(--panel);border-color:var(--line);gap:3px;flex-wrap:wrap;padding:4px}
.segmented-control button{font-size:14px;padding:10px 15px;min-height:44px;line-height:1.5;color:var(--muted)}
.segmented-control button.active{background:var(--panel-high);color:var(--gold-bright);box-shadow:inset 0 0 0 1px var(--line)}
.input{background:var(--panel);border-color:var(--line);min-height:48px;padding:12px 14px;font-size:16px;color:var(--text);line-height:1.5}
.input::placeholder{color:var(--dim)}
.input:focus{border-color:var(--gold-dim)}
.search-box{max-width:320px}
.search-box input{font-size:16px;height:100%;padding-left:43px}
.search-box>.icon{top:16px;left:14px;width:18px;height:18px}
.score-summary{font-size:13px;line-height:1.6;color:var(--dim);gap:20px;flex-wrap:wrap}
.sort-select{font-size:14px;gap:10px}
.sort-select select{min-height:44px;background:var(--panel);color:var(--text);font-size:14px;border:1px solid var(--line);border-radius:4px;padding:8px 12px;max-width:190px}
.table-wrap{border-color:var(--line);border-radius:6px;scrollbar-color:var(--gold-dim) var(--panel);scrollbar-width:thin}
.score-table th{font-family:Manrope,Arial,sans-serif;font-size:12px;letter-spacing:0;text-transform:none;font-weight:600;background:var(--panel);color:var(--muted);padding:18px 24px}
.score-table td{font-size:14px;color:var(--muted);padding:20px 24px;background:transparent}
.score-table tbody tr:hover{background:rgba(177,237,136,.035)}
.score-table tbody tr:nth-child(1){background:rgba(214,188,124,.035)}
.score-table .rank-cell{font-size:24px;width:85px}
.score-table .player-cell{color:var(--text);gap:12px}
.player-emblem{color:var(--gold);width:30px;height:30px;background:var(--panel)}
.mode-chip{font-size:12px;background:var(--panel-high);color:var(--muted);padding:5px 9px}
.mode-chip.ironman{color:var(--gold);background:rgba(214,188,124,.07)}
.mode-chip.hardcore{color:var(--red);background:rgba(239,178,165,.06)}
.pagination{font-size:13px;gap:24px;flex-wrap:wrap;line-height:1.5;margin-top:24px}
.page-buttons{gap:12px}
.page-buttons .button{font-size:14px;min-height:44px;padding:10px 16px}
.realm-copy h2{font-size:46px}
.realm-copy p{font-size:16px;color:var(--muted)}
.realm-image:after{box-shadow:inset 0 0 70px 8px rgba(10,12,14,.3)}
.feature-card{background:var(--panel);border-color:var(--line)}
.feature-body h3{font-size:30px;line-height:1.2}
.feature-body p{font-size:16px;color:var(--muted);line-height:1.75}
.feature-label,.feature-number{font-size:12px;letter-spacing:.05em;color:var(--dim)}
.community-banner{background:var(--panel);border-color:var(--line)}
.community-banner h2{font-size:44px}.community-banner p{font-size:16px;color:var(--muted)}
/* Native dialogs, forms, receipts, and honest status feedback. */
.modal{width:min(560px,calc(100% - 40px));background:var(--panel);border-color:#535844;border-radius:8px;padding:40px;max-height:calc(100dvh - 48px);box-shadow:0 24px 100px rgba(0,0,0,.65)}
.modal::backdrop{background:rgba(3,5,4,.84);backdrop-filter:blur(7px)}
.modal-close{top:10px;right:10px;min-width:44px;width:44px;height:44px;font-size:30px}
.modal .eyebrow{font-size:12px;letter-spacing:.07em;margin-top:6px;padding-right:24px}
.modal h2{font-size:40px;line-height:1.08;margin:18px 0}
.modal-intro,.modal-prose p{font-size:16px;line-height:1.8;color:var(--muted)}
.modal label:not(.checkbox-row){font-size:14px;color:var(--text)}
.field-help{font-size:13px;line-height:1.7;color:var(--dim)}
.field-error{font-size:14px;line-height:1.7;color:var(--red)}
.modal .notice{font-size:14px;line-height:1.7;padding:16px}
.modal-secondary{min-height:44px;font-size:14px;margin-top:12px}
.dialog-icon.success{color:var(--green);border-color:rgba(177,237,136,.3);background:rgba(177,237,136,.04)}
.download-option{background:var(--panel-high);padding:18px;min-height:76px;border-color:var(--line)}
.download-option strong{font-size:16px;line-height:1.5;font-weight:500}
.download-option small{font-size:13px}
.modal-smallprint{font-size:13px;line-height:1.75;color:var(--dim)}
.checkout-summary{padding:22px;background:var(--bg);border-color:var(--line);gap:18px;flex-wrap:wrap}
.checkout-summary h3{font-size:30px}
.checkout-summary p{font-size:14px}
.checkout-summary>strong{font-size:34px}
.receipt-row{font-size:14px;line-height:1.6;padding:13px 0;align-items:flex-start}
.receipt-row strong{text-align:right;overflow-wrap:anywhere;max-width:64%}
.receipt-id{font-size:12px;line-height:1.7}
.checkbox-row{font-size:14px;line-height:1.7;gap:12px;min-height:44px}
.checkbox-row input{width:20px;height:20px;margin-top:3px}
.checkbox-row button{font-size:14px}
.modal-prose h3{font-family:Manrope,Arial,sans-serif;font-size:16px;font-weight:600;color:var(--text);line-height:1.5;margin-top:26px}
.modal-prose code{font-size:13px;background:var(--bg);color:var(--green);padding:3px 6px}
.connection-row{font-size:14px;line-height:1.6;gap:20px;padding:15px 0;align-items:flex-start}
.connection-row>span:last-child{font-size:13px;text-align:right}
.activity-item{background:var(--panel-high);padding:18px}
.activity-item h3{font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.5;font-weight:600}
.activity-item p{font-size:14px;line-height:1.7}
.toast{background:#1c271a;color:#d7ecd0;border-color:#536148;font-size:14px;padding:16px 20px}
.toast.error{color:var(--red);background:#261b18;border-color:#6e4940}
/* The footer remains an easy-to-scan directory rather than an ornamental frame. */
.site-footer{background:#080a09;border-color:var(--line)}
.footer-top{grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px;padding-block:54px 42px}
.footer-brand .brand-type{font-size:24px;letter-spacing:2px}
.footer-brand .brand-type>span{font-size:12px;letter-spacing:.5px}
.footer-brand p{font-size:14px;line-height:1.8;color:var(--dim);margin-top:20px}
.footer-links{gap:0}
.footer-links>span{font-size:12px;letter-spacing:.03em;color:var(--gold);margin:0 0 14px;text-transform:none}
.footer-links a,.footer-links button{font-size:14px;line-height:1.5;color:var(--muted);padding:10px 0;min-height:44px}
.footer-bottom{padding-block:26px 30px;gap:30px}
.footer-bottom p,.footer-bottom p span{font-size:12px;line-height:1.8;color:var(--dim)}
.footer-status{min-height:44px;font-size:13px;line-height:1.6;color:var(--muted);flex-shrink:0}
.status-dot{width:6px;height:6px;background:var(--gold);box-shadow:none}
.status-dot.live{background:var(--green);box-shadow:0 0 9px rgba(138,236,73,.3)}
@media(min-width:1700px){.home-hero:before{background-size:auto 100%;background-position:center right}}
@media(max-width:1200px){
  .container{width:calc(100% - 64px)}
  .header-inner{width:calc(100% - 48px);gap:20px}
  .desktop-nav{gap:15px}.desktop-nav>a{font-size:14px}
  .brand img.brand-wordmark{width:155px}
  .home-hero>.container{gap:24px;padding-top:80px;padding-bottom:76px}
  .home-hero .hero-copy{max-width:510px}
  .hero-aside{max-width:215px}
  .home-feature{gap:40px}
  .portal-card{padding:26px}
  .pack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}
  .pack-card{padding:32px}.pack-subtitle{min-height:0}
  .vote-layout{grid-template-columns:minmax(0,1fr) 290px}
  .vote-card{padding:22px}.vote-action{width:100%;display:flex;align-items:center;gap:16px;margin-left:74px;text-align:left}
  .vote-action .button{width:auto}.vote-action small{margin:0}
  .footer-top{gap:28px}
}
@media(max-width:1080px){
  .site-header{height:80px}.desktop-nav{display:none}.menu-button{display:inline-flex}
  .header-actions{gap:8px}.brand img.brand-wordmark{width:170px}
  .mobile-nav:not([hidden]){display:flex;position:absolute;top:79px;left:0;width:100%;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;background:var(--panel);padding:16px 32px 24px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(0,0,0,.4);flex-direction:column;gap:0}
  .mobile-nav a,.mobile-nav button{font-size:16px;line-height:1.6;padding:14px 12px;min-height:50px;border-bottom:1px solid var(--line-soft);color:var(--muted);text-align:left}
  .mobile-nav a.active{color:var(--gold-bright);background:rgba(214,188,124,.05)}
  .mobile-nav .mobile-nav-label{font-size:12px;color:var(--gold);margin:22px 12px 3px}
  .home-hero:before{background-position:65% center}
  .home-hero:after{background:linear-gradient(90deg,rgba(10,12,14,.96),rgba(10,12,14,.75) 32%,rgba(10,12,14,.2) 75%),linear-gradient(0deg,var(--bg),transparent 24%)}
  .home-hero h1{font-size:68px}.hero-aside{display:none}
  .service-strip>div,.service-strip>a,.service-strip>button{padding:22px 20px}
  .journey-grid{gap:28px}.community-feature .community-copy,.community-feature>div:first-child{padding:42px 34px}
}
@media(max-width:800px){
  .container{width:calc(100% - 48px)}.header-inner{width:calc(100% - 40px)}
  .section{padding-top:64px}.page{padding-bottom:64px}
  .home-hero,.home-hero>.container{min-height:610px}.home-hero>.container{padding-top:76px;padding-bottom:88px}
  .home-hero .hero-copy{max-width:470px}.home-hero h1{font-size:64px}.home-hero .hero-copy>p{font-size:16px;max-width:390px}
  .service-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-strip>:nth-child(2){border-right:0}.service-strip>:nth-child(3),.service-strip>:nth-child(4){border-top:1px solid var(--line)}
  .section-heading{align-items:flex-start;gap:22px}.section-heading h2{font-size:38px}.section-heading>p{font-size:16px;max-width:280px}
  .portal-grid{grid-template-columns:1fr;gap:18px}.portal-card{padding:28px}.portal-card>img{width:64px;height:64px;margin-bottom:18px}
  .home-feature{grid-template-columns:1fr;gap:32px}.home-feature h2{font-size:44px}.home-feature .feature-copy{padding:0}
  .home-feature figure>img,.home-feature>.feature-art img,.home-feature>img{aspect-ratio:1.9}
  .chapter-links{grid-template-columns:1fr}.chapter-links>a,.chapter-links>article,.chapter-links>div{padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}.chapter-links>:last-child{border-bottom:0}
  .editorial-empty{align-items:flex-start;flex-direction:column;gap:22px}
  .journey-grid{grid-template-columns:1fr;gap:32px}.journey-step{padding-top:24px}
  .community-feature{grid-template-columns:1fr;margin-block:64px}.community-feature .community-art,.community-feature>figure{min-height:270px}.community-feature img{min-height:270px;max-height:320px}
  .community-feature h2{font-size:44px}.community-feature .community-copy,.community-feature>div:first-child{padding:36px}
  .page-header{padding-top:48px;padding-bottom:36px}.page-header h1{font-size:50px}.page-header p{font-size:16px;max-width:550px}
  .vote-layout{grid-template-columns:1fr;gap:24px}.vote-card{padding:24px;flex-wrap:nowrap;gap:20px}
  .vote-action{width:auto;display:block;margin:0;text-align:center}.vote-action .button{width:100%}.vote-action small{margin-top:8px}
  .vote-sidebar{display:grid;grid-template-columns:185px minmax(0,1fr);column-gap:28px;padding:28px}
  .vote-sidebar .sidebar-balance{padding-right:28px;border-color:var(--line)}
  .score-controls{flex-wrap:wrap;gap:16px}.search-box{max-width:none}.segmented-control{width:100%}.segmented-control button{flex:1}
  .score-summary{font-size:13px}.score-table th,.score-table td{padding-inline:20px}
  .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.footer-brand{grid-column:1/-1;display:block}.footer-brand p{font-size:14px;margin-top:20px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:20px}
  .feature-body p{font-size:16px}.feature-body h3{font-size:30px}.feature-label{font-size:12px}
}
@media(max-width:540px){
  .container{width:calc(100% - 40px)}.header-inner{width:calc(100% - 32px);gap:12px}.site-header{height:76px}
  .brand img.brand-wordmark{width:136px;height:auto}.brand-type{font-size:21px;letter-spacing:1px}.brand-type>span{font-size:12px;letter-spacing:0}
  .brand img:not(.brand-wordmark){width:32px;height:36px}.brand{gap:8px}.header-actions{gap:5px}
  .nav-play{font-size:14px;min-height:44px;gap:7px;padding:10px 12px}.nav-play span{font-size:17px}.menu-button{width:44px;min-width:44px}.player-button{display:none}
  .mobile-nav:not([hidden]){top:75px;max-height:calc(100dvh - 76px);padding:12px 20px 24px}.mobile-nav a,.mobile-nav button{font-size:16px}
  .home-hero{min-height:890px}.home-hero>.container{min-height:890px;padding-top:54px;padding-bottom:400px;display:block}
  .home-hero:before{inset:330px 0 0;background-image:url('/static/assets/identity/hero-mobile-768.webp');background-size:cover;background-position:center 70%}
  .home-hero:after{background:linear-gradient(180deg,var(--bg) 0%,var(--bg) 37%,rgba(10,12,14,.9) 45%,transparent 70%,var(--bg) 100%)}
  .home-hero .hero-copy{max-width:none;width:100%;position:relative}
  .hero-kicker{font-size:12px;letter-spacing:.08em;margin-bottom:22px;gap:10px}
  .home-hero h1{font-size:clamp(50px,13vw,64px);letter-spacing:-1px;margin-bottom:24px;line-height:1.03;max-width:380px}
  .home-hero .hero-copy>p,.home-hero .hero-description{font-size:16px;line-height:1.75;max-width:350px}
  .home-hero .hero-actions{gap:10px;margin-top:26px}.home-hero .hero-actions .button{font-size:14px;padding:12px 16px;min-height:48px}
  .home-hero .hero-notes{font-size:12px;gap:12px}.home-hero .hero-notes .icon{width:14px;height:14px}
  .service-strip>div,.service-strip>a,.service-strip>button{padding:19px 16px;gap:6px}.service-strip strong{font-size:14px}.service-strip small{font-size:12px}
  .section{padding-top:58px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:36px}.section-heading>p{max-width:none;font-size:16px;margin-top:18px}.section-heading>.text-link{margin-top:16px}
  .eyebrow{font-size:12px;letter-spacing:.07em}.portal-card{padding:25px}.portal-card h3{font-size:30px}.portal-card p{font-size:16px}
  .home-feature{gap:26px}.home-feature h2{font-size:38px}.home-feature figure>img,.home-feature>.feature-art img,.home-feature>img{aspect-ratio:1.35}.home-feature figcaption{left:16px;bottom:16px;max-width:calc(100% - 32px)}
  .chapter-links{margin-top:28px}.editorial-empty{padding:26px}.editorial-empty h3{font-size:30px}
  .journey-step h3{font-size:30px}.journey-grid{gap:30px}
  .community-feature{margin-block:58px}.community-feature .community-copy,.community-feature>div:first-child{padding:30px 25px}.community-feature h2{font-size:38px}.community-feature .community-art,.community-feature>figure{min-height:240px}.community-feature img{min-height:240px;max-height:280px}
  .page{padding-bottom:58px}.breadcrumb{font-size:13px;padding-top:20px}.page-header{padding-top:35px;padding-bottom:32px}.page-header h1{font-size:44px;line-height:1.08;letter-spacing:-.7px;margin-block:16px}.page-header p{font-size:16px;max-width:none}
  .notice{font-size:14px;padding:16px;gap:10px}.notice .icon{width:18px;height:18px}.page-toolbar{gap:18px;flex-wrap:wrap;margin-block:26px}.reward-name{flex-wrap:wrap;gap:10px}.reward-name small{font-size:12px}.reward-name strong{font-size:16px}.reward-name .text-link{font-size:14px;margin-left:0}.reward-avatar{width:44px;height:44px}.currency-label{font-size:13px}
  .pack-grid{grid-template-columns:1fr;gap:36px;max-width:none;margin-top:38px}.pack-card{padding:30px 26px 26px}.pack-card h2{font-size:36px}.pack-subtitle{font-size:14px}.pack-price{font-size:48px;margin-top:20px}.pack-credits{font-size:14px}.pack-features{gap:14px;min-height:0}.pack-features li{font-size:14px}.pack-card .button{font-size:14px;min-height:48px}
  .store-trust{font-size:13px;align-items:flex-start;flex-direction:column;gap:14px;padding-block:26px}.faq-section{margin-top:48px}.faq-heading h2{font-size:36px}.faq-heading p{font-size:16px}
  summary{font-size:16px;line-height:1.6;padding:20px 2px;gap:16px}details>p{font-size:16px;line-height:1.8;padding:0 24px 24px 2px}
  .vote-layout{margin-top:24px}.vote-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:22px}.vote-monogram{width:44px;height:44px;font-size:28px}.vote-card-info{min-width:0}.vote-card-info h3{font-size:17px}.vote-card-info>p{font-size:14px}.vote-meta{font-size:12px;gap:8px}.vote-action{grid-column:1/-1;display:flex;flex-direction:column;align-items:stretch;width:100%;margin:4px 0 0;gap:6px;text-align:left}.vote-action .button{width:100%;font-size:14px;min-height:44px}.vote-action small{font-size:12px;margin:0;text-align:center}
  .vote-sidebar{padding:26px;display:block}.vote-sidebar .sidebar-balance{padding:0 0 24px;border-right:0;border-bottom:1px solid var(--line);display:block}.vote-sidebar .eyebrow{font-size:12px;letter-spacing:.05em}.vote-orb{width:80px;height:80px;margin-top:22px}.vote-orb .icon{width:40px;height:40px}.vote-balance{font-size:52px}.vote-balance-label{font-size:13px;margin-bottom:0}.vote-sidebar .sidebar-guide{padding-top:24px}.vote-sidebar h3{font-size:15px}.sidebar-step p{font-size:14px}.vote-sidebar .sidebar-note{margin-top:24px}.vote-helper{font-size:13px;gap:12px}
  .score-controls{gap:16px;margin-top:26px}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:5px}.segmented-control button{font-size:14px;padding:10px 8px;min-height:44px}.search-box{max-width:none}.search-box input{font-size:16px}.score-summary{font-size:13px;align-items:flex-start;gap:14px}.sort-select{font-size:14px;gap:8px}.sort-select select{font-size:14px;max-width:190px;min-height:44px}.score-table th{font-size:12px;padding:17px 18px}.score-table td{font-size:14px;padding:18px}.score-table .rank-cell{font-size:24px}.score-table .player-cell{gap:10px}.mode-chip{font-size:12px}.pagination{font-size:13px;gap:18px}.page-buttons{width:100%;justify-content:space-between;gap:8px}.page-buttons .button{font-size:14px;padding:10px 14px;min-height:44px}
  .empty-state{padding:38px 22px}.empty-state h3{font-size:30px}.empty-state p{font-size:16px}
  .modal{padding:34px 24px 28px;width:calc(100% - 32px);max-height:calc(100dvh - 32px)}.modal-close{top:6px;right:6px;width:44px;height:44px}.modal h2{font-size:36px}.modal-intro{font-size:16px}.modal .eyebrow{font-size:12px}.modal .notice{font-size:14px;padding:14px}.modal label:not(.checkbox-row){font-size:14px}.field-help{font-size:13px}.field-error{font-size:14px}.modal-smallprint{font-size:13px}.modal-secondary{font-size:14px}
  .checkout-summary{padding:18px;gap:14px}.checkout-summary>.icon{width:30px;height:30px}.checkout-summary h3{font-size:28px}.checkout-summary p{font-size:14px}.checkout-summary>strong{font-size:30px}.receipt-row{font-size:14px;gap:16px}.receipt-id{font-size:12px}.checkbox-row{font-size:14px}.modal-prose h3{font-size:16px}.modal-prose p{font-size:16px}.modal-prose code{font-size:13px}.activity-item h3{font-size:16px}.activity-item p{font-size:14px}
  .toast-stack{bottom:18px;right:18px;max-width:calc(100vw - 36px)}.toast{font-size:14px}
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px;padding-block:42px 34px}.footer-brand{grid-column:1/-1}.footer-brand p{font-size:14px}.footer-links:last-child{grid-column:1/-1;display:flex;flex-direction:column;gap:0}.footer-links>span{font-size:12px;margin-bottom:10px}.footer-links a,.footer-links button{font-size:14px;min-height:44px;padding:10px 0}.footer-bottom p,.footer-bottom p span{font-size:12px}.footer-status{font-size:13px}
  .feature-body h3{font-size:28px}.feature-body p{font-size:16px}.feature-label{font-size:12px}.community-banner h2{font-size:38px}.community-banner p{font-size:16px}
}
@media(max-width:380px){
  .header-inner{width:calc(100% - 28px);gap:8px}.brand img.brand-wordmark{width:120px}.brand-type{font-size:19px}.brand-type>span{font-size:12px}.header-actions{gap:4px}.nav-play{font-size:14px;padding:10px 11px;gap:5px}
  .home-hero h1{font-size:48px}.home-hero .hero-actions .button{font-size:14px;padding-inline:13px}.home-hero .hero-notes{font-size:12px}.hero-kicker{font-size:12px;letter-spacing:.04em}
  .vote-sidebar{padding:24px}.vote-card{padding:20px}.modal{padding-inline:22px}.checkout-summary{padding:16px}.checkout-summary>strong{font-size:30px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* The portal's final shared markup. */
.utility-nav{border-bottom:1px solid var(--line-soft);background:#101310}
.utility-nav>.container{display:flex;align-items:center;justify-content:flex-end;gap:28px;min-height:46px}
.utility-caption{font-size:12px;color:var(--dim);margin-right:auto}
.utility-nav a{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);min-height:44px;padding-block:8px}
.utility-nav a:hover,.utility-nav a.active{color:var(--gold-bright)}
.home-hero:before{display:none}
.home-hero-art{position:absolute;inset:0;z-index:-2;display:block}
.home-hero-art img{width:100%;height:100%;object-fit:cover;object-position:65% center}
.home-hero .hero-aside{position:absolute;right:0;bottom:42px;max-width:300px;padding:13px 18px;margin:0;border-left:1px solid var(--gold-dim);font-size:12px;line-height:1.6}
.home-hero .hero-aside>span{display:block;font-size:12px;color:var(--gold)}
.home-hero .hero-status{display:flex;position:static;gap:9px;font-size:13px;text-transform:none;letter-spacing:0;padding:10px 0 0;background:none;border:0;color:var(--muted);line-height:1.6;white-space:normal}
.home-hero .hero-status .icon{width:16px;height:16px}
.service-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-strip>a{flex-direction:row;align-items:center;gap:16px}
.service-strip>a>.icon{color:var(--gold);width:22px;height:22px}
.service-strip>a>.icon:last-child{margin-left:auto;width:16px;height:16px;color:var(--dim)}
.service-strip>a>span{display:flex;flex-direction:column;gap:3px}
.portal-card:has(.portal-image){padding:0;overflow:hidden}
.portal-image{width:100%;position:relative;overflow:hidden;background:var(--bg)}
.portal-image img{width:100%;aspect-ratio:1.8;height:auto;object-fit:cover;transition:transform .4s ease,filter .4s ease;filter:saturate(.8)}
a.portal-card:hover .portal-image img{transform:scale(1.035);filter:saturate(1)}
.portal-image>span{position:absolute;right:20px;bottom:18px;font-size:12px;color:var(--gold-bright);border:1px solid rgba(214,188,124,.4);padding:5px 8px;background:rgba(10,12,14,.72)}
.portal-body{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.portal-body .text-link{margin-top:auto;padding-top:20px}
.portal-body h3{font-size:30px}
.home-feature{display:block;margin-top:88px;padding-block:52px;background:radial-gradient(ellipse at 20% 50%,rgba(138,236,73,.035),transparent 60%),#10130f;border-block:1px solid var(--line-soft)}
.home-feature-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px}
.home-feature-image{display:flex;align-items:center;justify-content:center;min-width:0}
.home-feature-image img{width:min(100%,480px);height:auto;aspect-ratio:auto;object-fit:contain}
.home-feature-copy p+p{margin-top:18px}
.home-feature-copy .text-link{margin-top:22px}
.home-feature-copy h2 em,.section-heading h2 em,.community-feature h2 em{color:var(--gold);font-style:normal}
.editorial-mark{width:54px;height:54px;border:1px solid var(--line);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--gold)}
.editorial-mark .icon{width:23px;height:23px}
.editorial-empty>div{flex:1;min-width:0}
.journey-step>.icon{margin-top:20px;color:var(--gold)}
a.journey-step:hover{border-color:var(--gold-dim)}
a.journey-step:hover h3{color:var(--gold-bright)}
.home-ranking{margin-top:88px;padding-block:34px;gap:28px;border-color:var(--line)}
.home-ranking-title{min-width:260px}.home-ranking-title h3{font-size:32px;line-height:1.15;margin:10px 0}
.home-ranking-title .eyebrow{font-size:12px;letter-spacing:.05em}.sample-label{font-size:13px;line-height:1.7;color:var(--dim)}
.ranking-preview{gap:24px}.mini-rank{min-height:44px;gap:12px}.mini-rank-num{font-size:32px}.mini-rank strong{font-size:14px;line-height:1.5;color:var(--text)}.mini-rank small{font-size:12px;color:var(--dim);margin-top:4px}
.community-feature{background:radial-gradient(ellipse at 85% 50%,rgba(124,63,168,.10),transparent 55%),var(--panel)}
.community-feature>img{width:180px;height:auto;min-height:0;max-height:320px;object-fit:contain;margin:auto;align-self:center;justify-self:center}
.identity-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:30px;min-width:0}
.identity-card>img{width:82px;height:90px;object-fit:contain;margin-bottom:26px}
.identity-card h3{font-size:30px;line-height:1.15;margin-bottom:18px}
.identity-card p{font-size:16px;color:var(--muted);line-height:1.75}
.realm-page .editorial-empty{margin-top:40px}
.realm-image{aspect-ratio:1.25;border-color:var(--line)}
.realm-image img{object-position:70% center;filter:none}
.player-profile{display:flex;align-items:center;gap:24px;margin-top:30px;padding:30px;border:1px solid var(--line);border-radius:6px;background:var(--panel)}
.profile-emblem{width:74px;height:74px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;color:var(--gold);flex-shrink:0;background:var(--panel-high)}
.profile-emblem .icon{width:32px;height:32px}
.player-profile h2{font-size:46px;margin:10px 0;overflow-wrap:anywhere}.player-profile p{font-size:16px;color:var(--muted)}
.profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:6px;background:var(--panel);margin-top:24px}
.profile-stats>div{padding:28px;border-right:1px solid var(--line);min-width:0}.profile-stats>div:last-child{border:0}
.profile-stats span{display:block;font-size:13px;color:var(--muted);margin-bottom:12px}.profile-stats strong{display:block;font-size:clamp(25px,2.6vw,40px);font-family:var(--serif);font-weight:500;color:var(--text);line-height:1.1;overflow-wrap:anywhere}
.profile-note{font-size:14px;color:var(--dim);line-height:1.75;margin:24px 0}
.player-detail-link{display:inline-block;padding-block:8px;margin-block:-8px;text-underline-offset:4px;text-decoration:underline;text-decoration-color:var(--line)}
.player-detail-link:hover{color:var(--gold);text-decoration-color:var(--gold-dim)}
#score-results[aria-busy=true]{opacity:.5;pointer-events:none}
@media(max-width:1200px){.home-feature-inner{gap:48px}.home-ranking{flex-wrap:wrap}.home-ranking-title{min-width:0;width:100%;display:block}.home-ranking-title .sample-label{margin:0}.ranking-preview{justify-content:flex-start;gap:40px}}
@media(max-width:1080px){.home-hero .hero-aside{display:block;bottom:30px;max-width:285px}.utility-nav>.container{gap:24px}.utility-caption{font-size:12px}.utility-nav a{font-size:13px}}
@media(max-width:800px){
  .utility-caption{display:none}.utility-nav>.container{justify-content:space-between;gap:14px}.utility-nav a{font-size:13px}
  .home-hero .hero-aside{display:none}.service-strip{grid-template-columns:1fr}.service-strip>a{border-right:0;border-top:1px solid var(--line);padding:18px 24px}.service-strip>a:first-child{border-top:0}
  .portal-grid{grid-template-columns:1fr}.portal-card:has(.portal-image){display:grid;grid-template-columns:230px minmax(0,1fr)}.portal-image{height:100%}.portal-image img{height:100%;aspect-ratio:auto;object-fit:cover;min-height:255px}.portal-body{padding:28px}.portal-body h3{font-size:32px}
  .home-feature{margin-top:64px;padding-block:44px}.home-feature-inner{grid-template-columns:1fr;gap:36px}.home-feature-image img{width:min(80%,390px)}.home-feature-copy h2{font-size:44px}.home-feature-copy{max-width:650px}
  .editorial-empty{display:grid;grid-template-columns:54px minmax(0,1fr);gap:22px}.editorial-empty .button{grid-column:2;justify-self:start}
  .home-ranking{margin-top:64px}.ranking-preview{gap:28px;flex-wrap:wrap}.home-ranking-title h3{font-size:32px}
  .community-feature{grid-template-columns:minmax(0,1fr) 200px}.community-feature>img{width:135px;max-height:245px}.community-feature>div:first-child{padding:36px}
  .profile-stats>div{padding:24px}.profile-stats strong{font-size:30px}
}
@media(max-width:540px){
  .utility-nav>.container{gap:10px;min-height:44px}.utility-nav a{font-size:12px;gap:5px}.utility-nav .status-dot{display:none}
  .header-inner .nav-play{font-size:13px;padding-inline:10px}.header-inner .nav-play span{display:none}
  .home-hero-art{inset:330px 0 0}.home-hero-art img{object-position:center 70%;object-fit:cover}
  .service-strip>a{padding:19px 16px;gap:14px}.service-strip strong{font-size:14px}
  .portal-card:has(.portal-image){display:flex}.portal-image{height:auto}.portal-image img{aspect-ratio:1.75;min-height:0;height:auto}.portal-body{padding:26px}.portal-body h3{font-size:31px}
  .home-feature{margin-top:58px;padding-block:36px}.home-feature-inner{gap:30px}.home-feature-image img{width:94%;max-width:360px}.home-feature-copy h2{font-size:39px}
  .editorial-empty{padding:25px;grid-template-columns:1fr;gap:18px}.editorial-empty .button{grid-column:auto}.editorial-empty h3{font-size:29px}.editorial-mark{width:44px;height:44px}
  .home-ranking{margin-top:58px;padding-block:30px;gap:22px}.home-ranking-title h3{font-size:32px}.home-ranking-title .sample-label{font-size:13px}.ranking-preview{width:100%;gap:20px}.mini-rank-num{font-size:30px}.mini-rank strong{font-size:14px}.mini-rank small{font-size:12px}
  .community-feature{grid-template-columns:1fr}.community-feature>div:first-child{padding:30px 26px}.community-feature>img{width:96px;height:auto;max-height:160px;margin:0 auto 34px}.community-feature h2{font-size:38px}
  .identity-card{padding:28px}.identity-card h3{font-size:31px}.realm-copy h2{font-size:38px}.realm-copy p{font-size:16px}.realm-intro{gap:30px}.realm-image{aspect-ratio:1.15;max-height:390px}
  .player-profile{padding:24px;gap:18px;align-items:flex-start}.profile-emblem{width:54px;height:54px}.profile-emblem .icon{width:26px;height:26px}.player-profile h2{font-size:36px}.player-profile p{font-size:14px}
  .profile-stats{grid-template-columns:1fr}.profile-stats>div{padding:24px;border-right:0;border-bottom:1px solid var(--line)}.profile-stats span{font-size:13px;margin-bottom:10px}.profile-stats strong{font-size:36px}.profile-note{font-size:14px}
}
/* Descriptions remain reading text at every breakpoint. */
.notice,.modal .notice,.pack-subtitle,.pack-features li,.vote-card-info>p,.sidebar-step p,.sidebar-note p,.chapter-links p,.activity-item p,.player-profile p{font-size:16px}
.sidebar-step p{line-height:1.75}
.service-section-title{font-family:var(--serif);font-size:30px;margin:0 0 20px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.empty-state h2{font-family:var(--serif);font-size:32px;color:var(--text);margin-bottom:10px}
#modal-title:focus{outline:none}
.table-scroll-hint{font-size:13px;color:var(--muted);margin-bottom:12px;display:none}
@media(max-width:700px){.table-scroll-hint{display:block}}
.page-header{padding-inline:32px}
#main-content:focus{outline:none}
@media(max-width:540px){.page-header{padding-inline:20px}}
