:root{--bg:#090b0e;--panel:#11151b;--text:#eceef1;--muted:#abb1bd;--gold:#c8cdd5;--line:#ccd3df26}
.brand{flex-direction:row;gap:10px}.brand-emblem{width:42px;height:42px;object-fit:contain}.brand-hero{position:relative;min-height:620px;background:#000;overflow:hidden;text-align:center;padding:290px 5% 60px}.login-art{position:absolute;top:0;left:50%;transform:translateX(-50%);width:1100px;max-width:none;height:auto;pointer-events:none}.brand-hero-copy{position:relative;z-index:1}.brand-hero h1{font-size:clamp(42px,5vw,68px);margin:15px 0 22px}.brand-hero-copy>p:not(.eyebrow){color:var(--muted);font-size:17px}.brand-hero .actions{justify-content:center}.platform-note{display:block;font-size:12px;letter-spacing:.16em;color:#9199a7;margin-top:22px}.brand-hero+.vision-strip{padding-top:24px;font-size:13px}.auth-shell{max-width:1300px;margin:65px auto;display:grid;grid-template-columns:1.05fr 1fr;padding:0 5%;gap:7%;align-items:center}.auth-art{position:relative;align-self:stretch;min-height:620px;background:#000;overflow:hidden}.auth-art>img{width:100%;height:auto}.auth-art>p{position:absolute;top:47%;left:10%;font:52px/1.1 var(--serif);color:#c9cfd8}.auth-card{background:#11151bea;border:1px solid var(--line);padding:38px;min-width:0}.auth-card h1{font-size:48px;margin:12px 0 18px}.auth-card>p{color:var(--muted)}.auth-card form{margin-top:25px}.auth-card label{display:block;font-size:14px;margin:20px 0 0}.auth-card input:not([type=checkbox]),.auth-card select,.auth-card textarea{display:block;width:100%;padding:12px 14px;margin-top:7px;color:var(--text);background:#080b10;border:1px solid #737c8d80;border-radius:0;font:16px/1.5 var(--sans);color-scheme:dark}.auth-card select{min-height:50px}.auth-card input:focus,.auth-card select:focus,.auth-card textarea:focus{outline:2px solid #c4ccd9;outline-offset:2px}.demo-note{font-size:14px!important;color:#aeb7c7!important;line-height:1.65;margin:22px 0!important;padding:14px 16px;border-left:2px solid #69798e;background:#1c243044}.wide{width:100%;margin-top:28px}.text-button{display:inline-block;border:0;background:none;color:var(--text);padding:0;margin:20px 0;cursor:pointer;font:14px var(--sans);text-decoration:underline;text-underline-offset:4px}.auth-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:20px;font-size:14px;color:var(--muted)}.auth-bottom a{color:var(--text);text-decoration:underline}.signup-wrap{max-width:1280px;margin:65px auto 90px;padding:0 5%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}.signup-intro h1{font-size:clamp(42px,4.5vw,64px);margin:20px 0 25px}.signup-intro>p{color:var(--muted)}.signup-intro>a{font-size:14px;text-decoration:underline}.account-emblem{width:110px;height:110px;object-fit:contain;margin-bottom:24px}.steps{list-style:none;margin:0 0 35px;padding:0;display:flex;gap:18px;font-size:13px;color:#8a93a2;justify-content:space-between}.steps li{padding-bottom:10px;border-bottom:1px solid var(--line)}.steps [aria-current]{color:#eff1f5;border-color:#dbe1eb}.auth-card fieldset{margin:0;padding:0;border:0;min-width:0}.auth-card legend{font:36px/1.15 var(--serif);margin-bottom:14px}.auth-card fieldset>p{color:var(--muted);font-size:14px}.field-hint,.optional{font-size:13px;color:#98a3b4}.choice-group{margin-top:22px;font-size:14px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.choices label{display:flex;gap:9px;align-items:center;margin:0;padding:12px;border:1px solid var(--line);font-size:14px}.auth-card input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:#bac6d9}.check{display:flex!important;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6}.form-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:30px}.form-actions #back-step{margin-right:auto}#form-error{color:#ffb9b0;margin-top:18px;font-size:14px}dl{margin:22px 0;display:grid;grid-template-columns:1fr 1.6fr;gap:12px 22px;font-size:14px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.legal-links{display:flex;flex-direction:column;gap:10px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;text-decoration:underline}.account-wrap{max-width:1200px;margin:60px auto 80px;padding:0 5%}.account-heading{display:flex;justify-content:space-between;gap:25px}.account-heading h1{font-size:56px;margin:15px 0}.account-heading p{color:var(--muted)}.state-switch{display:flex;align-items:center;gap:12px;margin:35px 0;font-size:14px;flex-wrap:wrap}.state-switch span{margin-right:15px}.state-switch [aria-pressed=true]{background:#d6dae1;color:#101319}.account-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.status-card{padding:32px;border:1px solid var(--line);background:var(--panel)}.status-card h2{font-size:42px;margin:22px 0}.status-card h3{font-size:28px;margin:22px 0 16px}.status-card p{color:var(--muted);font-size:16px}.status-card p+p{margin-top:16px}.status-card .eyebrow{font-size:13px}.button:disabled{opacity:.5;cursor:not-allowed}.legal-document{max-width:900px;padding:60px 5% 80px;margin:auto}.legal-document>h1{font-size:60px;margin:20px 0 40px}.legal-text{font-size:16px;line-height:1.85}.legal-text p{margin:14px 0;color:#bdc4cf}.legal-text h2{font:600 23px/1.4 var(--sans);margin:45px 0 22px}.legal-text h3{font:600 19px/1.5 var(--sans);margin:25px 0 14px}.legal-document>.button{margin-top:40px}#signup-complete h2{font-size:44px;margin:20px 0}#signup-complete .button{margin-top:25px}
@media(max-width:800px){.brand-hero{padding-top:235px;min-height:570px}.login-art{width:850px}.auth-shell,.signup-wrap{grid-template-columns:1fr;gap:30px;margin-top:30px}.auth-art{min-height:190px;height:190px}.auth-art>img{width:600px;max-width:none;position:absolute;left:50%;transform:translateX(-50%);top:0}.auth-art>p{display:none}.auth-card{padding:25px}.signup-intro .account-emblem{width:75px;height:75px;margin-bottom:15px}.signup-intro h1{font-size:45px}.account-grid{grid-template-columns:1fr}.account-heading h1{font-size:42px}.account-heading .account-emblem{width:70px;height:70px}.choices{grid-template-columns:1fr}.steps{font-size:12px;gap:10px}.legal-document>h1{font-size:45px}.brand-hero-copy>p:not(.eyebrow){font-size:16px}.brand-hero-copy br{display:none}}
.header{background:#090b0ef2;min-height:90px;flex-wrap:wrap;padding:22px 5%;gap:20px}.header nav{gap:8px 23px}.header nav a{font-size:14px}.header .account-link{margin-left:auto;font-size:14px}.button{display:inline-flex;justify-content:center;align-items:center;padding:13px 23px;border:1px solid #aab1bd;background:#d6dae1;color:#101319;font-size:14px;font-weight:700;cursor:pointer;line-height:1.5}.button:hover{background:#f4f6fa;color:#101319}.button.secondary{background:transparent;color:#d6dae1;border-color:#657080}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.brand{color:#e4e7ec;letter-spacing:.24em}.guide-hero{padding-top:85px;padding-bottom:65px;gap:5%;background:radial-gradient(ellipse at 35% 10%,#252d3d55,transparent 65%)}.guide-hero h1{font-size:clamp(60px,6.7vw,104px)}.guide-hero .game-figure{box-shadow:0 25px 80px #0008}.guide-hero .game-figure img{aspect-ratio:1.25;object-fit:cover}.guide-hero em{font-style:normal;color:#acb5c5}.game-figure,.image-viewer,.weapon-gallery .game-figure img{background:#090b0e}.search-box{border-color:var(--line)}.search-input-row input{background:#090c11}thead th{background:#1a202a}tbody tr:nth-child(even){background:#11151b}.feature-grid article{border-color:var(--line)}.preview-banner{padding:7px 5%;text-align:center;background:#1c222d;color:#cbd1dc;font-size:13px;border-bottom:1px solid var(--line)}footer{flex-wrap:wrap}footer nav{display:flex;gap:22px;font-size:14px}.page-intro{padding-top:65px}.guide-section p{max-width:850px}.guide-section h3{margin-top:28px}.guide-section img{max-height:600px;object-fit:contain}.cta-block{padding:55px 0;border-top:1px solid var(--line);margin-top:65px}.cta-block h2{font-size:48px}.cta-block p{margin:20px 0;color:var(--muted)}.eyebrow{font-size:13px}.guide-sidebar nav a,.header nav a,.topic-link p{font-size:14px}
@media(max-width:800px){.header{flex-direction:row}.header nav{order:3;width:100%}.header .account-link{margin-left:auto}.guide-hero{padding-top:45px}.guide-hero .game-figure img{aspect-ratio:1.65}.guide-hero h1{font-size:clamp(54px,12vw,80px)}.header nav a{font-size:14px}.guide-wrap{display:block}}

.lore-chapter{padding-top:45px;margin-top:45px;border-top:1px solid var(--line)}.lore-chapter h3{font-size:38px;margin:18px 0 24px}.lore-chapter p+p{margin-top:18px}.lore-chapter .section-label{margin:0}.lore-chapter .game-figure{margin-top:30px}
.state-switch .button[aria-pressed="true"]{background:#d6dae1;color:#101319;border-color:#e5e9f0}
.mobile-menu{display:none}
@media(max-width:760px){.header{gap:15px;min-height:85px;padding:18px 5%;align-items:center}.header .brand{font-size:26px;gap:5px;letter-spacing:.17em}.brand-emblem{width:34px;height:34px}.mobile-menu{display:block;background:none;border:1px solid #657080;color:var(--text);padding:6px 10px;font:14px var(--sans);margin-left:auto}.header .account-link{margin-left:0}.header nav{display:none}.header.nav-open nav{display:flex;order:4;flex-direction:column;gap:8px}.header nav a{padding:8px 0}.auth-art{min-height:155px;height:155px}.auth-art>img{width:550px}.brand-hero{padding-top:205px;min-height:540px}.login-art{width:750px}.brand-hero h1{font-size:44px}.account-heading .account-emblem{width:60px;height:60px}.account-heading h1{font-size:36px}}

/* Account portal, legal embeds and form notices (added with the EldorAuth integration). */
.notice{font-size:14px;line-height:1.65;margin:22px 0;padding:14px 16px;border-left:2px solid #69798e;background:#1c243044;color:#c3cad6}
.notice-error{border-left-color:#c98d84;color:#ffb9b0}
#form-error:empty,#legal-error:empty,#application-error:empty,#login-message:empty,#reset-message:empty,#logout-message:empty{display:none}
#form-error,#legal-error,#application-error,#login-message,#reset-message,#logout-message{color:#ffb9b0;margin-top:18px;font-size:14px;line-height:1.6}
#login-message,#reset-message,#logout-message{color:#c3cad6}
#login-message.notice-error,#reset-message.notice-error,#logout-message.notice-error{color:#ffb9b0}
.has-error{border-color:#c98d84!important}
.field-error{display:block;margin-top:6px;font-size:13px;color:#ffb9b0}
.legal-embed{display:block;max-height:320px;overflow-y:auto;margin:22px 0;padding:0 18px 18px;border:1px solid var(--line);background:#0c1015}
.legal-embed:focus{outline:2px solid #c4ccd9;outline-offset:2px}
.legal-embed:focus-visible{outline:2px solid #c4ccd9;outline-offset:2px}
.legal-embed-head{position:sticky;top:0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 0 12px;background:#0c1015;border-bottom:1px solid var(--line)}
.legal-embed-head h3{font:600 18px/1.4 var(--sans);margin:0}
.legal-embed-head a{font-size:13px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.legal-embed-meta{font-size:12px;letter-spacing:.06em;color:#8f98a8;margin:12px 0 0}
.legal-embed .legal-text{font-size:14px;line-height:1.75}
.legal-embed .legal-text h2{font:600 17px/1.4 var(--sans);margin:26px 0 12px}
.legal-embed .legal-text h3{font:600 15px/1.5 var(--sans);margin:18px 0 10px}
.legal-checks{display:flex;flex-direction:column;gap:16px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.legal-meta{font-size:13px;letter-spacing:.04em;color:#98a3b4;margin:0 0 30px}
.status-pill{display:inline-block;padding:5px 12px;border:1px solid var(--line);background:#1c2430;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#c3cad6;margin:0 0 16px}
#account-content .status-card dl{margin-top:0}
#legal-status dd{overflow-wrap:anywhere}
#next-steps ol{margin:0 0 22px;padding-left:22px;color:var(--muted);font-size:15px;line-height:1.8}
#form-recovery,#reset-signin{margin-top:16px;font-size:14px}
#form-recovery a{text-decoration:underline;text-underline-offset:4px}
#application-card form .legal-checks{margin-top:22px}
@media(max-width:800px){.legal-embed{max-height:280px;padding:0 14px 14px}}

/* Injected legal fragments (tools/inject_legal.py output). The fragment reuses the
   .legal-document class, so neutralise the outer page padding when it is nested. */
.legal-text .legal-document{max-width:none;margin:0;padding:0}
.legal-document__header{margin:0 0 34px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.legal-document__brand{font-size:12px!important;letter-spacing:.24em;color:#8f98a8!important;margin:0 0 10px!important}
.legal-document__title{font:600 22px/1.4 var(--sans);margin:0 0 24px;letter-spacing:.02em}
.legal-document__meta{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;margin:0;font-size:13px}
.legal-document__meta dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8f98a8}
.legal-document__meta dd{margin:0;color:#c3cad6}
.legal-text h4{font:600 16px/1.5 var(--sans);margin:22px 0 10px}
.legal-text ul{margin:14px 0 14px 20px;padding:0;color:#bdc4cf}
.legal-text li{margin:8px 0}
.legal-text address{font-style:normal;color:#bdc4cf;margin:14px 0}
.legal-document__emphasis{color:#d4dae4!important;padding:16px 18px;border-left:2px solid #69798e;background:#1c243044}
.legal-embed .legal-document__title{font-size:19px;margin-bottom:18px}
.legal-embed .legal-document__header{margin-bottom:24px;padding-bottom:18px}

/* Full-width gameplay montage on the homepage. */
.brand-hero.gameplay-hero{min-height:680px;min-height:clamp(620px,78svh,850px);padding:90px 5%;display:grid;place-items:center;isolation:isolate;background:#101820}
.hero-gameplay{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1.3fr 1fr;z-index:-2;overflow:hidden}
.hero-gameplay img{display:block;width:100%;height:100%;min-width:0;object-fit:cover;object-position:50% 48%}
.hero-gameplay img:first-child{object-position:52% 48%}
.hero-gameplay img:last-child{object-position:57% 48%}
.gameplay-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,9,13,.16),rgba(5,9,13,.24) 20%,rgba(5,9,13,.58) 65%,#090b0e),linear-gradient(90deg,rgba(5,9,13,.05),rgba(5,9,13,.4) 50%,rgba(5,9,13,.05))}
.gameplay-hero .brand-hero-copy{max-width:920px;text-shadow:0 2px 22px #0009}
.gameplay-hero .brand-hero-copy>.hero-wordmark{font:500 clamp(42px,4.8vw,76px)/1 var(--serif);letter-spacing:.2em;text-indent:.2em;color:#fff;margin:0 0 30px}
.gameplay-hero .eyebrow{color:#edf0f4;font-size:13px}
.gameplay-hero h1{font-size:clamp(44px,5vw,76px);color:#fff}
.gameplay-hero .brand-hero-copy>p:not(.eyebrow):not(.hero-wordmark){color:#e3e7ed;line-height:1.7}
.gameplay-hero .button{text-shadow:none}
.gameplay-hero .button.secondary{background:#090d1499;border-color:#c8d0dd99}
.gameplay-hero .platform-note{color:#d0d8e3}
@media(max-width:760px){.brand-hero.gameplay-hero{min-height:670px;padding:70px 6%}.hero-gameplay{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.hero-gameplay img:nth-child(2){grid-column:1 / -1;grid-row:1}.hero-gameplay img:first-child{grid-column:1;grid-row:2}.hero-gameplay img:last-child{grid-column:2;grid-row:2}.gameplay-hero::after{background:linear-gradient(180deg,#05090d25,#05090d80 35%,#05090db3 70%,#090b0e)}.gameplay-hero .brand-hero-copy>.hero-wordmark{margin-bottom:24px}.gameplay-hero .eyebrow{font-size:12px;line-height:1.7;letter-spacing:.12em}.gameplay-hero h1{font-size:46px}.gameplay-hero .actions{flex-wrap:wrap}}

/* Selected Game Portal homepage */

.concept{color:var(--text);background:var(--bg);--concept-gap:80px}
.concept h1,.concept h2,.concept h3{text-wrap:balance;font-family:var(--serif);font-weight:500;letter-spacing:-.025em}
.concept h1{font-size:66px;line-height:.99;margin:0 0 28px;max-width:12ch}
.concept p{line-height:1.75}
.concept img{display:block;max-width:100%;object-fit:cover}
.concept a{transition:background-color .18s,color .18s}
.concept a:focus-visible,.concept input:focus-visible{outline:2px solid #eceef1;outline-offset:5px}
.concept .concept-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:28px}
.concept .concept-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:#d6dae1;color:#101319;padding:12px 23px;font:700 14px/1.5 var(--sans)}
.concept .concept-button:hover{background:#fff;color:#101319}
.concept .concept-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:6px;font-size:14px}
.concept .concept-access{font-size:13px;color:#c1c8d3;margin-top:20px}
.concept .concept-note{font-size:14px;max-width:1200px;margin:0 auto;padding:30px 5%;color:#abb1bd;border-bottom:1px solid var(--line)}
.concept .overview-main{max-width:1400px;margin:auto;padding:0 6% 70px}
.concept .overview-section{margin-top:var(--concept-gap);padding-top:0;border:0}
.concept .overview-section h2{font-size:clamp(38px,4vw,58px);max-width:20ch;margin-bottom:32px}
.concept .overview-section em{font-style:normal}
.concept .search-box{padding:28px 0;background:transparent;border:0;border-bottom:1px solid var(--line);margin:12px 0 0}
.concept .search-box label{font-size:27px}
.concept .search-input-row input{background:#11151b;border-color:#667180}
.concept .feature-grid{gap:36px 60px;margin-top:35px}
.concept .feature-grid article{border-top:1px solid var(--line);padding-top:24px}
.concept .feature-grid h3{font-size:28px;margin-bottom:16px}
.concept .feature-grid p{color:#abb1bd;max-width:65ch}
.concept .topic-grid{display:block;margin-top:30px}
.concept .topic-link{display:grid;grid-template-columns:1fr 1.4fr auto;align-items:center;gap:32px;padding:23px 0;border:0;border-top:1px solid var(--line);background:transparent;min-height:0}
.concept .topic-link h3{font-size:30px;margin:0}
.concept .topic-link p{font-size:15px;margin:0;color:#abb1bd}
.concept .topic-arrow{display:none}
.concept .game-figure{border:0;background:transparent}
.concept .game-figure figcaption{padding:14px 0;font-size:14px}
.concept .screenshot-pair{gap:32px}
.concept ::selection{background:#c8cdd5;color:#101319}
@media(max-width:760px){.concept h1{font-size:clamp(46px,10vw,64px)}.concept .concept-actions{gap:16px}.concept .concept-note{padding:24px 6%}.concept .feature-grid{grid-template-columns:1fr}.concept .topic-link{grid-template-columns:1fr;gap:10px}.concept .screenshot-pair{grid-template-columns:1fr}.concept .overview-section{margin-top:56px}}

.concept .portal{display:grid;grid-template-columns:.8fr 1.2fr;gap:6%;max-width:1540px;margin:auto;padding:65px 5% 50px;align-items:start}
.concept .portal h1{font-size:66px}
.concept .portal-copy>p{color:#abb1bd;max-width:48ch;margin:18px 0}
.concept .portal-copy>p:first-of-type{color:#eceef1;font-size:18px}
.concept .portal-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.concept .portal-gallery figure{margin:0}
.concept .portal-main{grid-column:1/-1}
.concept .portal-gallery img{width:100%;height:190px}
.concept .portal-main img{height:400px}
.concept .portal-gallery figcaption{font-size:14px;color:#abb1bd;padding:10px 0}
.concept .portal-nav{display:flex;flex-direction:column;margin-top:32px;border-top:1px solid var(--line)}
.concept .portal-nav a{min-height:48px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
.concept .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.concept .overview-main{max-width:1540px;padding-left:5%;padding-right:5%}
@media(max-width:760px){.concept .portal{grid-template-columns:1fr;padding:48px 6%;gap:40px}.concept .portal-main img{height:300px}.concept .portal-gallery img{height:150px}.concept .portal-gallery{gap:15px}.concept .feature-grid{grid-template-columns:1fr}}

@media(max-width:760px){.concept .portal h1{font-size:clamp(46px,10vw,64px)}.concept .portal-gallery .portal-main img{height:300px}}
