/* BSBKTV v1.14.2 CLEAN HOST TEST
   Host-only module. Existing six author-room selectors are intentionally untouched. */
:root{--host-gold:#dfbf79;--host-cream:#fff1cf;--host-green:#08291c;--host-line:rgba(225,190,116,.48)}

/* Central hall remains pixel-identical in the first viewport; only the scene becomes vertically scrollable. */
#sceneLobby.host-enabled{display:block!important;overflow:hidden!important;background:#07150f!important}
#sceneLobby.host-enabled:before,#sceneLobby.host-enabled:after{display:none!important}
.host-lobby-scroll{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;background:#07150f}
.host-lobby-main{height:100%;min-height:100%;display:flex;align-items:center;justify-content:center;position:relative;background:#07150f;isolation:isolate}
.host-lobby-main:before{content:"";position:absolute;inset:-5%;background-image:linear-gradient(rgba(3,15,10,.52),rgba(3,15,10,.66)),url("assets/lobby/central-hall.png");background-size:cover;background-position:center;filter:blur(26px) saturate(.78) brightness(.55);transform:scale(1.08);z-index:-2;pointer-events:none}
.host-lobby-main:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,transparent 30%,rgba(3,13,9,.36) 100%);z-index:-1;pointer-events:none}

.host-lounge{position:relative;width:100%;background:#06120d;padding:0 0 72px;display:flex;flex-direction:column;align-items:center;border-top:1px solid rgba(222,188,116,.22)}
.host-curator-stage{position:relative;width:min(100%,768px);aspect-ratio:768/1536;background:#050907;overflow:hidden;box-shadow:0 20px 70px rgba(0,0,0,.45)}
.host-curator-stage>img{display:block;width:100%;height:100%;object-fit:fill;user-select:none;-webkit-user-drag:none;pointer-events:none}
.host-curator-enter,.host-curator-speaker{position:absolute;margin:0;border:0;background:transparent;cursor:pointer;padding:0;z-index:3;-webkit-tap-highlight-color:transparent}
.host-curator-enter{right:4.2%;bottom:6.6%;width:61%;height:8.5%;display:flex;align-items:center;justify-content:flex-end}
.host-entry-label{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 13px;border:1px solid rgba(240,207,136,.78);border-radius:999px;background:rgba(5,38,26,.94);box-shadow:0 9px 28px rgba(0,0,0,.45);color:#fff0ca;text-align:left;white-space:nowrap}
.host-entry-label small{font-size:7px;letter-spacing:.18em;color:#d6b76f}.host-entry-label b{font-size:10px}
.host-curator-speaker{left:20.0%;top:62.5%;width:31%;height:13.5%;display:flex;align-items:flex-start;justify-content:center}
.host-speaker-label{display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 10px;border:1px solid rgba(100,220,207,.72);border-radius:999px;background:rgba(4,42,30,.94);box-shadow:0 8px 24px rgba(0,0,0,.42);color:#f8edcf;white-space:nowrap}
.host-speaker-label b{font-size:9px}.host-speaker-label small{font-size:7px;color:#a9d7cf}
.host-curator-enter:focus-visible .host-entry-label,.host-curator-speaker:focus-visible .host-speaker-label{outline:2px solid #f2d68d;outline-offset:3px}

.main-footer-copy{position:relative;width:min(100%,1202px);background:#06120d;overflow:hidden;flex:0 0 auto}
.main-footer-copy>img{display:block;width:100%;height:auto;pointer-events:none;user-select:none}
.main-footer-link{position:absolute;display:block;z-index:2;background:transparent}
.footer-link-threads{left:42%;top:51%;width:8%;height:26%}.footer-link-home{left:51%;top:51%;width:10%;height:26%}

/* Host room is a separate scene. It never reuses or overrides .room / .room-topbar / .room-space. */
.host-room-scene{background:#050907;overflow:hidden!important}
.host-room-page{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;background:#050907;padding-bottom:72px}
.host-room-topbar{position:sticky;top:0;z-index:30;min-height:66px;display:grid;grid-template-columns:82px minmax(0,1fr) 72px;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid rgba(222,188,116,.34);background:rgba(5,26,18,.96);backdrop-filter:blur(16px)}
.host-room-topbar button{min-height:36px;border:1px solid var(--host-line);border-radius:999px;background:rgba(8,39,27,.92);color:#f5e3b8;padding:7px 9px;cursor:pointer;font-size:9px;font-weight:800}
.host-room-title{text-align:center;min-width:0}.host-room-title small,.host-room-title b,.host-room-title em{display:block}.host-room-title small{color:#d5b471;letter-spacing:.17em;font-size:7px}.host-room-title b{font:20px Georgia,"Noto Serif KR",serif;color:#fff0cb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.host-room-title em{font-style:normal;color:#bfb49e;font-size:7px}
.host-room-stage{position:relative;width:min(100%,1311px);margin:0 auto;background:#050907;overflow:hidden}
.host-room-stage>img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none;pointer-events:none;transition:filter .3s ease}
.host-room-stage.host-lights-off>img{filter:brightness(.46) saturate(.78)}
.host-room-hotspots{position:absolute;inset:0;z-index:4}
.host-image-hotspot{position:absolute;margin:0;padding:0;border:1px solid transparent;border-radius:15px;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none}
.host-image-hotspot:focus-visible{border-color:rgba(240,210,143,.72);box-shadow:0 0 0 3px rgba(5,37,25,.6)}
/* Invisible framed-posters remain clickable; no label is ever drawn over the artwork. */
.hs-host-balgeut{left:22.3%;top:8.0%;width:20.5%;height:28.8%}
/* Visible cues are placed on furniture/shelves/desk, not on the three wall artworks. */
.hs-host-books{left:0.8%;top:35%;width:19.5%;height:25%}
.hs-host-gallery{left:0.8%;top:57%;width:20%;height:14%}
.hs-host-author{left:31%;top:43%;width:26%;height:14%}
.hs-host-pdf{left:57%;top:47%;width:17%;height:12%}
.hs-host-channel{left:67%;top:44%;width:21%;height:16%}
.hs-host-light{left:2.2%;top:75%;width:18%;height:9%}
.host-hotspot-badge{position:absolute;display:inline-flex;align-items:center;gap:5px;max-width:145px;padding:6px 9px;border:1px solid rgba(237,206,137,.62);border-radius:999px;background:rgba(5,38,26,.94);box-shadow:0 7px 20px rgba(0,0,0,.38);color:#fff0cd;font-size:8px;white-space:nowrap;pointer-events:none}
.hs-host-books .host-hotspot-badge,.hs-host-gallery .host-hotspot-badge,.hs-host-light .host-hotspot-badge{left:4px;bottom:4px}
.hs-host-author .host-hotspot-badge{left:50%;bottom:5px;transform:translateX(-50%)}
.hs-host-pdf .host-hotspot-badge,.hs-host-channel .host-hotspot-badge{right:4px;bottom:4px}

/* One cue per existing shelf hotspot. It is a child of the original clickable shelf button: no duplicate hit target. */
.room-hotspots .host-shelf-cue{position:absolute;right:5px;bottom:5px;display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:999px;border:1px solid rgba(238,207,139,.75);background:rgba(4,42,29,.94);box-shadow:0 6px 18px rgba(0,0,0,.33);color:#fff2cf;font-size:8px;font-weight:900;line-height:1;white-space:nowrap;pointer-events:none;z-index:5}
.room-hotspots .hotspot-badge.host-shelf-relabel span:last-child{font-weight:900}

/* Host dialogs use the existing panel frame but only host-prefixed inner selectors. */
.host-info-modal,.host-gallery-modal,.host-art-modal,.host-music-modal,.host-pdf-modal{overflow:auto}
.host-info-modal{width:min(850px,95vw)}.host-info-wrap{clear:both;margin-top:8px}.host-info-wrap>small{color:var(--host-gold);letter-spacing:.2em;font-size:9px}.host-info-wrap h2{font:clamp(30px,5vw,46px) Georgia,"Noto Serif KR",serif;margin:7px 0 10px}.host-info-wrap>p{color:#d4c8af;line-height:1.8;font-size:12px}
.host-books-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.host-book-card{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:12px;border:1px solid rgba(218,181,108,.35);border-radius:18px;background:rgba(5,25,17,.65)}.host-book-card img{width:100%;height:180px;object-fit:contain;background:#050807;border-radius:10px}.host-book-card small{color:#d6b56e;font-size:9px}.host-book-card h3{font:22px Georgia,"Noto Serif KR",serif;margin:5px 0 7px}.host-book-card blockquote{margin:0 0 8px;color:#f3dfb8;font:12px/1.6 Georgia,"Noto Serif KR",serif}.host-book-card p{color:#c9bea7;font-size:10px;line-height:1.7;margin:0}.host-book-card a,.host-link-row a{display:inline-flex;margin-top:10px;border:1px solid rgba(218,181,108,.45);border-radius:999px;padding:9px 12px;color:#f3dfb2;text-decoration:none;font-size:9px;font-weight:900}
.host-author-card{display:grid;grid-template-columns:135px 1fr;gap:17px;align-items:start;margin-top:15px}.host-author-card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:15px;border:1px solid rgba(218,181,108,.35)}.host-author-card p{margin:0 0 11px;color:#ded2ba;line-height:1.8;font-size:12px}.host-link-row{display:flex;gap:8px;flex-wrap:wrap}.host-link-row a.primary{background:#f0dfb6;color:#173025}
.host-gallery-modal{width:min(920px,95vw)}.host-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;clear:both;margin-top:16px}.host-art{border:1px solid rgba(218,181,108,.35);border-radius:13px;background:#07150f;padding:5px;cursor:pointer}.host-art img{display:block;width:100%;height:230px;object-fit:cover;border-radius:9px}.host-art-modal{width:min(760px,94vw)}.host-art-modal figure{margin:0;clear:both}.host-art-modal img{display:block;width:100%;max-height:78svh;object-fit:contain;border-radius:14px;background:#020604}.host-art-modal figcaption{text-align:center;color:#cdbf9f;margin-top:9px;font-size:10px}
.host-music-modal{width:min(720px,94vw)}.host-track-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;clear:both;margin-top:16px}.host-track{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:8px;text-align:left;border:1px solid rgba(218,181,108,.34);border-radius:14px;background:#0a2419;color:#f6e5bf;padding:10px;cursor:pointer}.host-track .play-icon{width:32px;height:32px;border-radius:50%;border:1px solid rgba(218,181,108,.58);display:grid;place-items:center;color:#f2d58c}.host-track b,.host-track small{display:block}.host-track b{font-size:11px}.host-track small{font-size:8px;color:#9e937c}.host-track.active{border-color:#ebcb82;background:#113524}
.host-pdf-modal{width:min(900px,96vw);height:92svh;max-height:92svh;display:none;flex-direction:column;overflow:hidden;padding:14px!important}.host-pdf-modal[open]{display:flex}.host-pdf-preview-pages{flex:1 1 auto;min-height:0;overflow:auto;clear:both;margin-top:8px;padding:8px;border-radius:14px;background:#f2f0eb}.host-pdf-preview-pages figure{margin:0 0 10px}.host-pdf-preview-pages img{display:block;width:100%;height:auto;background:#fff}.host-pdf-preview-pages figcaption{text-align:center;color:#726b61;font-size:9px;padding:5px}.host-pdf-actions{flex:0 0 auto;margin-top:9px}.host-pdf-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;border-radius:999px;background:#ead9ad;color:#173025;text-decoration:none;font-weight:900}
.host-mini-player{position:fixed;left:50%;bottom:82px;transform:translate(-50%,18px);z-index:120;width:min(740px,94vw);display:grid;grid-template-columns:44px 1fr 40px 40px;gap:8px;align-items:center;padding:8px 10px;border:1px solid rgba(105,221,214,.48);border-radius:19px;background:rgba(4,34,24,.96);box-shadow:0 18px 50px #0009;opacity:0;pointer-events:none;transition:.2s}.host-mini-player.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}.host-mini-player button{height:38px;border:1px solid rgba(238,211,144,.6);border-radius:50%;background:#0a2b1e;color:#f5dfab;cursor:pointer}.host-mini-player .mini-hide,.host-mini-player .mini-stop{border-radius:12px}.host-mini-player span b,.host-mini-player span small{display:block}.host-mini-player span b{font-size:11px}.host-mini-player span small{font-size:8px;color:#a8a08f;margin-top:2px}

@media(max-width:720px){
 .host-curator-stage{width:100%}.host-entry-label{padding:8px 10px}.host-entry-label b{font-size:9px}.host-speaker-label{padding:6px 8px}.host-speaker-label b{font-size:8px}.host-speaker-label small{font-size:6px}
 .host-room-topbar{grid-template-columns:72px minmax(0,1fr) 62px;padding:7px 8px}.host-room-title b{font-size:17px}.host-room-title em{display:none}
 .host-books-grid{grid-template-columns:1fr}.host-book-card{grid-template-columns:96px 1fr}.host-book-card img{height:150px}.host-author-card{grid-template-columns:105px 1fr}.host-gallery-grid{grid-template-columns:repeat(2,1fr)}.host-art img{height:180px}.host-track-grid{grid-template-columns:1fr}
}
@media(max-width:460px){
 .host-room-topbar{grid-template-columns:66px minmax(0,1fr) 58px}.host-room-topbar button{font-size:8px;padding:6px}.host-room-title b{font-size:15px}.host-room-title small{font-size:6px}
 .host-hotspot-badge{padding:5px 7px;font-size:7px}.room-hotspots .host-shelf-cue{font-size:7px;padding:4px 6px}
 .host-author-card{grid-template-columns:1fr}.host-author-card img{width:128px}.host-gallery-grid{grid-template-columns:1fr 1fr}.host-art img{height:155px}.host-pdf-modal{height:94svh;width:97vw;padding:10px!important}.host-mini-player{grid-template-columns:40px 1fr 36px 36px;gap:6px;padding:7px 8px}
}
