[hidden]{display:none!important}
body.lamp-scene #review-panel{left:auto;right:24px;width:350px;background:#e6dcc6;color:#382c20;border:1px solid #b29b70;box-shadow:0 8px 40px #0007}
body.lamp-scene #point-label,body.lamp-scene #review-state{color:#6b5840}body.lamp-scene #beat,body.lamp-scene #travel-status{color:#514331}body.lamp-scene #review-panel a{color:#69502d}
body.lamp-scene #review-panel .hint,body.lamp-scene #capture-status{color:#665640}
#lamp-progress{font-size:12px;letter-spacing:.035em;color:#725e40;margin:12px 0 8px}
.lamp-item{position:relative;background:#d5cdbf;border-radius:5px;overflow:hidden;height:210px;display:grid;place-items:center;isolation:isolate}
.lamp-item img{display:block;width:100%;height:100%;object-fit:contain;position:absolute;inset:0;z-index:1}
.lamp-item-glow{position:absolute;inset:20%;border-radius:50%;box-shadow:0 0 70px 32px #ffcc67;opacity:0;transition:opacity .7s;background:#ffc46c;mix-blend-mode:soft-light;z-index:2;pointer-events:none}
.is-lit .lamp-item-glow{opacity:.55}
#lamp-title{font:normal 26px Georgia,serif;margin:14px 0 7px}#lamp-description{font-size:15px;min-height:44px}#lamp-feedback{color:#66502c;font-size:13px;min-height:19px}
.lamp-secondary{border:0;background:none;color:#6d583d;font-size:13px;display:block;margin:6px auto 0;padding:6px;min-height:36px}.lamp-secondary:hover:not(:disabled){background:#d0c1a5}
#lamp-reward{position:fixed;right:24px;top:80px;display:flex;gap:12px;align-items:center;padding:12px 20px 12px 10px;background:#332a1aee;border:1px solid #bf9b56;border-radius:6px;box-shadow:0 4px 28px #0008;pointer-events:none;color:#f7e6bf}
#lamp-reward img{width:50px;height:60px;object-fit:contain}#lamp-reward strong{font:24px Georgia,serif}#lamp-reward small{display:block;margin-top:3px;font-size:12px;color:#ddc494}
@media(max-width:600px){body.lamp-scene #review-panel{left:10px;right:10px;bottom:10px;width:calc(100% - 20px);max-height:64dvh}body.lamp-open #point-title{display:none}.lamp-item{height:140px}#lamp-title{font-size:22px;margin:9px 0 5px}#lamp-description{min-height:0;font-size:14px}#lamp-progress{margin:5px 0}#lamp-reward{top:68px;right:12px}}
@media(prefers-reduced-motion:reduce){.lamp-item-glow{transition:none}}
body.reduced-motion .lamp-item-glow{transition:none}

#lamp-feedback:empty{display:none}
/* Focused preparation stays centered in both the player and rehearsal views. */
body.lamp-scene #review-panel{left:50%;right:auto;top:50%;bottom:auto;transform:translate(-50%,-50%);width:min(350px,calc(100% - 32px));max-height:calc(100dvh - 140px);overflow:auto}
body.lamp-open #lamp-title{text-align:center}
@media(max-height:600px){body.lamp-open .lamp-item{height:clamp(65px,23dvh,140px)}body.lamp-open #review-panel{max-height:calc(100dvh - 100px)}}
#lamp-action{min-height:48px}
