/* Local audit fixes: explicit space for controls, choices and confirmation. */
.progress-star{display:none}.task-star{width:24px;height:24px;object-fit:contain;filter:grayscale(1);opacity:.3}.task-star.earned{filter:none;opacity:1}
.progress-card{position:fixed;right:16px;top:12px;min-height:52px;padding:6px 10px}.hud>.level-path{position:fixed;left:50%;top:12px;transform:translateX(-50%)}
#confirmBtn{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);width:68px;height:68px;border:0;background:url('../assets/ui/button-check-normal.webp') center/contain no-repeat;z-index:60;cursor:pointer}
#confirmBtn:disabled{opacity:.45}#confirmBtn.demo-press{filter:drop-shadow(0 0 12px #f2c141);transform:translateX(-50%) scale(.92)}
.treasure.selected{outline:4px solid #f2c141;outline-offset:1px;filter:brightness(1.06)}.treasure:disabled{cursor:default}.treasure.hint{animation:hintPulse 1s infinite}
.board{grid-template-rows:auto minmax(0,1fr) auto!important}.scale-area{min-height:0!important}.missing-slot{display:none}.pan-bowl .weighted-item+.weighted-item,.combo .weighted-item+.weighted-item{margin-left:0}.pan-bowl{flex-wrap:nowrap}.feedback{bottom:100px;width:90%;text-align:center;pointer-events:none}
.rune{z-index:150}.panel .wood-btn{min-width:56px;min-height:56px}.panel{max-height:calc(100dvh - 28px);overflow:auto}.panel .combo .highfive{height:140px!important;max-width:40%;object-fit:contain}.menu-level{min-width:48px;min-height:48px}.menu-level:disabled{opacity:.4}.overlay#menuOverlay{z-index:120}
body[data-state="menu"] .hero,body[data-state="menu"] .hint{animation-play-state:paused!important}
@media(orientation:landscape){.play-grid{bottom:90px!important}.board{height:100%!important;max-height:590px}.scale-sprite{inset:0;width:100%;height:100%}.pan{top:7%;height:82%}.pan-bowl{bottom:34%}.level-path{max-width:34vw}.level-node{width:36px!important}.board-label{font-size:20px}}
@media(orientation:portrait){
 .hud>.level-path{left:10px;right:10px;top:70px;transform:none;min-height:36px;max-height:36px;padding:0 10px}.level-node{height:28px!important;width:32px!important}
 .progress-card{right:6px;top:14px;padding:5px;min-height:42px}.task-star{width:18px;height:22px}#roundDots{gap:1px}
 .play-grid{inset:112px 9px 90px!important;grid-template-rows:100px minmax(0,1fr)!important;gap:8px!important}.guide-zone{padding-right:62px;grid-template-columns:65px minmax(0,1fr)!important}.guide{width:64px!important}.speech{padding:12px!important;min-height:76px!important}.prompt-text{font-size:14px!important;line-height:1.2!important}
 .hero-zone{top:9px!important;right:0!important}.hero{width:58px!important;max-height:82px!important}.board{padding:8px!important;border-radius:28px}.board-label{font-size:14px!important;min-height:28px;padding:3px 6px;max-width:100%}.scale-sprite{inset:0;width:100%;height:100%;object-fit:fill}.pan{top:5%;height:85%}.pan-bowl{bottom:34%!important}.pan-bowl .weighted-item{min-width:0;flex:0 1 46px}.pan-bowl .weighted-item .object{width:100%!important;max-height:54px}.treasure{height:72px!important}.tray{min-height:78px!important}.feedback{bottom:88px;font-size:14px;padding:6px}.rune{width:44px}.bodi{width:62px}.combo .weighted-item .object{width:min(38px,10cqw)!important;height:38px!important}
}
@media(orientation:portrait) and (max-height:700px){.play-grid{grid-template-rows:72px minmax(0,1fr)!important}.guide{max-height:66px!important}.speech{min-height:60px!important}.prompt-text{font-size:13px!important}.treasure{height:62px!important}.tray{min-height:68px!important}.pan-bowl .weighted-item .object{max-height:40px}.panel h2{font-size:24px}.panel .combo .highfive{height:95px!important}.reward-star{max-height:60px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.scale-area{height:100%;width:auto;aspect-ratio:1;max-width:100%;justify-self:center}.scale-sprite{object-fit:fill!important}.pan{top:0!important;height:100%!important;width:36%!important}.pan.left{left:5%!important}.pan.right{right:5%!important}.pan-bowl{bottom:34%!important;height:28%!important;left:0!important;right:0!important;padding:0!important}.pan-bowl .weighted-item{min-width:0;flex:0 1 54px}.pan-bowl .weighted-item .object{width:100%;max-height:78px}.item-weight{flex-shrink:0}
@media(orientation:portrait){.pan-bowl .weighted-item{flex-basis:38px}.pan-bowl .weighted-item .object{max-height:48px}.pan-bowl .item-weight{padding:1px 2px;gap:1px}.pan-bowl .item-weight i{width:7px;height:7px}}

.pan-bowl{bottom:40%!important}
@keyframes kuviHint{50%{box-shadow:0 0 0 5px #f2c141,0 0 18px #f2c141}}
.treasure.hint{animation:kuviHint 1s ease-in-out infinite!important}

.scale-area{width:100%!important;height:100%!important;min-width:0!important;aspect-ratio:auto!important;container-type:size;justify-self:stretch}.scale-content{position:absolute;left:50%;top:50%;width:min(100cqw,100cqh);height:min(100cqw,100cqh);transform:translate(-50%,-50%)}

.scale-content[data-pose="right-low"] .pan.left{transform:translateY(-5%)}.scale-content[data-pose="right-low"] .pan.right{transform:translateY(9%)}.scale-content[data-pose="left-low"] .pan.left{transform:translateY(11%)}.scale-content[data-pose="left-low"] .pan.right{transform:translateY(-5%)}

/* Deluxe: an explicit matching example, using the actual game treasures. */
.intro-balance{position:relative;width:min(48vw,700px);aspect-ratio:1;justify-self:center}.intro-balance .intro-scale{width:100%;height:100%;object-fit:contain}.intro-treasure{position:absolute;width:16%;height:16%;object-fit:contain;bottom:43%;filter:drop-shadow(0 4px 3px #69431f44)}.intro-treasure.left{left:14%}.intro-treasure.right{right:14%}
.reward-picture{margin:8px auto;width:min(100%,300px)}.reward-picture img{display:block;width:100%;max-height:230px;object-fit:contain;border-radius:24px}#rewardOverlay .panel{background:#fff8e6}
@media(orientation:portrait){.intro-cast{inset:120px 3% 175px;grid-template-rows:40% 60%}.intro-lumi,.intro-kuvi{height:100%;max-width:100%;object-fit:contain}.intro-balance{grid-column:1/3;grid-row:2;width:auto;height:100%;max-width:100%}}
@media(max-height:700px){.reward-picture img{max-height:140px}}
/* Keep this after hint rules: the previous earlier override lost specificity. */
@media(prefers-reduced-motion:reduce){.treasure.hint,*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.intro-treasure{bottom:40%}@media(orientation:landscape){.intro-cast{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);inset:100px 4% 185px;gap:12px}.intro-lumi,.intro-kuvi{width:100%;max-height:100%;object-fit:contain}.intro-balance{width:100%;max-height:100%}}
