body:has(#boss-dialogue:not([hidden])) .masthead{display:none}
body:has(#boss-dialogue:not([hidden])) main{max-width:none;padding:0}
body:has(#boss-dialogue:not([hidden])){overflow:hidden}
.boss-scene{position:fixed;inset:0 0 auto;height:calc(var(--app-height,100svh) - var(--console-height));display:grid;grid-template-columns:min(45%,calc(var(--app-height,100svh) - var(--console-height) - 8px)) 1fr;background:#101e2e;border:4px solid #9c632a;color:#17243a;overflow:hidden;isolation:isolate}
.boss-portrait{position:relative;min-width:0;min-height:0;overflow:hidden;background:#1a2e40;border-right:4px solid #aa7939}
.boss-portrait canvas{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.boss-caption{position:absolute;left:48px;top:8px;margin:0;padding:5px 12px;border:2px solid #d7b464;border-radius:7px;background:#172335e8;color:#ffdf85;font-size:clamp(10px,1.5vw,18px);font-weight:850;text-shadow:0 2px #000}
.boss-copy{min-width:0;min-height:0;background:linear-gradient(130deg,#fff3d6,#e2c79a);padding:clamp(12px,2.3vw,36px);display:flex;flex-direction:column;border:4px ridge #d1a15d;outline:0}
.boss-copy h1{font-family:system-ui,-apple-system,sans-serif;font-size:clamp(18px,2.7vw,37px);font-weight:900;line-height:1.12;margin:0 0 14px;color:#76351f;text-wrap:balance}
.boss-message{font-size:clamp(16px,2.1vw,29px);line-height:1.5;white-space:pre-line;margin:0;font-weight:650;overflow:auto;min-height:0;flex:1;scrollbar-width:thin}
.boss-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;margin-top:14px}
.boss-count{font-size:12px;font-weight:800;color:#6f6049;white-space:nowrap}
.boss-actions button{min-height:44px;border:2px solid #77301b;border-bottom-width:4px;background:linear-gradient(#e14c31,#a9221c);border-radius:10px;color:#fff0bf;font-weight:900;font-size:clamp(11px,1.3vw,17px);padding:8px 15px;box-shadow:0 0 0 2px #e2b35b;text-shadow:0 2px #641f15}
.boss-actions button:hover{background:#d9472c}.boss-actions button:disabled{opacity:.6}
:root[data-layout="portrait"] .boss-scene{grid-template-columns:1fr;grid-template-rows:42% 58%}
:root[data-layout="portrait"] .boss-portrait{border-right:0;border-bottom:3px solid #a5793e}
:root[data-layout="portrait"] .boss-portrait canvas{object-position:center 36%}
:root[data-layout="portrait"] .boss-copy{padding:18px 16px}
:root[data-layout="portrait"] .boss-copy h1{font-size:clamp(20px,5vw,30px);margin-bottom:12px}
:root[data-layout="portrait"] .boss-message{font-size:clamp(17px,4.3vw,24px);line-height:1.45}
:root[data-layout="portrait"] .boss-actions button{font-size:12px;padding:8px 12px}
@media(max-height:480px){.boss-copy{padding:9px 14px}.boss-copy h1{font-size:19px;margin-bottom:6px}.boss-message{font-size:16px;line-height:1.3}.boss-actions{margin-top:7px;gap:7px}.boss-actions button{min-height:38px;font-size:11px;padding:5px 9px}}
/* On the exterior screen use a face-focused crop, retaining the portrait's proportions. */
:root[data-layout="portrait"] .boss-portrait canvas{object-fit:cover;object-position:center top}
