/* Bosses borrow the stage, never the controls. The ordinary deck scene stays underneath. */
.lf:not(.poker) #boss-world-art{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#101413e8,#151714c7 54%,#171915b0),var(--boss-scene) center/cover no-repeat;opacity:1}
.lf:not(.poker) #boss-world-art:after{content:'';position:absolute;inset:0;background:linear-gradient(var(--boss-scene-tint,transparent),var(--boss-scene-tint,transparent)),linear-gradient(0deg,#111713 1%,transparent 82%)}
.lf.boss-revealing{overflow-anchor:none}
.lf .boss-presence{--boss-accent:#dbb47c;margin:0 0 28px;border:1px solid #d8c8a13b;border-top:2px solid var(--boss-accent);background:linear-gradient(115deg,#0e1514e8,#181c19ed 64%,#20221cde);border-radius:4px;overflow:hidden;isolation:isolate;scroll-margin-top:100px}
.boss-presence-layout{position:relative;display:grid;grid-template-columns:minmax(240px,1fr) minmax(130px,180px) minmax(300px,1.1fr);gap:24px;align-items:center;padding:20px 24px;min-width:0}
.boss-portrait{position:relative;grid-column:2;grid-row:1;align-self:stretch;min-height:225px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.boss-portrait img{width:100%;height:100%;max-height:320px;object-fit:contain;object-position:center;filter:drop-shadow(0 10px 12px #0008)}
.boss-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#121816 2%,transparent 27%,transparent 82%,#11171477)}
.boss-presence-copy{grid-column:1;grid-row:1;min-width:0;position:relative;z-index:2}
.lf .boss-presence-overline{font:10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--boss-accent);margin:0 0 7px}
.lf .boss-presence-copy h2{font:clamp(27px,2.6vw,38px)/1.05 var(--serif);color:#f3e7cd;margin:0 0 12px;overflow-wrap:break-word}
.lf .boss-voice{font:italic 16px/1.5 var(--serif);color:#d7c8ae;margin:0 0 18px;max-width:38ch}
.lf .boss-action-phase{font:700 11px/1.45 var(--sans);color:var(--boss-accent);margin:0 0 5px}
.lf .boss-action-description{font:13px/1.55 var(--sans);color:#e4ddcb;margin:0 0 8px}
.lf .boss-action-footnote{font:11px/1.5 var(--sans);color:#b9bbaa;margin:8px 0 0}
.boss-board-frame{grid-column:3;grid-row:1;position:relative;min-width:0;padding-top:26px;align-self:center}
.lf .boss-board-label{position:relative;z-index:1;font:10px/1.5 var(--mono);color:#d9c9aa;margin:0 0 8px;text-align:right;background:#1a1f19d9;padding:0 0 0 10px;margin-left:auto;width:fit-content;max-width:90%}
.boss-cords{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;opacity:.55;z-index:3}
.boss-cords path{stroke:var(--boss-accent);stroke-width:1.1px;vector-effect:non-scaling-stroke;fill:none;stroke-linecap:round}
.boss-mini-board{--boss-columns:5;--boss-rows:3;position:relative;display:grid;grid-template-columns:repeat(var(--boss-columns),minmax(0,1fr));grid-template-rows:repeat(var(--boss-rows),minmax(45px,1fr));gap:5px;padding:7px;border:1px solid #d2bf9345;border-radius:3px;background:#080e0bc4;isolation:isolate}
.boss-mini-cell{min-width:0;min-height:45px;position:relative;background:#e2d5b709;border:1px solid #aa997f25;border-radius:2px;display:flex;align-items:center;justify-content:center;color:#a5a591;grid-row:auto;grid-column:auto}
.boss-mini-cell.is-target{border-color:#dbb47c99;background:#d8ae641a}
.boss-mini-position{position:absolute;top:1px;left:3px;font:10px/1.1 var(--mono);color:#bfc1ad;opacity:.8}
.boss-mini-empty{font:13px var(--mono);padding-top:8px}
.boss-mini-word{position:relative;z-index:2;min-width:0;margin:0;display:flex;align-items:center;justify-content:center;background:#e8ddc6;color:#302c23;border:1px solid #eaddc6;border-radius:2px;padding:4px 2px;font:700 10px/1.25 var(--mono);text-align:center;overflow-wrap:anywhere;box-shadow:0 2px 3px #0005}
.boss-mini-word.is-touched{background:#f3ddb2;border-color:var(--boss-accent)}
.boss-mini-board.is-moving{overflow:hidden}
.boss-mini-board.is-moving .boss-mini-word.is-touched{z-index:3;box-shadow:0 3px 10px #0009}
.lf .boss-change-intact{margin:9px 0 0;color:#d5dcbc;font:12px/1.5 var(--sans)}
.lf .boss-change-receipt{margin-top:8px;border-top:1px solid #d4c7a52e;font:12px/1.5 var(--sans);color:#e9e0ca}
.lf .boss-change-receipt summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;padding:10px 2px;color:#f1d6a4;font:12px/1.6 var(--sans)}
.boss-change-receipt ul{list-style:none;padding:0;margin:0 0 5px;display:grid;gap:8px}
.boss-change-receipt li{padding-left:9px;border-left:2px solid #d7b98c}
.boss-change-receipt .rule-broken{border-left-style:dashed;border-color:#f0a888}
.boss-change-receipt small{display:block;font:11px/1.5 var(--sans);color:#c6c6b4;margin-top:2px}
.boss-presence[data-departed='true'] .boss-presence-layout{grid-template-columns:120px minmax(0,1fr);padding-top:8px;padding-bottom:8px}
.boss-presence[data-departed='true'] .boss-portrait{grid-column:1;grid-row:1;min-height:110px;max-height:130px}
.boss-presence[data-departed='true'] .boss-presence-copy{grid-column:2;grid-row:1}
.boss-presence[data-departed='true'] .boss-portrait img{max-height:130px;opacity:.65}
.lf .boss-presence[data-departed='true'] .boss-presence-copy h2{font-size:27px;margin-bottom:8px}
.lf .boss-presence[data-departed='true'] .boss-voice{margin-bottom:0;max-width:70ch;font-size:14px}
.boss-presence.is-meddling .boss-portrait img{animation:boss-reach 1080ms cubic-bezier(.2,.65,.25,1) both}
.boss-presence.is-meddling .boss-cords{animation:boss-cord-pull 1080ms ease-out both}
.lf .word-tile.boss-handled{animation:boss-word-handled 1080ms ease-out both}
.lf .boss-epilogue{display:flex;align-items:center;gap:16px;margin:16px 0;padding:12px 0;border-top:1px solid #d7c39b33;border-bottom:1px solid #d7c39b33;min-width:0}
.boss-epilogue-portrait{flex:0 0 100px;width:100px;height:100px;object-fit:contain;opacity:.78}
.boss-epilogue-copy{min-width:0}
.lf .boss-epilogue-copy .caption{font:10px/1.5 var(--mono);letter-spacing:.06em;color:#dbc69e;margin:0 0 6px}
.lf .boss-epilogue-quote{font:italic 16px/1.5 var(--serif);color:#e4dbc6;margin:0}
@keyframes boss-reach{0%{transform:translateX(-5px) rotate(-1deg)}38%{transform:translateX(7px) rotate(1.5deg)}100%{transform:translateX(0) rotate(0)}}
@keyframes boss-cord-pull{0%{opacity:.35;transform:translateY(-4px)}35%{opacity:1;transform:translateY(3px)}100%{opacity:.7;transform:translateY(0)}}
@keyframes boss-word-handled{0%,30%{box-shadow:0 0 0 3px #e9c68bbf}100%{box-shadow:0 0 0 0 #e9c68b00}}
@media(max-width:1000px){
 .boss-presence-layout{grid-template-columns:140px minmax(0,1fr);gap:16px;padding:16px 18px 18px 0}
 .boss-portrait{grid-column:1;min-height:175px;grid-row:1 / 3}
 .boss-presence-copy{grid-column:2;grid-row:1}
 .boss-portrait img{max-height:340px}
 .boss-board-frame{grid-column:2;grid-row:2;padding-top:12px}
 .lf .boss-voice{margin-bottom:12px}
}
@media(max-width:650px){
 .lf .boss-epilogue{gap:10px;padding:10px 0;margin:14px 0}
 .boss-epilogue-portrait{flex-basis:80px;width:80px;height:80px}
 .lf .boss-epilogue-quote{font-size:14px;line-height:1.45}
 .lf:not(.poker) #boss-world-art{background-image:linear-gradient(90deg,#101413e8,#151714c7 54%,#171915b0),var(--boss-scene-mobile);background-position:center,center}
 .lf .boss-presence{margin-bottom:20px;scroll-margin-top:16px}
 .boss-presence-layout{grid-template-columns:112px minmax(0,1fr);gap:8px 10px;padding:14px 12px 14px 0;align-items:start}
 .boss-portrait{grid-row:1 / 4;min-height:130px;height:100%;max-height:190px;overflow:hidden}
 .boss-portrait img{width:100%;height:100%;object-fit:contain;object-position:center}
 .boss-presence-copy{display:contents}
 .boss-presence-copy>*{grid-column:1 / -1;margin-left:12px!important}
 .boss-presence-copy>.boss-presence-overline{grid-column:2;grid-row:1;margin-left:0!important}
 .boss-presence-copy>h2{grid-column:2;grid-row:2;margin-left:0!important}
 .boss-presence-copy>.boss-voice{grid-column:2;grid-row:3;margin-left:0!important}
 .lf .boss-presence-copy h2{font-size:27px;margin-bottom:9px}
 .lf .boss-voice{font-size:14px;line-height:1.45;margin-bottom:12px}
 .lf .boss-action-description{font-size:12px;line-height:1.5}
 .boss-board-frame{grid-column:1 / -1;grid-row:auto;margin-left:12px;padding-top:20px}
 .boss-presence[data-phase='playing'] .boss-board-frame{grid-row:4;padding-top:4px}
 .boss-presence[data-phase='playing'] .boss-presence-layout{grid-template-columns:96px minmax(0,1fr);gap:5px 10px;padding-top:10px}
 .boss-presence[data-phase='playing'] .boss-portrait{min-height:110px;max-height:150px}
 .lf .boss-presence[data-phase='playing'] .boss-presence-copy h2{font-size:24px;margin-bottom:4px}
 .lf .boss-presence[data-phase='playing'] .boss-voice{font-size:13px;line-height:1.4;margin-bottom:0}
 .boss-mini-board{gap:3px;padding:5px;grid-template-rows:repeat(var(--boss-rows),minmax(46px,1fr))}
 .boss-mini-cell{min-height:46px}
 .boss-mini-word{font-size:10px;padding:3px 1px;letter-spacing:-.04em}
 .boss-mini-position{display:none}
 .lf .boss-board-label{max-width:84%;text-align:right;font-size:10px}
 .lf .boss-action-footnote{font-size:11px}
 .boss-presence[data-departed='true'] .boss-presence-layout{grid-template-columns:85px minmax(0,1fr);padding-top:14px;padding-bottom:14px}
 .boss-presence[data-departed='true'] .boss-portrait{min-height:100px;max-height:165px}
 .lf .boss-presence[data-departed='true'] .boss-presence-copy h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.boss-presence *,.lf .word-tile.boss-handled{animation:none!important;transition:none!important}}

/* Catalogue twelve: the same owned sentence is struck here and on the table. */
.lf .boss-presence[data-sentence='true'] .boss-sentence-seal{grid-column:3;grid-row:1;position:relative;box-sizing:border-box;width:100%;min-width:0;max-width:none;padding:18px;border:1px solid #b59469;border-left:3px solid #aa4b37;border-radius:3px;background:linear-gradient(125deg,#f1e7d0,#e6d8bb);transform:none;isolation:isolate}
.lf .boss-presence .boss-sentence-seal>.eyebrow{font:700 10px/1.5 var(--mono);letter-spacing:.06em;color:#773922;margin:0}
.lf .boss-presence .boss-sentence-seal strong{font:20px/1.4 var(--serif);color:#342f24;margin:10px 0;overflow-wrap:anywhere}
.lf .boss-presence .boss-sentence-seal p{font:12px/1.55 var(--sans);color:#554834;margin:8px 0 0}
.lf .boss-presence .boss-sentence-seal[data-sealed='true']>.eyebrow,.lf .boss-presence .boss-sentence-seal[data-sealed='true']>strong{padding-right:62px}
.lf .boss-seal-imprint,.lf .boss-live-seal{position:absolute;top:15px;right:12px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:56px;height:56px;border:3px double #a63e2c;color:#922e20;background:#f4e7cbaa;font:800 10px/1 var(--mono);letter-spacing:.02em;transform:rotate(-7deg);pointer-events:none;z-index:4;box-shadow:inset 0 0 0 2px #a63e2c33}
.lf .boss-seal-imprint[hidden]{display:none}
.lf .boss-presence[data-boss='bellkeeper'] .boss-sentence-seal{border-left-color:#475d69}
.lf .boss-presence[data-boss='bellkeeper'] .boss-seal-imprint,.lf .boss-live-seal[data-boss='bellkeeper']{border-radius:50%;border-color:#455d6c;color:#354e5c;box-shadow:inset 0 0 0 2px #455d6c44;background:#e1e5dac7}
.lf .boss-presence[data-boss='bellkeeper'] .boss-seal-imprint:after,.lf .boss-live-seal[data-boss='bellkeeper']:after{content:'';position:absolute;top:-13px;left:12px;right:12px;height:18px;border-left:2px solid #526e80;border-right:2px solid #526e80;transform:rotate(7deg)}
.lf .boss-seal-cords{opacity:0;z-index:3}
.lf .boss-presence.is-sealing .boss-seal-cords{opacity:1}
.lf .boss-seal-cords path{stroke-width:2px;stroke:#bd6c4b;stroke-linecap:round}
.lf .boss-presence[data-boss='bellkeeper'] .boss-seal-cords path{stroke:#b9cdd6;stroke-width:1.5px}
.lf .sentence-slot.boss-seal-struck{position:relative;isolation:isolate}
.lf .boss-live-seal{top:9px;right:10px;width:47px;height:47px;font-size:9px}
@media(max-width:1000px){.lf .boss-presence[data-sentence='true'] .boss-sentence-seal{grid-column:2;grid-row:2;padding:15px}}
@media(max-width:650px){
 .lf .boss-presence[data-sentence='true'] .boss-sentence-seal{grid-column:1/-1;grid-row:4;width:auto;margin:5px 0 0 12px;padding:14px}
 .lf .boss-presence .boss-sentence-seal strong{font-size:18px}
 .lf .boss-presence .boss-sentence-seal>.eyebrow{font-size:10px}
 .lf .boss-seal-imprint{top:12px;right:10px;width:50px;height:50px}
 .lf .boss-presence .boss-sentence-seal[data-sealed='true']>.eyebrow,.lf .boss-presence .boss-sentence-seal[data-sealed='true']>strong{padding-right:53px}
}
@media(prefers-reduced-motion:reduce){.lf .boss-seal-cords,.lf .boss-live-seal{display:none}.lf .sentence-slot.boss-seal-struck{animation:none!important;transition:none!important}}
.lf .boss-presence[data-sentence='true'] .boss-sentence-seal.boss-trade-mark{border-left-color:#8a6a2c}

/* The last guest reads the gathering; the rulebook is left in the player's hands. */
.lf .boss-presence[data-boss='last-reader']{border-top-color:#d6b5cf;background:linear-gradient(115deg,#1a141beF,#201820ee 64%,#28201cde)}
.lf .boss-presence[data-boss='last-reader'] .boss-portrait:after{background:linear-gradient(0deg,#201820 2%,transparent 27%,transparent 82%,#20182055)}
.boss-reader-page{grid-column:3;grid-row:1;min-width:0;padding:19px 20px;border:1px solid #d7bec658;border-left:3px solid #c1a0b8;border-radius:2px;background:linear-gradient(130deg,#30262bd9,#201b20e8);box-shadow:inset 4px 0 0 #fff1df05}
.lf .boss-reader-page .eyebrow{display:block;font:700 10px/1.5 var(--mono);letter-spacing:.08em;color:#dbbbd2}
.lf .boss-reader-label{font:14px/1.45 var(--serif);color:#eee1d3;margin:9px 0}
.boss-reader-seen{display:flex;flex-wrap:wrap;gap:5px}
.boss-reader-gathering{padding:3px 7px;border:1px solid #ddbbcd3b;border-radius:2px;color:#dec6d4;background:#d6b5cf09;font:11px/1.4 var(--sans)}
.lf .boss-reader-unread,.lf .boss-reader-prompt{font:11px/1.5 var(--sans);color:#c7bcb6;margin:10px 0 0}
.boss-reader-receipt{padding-top:12px;margin-top:12px;border-top:1px solid #d6b5cf33}
.boss-reader-receipt strong{display:block;color:#f2dfb8;font:17px/1.4 var(--serif);margin:5px 0}
.boss-reader-receipt[data-first='false'] strong{color:#ddd0c9}
.lf .boss-reader-receipt p{font:12px/1.5 var(--sans);color:#ddd2c5;margin:0}
@media(max-width:1000px){.boss-reader-page{grid-column:2;grid-row:2;padding:15px 16px}}
@media(max-width:650px){.boss-reader-page{grid-column:1/-1;grid-row:4;margin:5px 0 0 12px;padding:13px 14px}.boss-reader-receipt strong{font-size:16px}}

/* The road beyond dawn: one public condition and one exact score receipt. */
.boss-endless-portrait{width:100%;aspect-ratio:1;flex-shrink:0;background-image:var(--boss-atlas);background-size:500% 200%;background-position:var(--boss-atlas-x) var(--boss-atlas-y);background-repeat:no-repeat;filter:drop-shadow(0 10px 12px #0008)}
.boss-presence[data-endless='true'] .boss-portrait:after{display:none}
.boss-presence[data-endless='true'][data-departed='true'] .boss-endless-portrait{opacity:.7}
.boss-endless-page{grid-column:3;grid-row:1;min-width:0;position:relative;padding:17px 18px;border:1px solid #d7cba345;border-left:3px solid var(--boss-accent);border-radius:2px;background:#101b17d9}
.lf .boss-endless-page .eyebrow{display:block;font:700 10px/1.5 var(--mono);letter-spacing:.06em;color:var(--boss-accent)}
.lf .boss-endless-context{margin:8px 0 0;font:12px/1.55 var(--sans);color:#ded7c5;max-width:44ch}
.boss-endless-emblem{float:right;width:36px;height:36px;margin:-2px 0 5px 10px;fill:none;stroke:var(--boss-accent);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}
.boss-endless-receipt{clear:both;padding-top:12px;margin-top:12px;border-top:1px solid #d8c9a633}
.boss-endless-page[data-context='false'] .boss-endless-receipt{clear:none;padding-top:0;margin-top:0;border-top:0}
.boss-endless-receipt strong{display:block;font:18px/1.4 var(--serif);color:#f1dba8;margin:5px 0}
.boss-endless-receipt[data-qualified='false'] strong{color:#e1d8c7}
.lf .boss-endless-detail{margin:0;font:12px/1.5 var(--sans);color:#d6d0c2}
.lf .boss-endless-points{margin:8px 0 0;font:700 14px/1.4 var(--sans);color:#f5e8cc}
@media(max-width:1000px){.boss-endless-page{grid-column:2;grid-row:2;padding:15px 16px}}
@media(max-width:650px){.boss-endless-page{grid-column:1/-1;grid-row:4;margin:5px 0 0 12px;padding:13px 14px}.boss-endless-receipt strong{font-size:16px}.boss-endless-portrait{align-self:flex-start}}
