@import"https://fonts.googleapis.com/css2?family=Baloo+2:wght@600&display=swap";@import"https://fonts.googleapis.com/css2?family=Bungee&display=swap";:root{color-scheme:only light;--bg-deep: #1a1111;--bg-warm: #2f1c1c;--ui-white: #fefefe;--ui-shadow: rgba(0, 0, 0, .35);--panel-primary: #b34a42;--panel-primary-light: #e77575;--panel-primary-hover: #ef8585;--border-black: #000000;--text-white: #ffffff;--game-over-overlay: rgba(26, 17, 17, .85);--safe-top: env(safe-area-inset-top, 0);--safe-right: env(safe-area-inset-right, 0);--safe-bottom: env(safe-area-inset-bottom, 0);--safe-left: env(safe-area-inset-left, 0)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}html,body{margin:0;padding:0;width:100%;min-height:100%;min-height:100dvh;min-height:-webkit-fill-available;height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none;font-family:"Baloo 2",Trebuchet MS,sans-serif;background:var(--bg-deep) center/cover no-repeat}#app{position:relative;width:100%;min-height:100%;min-height:100dvh;min-height:-webkit-fill-available;height:100%;height:100dvh}#scene{display:block;width:100%;height:100%;min-height:0;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.top-bar{pointer-events:none;position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:stretch;gap:8px;padding:max(8px,var(--safe-top)) max(12px,var(--safe-right)) 0 max(12px,var(--safe-left));box-sizing:border-box}.score-display{flex:1;min-width:0;max-width:48%;min-height:44px;background:var(--panel-primary);padding:0;border-radius:16px;border:2px solid var(--border-black);box-shadow:0 4px 0 0 var(--border-black);font-family:Bungee,Arial Black,sans-serif;color:var(--text-white);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;gap:0;box-sizing:border-box;overflow:hidden}.score-display .score-label{font-size:clamp(.6rem,2.2vw,.9rem);font-weight:400;text-transform:uppercase;letter-spacing:1px;padding:4px 8px;text-align:center;background:var(--panel-primary-light)}.score-display .score-value{font-size:clamp(1rem,4vw,1.8rem);font-weight:400;line-height:1;padding:4px 8px;text-align:center;display:block}.ui{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center}.hint-panel{margin-top:auto;margin-bottom:max(10px,var(--safe-bottom));margin-left:max(12px,var(--safe-left));margin-right:max(12px,var(--safe-right));max-width:min(200px,70vw);min-height:34px;background:var(--panel-primary);padding:0;border-radius:12px;border:2px solid var(--border-black);box-shadow:0 3px 0 0 var(--border-black);font-family:Bungee,Arial Black,sans-serif;color:var(--text-white);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;gap:0;box-sizing:border-box;overflow:hidden}.hint-panel.hidden{display:none}.hint-label{font-size:clamp(.5rem,1.8vw,.7rem);font-weight:400;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;text-align:center;background:var(--panel-primary-light)}.hint-text{font-size:clamp(.6rem,2.2vw,.75rem);font-weight:400;line-height:1;padding:4px 8px;text-align:center;display:block}.game-over{pointer-events:auto;position:absolute;top:0;right:0;bottom:0;left:0;inset:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(16px,5vw,24px);padding-bottom:max(clamp(16px,5vw,24px),var(--safe-bottom));background:var(--game-over-overlay)}.game-over.hidden{display:none}.game-over-panel{width:100%;max-width:min(320px,88vw);min-height:120px;background:var(--panel-primary);padding:0;border-radius:16px;border:2px solid var(--border-black);box-shadow:0 4px 0 0 var(--border-black);font-family:Bungee,Arial Black,sans-serif;color:var(--text-white);display:flex;flex-direction:column;justify-content:stretch;align-items:stretch;gap:0;box-sizing:border-box;overflow:hidden;opacity:0;transform:scale(.92)}.game-over:not(.hidden) .game-over-panel{animation:game-over-in .3s ease-out forwards}@keyframes game-over-in{to{opacity:1;transform:scale(1)}}.game-over-label{font-size:clamp(.7rem,2.5vw,.9rem);font-weight:400;text-transform:uppercase;letter-spacing:1px;padding:6px 12px;text-align:center;background:var(--panel-primary-light);display:block}.game-over-message{margin:0;padding:12px 16px;font-size:clamp(.85rem,3vw,1rem);font-weight:400;line-height:1.3;text-align:center;color:var(--text-white)}.game-over .play-again{margin:0 12px 12px;padding:10px 16px;min-height:44px;border:none;border-radius:12px;background:var(--panel-primary-light);color:var(--text-white);font-family:Bungee,Arial Black,sans-serif;font-size:clamp(.85rem,3vw,1rem);font-weight:400;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;box-shadow:0 3px 0 0 var(--border-black);border:2px solid var(--border-black)}.game-over .play-again:hover{transform:scale(1.02);background:var(--panel-primary-hover)}.game-over .play-again:active{transform:scale(.98);box-shadow:0 1px 0 0 var(--border-black)}@media (max-width: 540px){.top-bar{padding:max(6px,var(--safe-top)) max(8px,var(--safe-right)) 0 max(8px,var(--safe-left));gap:6px}.score-display{min-height:38px;border-radius:12px;border-width:1.5px}.score-display .score-label,.score-display .score-value{padding:3px 6px}.hint-panel{margin-bottom:max(8px,var(--safe-bottom));min-height:30px;border-radius:10px;border-width:1.5px}.hint-label{padding:2px 4px}.hint-text{padding:3px 6px}}@media (max-width: 380px),(max-height: 520px){.score-display{min-height:34px;border-radius:10px}.score-display .score-label{font-size:.55rem;padding:2px 4px}.score-display .score-value{font-size:.9rem;padding:2px 4px}.hint-panel{margin-bottom:max(6px,var(--safe-bottom));min-height:26px;border-radius:8px}.hint-label{font-size:.45rem;padding:1px 3px}.hint-text{font-size:.55rem;padding:2px 5px}.game-over-panel{border-radius:12px;border-width:1.5px}.game-over-label{font-size:.65rem;padding:4px 8px}.game-over-message{font-size:.8rem;padding:10px 12px}.game-over .play-again{margin:0 8px 8px;padding:8px 12px;min-height:42px;font-size:.8rem}}
