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));
 background:#241523;
 color:#211423;
 overflow:hidden;
 isolation:isolate;
 container-type:size;
}
.boss-portrait,.boss-copy {
 position:absolute;
 inset:0;
}
.boss-portrait canvas {
 display:block;
 width:100%;
 height:100%;
 image-rendering:pixelated;
}
.boss-copy {
 outline:0;
 font-family:ZuvTV Pixel,monospace;
}
.boss-text {
 position:absolute;
 inset:25.5% 5.8% 26% 46.1%;
 display:flex;
 flex-direction:column;
 gap:2cqh;
}
.boss-copy h1 {
 flex:none;
 margin:0;
 padding-bottom:.18em;
 border-bottom:2px solid #76271d;
 color:#651b14;
 font:700 clamp(16px,min(3.5cqw,10cqh),54px)/1.04 ZuvTV Pixel,monospace;
}
.boss-message {
 flex:1;
 min-height:0;
 margin:0;
 overflow:auto;
 white-space:pre-line;
 font:700 clamp(12px,min(2.65cqw,7.7cqh),40px)/1.24 ZuvTV Pixel,monospace;
 scrollbar-width:thin;
}
.boss-count {
 position:absolute;
 left:46.1%;
 bottom:13%;
 color:#651b14;
 font-size:clamp(12px,2.2cqw,32px);
 font-weight:700;
}
.boss-actions button {
 position:absolute;
 inset:75% 4.5% 11.5% 72.2%;
 padding:0 4px;
 min-height:0;
 background:transparent;
 color:#fff0bc;
 border:0;
 box-shadow:none;
 font:700 clamp(10px,min(2.25cqw,7cqh),34px)/1 ZuvTV Pixel,monospace;
 text-shadow:2px 2px #5d1008;
}
.boss-actions button:hover {background:#fff1}
.boss-actions button:focus-visible {outline:2px solid #fff3ad}
.boss-actions button:disabled {opacity:.65}
