#entry-dialogue[hidden],#entry-skip[hidden]{display:none!important}
#entry-dialogue{position:fixed;z-index:110;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(780px,calc(100vw - 32px));padding:14px 18px;color:#eadac0;background:linear-gradient(100deg,#171a18f2,#26231def);border-top:1px solid #b3996855;box-shadow:0 8px 30px #0005;font-family:inherit}
.entry-speaker{font-size:12px;color:#c3a77b;letter-spacing:.14em;display:flex;align-items:center;gap:12px}
#entry-line{display:block;width:100%;min-height:52px;padding:10px 0;background:none;border:0;text-align:left;color:inherit;font:clamp(15px,2vw,19px)/1.6 serif;cursor:pointer}
#entry-progress{display:flex;gap:7px;margin-left:auto}
.entry-stub{display:grid;place-items:center;width:24px;height:30px;background:#76664d;color:#c6bba6;clip-path:polygon(0 0,100% 0,100% 85%,85% 100%,0 100%);transition:opacity var(--entry-selection),transform var(--entry-selection)}
.entry-stub.current{background:#d6b67b;color:#30271c;box-shadow:0 0 9px #d9b56955}
.entry-stub.torn{opacity:.28;transform:translateY(3px) rotate(-8deg);clip-path:polygon(0 0,100% 0,100% 43%,84% 33%,68% 46%,49% 34%,26% 45%,0 34%)}
#entry-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.entry-ticket{position:relative;display:flex;align-items:center;gap:9px;min-height:60px;padding:12px 14px;background:#a99a79;color:#241f18;border:0;box-shadow:0 3px 0 #66573e,0 6px 10px #0005;transition:transform var(--entry-selection),filter var(--entry-selection),opacity var(--entry-selection);text-align:left;font:14px/1.5 inherit;clip-path:polygon(0 0,100% 0,100% 40%,97% 50%,100% 60%,100% 100%,0 100%,0 60%,3% 50%,0 40%)}
.entry-ticket small{border-right:1px dashed #473b2c88;padding-right:9px;align-self:stretch;display:grid;align-items:center;font-family:monospace}
.entry-ticket:hover:not(:disabled),.entry-ticket:focus-visible{transform:translateY(-3px);filter:brightness(1.16);outline:2px solid #f2d494;outline-offset:2px}
.entry-ticket.chosen{transform:translateY(-8px);filter:brightness(1.17);clip-path:polygon(0 0,85% 0,87% 8%,93% 6%,91% 15%,100% 21%,100% 100%,0 100%)}
.entry-ticket.dismissed{opacity:0;transform:translateY(7px)}
#entry-skip{position:fixed;z-index:120;right:18px;bottom:calc(190px + env(safe-area-inset-bottom));min-width:44px;min-height:44px;background:#181b1880;border:0;color:#c4baa8;font-size:12px}
.entry-active #whisper{visibility:hidden}.entry-active .tools{z-index:121}
.entry-title{position:fixed;inset:0;display:grid;place-items:center;z-index:101;text-align:center;font:28px serif;letter-spacing:.2em;color:#dbc9a4;pointer-events:none;opacity:0;transition:opacity var(--entry-fade)}
.entry-title.show{opacity:1}
.entry-blackout{position:fixed;inset:0;z-index:100;background:#000;pointer-events:none;opacity:0}
.entry-cinematic .entry-blackout{transition:opacity var(--entry-blackFade)}
.entry-cinematic .entry-blackout.revealing{transition-duration:var(--entry-revealFade)}
.entry-blackout.show{opacity:1}
.entry-cinematic .tools{visibility:hidden}
.entry-lamp::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 30%,#ffd98930,transparent 30%)}
.entry-light{position:absolute;inset:0;z-index:3;pointer-events:none;background:#ffc879;mix-blend-mode:soft-light;opacity:0;transition:opacity var(--entry-ambient)}
/* Temporary attention cue from the existing illustration, not a newly rigged head. */
.entry-look{position:absolute;left:12.38%;top:25.19%;width:3.59%;height:6.8%;z-index:4;pointer-events:none;background-image:url('assets/room-wall-v13.png');background-size:2786.67% 1470.31%;background-position:12.84% 27.02%;opacity:0;mask-image:radial-gradient(ellipse,#000 40%,transparent 74%)}
.entry-look.looking{animation:entry-look var(--entry-lookDuration) both}
@keyframes entry-look{0%,100%{opacity:0;transform:translateY(0)}40%,70%{opacity:1;transform:translateY(-1px)}}
@media(max-width:600px){#entry-dialogue{width:calc(100vw - 20px);padding:12px;bottom:max(10px,env(safe-area-inset-bottom))}#entry-options{gap:6px}.entry-ticket{min-height:76px;padding:8px;font-size:13px;gap:5px}.entry-ticket small{padding-right:5px}#entry-skip{bottom:calc(200px + env(safe-area-inset-bottom))}}
@media(max-height:500px){#entry-dialogue{padding:8px 14px;bottom:4px}#entry-line{min-height:38px;padding:4px 0}.entry-ticket{min-height:44px;padding:7px}#entry-skip{bottom:150px}}
@media(prefers-reduced-motion:reduce){.entry-title,.entry-look,.entry-blackout{display:none!important}#entry-dialogue *,.entry-light,.entry-ticket{transition:none!important;animation:none!important}}
