/* Shared editorial surfaces for the archive, show and arcade. */
.viewer{--muted:#acb8af;--line:#424d45}
.offplan-page .episode>span:first-child{color:var(--accent)}
.archive-intro,.offplan-hero,.arcade-lobby,.episode-shell,.collection{max-width:1480px;margin:0 auto;padding:38px clamp(20px,4vw,64px)}
.archive-intro{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:50px;border-bottom:1px solid var(--line)}.archive-intro h1{font-size:clamp(38px,5vw,68px)}.archive-intro h1 i{font:inherit;color:var(--accent)}.arcade-lobby h1 i{font:inherit;color:var(--orange)}.archive-intro>div>p,.arcade-lobby-head>p{font:600 12px/1.5 var(--type);text-transform:uppercase;letter-spacing:.12em;color:var(--orange);margin-bottom:18px}.archive-intro aside{max-width:310px;justify-self:end}.archive-intro aside strong{font:800 48px/1 var(--type);color:var(--ink)}.archive-intro aside span{font:400 14px var(--type);padding-left:12px;color:var(--muted)}.archive-intro aside p{font-size:17px;color:var(--muted);margin-top:15px}.collection-bar{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:25px}.collection-bar span{font:400 12px var(--type);text-transform:uppercase;color:var(--muted)}.collection-bar h2{font-size:28px;margin-top:10px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{padding:11px 17px;min-height:44px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:700 14px var(--text)}.filters button.is-active,.filters button:hover{color:var(--accent);border-color:var(--accent)}.art-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.art-card{min-width:0;border:0;padding:0;text-align:left;color:var(--ink);background:transparent}.art-frame{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:#101413;border:1px solid var(--line)}.art-frame img{width:100%;height:100%;object-fit:contain}.art-multi{position:absolute;top:10px;right:10px;background:var(--ink);color:var(--paper);padding:6px;font:400 12px var(--type)}.art-label{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px 0}.art-label>span:first-child{color:var(--orange);font:400 12px var(--type)}.art-label b{font:600 15px/1.4 var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.art-label time{display:block;font:400 12px var(--type);color:var(--muted);margin-top:7px}.load-more{width:100%;margin-top:32px;padding:16px 0;background:transparent;color:var(--ink);border:0;border-top:1px solid #758079;display:flex;justify-content:space-between;gap:20px}.load-more span{font:600 16px var(--type)}.load-more b{font:400 14px var(--type);color:var(--orange)}.load-more:hover{color:var(--accent)}.load-more[hidden]{display:none}
.viewer{width:min(1280px,96vw);max-width:none;max-height:94dvh;padding:0;border:1px solid #7c8580;background:var(--ink);color:var(--paper)}.viewer::backdrop{background:#000c}.viewer-frame{position:relative;display:grid;grid-template-columns:1.4fr 1fr}.viewer-close{position:absolute;top:12px;right:12px;z-index:2;background:var(--ink);color:var(--paper);border:1px solid #758079;padding:11px 18px;min-height:44px}.viewer-art{padding:66px 60px 45px;position:relative;display:flex;align-items:center;justify-content:center;background:#101413;min-width:0}.viewer-art img{max-height:75dvh;object-fit:contain}.viewer-arrow{position:absolute;bottom:10px;min-height:44px;padding:8px;border:1px solid #758079;background:var(--ink);color:var(--paper);font:600 12px var(--type)}.viewer-prev{left:15px}.viewer-next{right:15px}.viewer-info{min-width:0;padding:75px 28px 30px;display:flex;flex-direction:column;gap:18px;overflow:auto;max-height:94dvh}.viewer-info>div:first-child{display:flex;justify-content:space-between;gap:15px;font:400 12px var(--type);color:var(--muted)}.viewer-info h2{font-size:32px}.viewer-info p{font-size:17px;line-height:1.5}.viewer-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px}.viewer-actions a{font-size:16px}.viewer-actions button{min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--ink)}.viewer-actions button.is-active{border-color:var(--orange)}body:has(dialog[open]){overflow:hidden}
.offplan-hero{display:grid;grid-template-columns:minmax(200px,.8fr) 1.4fr;gap:7%;align-items:center;padding-top:45px;padding-bottom:45px}.offplan-hero>img{max-width:360px;width:100%;height:auto;border:1px solid #757e77}.offplan-hero-copy .eyebrow{font:600 12px var(--type);text-transform:uppercase;color:var(--orange);letter-spacing:.1em;margin-bottom:20px}.offplan-hero-copy h1{font-size:clamp(40px,5vw,72px);margin:0 0 20px}.offplan-hero-copy>p:not(.eyebrow){max-width:540px;color:var(--muted);font-size:21px;line-height:1.5;margin-bottom:24px}.offplan-hero-copy>a{display:inline-flex;align-items:center;min-height:48px;padding:11px 0;border-bottom:1px solid var(--accent);color:var(--accent);font:700 16px var(--text);text-decoration:none}.episode-shell{border-top:1px solid var(--line);padding-top:28px}.show-player{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.show-player iframe{width:100%;height:232px;border:0}.show-player aside small{font:400 12px var(--type);color:var(--orange);text-transform:uppercase}.show-player aside strong{font:600 24px/1.2 var(--type);display:block;margin:12px 0}.show-player aside p{color:var(--muted);font-size:17px}.episode-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:36px 0 20px}.episode-head h2{font-size:32px}.episode-head span{font:400 13px var(--type);color:var(--muted)}.episode{display:grid;grid-template-columns:44px minmax(0,1fr) 66px;align-items:center;gap:15px;border-top:1px solid var(--line);padding:20px 0;text-decoration:none}.episode>span:first-child{font:400 14px var(--type);color:var(--orange)}.episode-copy b{display:block;font:600 20px/1.3 var(--text)}.episode-copy small{display:block;font:400 13px var(--type);color:var(--muted);margin-top:8px}.episode i{font:600 14px var(--type);text-align:right}.episode.is-active .episode-copy b,.episode:hover{color:var(--orange)}.spotify-show{display:inline-flex;margin-top:26px;min-height:44px;align-items:center;font:600 16px var(--type)}.offplan-note{color:var(--muted);font-size:14px;margin-top:18px}
.arcade-lobby-head{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;padding-bottom:30px;border-bottom:1px solid var(--line);margin-bottom:35px}.arcade-lobby-head>p{grid-column:1/-1;margin:0}.arcade-lobby-head h1{font-size:clamp(40px,5.5vw,76px);font-weight:800}.arcade-lobby-head>span{font-size:18px;color:var(--muted);max-width:250px}.arcade-wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:950px;gap:35px;margin:auto;padding:10px 0 28px}.arcade-poster{position:relative;display:block;border:1px solid #727d76;padding:8px;background:#101413;text-decoration:none}.arcade-poster img{width:100%;height:auto}.arcade-poster-label{position:static;display:block;padding:16px 12px;font:600 16px var(--type);color:var(--paper)}.arcade-poster:hover,.arcade-poster:focus-visible{border-color:var(--orange)}.arcade-poster:hover .arcade-poster-label{color:var(--orange)}.arcade-soon{padding:18px 0;border-top:1px solid var(--line);color:var(--muted);font-size:16px}.game-backline{padding:18px clamp(20px,4vw,64px);display:flex;justify-content:space-between;gap:20px;font:400 13px var(--type)}
/* Game-specific controls stay functional, inside the new shared identity. */
.play-page,.arcade-page{background:var(--ink);color:var(--paper);--muted:#acb8af;--line:#424d45}.play-page .operator-view,.play-page .name-view{background:var(--ink)}.play-page .name-stage,.play-page .rpg-shell{grid-template-columns:1fr!important;max-width:1240px;padding:20px clamp(20px,4vw,45px) 50px!important;display:block}.play-page .name-stage>header{margin-bottom:28px;display:flex;align-items:baseline;gap:24px;flex-wrap:wrap}.play-page .name-stage>header p{display:none}.play-page .name-stage>header h1,.play-page .name-stage>header h1 i{font:600 42px/1.1 var(--type);letter-spacing:-.03em;color:var(--paper)}.play-page .name-stage>header h1 br{display:none}.play-page .name-stage>header span{color:var(--muted);font:400 18px/1.4 var(--text);margin:0}.play-page .name-board{max-width:660px;margin:auto;background:var(--paper);color:var(--ink);box-shadow:none;padding:25px;border:1px solid var(--line)}.play-page .name-clue{font:600 22px/1.35 var(--text);letter-spacing:0}.play-page .letter-tile{font-family:var(--type);letter-spacing:0}.play-page .name-stats{font:400 13px var(--type);color:#4a5450}.play-page .name-stats b{color:var(--ink)}.play-page .letter-tile.exact{background:#bd541e;border-color:#bd541e;color:white}.play-page .letter-tile.present{background:#eed3a8;border-color:#bd9762;color:var(--ink)}.play-page .name-board input{font:400 20px var(--type)}.play-page .name-board form button,.play-page .next-name{background:var(--ink);color:var(--paper);font:600 16px var(--type);min-height:48px}.play-page .name-board label,.play-page #name-message{font:400 16px/1.5 var(--text)}.play-page .rpg-shell>header{display:block}.play-page .rpg-game{max-width:none;box-shadow:none!important;border:1px solid #727d76!important}.play-page .rpg-world canvas{min-height:0;aspect-ratio:16/9}.play-page .rpg-world{min-height:0}.play-page .rpg-location{position:static;padding:12px;flex-wrap:wrap;font:400 12px var(--type)}.play-page .rpg-topbar,.play-page .rpg-command-head{color:var(--orange);font:600 13px var(--type);background:var(--ink)}.play-page .rpg-topbar button{color:var(--paper);border-color:var(--orange);font:600 13px var(--type);min-height:44px}.play-page .rpg-topbar button:hover{background:var(--orange);color:var(--ink)}.play-page .rpg-hud{background:#242b28}.play-page .rpg-stats strong{font:600 21px var(--type);letter-spacing:-.025em;color:var(--paper)}.play-page .rpg-stats span,.play-page .rpg-label,.play-page .rpg-progress,.play-page .rpg-crew,.play-page .rpg-hud-head{font:400 12px/1.5 var(--type)}.play-page .rpg-message{font:400 17px/1.4 var(--text)}.play-page .rpg-progress i{background:var(--orange)}.play-page .rpg-action{padding:14px;min-height:60px;transform:none}.play-page .rpg-action b{font:600 16px/1.3 var(--type)}.play-page .rpg-action small{font:400 15px/1.35 var(--text)}.play-page .rpg-action strong{font:600 14px var(--type);color:var(--orange)}.play-page .rpg-action strong i{font:400 12px var(--type);color:var(--muted)}.play-page .rpg-primary{background:var(--orange);border-color:var(--orange);color:var(--ink)}.play-page .rpg-action:hover:not(:disabled){border-color:var(--orange)}.play-page .rpg-encounter h2,.play-page .rpg-end h2{font:600 30px/1.25 var(--type);letter-spacing:-.02em}.play-page .rpg-log{font:400 13px/1.5 var(--type)}.play-page .rpg-log span:first-child{color:var(--orange)}.play-page footer,.page-footer,.archive-page footer,.arcade-page footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:25px;padding:25px clamp(20px,4vw,64px);color:#b5c0b7;font-size:14px;background:var(--ink)}footer img{width:110px;height:auto}footer a{color:var(--paper)}
@media(max-width:800px){.archive-intro{grid-template-columns:1fr;gap:24px;padding-top:28px}.archive-intro aside{justify-self:start;max-width:none}.archive-intro aside p{max-width:530px}.art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.collection-bar{display:block}.filters{margin-top:20px}.collection{padding-top:26px}.art-label b{font-size:14px}.art-label{grid-template-columns:1fr;gap:6px}.art-label>span:first-child{display:none}.offplan-hero{grid-template-columns:130px 1fr;gap:22px;align-items:start;padding-top:28px}.offplan-hero-copy h1{font-size:38px}.offplan-hero-copy .eyebrow{font-size:12px;line-height:1.4}.offplan-hero-copy>p:not(.eyebrow){font-size:18px}.show-player{grid-template-columns:1fr;gap:20px}.episode-head{align-items:start}.episode-head span{display:none}.episode{grid-template-columns:30px minmax(0,1fr);gap:12px}.episode i{display:none}.episode-copy b{font-size:19px}.arcade-lobby-head{grid-template-columns:1fr}.arcade-lobby-head>span{max-width:500px}.arcade-wall{gap:18px}.arcade-poster{padding:5px}.arcade-poster-label{font-size:14px;padding:13px 5px}.arcade-lobby{padding-top:28px}.page-footer,.play-page footer,.arcade-page footer,.archive-page footer{flex-wrap:wrap;gap:16px}.viewer-frame{grid-template-columns:1fr}.viewer-art{padding:65px 14px 65px}.viewer-art img{max-height:55dvh}.viewer-info{padding:23px 20px;max-height:none}.viewer-info h2{font-size:28px}.play-page .rpg-layout{display:block}.play-page .rpg-hud{border-left:0;border-top:1px solid #727d76}.play-page .rpg-action-grid{display:block}.play-page .rpg-action-column+.rpg-action-column{margin-top:24px}.play-page .rpg-action{gap:10px;padding:12px}.play-page .rpg-topbar{padding:12px;gap:12px;flex-wrap:wrap}.play-page .rpg-stats{grid-template-columns:1fr 1fr}.play-page .name-board{padding:20px 13px}.play-page .name-stats{font-size:12px}.play-page .rpg-encounter>div{flex-direction:column}.play-page .rpg-encounter .rpg-action{width:100%}}
@media(max-width:420px){.offplan-hero{grid-template-columns:1fr}.offplan-hero>img{max-width:190px}.offplan-hero-copy h1{font-size:36px}.art-grid{gap:20px 12px}.filters button{padding:11px 12px}.arcade-wall{gap:14px}.arcade-lobby h1{font-size:40px}.play-page .rpg-encounter h2{font-size:25px}}

.archive-page .archive-intro>div>p,.offplan-page .eyebrow,.offplan-page .show-player aside small{color:var(--accent)}.offplan-page .episode.is-active .episode-copy b,.offplan-page .episode:hover{color:var(--accent)}.archive-page .art-label>span:first-child,.archive-page .load-more b{color:var(--accent)}.offplan-hero-copy h1{font-weight:800}.play-page h1,.play-page h2,.play-page h3{font-weight:800}.play-page .rpg-stats strong{font-family:var(--text);letter-spacing:-.02em}
