#hintDock{position:absolute;left:12px;top:74px;z-index:7;color:#e5eeef}
#hintToggle,#audioControls #audioToggle{width:44px;height:44px;min-height:44px;padding:0;border:1px solid currentColor;border-radius:10px;background:linear-gradient(145deg,#18303aed,#071117f5);box-shadow:0 3px 12px #0008;color:#e8bf62;cursor:pointer;font-size:30px;line-height:1}
#hintToggle span{display:inline-block;transform:rotate(18deg);font-family:Georgia,serif;font-weight:900}
#hintDock[data-state=new] #hintToggle{color:#ff6975;animation:hintPulse 1.4s ease-in-out infinite}
#hintDock[data-state=complete] #hintToggle{color:#64b7ff}
@keyframes hintPulse{50%{background:#6a2031;box-shadow:0 0 17px #ff435477}}
#hintPanel{position:absolute;left:52px;top:0;width:min(350px,calc(100vw - 90px));max-height:calc(100dvh - 205px);overflow:auto;padding:14px;background:#07161af5;border:1px solid #55777d;border-radius:10px;box-sizing:border-box;box-shadow:0 8px 28px #0009}
#hintPanel[hidden],#audioPanel[hidden]{display:none!important}
#hintPanel h2{font-size:16px;margin:0 0 10px;color:#eed598}
#hintLatest{font-size:14px;line-height:1.5;color:#a7dcdf;margin:0 0 10px}#hintLatest:empty{display:none}
#game #hintPanel .mission,#game #hintPanel #cinemaReadout,#game #hintPanel .cinema-hint,#game #hintPanel #levelZeroGuide{position:static;transform:none;width:auto;max-width:none;max-height:none;margin:0 0 12px;padding:0;white-space:normal;font-size:14px;line-height:1.5;background:none;border:0;overflow:visible}
#game #hintPanel #levelZeroGuide{grid-template-columns:minmax(0,1fr);gap:0}#hintPanel #levelZeroGuide canvas{width:56px;height:75px}#game #hintPanel #levelZeroGuide p{display:block}
#audioControls{padding:0;background:none;max-width:calc(100vw - 24px)}#audioControls #audioToggle{color:#a6d9da;font-size:25px;touch-action:none;user-select:none;cursor:grab}
#audioPanel{position:absolute;right:52px;top:0;display:grid;grid-template-columns:auto minmax(65px,100px);gap:10px;padding:12px;background:#07161af5;border:1px solid #55777d;border-radius:10px;box-shadow:0 8px 28px #0009}#audioPanel label{font-size:14px;max-width:100px}#audioPanel input{width:100px}
#hintToggle:focus-visible,#audioToggle:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-height:540px){#hintDock{top:51px;left:12px}#hintPanel{max-height:calc(100dvh - 90px)}}
@media(prefers-reduced-motion:reduce){#hintDock[data-state=new] #hintToggle{animation:none;box-shadow:0 0 12px #ff435477}}
