/* A single outer viewport from character creation through the chronicle. */
html:has(body:is(.is-character-creation,.is-prologue)){overflow:hidden!important;scrollbar-gutter:auto;background:#0b1018}
body:is(.is-character-creation,.is-prologue){overflow:hidden!important;background:#0b1018!important}
body:is(.is-character-creation,.is-prologue) .site-wrap>.header,body:is(.is-character-creation,.is-prologue) .site-wrap>.footer{display:none!important}
body .room-experience,body.is-character-creation .creation-card,body.is-prologue .life-prologue{position:fixed!important;inset:0!important;width:min(100%,1600px)!important;height:min(100dvh,960px)!important;min-height:0!important;max-height:960px!important;max-width:1600px!important;margin:auto!important;border:3px double #ab9167!important;border-radius:0!important;box-shadow:0 0 80px #0009;box-sizing:border-box;overflow:hidden}
.game-frame-header{position:absolute;inset:0 0 auto;height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:3px double #a88d5d;background:linear-gradient(90deg,#0b1018f5,#111a25ed);z-index:5;color:#f7e8cc;font-family:var(--serif)}
.game-frame-header>button:first-child{padding:0;border:0;background:none;color:inherit}.game-frame-header strong{font-size:25px;font-weight:600;white-space:nowrap}.game-frame-header strong small{font-size:21px;font-weight:500}.game-frame-header>button:last-child{padding:5px 12px;min-height:36px;border:1px solid #8e7856;border-radius:2px;background:#182332;color:#f7e8cc;font:13px var(--serif)}
body.is-character-creation .creation-card{padding-top:58px;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr)}
.creation-card .creation-resume{display:none!important}.creation-card .creation-portrait{min-height:0}.creation-card .creation-form{align-self:center;width:100%;max-width:760px;max-height:100%;overflow:auto;padding:24px 34px}
body.is-prologue .life-prologue{padding:78px 34px 22px}.life-prologue .prologue-scene{width:100%;max-width:none;min-height:0}.life-prologue .prologue-top{min-height:32px;margin-bottom:12px}.life-prologue .prologue-controls{margin-top:14px}
#modal:has(#confirm-start){position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%);width:min(500px,calc(100vw - 28px))!important;max-width:500px!important;height:fit-content!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;margin:0!important;padding:22px!important;border:3px double #aa9068;border-radius:3px;background:#16273b;color:#ecddc3;overflow:auto}
#modal:has(#confirm-start) #modal-content{display:block!important;height:auto!important;min-height:0!important;padding:0!important}
#modal:has(#confirm-start) .modal-top{margin:0 0 14px;gap:12px}.modal-top:has(+.modal-copy) h2{line-height:1.35}
#modal:has(#confirm-start) h2{font:600 22px/1.4 var(--serif);color:#f1dcb5}#modal:has(#confirm-start) .modal-copy{padding:0!important;font-size:14px;line-height:1.7;color:#c8d7e6}
#modal:has(#confirm-start) .modal-actions{display:flex;margin-top:18px;gap:10px}#modal:has(#confirm-start) .modal-actions button{min-height:42px;padding:8px 12px;flex:1;font:14px var(--serif);color:#efe0c6;background:#25415b;border:1px solid #ab9067}
@media(max-width:700px){
 body .room-experience,body.is-character-creation .creation-card,body.is-prologue .life-prologue{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-width:2px!important}
 .game-frame-header{height:44px;padding:0 10px;gap:8px}.game-frame-header strong{font-size:17px}.game-frame-header strong small{font-size:14px}.game-frame-header>button:last-child{min-height:32px;font-size:11px;padding:4px 8px}
 body.is-character-creation .creation-card{display:flex!important;flex-direction:column;padding-top:44px!important}
 .is-character-creation .creation-card .creation-portrait{flex:0 0 clamp(145px,23dvh,195px);height:auto!important;padding:12px 16px;min-height:0}
 .is-character-creation .creation-card #home-portrait-preview{width:94px;height:118px}.is-character-creation .creation-card .creation-seal,.is-character-creation .creation-card .creation-portrait-caption{display:none}
 .is-character-creation .creation-card .creation-form{flex:1;min-height:0;max-height:none;padding:10px 14px;overflow:hidden;align-self:stretch}
 .is-character-creation .creation-card .creation-heading{display:none}.is-character-creation .creation-card .creation-status{display:none}
 body.is-prologue .life-prologue{padding:54px 16px 12px}.life-prologue .prologue-top{margin-bottom:6px;min-height:32px}.life-prologue .prologue-controls{margin-top:8px}
 #modal:has(#confirm-start){padding:17px!important}#modal:has(#confirm-start) h2{font-size:19px}#modal:has(#confirm-start) .modal-copy{font-size:13px}
}
/* Identity and report controls occupy their own boxes, including small phones. */
.life-prologue .prologue-identity{display:flex;align-items:center;gap:18px;margin:0 0 18px}
.life-prologue .prologue-identity .prologue-portrait{float:none;flex:none;width:100px;height:100px;object-fit:cover;margin:0;border-radius:3px;border:3px double #c5a777}
.life-prologue .prologue-identity .prologue-symbol{position:static;flex:none;margin:0;width:46px;height:54px;font-size:30px;line-height:1}
.room-experience .annual-inline-pages{height:auto;flex:none}
.room-experience .annual-inline-pages button{display:grid;place-items:center;flex:none;box-sizing:border-box;padding:0!important;min-width:36px;min-height:32px;line-height:1;letter-spacing:0;text-indent:0;font-family:Arial,sans-serif;overflow:hidden}
.palace-stage.is-room-result .palace-result-controls>button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;max-width:100%;height:auto;white-space:nowrap;box-sizing:border-box}
.palace-stage.is-room-result .palace-result-controls .arrow{position:static!important;inset:auto!important;display:inline-grid;place-items:center;flex:0 0 22px;width:22px;height:22px;margin:0!important;transform:none!important;line-height:1;font-size:19px}
.room-action-report.has-candidate{justify-content:center;gap:12px}
.room-action-report.has-candidate>header{padding-bottom:8px}.room-action-report.has-candidate h2{font-size:26px}.room-action-report.has-candidate>header>i{width:48px;height:52px;font-size:28px}
.room-action-report.has-candidate .report-rewards>div{padding:6px 12px}.room-action-report.has-candidate .report-rewards b{font-size:19px}
.retainer-decision{width:100%;max-width:720px;align-self:center;box-sizing:border-box;margin:0!important;padding:16px!important;border:3px double #a08a64!important;border-radius:3px!important;background:linear-gradient(130deg,#263b52,#102033)!important;color:#ecdfc7}
.retainer-decision .candidate-identity{display:flex;align-items:center;gap:16px;padding:0;border:0}
.retainer-decision .candidate-portrait{width:82px;height:82px;object-fit:cover;border:2px solid #ad956c;flex:none}
.retainer-decision .candidate-identity h3{font:600 25px/1.3 var(--serif);color:#f2dfbb;margin:4px 0}.retainer-decision .candidate-identity small{color:#b8ccde;font-size:12px}.retainer-decision .candidate-identity p{margin:0;font-size:13px;color:#d0dceb}
.retainer-decision .candidate-abilities{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0;gap:6px}.candidate-abilities>div{padding:5px;text-align:center;border:1px solid #8da2b44d;background:#0c1b2b}.candidate-abilities dt{font-size:12px;color:#c1d3e3}.candidate-abilities dd{font:600 23px/1.4 var(--serif);margin:0;color:#eef2f7}
.retainer-decision .candidate-skills{display:block;margin:0 0 12px}.candidate-skills p{margin:0!important;line-height:1.5;color:#c6d8eb}.candidate-skills b{color:#c7b5e9;margin-right:10px}.candidate-skills span{font-size:12px}
.retainer-decision .candidate-question{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px;margin:0 0 9px!important}.candidate-question small{font-size:11px;color:#acbfd1;white-space:nowrap}
.retainer-decision .candidate-actions{display:flex;gap:10px}.retainer-decision .candidate-actions button{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px!important;border:1px solid #a18d6c;border-radius:2px;background:#31506c;color:#f2e5d0;font:600 14px/1.3 var(--serif)}.retainer-decision .candidate-actions .secondary{background:#192a3e}
@media(max-width:700px){
 .life-prologue.prologue-name .prologue-scene{padding:16px 20px}
 .life-prologue .prologue-identity{gap:14px;margin-bottom:14px}.life-prologue .prologue-identity .prologue-portrait{width:80px;height:80px}.life-prologue .prologue-identity .prologue-symbol{width:40px;height:48px;font-size:26px}
 .room-experience.is-room-result{grid-template-rows:44px 114px 60px minmax(0,1fr) 40px 54px}
 .room-experience.is-room-result .room-location{align-self:center;height:40px;margin:0;padding:3px 0;gap:10px}.room-experience.is-room-result .room-seal{height:36px;width:32px;font-size:23px}.room-experience.is-room-result .room-name{font-size:23px!important;margin:0!important;line-height:1.3}.room-experience.is-room-result .room-caption{font-size:9px;line-height:1.2}
 .room-experience.is-room-result .palace-desk{padding-top:5px;padding-bottom:5px}
 .room-action-report.has-candidate{gap:8px}.room-action-report.has-candidate>header>i{height:38px;width:36px;font-size:23px}.room-action-report.has-candidate h2{font-size:22px}.room-action-report.has-candidate header p{font-size:12px}
 .retainer-decision{padding:11px!important}.retainer-decision .candidate-identity{gap:12px}.retainer-decision .candidate-portrait{width:66px;height:66px}.retainer-decision .candidate-identity h3{font-size:23px}.retainer-decision .candidate-identity p{font-size:12px}
 .retainer-decision .candidate-abilities{margin:9px 0;gap:5px}.candidate-abilities dd{font-size:21px}.retainer-decision .candidate-skills{margin-bottom:9px}.retainer-decision .candidate-question{font-size:12px}.candidate-question small{font-size:10px}
 .room-action-report.has-candidate>.report-full{min-height:28px;padding:3px 8px}.room-action-report.has-candidate .report-rewards>div{padding:3px 8px}
}
@media(max-width:700px) and (max-height:680px){
 .life-prologue .prologue-identity{margin-bottom:9px}.life-prologue .prologue-identity .prologue-portrait{width:60px;height:60px}
 .room-action-report.has-candidate{gap:5px}.retainer-decision{padding:8px!important}.retainer-decision .candidate-portrait{width:48px;height:48px}.retainer-decision .candidate-abilities{margin:5px 0}.candidate-abilities>div{padding:2px}.retainer-decision .candidate-skills{margin-bottom:5px}
}
.room-action-report.has-candidate>header,.room-action-report.has-candidate>.report-rewards{display:none}
.room-action-report.has-candidate{justify-content:flex-start}
.room-action-report.has-candidate>.retainer-decision{flex:0 0 auto}
.room-action-report.has-candidate>.report-full{margin-top:auto}
.retainer-decision .candidate-identity{min-height:0;height:auto}
.retainer-decision .candidate-identity h3{padding:0;min-height:0;line-height:1.25}
.retainer-decision .candidate-identity small,.retainer-decision .candidate-identity p{line-height:1.4}
.retainer-decision .candidate-abilities dt{margin:0;padding:0;line-height:1.4}
.retainer-decision .candidate-abilities dd{margin:0;padding:0;line-height:1.3}
.retainer-decision .candidate-skills p{font-size:12px;line-height:1.45}
.room-action-report.has-candidate>.report-rewards{display:grid;margin:0}
@media(max-width:700px){
 .room-action-report:not(.has-candidate){justify-content:space-evenly;gap:8px}
 .room-action-report .report-growth-graphs{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:6px}
 .room-action-report .growth-graph{padding:8px 7px;min-height:0}.room-action-report .growth-graph header{font-size:13px;gap:3px}.room-action-report .growth-graph header b{font-size:18px}.room-action-report .growth-graph-values{gap:4px;font-size:12px;margin:6px 0}.room-action-report .growth-graph-values strong{font-size:22px}.room-action-report .growth-graph-track{height:9px}
}
@media(min-width:701px){
 .room-action-report .retainer-decision{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 18px;padding:14px!important}
 .room-action-report .candidate-identity{grid-column:1;grid-row:1}.room-action-report .candidate-abilities{grid-column:2;grid-row:1;align-self:center;margin:0}
 .room-action-report .candidate-skills,.room-action-report .candidate-question,.room-action-report .candidate-actions{grid-column:1/-1;margin:0!important}
 .room-action-report .candidate-identity .candidate-portrait{width:70px;height:70px}
}
/* Candidate presentation uses the empty decision footer for a larger portrait. */
.room-action-report.has-candidate{container-type:size;gap:8px}
.room-action-report.has-candidate>.retainer-decision{flex:1 1 auto;min-height:0;max-width:920px;display:grid;grid-template-rows:minmax(0,1fr) auto auto auto auto;gap:8px}
.room-action-report.has-candidate>.report-full{margin-top:0;flex:none}
.room-action-report.has-candidate .candidate-identity{min-height:0;gap:18px;align-self:stretch}
.room-action-report.has-candidate .candidate-identity .candidate-portrait{width:clamp(96px,28cqh,150px);height:clamp(96px,28cqh,150px);max-height:100%;object-fit:cover;aspect-ratio:1;border:3px double #c3a574}
.room-action-report.has-candidate .candidate-identity h3{font-size:34px;line-height:1.25;margin:5px 0}
.room-action-report.has-candidate .candidate-identity small,.room-action-report.has-candidate .candidate-identity p{font-size:15px;color:#d9e4ef}
.room-action-report.has-candidate .candidate-abilities{margin:0;gap:8px}.room-action-report.has-candidate .candidate-abilities>div{padding:7px 4px}.room-action-report.has-candidate .candidate-abilities dt{font-size:14px}.room-action-report.has-candidate .candidate-abilities dd{font-size:30px;color:#f3f4fa}
.room-action-report.has-candidate .candidate-skills{margin:0;padding:9px 12px;background:#101f32;border-left:3px solid #b9a0db}.room-action-report.has-candidate .candidate-skills p,.room-action-report.has-candidate .candidate-skills span{font-size:14px;line-height:1.5;color:#dae4f2}.room-action-report.has-candidate .candidate-skills b{font-size:15px;color:#e0cbff}
.room-action-report.has-candidate .candidate-question{margin:0!important}.room-action-report.has-candidate .candidate-actions button{font-size:15px;min-height:44px}
@media(min-width:701px){
 .room-action-report.has-candidate>.retainer-decision{grid-template-rows:minmax(0,1fr) auto auto auto}
 .room-action-report.has-candidate .candidate-identity{grid-column:1;grid-row:1}.room-action-report.has-candidate .candidate-abilities{grid-column:2;grid-row:1}
}
@media(max-width:700px){
 .room-experience.is-room-result:has(.has-candidate){grid-template-rows:44px 114px 60px minmax(0,1fr) 40px 0}
 .room-experience.is-room-result:has(.has-candidate) .palace-footer{display:none}
 .room-action-report.has-candidate>.retainer-decision{grid-template-columns:minmax(0,1fr);padding:12px!important;gap:8px}
 .room-action-report.has-candidate .candidate-identity{gap:16px}
 .room-action-report.has-candidate .candidate-identity .candidate-portrait{width:clamp(88px,24cqh,132px);height:clamp(88px,24cqh,132px)}
 .room-action-report.has-candidate .candidate-identity h3{font-size:30px}.room-action-report.has-candidate .candidate-identity small,.room-action-report.has-candidate .candidate-identity p{font-size:14px}
 .room-action-report.has-candidate .candidate-abilities{gap:6px}.room-action-report.has-candidate .candidate-abilities>div{padding:5px 3px}.room-action-report.has-candidate .candidate-abilities dt{font-size:13px}.room-action-report.has-candidate .candidate-abilities dd{font-size:27px}
 .room-action-report.has-candidate .candidate-skills{padding:7px 9px}.room-action-report.has-candidate .candidate-skills p,.room-action-report.has-candidate .candidate-skills span{font-size:13px}.room-action-report.has-candidate .candidate-skills b{font-size:14px}
}
@media(max-width:700px) and (max-height:700px){
 .room-action-report.has-candidate>.retainer-decision{padding:9px!important;gap:6px}.room-action-report.has-candidate .candidate-identity .candidate-portrait{width:80px;height:80px}.room-action-report.has-candidate .candidate-identity h3{font-size:27px}.room-action-report.has-candidate .candidate-identity p,.room-action-report.has-candidate .candidate-identity small{font-size:12px}.room-action-report.has-candidate .candidate-abilities dd{font-size:24px}.room-action-report.has-candidate .candidate-abilities>div{padding:3px}.room-action-report.has-candidate .candidate-skills{padding:5px 7px}.room-action-report.has-candidate .candidate-actions button{min-height:40px;font-size:14px}
}
@media(max-width:700px) and (max-height:700px){
 /* During a pending invitation, the two decision buttons take priority over room navigation. */
 .room-experience.is-room-result:has(.has-candidate){grid-template-rows:44px 114px 60px minmax(0,1fr) 0 0}
 .room-experience.is-room-result:has(.has-candidate) .palace-rooms{display:none}
}
/* Reserve the pennant tip for ornament, not content. Empty path rows must not push the footer down. */
@media(max-width:700px){
 .room-experience .palace-command,.room-experience .palace-command:has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 40px 23px auto 30px 18px;padding:12px 10px clamp(36px,6dvh,58px);gap:3px}
 .room-experience .palace-command>small{margin:0;min-height:18px;line-height:18px;align-self:end;white-space:nowrap}
 .room-experience .palace-command[data-management]:has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 36px 21px 18px 18px;gap:4px}
 .room-experience .palace-command[data-management]:has(.command-paths:empty) .palace-command-growth{grid-row:4;line-height:1.3;font-size:11px}
 .room-experience .palace-command[data-management]:has(.command-paths:empty)>small{grid-row:5}
 .room-experience .palace-command[data-management]:has(.palace-command-growth:empty){grid-template-rows:minmax(0,1fr) 36px 21px 0 18px}
}
@media(max-width:700px){
 .room-experience .palace-command[data-recruitment-faction-art]:has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 36px 21px 18px}
 .room-experience .palace-command[data-recruitment-faction-art] .palace-command-growth{display:none!important}
 .room-experience .palace-command[data-recruitment-faction-art]:has(.command-paths:empty)>small{grid-row:4}
}
@media(max-width:700px) and (max-height:700px){
 .room-experience:has(.palace-command){grid-template-rows:44px 114px 36px minmax(0,1fr) 61px 54px}
 .room-experience:has(.palace-command) .palace-story{display:none}
 .room-experience:has(.palace-command) .room-location{height:32px;margin:0;align-self:center}.room-experience:has(.palace-command) .room-name{font-size:23px!important}
 .room-experience .palace-command[data-management]{padding-top:10px;padding-bottom:36px;gap:3px}
 .room-experience .palace-command[data-management]:has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 32px 20px 16px 18px}
 .room-experience .palace-command[data-recruitment-faction-art]:has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 32px 20px 18px}
}
@media(max-width:700px) and (max-height:700px){
 .room-experience:has(.palace-command){grid-template-rows:44px 98px 32px minmax(0,1fr) 61px 54px}
 .room-experience:has(.palace-command) .palace-person{height:92px;min-height:92px}
 .room-experience:has(.palace-command) .palace-face{height:80px;width:60px}
 .room-experience:has(.palace-command) .room-location{height:30px;padding:0;gap:8px}
 .room-experience:has(.palace-command) .room-seal{height:28px;width:28px;font-size:20px}
 .room-experience:has(.palace-command) .room-name{font-size:22px!important;line-height:1.2;margin:0!important}
 .room-experience:has(.palace-command) .room-caption{display:none}
 .room-experience:has(.palace-command) .palace-utility button{min-height:30px;padding:3px 2px}
 .room-experience:has(.palace-command) .palace-subnav button{min-height:28px;padding:3px 2px;font-size:11px}
}
@media(min-width:701px){
 .room-experience .palace-command[data-management]{padding-bottom:38px}
}
/* The room is fixed to the viewport; legacy page gutters must not leave a scrollable page behind it. */
body.palace-playing .site-wrap{height:100dvh;min-height:0;padding:0!important;margin:0 auto!important;box-sizing:border-box}
body.palace-playing #app{min-height:0!important}
/* Room navigation shares one button language; mobile keeps all six destinations on one row. */
.room-experience .palace-rooms>.room-return{display:flex;align-items:center;justify-content:center;border:1px solid #9c8257;background:linear-gradient(135deg,#122032e8,#0b1520e8);box-shadow:inset 0 0 0 3px #0a1423,inset 0 0 0 4px #a58a5c40;border-radius:2px;color:#eedec0}
.room-return>span{display:grid;gap:2px}.room-return i{display:grid;place-items:center;font-style:normal;color:#cdb282}.room-return strong{white-space:nowrap}.room-return small{font-size:10px;color:#c2cddd}
@media(min-width:701px){
 .room-experience{grid-template-columns:128px minmax(0,1fr)}
 .room-experience .palace-rooms{gap:7px;padding-left:12px}
 .room-experience .palace-rooms>.palace-room,.room-experience .palace-rooms>.room-return{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:1fr;gap:6px;width:112px;min-height:48px;max-height:76px;height:clamp(52px,8.5dvh,76px);flex:1 1 64px;padding:8px 6px;margin:0;line-height:1.3;text-align:center}
 .room-experience .palace-rooms :is(.palace-room,.room-return) strong{font-size:17px;font-weight:700}
 .room-experience .palace-rooms :is(.palace-room,.room-return) small{font-size:10px}
 .room-experience .palace-rooms :is(.palace-room,.room-return) i{width:28px;height:28px}
}
@media(max-width:700px){
 .room-experience .palace-rooms,.room-experience.is-room-result .palace-rooms{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:40px;gap:3px;align-content:center;padding:0 5px}
 .room-experience .palace-rooms>.palace-room,.room-experience .palace-rooms>.room-return{grid-row:1;grid-column:auto;width:100%;height:40px;min-height:40px;padding:3px 1px;margin:0;line-height:1.2}
 .room-experience .palace-rooms :is(.palace-room,.room-return) strong{font-size:11px;font-weight:700;letter-spacing:-.4px;white-space:nowrap}
 .room-experience .palace-rooms>.room-return :is(i,small){display:none}
}
/* The entrance and menu belong to the same bounded room as the chronicle. */
body.is-title-screen{background:#0b1018!important}
.title-screen{inset:0;width:min(100%,1600px);height:min(100dvh,960px);min-height:0;max-width:1600px;max-height:960px;margin:auto;border:3px double #ab9167;box-sizing:border-box;box-shadow:0 0 80px #0009;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);grid-template-rows:58px minmax(0,1fr) 42px;column-gap:40px;padding:0 60px;font-family:var(--serif);background:#0b1018}
.title-screen .title-landscape{content:none!important;object-position:center!important;z-index:-3}
.title-screen .title-vignette{z-index:-2;background:linear-gradient(180deg,#070d1690,transparent 35%,#070e19bd),linear-gradient(90deg,#060a126b,transparent 50%,#060a1285)!important}
.title-screen .title-frame{inset:8px;border-color:#d1b07965;z-index:-1}.title-screen .title-frame:before,.title-screen .title-frame:after{width:38px;height:38px;border-color:#bca274}
.title-shell-header{grid-row:1;grid-column:1/-1;margin:0 -60px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(90deg,#0b1018f5,#111a25ed);border-bottom:3px double #a88d5d;color:#f7e8cc}
.title-shell-header strong{font:600 25px var(--serif);white-space:nowrap}.title-shell-header small{font-size:21px;font-weight:500}.title-shell-header>span{font-size:16px;color:#bea47a;letter-spacing:4px}
.title-screen .title-content,.title-screen.is-menu .title-content{position:relative;inset:auto;grid-row:2;grid-column:1;width:100%;max-width:600px;justify-self:center;align-self:center;margin:0;padding:28px 20px;text-align:center;text-shadow:0 2px 10px #000}
.title-screen:not(.is-menu) .title-content{grid-column:1/-1;align-self:start;margin-top:clamp(30px,10dvh,110px)}
.title-screen .title-content:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse,#0b1528d9,transparent 72%)}
.title-screen .title-era{font:12px/1.4 var(--serif);letter-spacing:.3em;margin:0 0 20px;color:#d8c29a}
.title-screen .title-wordmark h1,.title-screen.is-menu .title-wordmark h1{font-size:clamp(72px,7.5vw,116px);line-height:1.2;letter-spacing:.04em;color:#f3e0b8!important;font-weight:700}
.title-screen .title-seal{background:#24364c;border:3px double #bca274;box-shadow:none;color:#ecd6ab;transform:none;right:-38px;top:14%;font-size:13px;padding:6px 4px}
.title-screen .title-subtitle{font-size:28px;letter-spacing:.25em;margin:12px 0 0;text-indent:.25em;color:#f7e8cc}
.title-screen .title-divider{margin:24px 0 16px}.title-screen .title-verse{font:15px/1.9 var(--serif);color:#e0d8ca}
.title-screen .title-enter{justify-content:flex-end;padding-bottom:clamp(72px,11dvh,110px);gap:12px}
.title-screen .title-enter-prompt{padding:14px 30px;border:3px double #ab9167;background:linear-gradient(110deg,#304963ed,#152a41f5);box-shadow:inset 0 0 0 4px #0b162c;font:600 19px/1.5 var(--serif);color:#f7e8cc;letter-spacing:.03em}
.title-screen .title-enter-prompt:before,.title-screen .title-enter-prompt:after{display:none}.title-screen .title-enter-hint{font:12px/1.4 var(--serif);color:#d0d7df}
.title-screen .main-menu,.title-screen.is-menu .main-menu,.title-screen .menu-settings-panel{position:relative;inset:auto;transform:none;grid-row:2;grid-column:2;align-self:center;justify-self:center;width:100%;max-width:440px;max-height:100%;padding:24px;border:3px double #ab9167!important;border-radius:0;background:linear-gradient(135deg,#1c2d41f5,#0d1c2ef5)!important;box-shadow:inset 0 0 0 5px #0a1524,0 18px 45px #0006!important;overflow:auto}
.title-screen .menu-eyebrow{font:11px/1.4 var(--serif);letter-spacing:2px;color:#bfa67b;margin:0 0 7px}
.title-screen .main-menu h2,.title-screen .menu-settings-panel h2{font:600 23px/1.4 var(--serif);margin:0 0 18px;color:#f4dfb8}
.title-screen .main-menu-options{gap:10px}
.title-screen .main-menu-options button{--menu-tone:#284e6d;grid-template-columns:46px minmax(0,1fr) 18px;gap:12px;min-height:78px;padding:12px;border:1px solid #ab9167!important;border-radius:0!important;background:linear-gradient(110deg,var(--menu-tone),#122237)!important;box-shadow:inset 0 0 0 3px #101b2d!important;color:#f5e5c8!important}
.title-screen .main-menu-options button:nth-child(2){--menu-tone:#334966}.title-screen .main-menu-options button:nth-child(3){--menu-tone:#493c61}.title-screen .main-menu-options button:nth-child(4){--menu-tone:#364653}
.title-screen .main-menu-options .menu-glyph{width:44px;height:46px;border:3px double #b8a079;background:#101d2cb8;font:25px/1 var(--serif);display:grid;place-items:center;color:#e5c694}
.title-screen .main-menu-options strong{font:600 20px/1.3 var(--serif);white-space:nowrap}.title-screen .main-menu-options small{font:11px/1.4 var(--serif);color:#d3dce5!important;margin-top:4px}.title-screen .main-menu-options button>span:last-child{font:25px/1 Arial;text-align:center;align-self:center}
.title-screen .title-footnote{position:static;grid-row:3;grid-column:1/-1;align-self:center;margin:0;font:11px/1.4 var(--serif);letter-spacing:1px;color:#c0b39e}
.title-screen .menu-settings-panel .bgm-player{gap:8px;padding-bottom:12px;font-family:var(--serif)}.title-screen .menu-settings-panel :is(select,button){font-family:var(--serif)!important;background:#21364d!important;border-color:#ab9167;color:#f0e1c6!important}.title-screen .menu-settings-panel .bgm-label{color:#e2caa0}.title-screen .menu-settings-panel .menu-appearance{display:none}
@media(max-width:700px){
 .title-screen{width:100%;height:100dvh;max-height:100dvh;border-width:2px;grid-template-columns:minmax(0,1fr);grid-template-rows:44px 144px minmax(0,1fr) 32px;padding:0 18px;gap:0}
 .title-shell-header{grid-column:1;grid-row:1;margin:0 -18px;padding:0 10px}.title-shell-header strong{font-size:17px}.title-shell-header small{font-size:14px}.title-shell-header>span{font-size:11px;letter-spacing:1px}
 .title-screen .title-content,.title-screen.is-menu .title-content{grid-column:1;grid-row:2;align-self:center;width:100%;padding:12px 10px;margin:0}
 .title-screen:not(.is-menu) .title-content{grid-row:2/4;grid-column:1;align-self:start;margin-top:clamp(45px,12dvh,110px)}
 .title-screen .title-wordmark h1{font-size:78px}.title-screen.is-menu .title-wordmark h1{font-size:48px}.title-screen .title-seal{font-size:10px;right:-27px;padding:4px 3px}.title-screen .title-era{font-size:10px;margin-bottom:14px}.title-screen.is-menu .title-era{display:none}
 .title-screen .title-subtitle{font-size:23px;margin-top:10px}.title-screen.is-menu .title-subtitle{font-size:17px;margin-top:6px}.title-screen.is-menu :is(.title-divider,.title-verse){display:none}
 .title-screen .title-divider{margin:20px 0 12px}.title-screen .title-verse{font-size:13px}
 .title-screen .title-enter{padding-bottom:80px}.title-screen .title-enter-prompt{font-size:16px;padding:12px 22px}.title-screen .title-enter-hint{font-size:10px}
 .title-screen .main-menu,.title-screen.is-menu .main-menu,.title-screen .menu-settings-panel{grid-column:1;grid-row:3;align-self:center;width:100%;max-width:440px;padding:16px;max-height:100%;margin:0}
 .title-screen .menu-eyebrow{font-size:9px;margin-bottom:5px}.title-screen .main-menu h2,.title-screen .menu-settings-panel h2{font-size:18px;margin-bottom:12px}.title-screen .main-menu-options{gap:8px}.title-screen .main-menu-options button{min-height:64px;padding:8px;grid-template-columns:38px minmax(0,1fr) 16px;gap:9px}.title-screen .main-menu-options .menu-glyph{width:36px;height:40px;font-size:22px}.title-screen .main-menu-options strong{font-size:17px}.title-screen .main-menu-options small{font-size:10px;margin-top:3px}
 .title-screen .title-footnote{grid-row:4;grid-column:1;font-size:9px;letter-spacing:0}.title-screen .menu-settings-panel .bgm-player{gap:6px}.title-screen .menu-settings-panel :is(select,button){min-height:34px;padding:5px 7px}.title-screen #menu-settings-back{margin-top:6px}
}
@media(max-width:700px) and (max-height:700px){
 .title-screen{grid-template-rows:44px 116px minmax(0,1fr) 28px}.title-screen.is-menu .title-wordmark h1{font-size:42px}.title-screen .main-menu,.title-screen.is-menu .main-menu,.title-screen .menu-settings-panel{padding:12px}.title-screen .main-menu h2{margin-bottom:10px;font-size:17px}.title-screen .main-menu-options{gap:7px}.title-screen .main-menu-options button{min-height:61px}.title-screen .menu-settings-panel .bgm-status{font-size:11px}
}
/* Birthplace never moves; the compact address follows service and appointments. */
.room-experience .palace-person-context{display:flex;align-items:center;gap:10px;max-width:none;overflow:visible;text-overflow:clip;white-space:normal;line-height:1.4}
.palace-current-office{flex:none;white-space:nowrap}
.residence-inline{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap;font:11px/1.4 var(--serif);color:#e3dfd5}
.residence-inline>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.residence-inline i{display:inline-grid;place-items:center;width:17px;height:18px;flex:none;border:1px solid currentColor;background:#101c2c;font:12px/1 var(--serif);font-style:normal}
.residence-home{color:#d5bc8e}.residence-current{color:#a9d8f6}
.residence-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;padding:12px;border:1px solid #9b835a70;background:#112134}
.residence-identity>div{display:flex;align-items:center;gap:9px;min-width:0}
.residence-identity>div>i{display:grid;place-items:center;width:34px;height:40px;flex:none;border:3px double currentColor;font:22px/1 var(--serif);font-style:normal}
.residence-identity>div>div{display:grid;gap:3px;min-width:0}.residence-identity span{font-size:11px}.residence-identity strong{font:600 19px/1.3 var(--serif);color:#f0e7d7}.residence-identity small{font-size:10px;line-height:1.4;color:#c3cfdb}
.residence-identity>p{grid-column:1/-1;margin:2px 0 0;padding-top:8px;border-top:1px solid #9b835a40;color:#b8cada;font-size:11px}
@media(max-width:700px){
 .room-experience .palace-person-context{gap:5px;font-size:9px!important;max-width:none!important;white-space:normal!important;overflow:visible!important}
 .room-experience .residence-inline{gap:5px;font-size:10px;flex-wrap:wrap;line-height:1.2}
 .room-experience .residence-inline>span{gap:3px}.room-experience .residence-inline i{width:13px;height:14px;font-size:10px}
 .residence-identity{gap:8px;padding:10px;margin:10px 0}.residence-identity>div{gap:6px}.residence-identity>div>i{width:28px;height:34px;font-size:19px}.residence-identity strong{font-size:16px}
}

/* Career pennants share one illustration window. Reserve every copy row even
   when its text is empty, so one card cannot borrow height from its neighbour. */
.room-experience .palace-command[data-management],
.room-experience .palace-command[data-management]:has(.command-paths:empty),
.room-experience .palace-command[data-management]:has(.palace-command-growth:empty){
 grid-template-columns:minmax(0,1fr);
 grid-template-rows:minmax(0,1fr) 54px 26px 30px 18px;
 gap:4px;
}
.room-experience .palace-command[data-management] .palace-command-art{grid-column:1;grid-row:1;width:100%;height:100%;min-height:0;max-height:none;align-self:stretch}
.room-experience .palace-command[data-management]>strong{grid-column:1;grid-row:2;align-self:stretch;display:flex;align-items:center;justify-content:center;min-height:0}
.room-experience .palace-command[data-management] .palace-command-rate{grid-column:1;grid-row:3;align-self:center;min-height:0}
.room-experience .palace-command[data-management] .palace-command-growth,
.room-experience .palace-command[data-management]:has(.command-paths:empty) .palace-command-growth{
 display:flex!important;grid-column:1;grid-row:4;align-self:stretch;align-items:center;justify-content:center;
 min-height:0;margin:0;line-height:1.3;white-space:normal;
}
.room-experience .palace-command[data-management]>small,
.room-experience .palace-command[data-management]:has(.command-paths:empty)>small{grid-column:1;grid-row:5;align-self:center;min-height:0;margin:0;line-height:18px}
@media(max-width:700px){
 .room-experience .palace-command[data-management],
 .room-experience .palace-command[data-management]:has(.command-paths:empty),
 .room-experience .palace-command[data-management]:has(.palace-command-growth:empty){grid-template-rows:minmax(0,1fr) 40px 23px 28px 18px;gap:3px}
}
@media(max-width:700px) and (max-height:700px){
 .room-experience .palace-command[data-management],
 .room-experience .palace-command[data-management]:has(.command-paths:empty),
 .room-experience .palace-command[data-management]:has(.palace-command-growth:empty){grid-template-rows:minmax(0,1fr) 36px 20px 26px 18px}
}

/* Action pennants also align their copy tracks as a deck. Empty labels reserve
   the same track as neighbouring cards, while an entirely empty track collapses. */
.room-experience .palace-card-deck{--command-path-row:0px;--command-growth-row:0px}
.room-experience .palace-card-deck:has(.palace-command:not([data-management]) .command-paths:not(:empty)){--command-path-row:26px}
.room-experience .palace-card-deck:has(.palace-command:not([data-management]) .palace-command-growth:not(:empty)){--command-growth-row:30px}
.room-experience .palace-command:not([data-management]),
.room-experience .palace-command:not([data-management]):has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 54px 26px var(--command-path-row) var(--command-growth-row) 18px;gap:4px}
.room-experience .palace-command:not([data-management]) .palace-command-art{grid-column:1;grid-row:1;width:100%;height:100%;min-height:0;max-height:none}
.room-experience .palace-command:not([data-management])>strong{grid-column:1;grid-row:2;align-self:stretch}
.room-experience .palace-command:not([data-management]) .palace-command-rate{grid-column:1;grid-row:3;align-self:center}
.room-experience .palace-command:not([data-management]) .command-paths{grid-column:1;grid-row:4;align-self:center}
.room-experience .palace-command:not([data-management]) .palace-command-growth{grid-column:1;grid-row:5;align-self:center}
.room-experience .palace-command:not([data-management])>small{grid-column:1;grid-row:6;align-self:center;min-height:0;margin:0;line-height:18px}
@media(max-width:700px){
 .room-experience .palace-card-deck:has(.palace-command:not([data-management]) .command-paths:not(:empty)){--command-path-row:22px}
 .room-experience .palace-card-deck:has(.palace-command:not([data-management]) .command-paths>span:nth-child(3)){--command-path-row:42px}
 .room-experience .palace-card-deck:has(.palace-command:not([data-management]) .palace-command-growth:not(:empty)){--command-growth-row:28px}
 .room-experience .palace-command:not([data-management]),
 .room-experience .palace-command:not([data-management]):has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 40px 23px var(--command-path-row) var(--command-growth-row) 18px;gap:3px}
}
.room-experience .palace-desk:has(>.palace-card-deck>.palace-command):has(>.palace-pages[hidden]){grid-template-rows:auto auto minmax(0,1fr) 0}
.room-experience .palace-pages[hidden]{display:none!important}
@media(max-width:700px) and (max-height:700px){
 .room-experience .palace-command:not([data-management]),
 .room-experience .palace-command:not([data-management]):has(.command-paths:empty){grid-template-rows:minmax(0,1fr) 40px 20px var(--command-path-row) var(--command-growth-row) 0;padding:8px 10px 18px;gap:2px}
 .room-experience .palace-command:not([data-management])>small{display:none!important}
 .room-experience .palace-command:not([data-management]) .palace-command-rate{line-height:20px}
 .room-experience .palace-command:not([data-management]) .palace-command-growth{line-height:15px}
}
@media(max-width:700px) and (max-height:700px){
 .room-experience .palace-command[data-management],
 .room-experience .palace-command[data-management]:has(.command-paths:empty),
 .room-experience .palace-command[data-management]:has(.palace-command-growth:empty){grid-template-rows:minmax(0,1fr) 40px 20px 0 18px;gap:2px;padding-top:8px;padding-bottom:18px}
 .room-experience .palace-command[data-management] .palace-command-growth,
 .room-experience .palace-command[data-management]:has(.command-paths:empty) .palace-command-growth{display:none!important}
 .room-experience:has(.palace-command) .palace-desk{gap:3px}
 .room-experience:has(.palace-command) .palace-card-deck{padding-top:5px;padding-bottom:1px}
}
/* Short phones keep the illustration visible without adding a page scrollbar. */
@media(max-width:700px) and (max-height:600px){
 .room-experience:has(.palace-command){grid-template-rows:44px 98px 0 minmax(0,1fr) 48px 44px}
 .room-experience:has(.palace-command) .room-location{display:none}
 .room-experience:has(.palace-command) .palace-desk{grid-template-rows:auto auto minmax(0,1fr) 34px}
 .room-experience:has(.palace-command) .palace-desk:has(>.palace-pages[hidden]){grid-template-rows:auto auto minmax(0,1fr) 0}
 .room-experience:has(.palace-command) .palace-pages button{min-height:32px;padding-top:3px;padding-bottom:3px}
 .room-experience:has(.palace-command) .palace-slots .palace-slot{min-height:36px}
}
/* A companion receipt must never extend beneath the clipped result desk.
   Ordinary receipts fit directly; unusually rich outcomes can scroll here,
   while the room's continue controls stay outside this bounded region. */
.room-experience.is-room-result .room-action-report.has-retainer-report{
 flex:1 1 0;min-height:0;max-height:100%;margin:0 auto;overflow-y:auto;overflow-x:hidden;
 overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#9c8865 #132337;
}
.room-action-report.has-retainer-report>*{flex-shrink:0}
.room-action-report.has-retainer-report .retainer-growth-report{flex:0 0 auto;min-width:0;justify-content:flex-start}
.retainer-report-card,.retainer-report-identity,.retainer-report-skills{min-width:0;max-width:100%;box-sizing:border-box}
.companion-result-tabs,.companion-result-viewport,.companion-result-controls{display:none}
@media(max-width:700px){
 .room-experience.is-room-result:has(.has-companion-pages){grid-template-rows:44px 114px 0 minmax(0,1fr) 0 54px}
 .room-experience.is-room-result:has(.has-companion-pages) :is(.room-location,.palace-rooms){display:none!important}
 .room-experience.is-room-result .room-action-report.has-companion-pages{overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;justify-content:stretch;gap:5px;height:100%;max-height:100%;flex:1 1 0}
 .has-companion-pages>[data-receipt-original]{display:none!important}
 .has-companion-pages>.companion-result-tabs{display:flex;gap:6px;min-height:32px}
 .companion-result-tabs button{flex:1;min-width:0;min-height:32px;padding:4px 6px;border:1px solid #8c795d;background:#162c43;color:#d1dce7;font:13px/1.3 var(--serif)}
 .companion-result-tabs button[aria-pressed=true]{background:#315371;border-color:#c0a372;color:#fff0d3}
 .has-companion-pages>.companion-result-viewport{display:flex;min-height:0;overflow:hidden;align-items:center}
 .companion-result-page{width:100%;min-width:0;max-height:100%;display:none}
 .companion-result-page[data-active=true]{display:block}
 .has-companion-pages>.companion-result-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px}
 .companion-result-controls button{min-height:34px;padding:4px 12px;border:1px solid #8c795d;background:#203b53;color:#e9dfce;font:13px/1.3 var(--serif)}
 .companion-result-controls button:disabled{opacity:.4}.companion-result-controls span{font:12px/1.3 var(--serif);color:#d4c2a0}
 .room-action-report.has-companion-pages>.report-full{display:none}
 .companion-result-controls .companion-page-details{font-size:11px;padding:4px 7px;margin-left:auto}
 .has-companion-pages .retainer-report-card{padding:7px 8px}
 .has-companion-pages .retainer-report-skills{margin-top:4px;gap:4px}
 .has-companion-pages .retainer-report-skills>div{padding:3px 5px;flex:1 1 110px}
 .has-companion-pages .report-growth-graphs{gap:5px}
 .has-companion-pages .growth-graph{padding:6px}
 .has-companion-pages .growth-graph header{font-size:13px}.has-companion-pages .growth-graph header b{font-size:18px}
 .has-companion-pages .growth-graph-values{margin:3px 0;font-size:12px}.has-companion-pages .growth-graph-values strong{font-size:21px}
 .has-companion-pages .growth-graph-track{height:7px}
}
/* Results share the available room; only overflowing blocks get another page. */
@media(max-width:700px){
 .room-experience.is-room-result .room-action-report.has-companion-pages{grid-template-rows:auto minmax(0,1fr) auto}
 .has-companion-pages>.companion-result-tabs{display:none}
 .has-companion-pages>.companion-result-viewport{align-items:stretch}
 .companion-result-page[data-active=true]{display:flex;flex-direction:column;gap:8px;flex-shrink:0}
 .companion-result-page>*{flex-shrink:0}
 .companion-result-page.single-companion{height:100%}
 .companion-result-page.single-companion>.retainer-report-card{height:100%;display:flex;flex-direction:column;gap:6px}
 .companion-result-page.single-companion .retainer-report-abilities{flex:1;align-content:stretch;min-height:0}
 .companion-result-page.single-companion .retainer-ability-change{display:flex;flex-direction:column;justify-content:center;gap:5px}
 .companion-result-viewport[data-roomy=true] .retainer-report-card{padding:12px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-report-identity{grid-template-columns:62px minmax(0,1fr);grid-template-rows:66px 28px;gap:7px 10px;margin-bottom:8px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-report-portrait{width:62px;height:66px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-report-identity h3{font-size:24px;line-height:30px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-report-relations :is(span,b,em){font-size:12px;line-height:20px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-ability-change>p strong{font-size:23px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .retainer-report-skills b{font-size:15px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .single-companion .retainer-report-identity{flex:1;min-height:110px;grid-template-columns:minmax(70px,45%) minmax(0,1fr);grid-template-rows:minmax(66px,1fr) 28px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .single-companion .retainer-report-portrait{width:100%;height:100%;max-height:250px;object-fit:cover;object-position:top}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .single-companion .retainer-report-abilities{flex:0 0 auto;min-height:100px}
 .companion-result-viewport[data-roomy=true] .packed>.retainer-report-card:last-child{flex:1;display:flex;flex-direction:column}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .packed:not(.single-companion) .retainer-report-identity{flex:1;grid-template-columns:90px minmax(0,1fr);grid-template-rows:minmax(66px,1fr) 28px}
 .room-action-report.has-companion-pages .companion-result-viewport[data-roomy=true] .packed:not(.single-companion) .retainer-report-portrait{width:90px;height:100%;max-height:150px;object-position:top}
}
@media(max-width:700px){
 .room-action-report.has-retainer-report .retainer-report-identity{grid-template-columns:40px minmax(0,1fr);gap:5px 8px;margin-bottom:6px}
 .room-action-report.has-retainer-report .retainer-report-identity h3{font-size:20px;overflow-wrap:anywhere}
 .room-action-report.has-retainer-report .retainer-report-relations{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px}
 .room-action-report.has-retainer-report .retainer-report-relations>div{flex:1 1 110px;padding:3px 5px;min-width:0}
 .room-action-report.has-retainer-report .retainer-report-abilities:has(>.retainer-ability-change:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
 .room-action-report.has-retainer-report .retainer-ability-change{padding:5px;min-width:0}
 .room-action-report.has-retainer-report .retainer-ability-change>div:first-child{font-size:12px}
 .room-action-report.has-retainer-report .retainer-ability-change>div:first-child b{font-size:15px}
 .room-action-report.has-retainer-report .retainer-ability-change>p{font-size:10px;gap:3px;flex-wrap:wrap;margin:3px 0;line-height:1.3}
 .room-action-report.has-retainer-report .retainer-ability-change>p strong{font-size:19px}
 .room-action-report.has-retainer-report .retainer-report-skills>div{min-width:0;max-width:100%;box-sizing:border-box}
 .room-action-report.has-retainer-report .retainer-report-skills span{min-width:0;gap:3px}
 .room-action-report.has-retainer-report .retainer-report-skills b{overflow-wrap:anywhere}
 .room-action-report.has-retainer-report .retainer-report-pager{gap:8px}
 .room-action-report.has-retainer-report .retainer-report-pager button{min-height:36px;font-size:12px}
}
@media(max-width:700px){
 .room-action-report.has-companion-pages .companion-result-page .retainer-ability-change{padding:4px 3px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-ability-change>p{flex-wrap:nowrap;gap:2px;font-size:9px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-ability-change>p strong{font-size:16px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-skills>div{padding:3px;gap:4px;flex:1 1 0}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-skills i{width:20px;height:23px;font-size:15px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-skills span{display:grid;gap:1px;font-size:9px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-skills b{font-size:12px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-relations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:4px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-relations>div{padding:2px 3px;gap:2px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-relations :is(span,b,em){font-size:10px;line-height:16px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-identity{grid-template-rows:40px 22px;gap:3px 8px;margin-bottom:4px}
 .room-action-report.has-companion-pages .companion-result-page .retainer-report-identity h3{margin:0;line-height:25px}
 .room-action-report.has-companion-pages>header{padding-bottom:3px}
 .room-action-report.has-companion-pages>header>i{height:32px;width:32px;font-size:22px}
}
/* Labels and counts own separate tracks; long event names may wrap inside
   their button, never across its border or into the neighbouring tab. */
.room-experience .palace-subnav button{height:100%;white-space:normal;flex-wrap:nowrap;min-height:38px;padding:6px;gap:5px}
.room-guide{display:flex;align-items:center;gap:9px;align-self:start;flex:0 1 230px;min-width:130px;min-height:86px;padding:10px;border:3px double #aa9169;background:linear-gradient(125deg,#263d55,#101c2b);color:#f2e3ca;text-align:left;font-family:var(--serif)}
.room-guide>i{font-style:normal;writing-mode:vertical-rl;font-size:21px;letter-spacing:4px;color:#cfb68b;border:1px solid #a18b65;padding:6px 4px}
.room-guide>span{display:grid;gap:5px;min-width:0}.room-guide small{font-size:11px;color:#aebfd4}.room-guide strong{font-size:14px;line-height:1.4;word-break:keep-all}.room-guide em{font-style:normal;font-size:11px;color:#d6c09a}
.room-guide-panel{display:grid;gap:9px;padding:6px;max-width:470px}
.room-guide-panel>button{display:grid;gap:6px;width:100%;padding:14px;text-align:left;border:1px solid #8b7d67;background:#1c3047;color:#f2e3cb;font-family:var(--serif)}
.room-guide-panel strong{font-size:17px}.room-guide-panel span{font-size:12px;line-height:1.5;color:#c2cfde}
@media(max-width:700px){
 .room-experience .room-guide{position:absolute;top:52px;right:14px;z-index:3;min-width:0;width:43px;min-height:40px;height:40px;padding:3px;display:grid;place-items:center;border-width:1px}
 .room-guide>i{writing-mode:horizontal-tb;font-size:16px;letter-spacing:0;border:0;padding:0}.room-guide>span{display:contents}.room-guide>span :is(strong,em){display:none}.room-guide small{font-size:9px;line-height:1;color:#e4d2af}
 .room-experience:has(.room-guide) .palace-person>span>strong{padding-right:42px;box-sizing:border-box}
 .room-guide-panel{gap:6px;padding:2px}.room-guide-panel>button{padding:10px}.room-guide-panel strong{font-size:15px}
}
.room-experience .palace-subnav .palace-tab-label{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.25;text-align:center}
.room-experience .palace-subnav button>b{flex:0 0 auto;white-space:nowrap;min-width:12px}
.room-experience .palace-subnav>div{align-items:stretch}
.choice-subtabs .choice-subtab .choice-tab-name{white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}
.room-experience .palace-command-art i{width:34px;height:36px;right:4px;bottom:4px;font-size:19px;line-height:1!important}
@media(max-width:700px){
 .room-experience .palace-subnav button{font-size:11px;min-height:36px;padding:4px 5px}
 .room-experience:has(.palace-subnav>[data-tab-depth="3"]):has(.palace-command) .room-location{display:none}
 .room-experience .palace-command-art i{width:30px;height:32px;font-size:17px;right:3px;bottom:3px}
}
@media(max-width:700px) and (max-height:700px){
 .room-experience:has(.palace-subnav>[data-tab-depth="3"]):has(.palace-command){grid-template-rows:44px 98px 0 minmax(0,1fr) 48px 44px}
 .room-experience .palace-card-deck:has(.palace-command:not([data-management]) .command-paths:not(:empty)){--command-path-row:20px}
 .room-experience .palace-card-deck:has(.palace-command:not([data-management]) .palace-command-growth:not(:empty)){--command-growth-row:20px}
 .room-experience .palace-command:not([data-management]),.room-experience .palace-command:not([data-management]):has(.command-paths:empty){grid-template-rows:minmax(64px,1fr) 36px 20px var(--command-path-row) var(--command-growth-row) 0;padding:6px 10px 14px;gap:2px}
 .room-experience .palace-command .command-paths{flex-wrap:nowrap;gap:2px}
 .room-experience .palace-command .command-paths>span{font-size:9px;padding:2px}
 .room-experience .palace-command .palace-command-growth{font-size:10px;line-height:18px}
 .room-experience .palace-command:not([data-management])>strong{font-size:15px;line-height:18px}
 .room-experience .palace-rooms>.room-return{display:flex;align-items:center;justify-content:center;gap:0;min-width:0}
 .room-experience .palace-rooms>.room-return>span{min-width:0;max-width:100%;display:block}
 .room-experience .palace-rooms>.room-return strong{font-size:10px;letter-spacing:-.5px;line-height:1.3}
}
@media(max-width:700px){
 .room-experience .palace-rooms>.room-return{display:flex;align-items:center;justify-content:center;gap:0;min-width:0}
 .room-experience .palace-rooms>.room-return>span{min-width:0;max-width:100%;display:block}
 .room-experience .palace-rooms>.room-return strong{font-size:10px;letter-spacing:-.5px;line-height:1.3}
}
/* Fixed guide frame; the goal detail changes inside its own panel. */
@media(min-width:701px){
 .room-experience .room-guide{flex:0 0 210px;width:210px;min-width:210px;height:104px;min-height:104px;max-height:104px;box-sizing:border-box}
 .room-guide strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:20px;height:40px}
}
.room-guide-panel{width:min(470px,100%);box-sizing:border-box}
.guide-goal-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.guide-goal-tabs button{padding:8px 3px;min-height:36px;color:#e6dfd1;background:#1e3046;border:1px solid #7d8493;font:600 13px var(--serif);white-space:nowrap}
.guide-goal-tabs button[aria-pressed=true]{background:#3a506c;border-color:#c4a876}
.guide-goal-content{display:grid;gap:10px;min-width:0}
.guide-goal-content h3{margin:3px 0;color:#f0dfbd;font-size:18px}.guide-goal-content p{margin:0;font-size:12px;line-height:1.5;color:#c6d1df}
.guide-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.guide-requirements>div{display:grid;grid-template-columns:1fr auto;gap:5px;padding:8px;border:1px solid #7f8c9c;background:#14283e}
.guide-requirements span{font-size:12px}.guide-requirements b{font-size:14px}.guide-requirements small{grid-column:1/-1;font-size:11px;color:#ecb3a2}.guide-requirements .is-met small{color:#adccdf}
.guide-campaign-gaps{margin:0;padding-left:20px;display:grid;gap:6px;color:#ecc4b5;font-size:13px;line-height:1.5}
.room-guide-panel .guide-recommendation,.guide-remaining>button{display:grid;gap:5px;width:100%;padding:10px;text-align:left;border:1px solid #8b7d67;background:#1c3047;color:#f2e3cb;font-family:var(--serif)}
.room-guide-panel .guide-recommendation strong{font-size:14px}.guide-remaining{border-top:1px solid #79839855;padding-top:8px}.guide-remaining summary{font-size:12px;color:#c7d3e0;cursor:pointer}.guide-remaining>button{margin-top:7px}
/* Consistent inset on compact career summaries and permission cards. */
.palace-sheet-body :is(.personnel-review-record,.career-transfer-current,.personnel-review-result,.recruitment-review-result,.career-transfer-warning,.personnel-review-bonus){padding:10px 12px;box-sizing:border-box;max-width:100%;margin-block:9px;overflow-wrap:anywhere}
.palace-sheet-body .personnel-review-record{gap:7px 12px;line-height:1.5}
.palace-sheet-body .personnel-review-record>span{margin-left:0}
.palace-sheet-body :is(.promotion-offices>div,.command-authority-effects>span,.relationship-meter){padding:8px 10px;box-sizing:border-box;min-width:0}
.palace-sheet-body :is(.personnel-review-heading,.career-transfer-candidate-heading,.recruitment-review-heading){gap:8px;min-width:0}
.guide-choice-preview{display:grid;gap:5px;margin-top:4px;padding:9px;border:1px solid #778aa466;background:#112338}
.guide-choice-preview>span{font-size:12px!important;line-height:1.5!important;color:#d6e3f2!important}
.guide-choice-preview>[data-kind=chance]{color:#e7cf9f!important;font-weight:700}
.guide-choice-preview>[data-kind=experience]{color:#c5b9e8!important}
.guide-choice-preview>[data-kind=cost]{color:#e7b2aa!important}
@media(max-width:700px){
 .room-experience .palace-rooms,.room-experience.is-room-result .palace-rooms{grid-template-columns:repeat(5,minmax(0,1fr)) minmax(0,1.35fr)}
 .room-experience .palace-rooms>.room-return{padding:4px 6px;box-sizing:border-box;overflow:hidden}
 .room-experience .palace-rooms>.room-return strong{display:block;margin:0;padding:0;font-size:10px!important;letter-spacing:-.3px;line-height:16px;text-indent:0;transform:none}
 .palace-sheet-body :is(.personnel-review-record,.career-transfer-current,.personnel-review-result,.recruitment-review-result){padding:9px 10px}
}
.room-experience :is(.personnel-review-record,.career-transfer-current,.personnel-review-result,.recruitment-review-result){padding:9px 12px;box-sizing:border-box;max-width:100%;gap:7px 12px;line-height:1.5}
.room-experience .personnel-review-record>span{margin-left:0}
/* Character details are three short registers instead of a single tall sheet. */
.palace-sheet-body .person-compact{padding:0!important;max-width:100%;background:none!important;border:0!important}
.person-compact>.character-mobile-summary{display:none!important}
.palace-sheet-body .person-compact .character-details{display:block!important;padding:0!important}
.person-detail-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:10px}
.person-detail-tabs button{min-height:36px;padding:6px 3px;border:1px solid #9b896c;background:#172b40;color:#e9dfcd;font:600 13px var(--serif);white-space:nowrap}
.person-detail-tabs button[aria-pressed=true]{background:#36516c;border-color:#cbb185}
.person-detail-section[hidden]{display:none!important}
.person-detail-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start}
.person-compact .character-identity{grid-column:1/-1;display:grid!important;grid-template-columns:84px minmax(0,1fr);gap:3px 12px;padding:8px!important;text-align:left;min-height:0!important}
.person-compact .character-portrait{grid-column:1;grid-row:1/9;width:84px!important;height:auto!important;margin:0!important;align-self:start}
.person-compact .character-portrait img{width:84px!important;height:100px!important;object-fit:cover}
.person-compact .character-portrait button{font-size:10px!important;min-height:28px;padding:3px!important;margin-top:4px}
.person-compact .character-identity>:not(.character-portrait){grid-column:2;margin:0!important;min-width:0}
.person-compact .char-label{display:none}.person-compact .char-name{font-size:24px!important;line-height:1.2!important}.person-compact .courtesy-name,.person-compact .char-title{font-size:13px!important;line-height:1.4}
.person-compact .character-origin{font-size:10px!important;display:flex;flex-wrap:wrap;gap:4px}.person-compact .char-stamp{font-size:12px!important;padding:3px 7px!important;justify-self:start}
.person-compact .ability-radar{grid-column:1/-1;margin:0!important;padding:6px!important}.person-compact .ability-radar svg{display:block;width:100%;height:190px!important;max-height:190px!important}.person-compact .ability-radar figcaption,.person-compact .ability-radar>p{display:none}
.person-compact :is(.birth-identity,.trait-identity,.origin-trait,.income-panel,.residence-identity){margin:0!important;padding:10px!important;min-width:0;box-sizing:border-box}
.person-compact :is(.trait-identity,.origin-trait,.income-panel,.residence-identity){grid-column:1/-1}
.person-compact :is(.birth-identity,.trait-identity,.origin-trait,.income-panel) p{margin:5px 0!important;font-size:12px;line-height:1.45}
.person-compact .birth-identity>strong{font-size:18px!important}.person-compact .birth-identity small{font-size:10px!important}.person-compact .birth-identity button{font-size:10px!important;padding:4px!important;line-height:1.4;white-space:normal}
.person-compact .health-line{margin:0!important;padding:7px 10px!important;font-size:12px}
.person-stat-details{grid-column:1/-1;margin:0;font-size:12px}.person-stat-details .stat-row{margin:7px 0!important}.person-compact [data-action=download]{grid-column:1/-1}
@media(max-width:700px){.person-detail-tabs button{font-size:11px}.person-compact .ability-radar svg{height:160px!important}.person-compact .character-identity{gap:2px 9px}.person-compact .trait-specialty-inventory{margin:6px 0}.person-compact .specialty-slot-title{margin:5px 0}.person-compact .specialty-badges{gap:4px}}
.palace-sheet-body .person-compact .character-identity{grid-template-rows:none!important;grid-auto-rows:auto;align-items:center!important}
.palace-sheet-body .person-compact .character-identity>:not(.character-portrait){grid-row:auto!important;grid-column:2!important;padding:0!important}
.palace-sheet-body .person-compact .character-portrait{grid-row:1/span 7!important;grid-column:1!important;min-height:0!important;aspect-ratio:auto!important;padding:0!important;align-self:start!important;max-width:84px!important}
.palace-sheet-body .person-compact .character-portrait button{height:28px!important;min-height:28px!important;font-size:9px!important;line-height:18px!important;padding:3px!important}
.palace-sheet-body .person-compact .office-regalia-heading svg{display:none}.palace-sheet-body .person-compact .office-regalia-heading span{font-size:9px;line-height:14px;letter-spacing:0}
.palace-sheet-body .person-compact .char-name{font-size:24px!important;line-height:28px!important;letter-spacing:0!important}
.palace-sheet-body .person-compact .character-identity>.command-authority-insignia{grid-column:1/-1!important;max-height:70px!important}.palace-sheet-body .person-compact .command-authority-insignia svg{height:45px!important}
.palace-sheet-body .person-compact .character-details{gap:0!important}
.palace-sheet-body .person-compact .birth-identity{grid-column:auto!important;display:flex!important;flex-direction:column;align-items:flex-start;justify-content:start;gap:5px;min-height:0!important}
.palace-sheet-body .person-compact .birth-identity>*{margin:0!important;max-width:100%}.palace-sheet-body .person-compact .birth-identity button{margin-top:auto!important}
.palace-sheet-body .person-compact .trait-identity{display:block!important}.person-compact .trait-identity>details{margin:5px 0;font-size:11px;color:#c3cfdd}
.person-compact .trait-specialty-inventory{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important;padding:6px 0!important}
.person-compact .specialty-slot-title{grid-row:1!important;margin:0!important}.person-compact .specialty-badges{grid-row:2!important;margin:0!important;padding:0!important;min-height:0!important}
.person-compact .specialty-badges>span{padding:4px!important;font-size:10px!important}
.palace-sheet-body .person-compact .birth-identity{padding:8px!important;gap:3px}
.palace-sheet-body .person-compact .birth-identity>span,.palace-sheet-body .person-compact .birth-identity>small{font-size:10px!important;line-height:14px!important}
.palace-sheet-body .person-compact .birth-identity>strong{font-size:17px!important;line-height:22px!important}
.palace-sheet-body .person-compact .trait-specialty-inventory{width:100%!important;max-width:none!important;margin:6px 0!important;grid-column:1/-1!important}
.palace-sheet-body .person-compact .specialty-slot-title{display:flex;justify-content:space-between;gap:3px;font-size:10px!important;line-height:15px;min-width:0}
.palace-sheet-body .person-compact .specialty-slot-title small{font-size:9px;white-space:nowrap}.palace-sheet-body .person-compact .trait-identity>strong{font-size:18px;line-height:24px}
.palace-sheet-body .person-compact .trait-identity>span{font-size:10px;line-height:15px}.palace-sheet-body .person-compact .trait-identity .text-button{font-size:11px!important;margin:3px 0!important;padding:3px 0!important}
/* The personal register has a stable frame across every tab. */
.palace-sheet.room-fitted-sheet[data-content="person"]{position:fixed!important;inset:0!important;margin:auto!important;width:min(780px,calc(100vw - 24px))!important;height:min(720px,calc(100dvh - 24px))!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden!important}
.palace-sheet.room-fitted-sheet[data-content="person"]>header{flex:0 0 auto}
.palace-sheet.room-fitted-sheet[data-content="person"]>.palace-sheet-body{flex:1 1 0!important;min-height:0!important;height:0!important;overflow:hidden!important;padding:12px!important}
.palace-sheet[data-content="person"] .person-compact{height:100%!important;min-height:0!important;overflow:hidden!important}
.palace-sheet[data-content="person"] .person-compact .character-details{height:100%!important;min-height:0!important;display:grid!important;grid-template-rows:38px minmax(0,1fr);gap:10px!important;overflow:hidden}
.palace-sheet[data-content="person"] .person-detail-tabs{margin:0;min-height:0}
.palace-sheet[data-content="person"] .person-detail-section{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;padding:0 5px 10px 0;box-sizing:border-box;align-content:start}
.palace-sheet[data-content="person"] .person-compact .character-identity{grid-template-columns:140px minmax(0,1fr)!important;gap:4px 18px!important}
.palace-sheet[data-content="person"] .person-compact .character-portrait{width:140px!important;max-width:140px!important}
.palace-sheet[data-content="person"] .person-compact .character-portrait img{width:140px!important;height:168px!important;object-fit:cover;object-position:top}
.palace-sheet[data-content="person"] .person-compact .character-portrait button{width:100%;font-size:11px!important;min-height:32px!important}
@media(max-width:700px){
 .palace-sheet.room-fitted-sheet[data-content="person"]{width:calc(100vw - 16px)!important;height:calc(100dvh - 16px)!important;max-height:calc(100dvh - 16px)!important}
 .palace-sheet[data-content="person"] .person-compact .character-identity{grid-template-columns:110px minmax(0,1fr)!important;gap:3px 10px!important}
 .palace-sheet[data-content="person"] .person-compact .character-portrait{width:110px!important;max-width:110px!important}
 .palace-sheet[data-content="person"] .person-compact .character-portrait img{width:110px!important;height:132px!important}
 .palace-sheet[data-content="person"] .person-compact .char-name{font-size:23px!important}
}
.palace-sheet.room-fitted-sheet[data-content="person"]{transform:none!important;max-width:calc(100vw - 16px)!important}
.palace-sheet[data-content="person"] .person-compact{display:block!important;width:100%!important}
.palace-sheet[data-content="person"] .person-compact .character-details{grid-template-columns:minmax(0,1fr)!important}
.palace-sheet[data-content="person"] .person-detail-tabs{grid-column:1;grid-row:1}
.palace-sheet[data-content="person"] .person-detail-section{grid-column:1;grid-row:2}
.palace-sheet[data-content="person"] .person-detail-section>*{grid-row:auto!important;position:relative}
.palace-sheet[data-content="person"] .person-detail-section{grid-template-rows:none!important;grid-auto-rows:max-content!important}
.palace-sheet[data-content="person"] .person-stat-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;padding:10px 12px;border:1px solid #73829866;background:#132337}
.palace-sheet[data-content="person"] .person-stat-details>h3{grid-column:1/-1;margin:0;font:600 14px var(--serif);color:#e8d7b7}
.palace-sheet[data-content="person"] .person-stat-details .stat-row{margin:0!important;min-width:0;grid-column:auto!important;grid-row:auto!important}
.palace-sheet[data-content="person"] .person-detail-section>.health-line{grid-column:auto!important}
.palace-sheet[data-content="person"] .character-identity :is(.char-name,.courtesy-name,.char-title){text-align:left!important;justify-self:start}
@media(min-width:701px){
 .palace-sheet[data-content="person"] .person-compact .character-identity{grid-column:1!important;gap:4px 12px!important;align-self:stretch}
 .palace-sheet[data-content="person"] .person-compact .ability-radar{grid-column:2!important;display:grid;place-items:center;align-self:stretch}
 .palace-sheet[data-content="person"] .person-compact .ability-radar svg{height:228px!important;max-height:228px!important}
 .palace-sheet[data-content="person"] .person-compact .character-identity>.command-authority-insignia{max-height:55px!important}
}
/* Keep the mobile guide inset within the character card, above the stat line. */
@media(max-width:700px){
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-desk{padding-top:2px;gap:3px}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-subnav{gap:2px;margin:0;padding:0}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-subnav>div{gap:2px;row-gap:2px}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) :is(.palace-subnav,.palace-utility) button{min-height:30px;padding:2px 4px;line-height:1.2}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-card-deck{padding-top:2px;padding-bottom:0}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-command[data-management]{grid-template-rows:minmax(64px,1fr) 26px 20px!important;gap:2px;padding-top:8px;padding-bottom:24px}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-command[data-management]>small{display:none!important}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-command[data-management] .palace-command-growth{display:none!important}
 .room-experience:has(.palace-subnav>[aria-label="출사·초빙 범주"]) .palace-command[data-management]>strong{font-size:16px;line-height:20px}
}
.palace-sheet.room-fitted-sheet[data-content="guide"]{position:fixed!important;inset:0!important;transform:none!important;margin:auto!important;width:min(600px,calc(100vw - 16px))!important;max-width:calc(100vw - 16px)!important;height:min(660px,calc(100dvh - 16px))!important;max-height:calc(100dvh - 16px)!important;min-height:0!important;display:flex;flex-direction:column;overflow:hidden!important;box-sizing:border-box}
.palace-sheet[data-content="guide"]>header{flex:0 0 auto}
.palace-sheet[data-content="guide"]>.palace-sheet-body{flex:1 1 0!important;height:0!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;padding:12px!important}
.palace-sheet[data-content="guide"] .room-guide-panel{display:block;width:100%;max-width:none;padding:0;min-width:0}
.palace-sheet[data-content="guide"] .guide-goal-tabs{position:sticky;top:-12px;z-index:2;background:#142437;padding:8px 0;margin:0 0 10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.palace-sheet[data-content="guide"] .guide-goal-tabs button{min-width:0;white-space:nowrap}
.palace-sheet[data-content="guide"] .guide-remaining{margin-top:12px;padding-bottom:8px}
.palace-sheet[data-content="guide"] .guide-choice-preview{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.palace-sheet[data-content="guide"] .guide-goal-tabs button{padding:8px 3px;font-size:12px}}
@media(max-width:700px){
 .room-experience .room-guide{top:61px;right:24px;width:44px;height:38px;min-height:38px;padding:3px;gap:1px;grid-template-rows:18px 10px;box-sizing:border-box;border-radius:3px}
 .room-experience .room-guide>i{font-size:15px;line-height:18px;height:18px}
 .room-experience .room-guide small{font-size:9px;line-height:10px}
 .room-experience:has(.room-guide) .palace-person>span>strong{padding-right:52px}
}
/* Command report: engraved frame, verdict seal and illuminated reward panels. */
.room-action-report{--report-accent:#8cbfdf;--report-glow:#497fa744;position:relative;isolation:isolate;border-radius:3px;background:radial-gradient(ellipse at 90% 0,var(--report-glow),transparent 62%),repeating-linear-gradient(135deg,#ffffff02 0 1px,transparent 1px 9px),linear-gradient(135deg,#172c42f5,#101a2af5);box-shadow:inset 0 0 0 1px #a68d65,inset 0 0 0 5px #0a1425,inset 0 0 0 6px #a68d6544,0 12px 30px #0006}
.room-action-report.report-failure,.room-action-report.report-death{--report-accent:#e8a4a3;--report-glow:#a14e5544}
.room-action-report.report-critical{--report-accent:#efd38b;--report-glow:#b18e3a44}
.room-action-report:before{content:attr(data-verdict-seal);position:absolute;right:22px;top:18px;font:700 clamp(70px,10vw,140px) var(--serif);line-height:1;color:var(--report-accent);opacity:.07;z-index:-1;pointer-events:none}
.room-action-report>header{background:linear-gradient(90deg,var(--report-glow),transparent);border-bottom:1px solid #b39a6966;box-shadow:0 1px #050d18;position:relative}
.room-action-report>header>i{display:grid;place-items:center;flex-shrink:0;color:var(--report-accent);background:radial-gradient(circle at 35% 20%,#46627a,#132135 75%);border:3px double #bda477;outline:1px solid #bda47766;outline-offset:2px;box-shadow:inset 0 0 12px #0009,0 2px 10px #0007;text-shadow:0 0 12px var(--report-glow);font-style:normal}
.room-action-report>header h2{color:var(--report-accent);text-shadow:0 2px 2px #0009;letter-spacing:1px}
.room-action-report .report-rewards>div{background:linear-gradient(125deg,#2b4358,#162638);border:1px solid #758da480;border-top-color:#b5c9d6;box-shadow:inset 0 0 0 2px #0b172355,0 3px 8px #0004}
.room-action-report .report-rewards b{color:#d4ecff;text-shadow:0 0 12px #8cc4e933}
.room-action-report .report-rewards .is-loss b{color:#f0acaa}
.room-action-report .growth-graph{background:linear-gradient(135deg,#263b50,#142235);border:1px solid #7c91a466;box-shadow:inset 0 1px #c3d8ec44,0 4px 10px #0004}
.room-action-report .growth-graph-track{box-shadow:inset 0 1px 4px #000a,0 0 0 1px #b9c8d333}
.room-action-report .report-full{background:linear-gradient(120deg,#30465b,#182a3d);border:1px solid #aa956f;color:#f1e3c8;box-shadow:inset 0 0 0 2px #102033}
@media(max-width:700px){.room-action-report:before{right:14px;top:14px;font-size:76px}.room-action-report>header h2{letter-spacing:0}.room-action-report>header>i{outline-offset:1px}}
.room-action-report .growth-graph.is-critical{background:linear-gradient(135deg,#483b24,#272333);border-color:#d8b36b;box-shadow:inset 0 1px #f2d69a66,0 0 12px #c99b3033}
/* The three desktop status cards share one top and bottom edge. */
@media(max-width:700px) and (max-height:680px){
 .room-experience:has(.palace-command) .palace-person>span{gap:2px}
 .room-experience:has(.palace-command) .palace-person>span>strong{line-height:1.1}
 .room-experience:has(.palace-command) .palace-stats>span{line-height:1.1;gap:1px}
 .room-experience:has(.palace-command) .palace-stats b{line-height:1.1}
}
@media(min-width:701px){
 .room-experience .palace-upper{align-items:flex-start}
 .room-experience .palace-upper>.palace-person,
 .room-experience .palace-upper>.room-guide,
 .room-experience .palace-upper>.palace-story{box-sizing:border-box;height:108px;min-height:108px;max-height:108px;align-self:flex-start;margin-top:0;margin-bottom:0}
 .room-experience .palace-upper>.palace-story{align-content:center}
}
@media(max-width:700px){
 .room-experience .palace-header{gap:5px;padding-left:10px;padding-right:10px;align-items:center}
 .room-experience .palace-header [data-palace-menu]{box-sizing:border-box;height:32px;min-height:32px;max-height:32px;align-self:center;margin:0;line-height:1.1}
 .room-experience .palace-header [data-palace-menu="menu"]{min-width:56px;padding:0 6px}
 .room-experience .palace-header [data-palace-menu="settings"]{width:34px;min-width:34px;padding:0;font-size:19px}
}
