:root{--session-bg:#15191d;--session-surface:#252b30;--session-text:#f3f1e8;--session-secondary:#b9c1c8;--session-action:#f3a343;--session-danger:#ee7770}
#panel.session-scrim,.rogue-modal.session-scrim{display:grid;place-items:center;position:fixed;inset:0;padding:24px;background:#101519d9;backdrop-filter:blur(3px);overflow:auto;z-index:30}
.rogue-modal.session-scrim[hidden]{display:none}
.session-scrim .session-result,.session-scrim .session-pause{box-sizing:border-box;color:var(--session-text);background:transparent;border:0;border-image:none;border-radius:0;box-shadow:none;font-family:Pretendard,sans-serif;max-height:calc(100dvh - 48px);display:flex;flex-direction:column;margin:auto;padding:0}
.session-scrim .session-result{width:min(960px,100%);text-align:center}
.session-scrim .session-pause{width:min(480px,100%);text-align:left}
.session-scrim header,.session-scrim footer,.session-facts{flex-shrink:0}
.session-scrim .session-kicker{font-size:14px;font-weight:500;letter-spacing:.04em;color:var(--session-secondary);margin:0 0 14px;line-height:1.5}
.session-scrim h2{font-family:Pretendard,sans-serif;font-size:clamp(36px,5vw,64px);font-weight:800;line-height:1.1;letter-spacing:-.04em;margin:0;word-break:keep-all}
.session-result h2:after{content:"";display:block;width:48px;height:4px;background:var(--session-action);margin:20px auto}
.session-scrim .session-result h2{font-size:clamp(52px,5.8vw,96px)}
.session-result[data-outcome=failure] h2:after{background:var(--session-danger)}
.session-scrim .session-lead{font-size:18px;line-height:1.6;color:var(--session-text);margin:14px 0 0;word-break:keep-all}
.session-pause .session-lead{color:var(--session-secondary)}
.session-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0;padding:0;gap:0}
.session-facts>div{padding:4px 18px;border-left:1px solid #b9c1c833}
.session-facts>div:first-child{border:0}
.session-facts dt{font-size:14px;color:var(--session-secondary);margin:0 0 8px}
.session-facts dd{font-size:clamp(22px,2.6vw,32px);font-weight:700;margin:0;line-height:1.3;overflow-wrap:anywhere}
.session-body{min-height:0;overflow:auto;scrollbar-gutter:stable;font-size:16px;line-height:1.6}
.session-body p{font-size:16px;line-height:1.6;color:var(--session-secondary)}
.session-body details{border-top:1px solid #b9c1c82e;padding:10px 0;text-align:left;font-size:14px}
.session-body summary{cursor:pointer;font-size:16px;min-height:32px;padding:4px 0;color:var(--session-text)}
.session-scrim .session-body :focus-visible{outline-offset:-2px}
.session-body details[open]>summary{color:var(--session-action)}
.session-actions{display:flex;gap:16px;justify-content:center;margin-top:24px;padding-top:20px;border-top:1px solid #b9c1c833}
.session-scrim button{font:600 16px Pretendard,sans-serif;min-height:48px;padding:12px 24px;border:1px solid #b9c1c855;border-radius:3px;background:transparent;color:var(--session-text);box-shadow:none;line-height:1.4;text-align:center}
.session-scrim button:hover{background:#ffffff0d;border-color:var(--session-secondary)}
.session-scrim button.primary{background:var(--session-action);color:var(--session-bg);border-color:var(--session-action)}
.session-scrim button.primary:hover{background:#ffb760}
.session-scrim :focus-visible{outline:2px solid var(--session-action);outline-offset:4px}
.session-actions>button{flex:1;max-width:360px}
.session-pause-actions{display:grid;gap:0;margin:24px 0 12px}
.session-pause-actions>button{text-align:left;border:0;border-radius:2px;background:transparent}
.session-pause-actions>.primary{margin-bottom:8px}
.session-pause-actions>.secondary{border-top:1px solid #b9c1c833;margin-top:8px;padding-top:16px;color:var(--session-secondary)}
.session-scrim .session-save{font-size:14px;line-height:1.5;color:var(--session-secondary);margin:16px 0 0}
.session-save[data-save-state=failed]{color:var(--session-danger)!important}
/* Pause composition follows pause-reward-20261024/pause-concept.png.
   The real, stopped playfield remains behind this gradient. */
:is(#panel,#rogueModal).session-scrim:has(>.rp-view){padding:0;overflow:hidden;background:linear-gradient(90deg,#06101bf5 0%,#07121be0 33%,#07131a70 68%,#07121a99),linear-gradient(0deg,#050d14be,transparent 45%);backdrop-filter:saturate(.5) brightness(.65)}
:is(#panel,#rogueModal).session-scrim>.rp-view{position:relative;width:100%;height:100dvh;max-height:none;margin:0;padding:6vh 4.3vw 4vh;display:flex!important;flex-direction:column;gap:0;color:#f1eee6}
.rp-view .rp-brand{font-size:11px;letter-spacing:.45em;color:#d1d9dc;margin:0 0 18px}
.session-scrim .rp-view h2{font-size:clamp(38px,4.8vw,72px);font-weight:750;letter-spacing:-.04em}
.session-scrim .rp-view .session-save{margin:18px 0 0;font-size:14px;color:#9eafb9;max-width:44%;line-height:1.5}
.rp-view .session-save:before{content:'✓';display:inline-block;color:#e9c388;margin-right:10px}
.rp-view .session-save[data-save-state=failed]:before{content:'!';color:#eea68d}
.rp-view .rp-menu{margin-top:6vh;width:min(440px,44%);display:flex;flex-direction:column;min-height:0}
.rp-view .session-pause-actions,.rp-view .session-body{display:contents!important}
.session-scrim .rp-view .session-pause-actions>button,.session-scrim .rp-view .rp-page>summary{flex:none;order:1;min-height:56px;margin:0!important;padding:10px 22px!important;text-align:left;font-size:clamp(20px,2.2vw,32px);font-weight:500;line-height:1.2;list-style:none;border:0;border-radius:0;background:none;color:#9facb5;cursor:pointer;box-shadow:none;word-break:keep-all}
.rp-view summary::-webkit-details-marker{display:none}
.rp-view button,.rp-view summary{-webkit-tap-highlight-color:transparent;user-select:none}
.session-scrim .rp-view .session-pause-actions>.primary{order:0;border-left:3px solid #e9c388;color:#f4f1e8;background:linear-gradient(90deg,#cda15d24,transparent);font-weight:650;margin-bottom:4px!important}
.session-scrim .rp-view .session-pause-actions>button:hover,.session-scrim .rp-view .rp-page>summary:hover{background:linear-gradient(90deg,#ffffff0d,transparent);color:#fff}
.session-scrim .rp-view .session-pause-actions>.secondary{position:absolute;left:4.3vw;bottom:4vh;min-height:44px;padding:8px 0!important;border:0;color:#aab6bc;font-size:17px;max-width:50%}
.rp-view .rp-page{border:0;padding:0;margin:0;order:1;display:contents}
.rp-view .rp-page>summary{display:list-item}
.rp-view .rp-page:not([open])>.rp-detail-content{display:none}
.session-scrim .rp-view .rp-page[open]>summary{color:#e9c388}
.rp-view .rp-detail-content{position:absolute;top:28%;left:48%;right:4.3vw;bottom:13%;overflow:auto;padding:18px 22px;background:#09131be8;border-left:1px solid #b8cad135;color:#adbec6;scrollbar-gutter:stable;font-size:14px;line-height:1.6}
.rp-view .rp-detail-content h3{font-size:17px;color:#d9e3e2;margin:16px 0 8px}.rp-view .rp-detail-content p{font-size:14px;line-height:1.6;margin:10px 0;color:#aebec6}.rp-view .rp-detail-content details{border-top:1px solid #b9c1c82e;padding:10px 0}.rp-view .rp-detail-content summary{font-size:15px;min-height:44px;padding:10px 0;cursor:pointer;color:#d0dedf}.rp-view .rp-detail-content label{font-size:13px;line-height:1.5}
.session-scrim .rp-view .rp-close{display:block;margin:0 0 8px auto;min-height:44px;min-width:44px;padding:8px 12px;font-size:13px;border:0;color:#e7d7bb;background:none}
.rp-view .rp-context{position:absolute;right:4.3vw;top:15%;width:25%;max-width:340px;border-left:1px solid #bdccd442;padding-left:24px;color:#c5d0d5}
.rp-view .rp-context>strong{font-size:16px;font-weight:600}.rp-view .rp-context>p{font-size:13px;margin:8px 0 20px;color:#98aab6;line-height:1.4}
.rp-view .rp-meter{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:12px;font-size:12px}.rp-view .rp-meter meter{height:6px;width:100%;border:0;background:none}.rp-view meter::-webkit-meter-bar{height:6px;background:#58687366;border:0;border-radius:0}.rp-view meter::-webkit-meter-optimum-value{background:#9ac8b8}.rp-view .rp-meter:last-child meter::-webkit-meter-optimum-value{background:#e5c78f}.rp-view .rp-meter b{font-size:11px;font-weight:500;white-space:nowrap}
.rp-view:has(.rp-page[open]) .rp-context{display:none}
.rp-view .rp-footer{margin-top:auto;min-height:54px;border-top:1px solid #b7cbd440;display:flex;align-items:flex-end;justify-content:flex-end;gap:20px;padding:12px 0 8px;color:#90a5b1;font-size:11px}
.rp-view .rp-footer kbd{border:1px solid #9bafb24d;border-radius:2px;padding:3px 7px;margin-right:8px;font:inherit;color:#c4d0d3}
.rp-view .rp-footer .session-kicker{font-size:11px;margin:0;color:#7e96a4;letter-spacing:0}
@media(max-height:650px){:is(#panel,#rogueModal).session-scrim>.rp-view{padding:25px 4.3vw 17px}.rp-view .rp-brand{font-size:9px;margin-bottom:12px}.session-scrim .rp-view h2{font-size:42px}.session-scrim .rp-view .session-save{font-size:11px;margin-top:10px}.rp-view .rp-menu{margin-top:20px}.session-scrim .rp-view .session-pause-actions>button,.session-scrim .rp-view .rp-page>summary{font-size:23px;min-height:46px;padding:9px 17px!important}.session-scrim .rp-view .session-pause-actions>.secondary{bottom:17px;font-size:14px}.rp-view .rp-context{top:15%;padding-left:18px;width:29%}.rp-view .rp-context>strong{font-size:13px}.rp-view .rp-context>p{font-size:11px;margin-bottom:13px}.rp-view .rp-meter{font-size:10px;gap:7px}.rp-view .rp-meter b{font-size:10px}.rp-view .rp-footer{min-height:45px;font-size:10px}.rp-view .rp-footer .session-kicker{font-size:10px}.rp-view .rp-detail-content{top:23%;bottom:14%;padding:10px 16px}}
@media(max-height:420px){:is(#panel,#rogueModal).session-scrim>.rp-view{padding:12px 22px 8px}.rp-view .rp-brand{font-size:8px;margin-bottom:5px;letter-spacing:.3em}.session-scrim .rp-view h2{font-size:31px}.session-scrim .rp-view .session-save{font-size:9px;margin-top:5px;max-width:49%}.rp-view .rp-menu{margin-top:10px;width:43%}.session-scrim .rp-view .session-pause-actions>button,.session-scrim .rp-view .rp-page>summary{font-size:18px;min-height:44px;padding:9px 14px!important}.session-scrim .rp-view .session-pause-actions>.primary{margin-bottom:0!important}.session-scrim .rp-view .session-pause-actions>.secondary{bottom:8px;left:22px;font-size:12px;padding:8px 0!important}.rp-view .rp-context{top:15%;right:22px;width:36%;padding-left:14px}.rp-view .rp-context>p{font-size:10px;margin:6px 0 12px}.rp-view .rp-context>strong{font-size:12px}.rp-view .rp-meter{font-size:9px;margin-top:8px}.rp-view .rp-meter b{font-size:9px}.rp-view .rp-footer{min-height:44px;padding:8px 0 12px;font-size:9px;gap:10px}.rp-view .rp-footer .session-kicker{font-size:9px;max-width:30%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-view .rp-detail-content{top:23%;left:46%;right:22px;bottom:18%;padding:8px 12px;font-size:11px}.rp-view .rp-detail-content p,.rp-view .rp-detail-content label{font-size:11px}.rp-view .rp-detail-content h3{font-size:13px}.rp-view .rp-detail-content summary{font-size:12px}.rp-view .rp-detail-content .rogue-detail-list{font-size:11px}.session-scrim .rp-view .rp-close{font-size:11px;padding:6px}.rp-view .rp-page>summary:after{display:none}
 #panel.session-scrim>.rp-view .rp-menu{display:grid;grid-template-columns:1fr 1fr;width:69%;gap:0 12px}#panel .rp-view .session-pause-actions>.primary{grid-column:1/-1;grid-row:1}#panel .rp-view #story{grid-column:1;grid-row:2}#panel .rp-view #manual{grid-column:2;grid-row:2}#panel .rp-view #settings{grid-column:1;grid-row:3}#panel .rp-view .rp-page>summary{grid-column:2;grid-row:3}
}
@media(orientation:portrait) and (max-width:600px){:is(#panel,#rogueModal).session-scrim>.rp-view{padding:28px 24px 20px}.rp-view .rp-menu{width:100%;margin-top:28px}.rp-view .rp-context{position:static;width:100%;max-width:none;padding:14px 0 0;border:0;border-top:1px solid #b7cbd433;margin-top:22px;order:2}.rp-view .rp-context>p{margin:6px 0 12px}.rp-view .rp-footer{order:3;font-size:10px}.rp-view .rp-footer .session-kicker{display:none}.session-scrim .rp-view .session-pause-actions>.secondary{left:24px;bottom:20px;font-size:13px}.session-scrim .rp-view .session-save{max-width:100%}.rp-view .rp-detail-content{top:21%;left:24px;right:24px;bottom:15%;background:#09131bf8;z-index:2}.rp-view .rp-context>strong{font-size:13px}.rp-view .rp-meter{margin-top:8px}.rp-view .rp-brand{font-size:9px}}
.session-result .reward-reveal{display:flex;align-items:center;gap:24px;text-align:left;padding:16px 0;margin:0;border:0;border-block:1px solid #b9c1c833;background:none;border-radius:0}
.session-result .reward-reveal img{width:180px;height:88px;object-fit:cover;border:0}
.session-result .reward-reveal strong{font-size:20px;color:var(--session-text)}
.session-result .reward-reveal small{font-size:14px;color:var(--session-action)}
.session-result .reward-reveal span{font-size:14px;color:var(--session-secondary)}
.session-result .return-person{max-width:680px;margin:0 auto;text-align:left}
.session-result .return-person .crew-portrait{width:88px;height:104px;flex-basis:88px}
.session-result .return-person h3{color:var(--session-text)}
.session-result .return-person p{font-size:16px}
.rogue-shell[data-surface=pause] .rogue-top,.rogue-shell[data-surface=result] .rogue-top,
.rogue-shell[data-surface=pause] .rogue-radio,.rogue-shell[data-surface=result] .rogue-radio,
.rogue-shell[data-surface=pause] .rogue-controls,.rogue-shell[data-surface=result] .rogue-controls{display:none}
@media(max-height:720px){
 .session-scrim .session-result{width:min(800px,100%)}
 .session-scrim h2{font-size:42px}
 .session-scrim .session-result h2{font-size:52px}
 .session-result h2:after{margin:12px auto}
 .session-scrim .session-kicker{margin-bottom:8px}
 .session-scrim .session-lead{margin-top:10px;font-size:16px}
 .session-facts{margin:18px 0}
 .session-actions{margin-top:16px;padding-top:16px}
 .session-pause-actions{margin-top:18px}
}
@media(max-width:600px){
 #panel.session-scrim,.rogue-modal.session-scrim{padding:16px}
 .session-scrim .session-result,.session-scrim .session-pause{max-height:calc(100dvh - 32px)}
 .session-facts>div{padding:4px 8px}
 .session-facts dt{font-size:14px}
 .session-facts dd{font-size:20px}
 .session-actions{flex-wrap:wrap;gap:8px}
 .session-actions>button{flex:1 1 160px}
 .session-result .reward-reveal{gap:16px}
 .session-result .reward-reveal img{width:112px;height:76px}
}

/* Audio controls share pause navigation; all three remain reachable on short screens. */
.rp-audio .audio-level{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 0}
.rp-audio .audio-level input{grid-column:1/-1;width:100%;min-width:0}
@media(max-height:450px){
 .rp-audio .audio-level{grid-template-columns:1fr auto;gap:4px;padding:5px 0;border:0}
 .rp-audio .audio-level input{grid-column:auto;width:130px;grid-row:auto}
 .rp-audio .audio-level output{display:none}
 .rp-audio .rp-close{min-height:24px!important;margin-bottom:4px!important;padding:2px 6px!important}
 .rp-audio .rp-detail-content{padding-top:4px;padding-bottom:4px}
 #panel .rp-view .rp-audio>summary{grid-column:1;grid-row:4}
 #rogueModal .rp-view .session-pause-actions>button,#rogueModal .rp-view .rp-page>summary{min-height:30px;padding:5px 14px!important;font-size:18px}
}
