*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#dcecf0;font-family:system-ui,-apple-system,sans-serif;color:#17394a}[hidden]{display:none!important}#scene{position:fixed;inset:0;background:#dcecf0 url('schlafender-otter/otter-0.webp') center/contain no-repeat}header{position:fixed;inset:12px 14px auto;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none}header a{pointer-events:auto}.brand{width:clamp(160px,23vw,260px)}.brand img{display:block;width:100%;height:auto}.back,button{font:inherit;color:inherit;background:#fffffff0;border:1px solid #a7bfbc;border-radius:22px;min-height:48px;padding:10px 16px;cursor:pointer}.back{text-decoration:none}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c78e24;outline-offset:4px}.controls{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);display:flex;gap:8px;white-space:nowrap}.controls button{font-size:20px;font-weight:750;box-shadow:0 6px 22px #0002}#gear{position:fixed;right:14px;bottom:14px;width:48px;padding:0;font-size:22px;background:#ffffffe8}#teacher{position:fixed;right:16px;bottom:74px;width:min(360px,calc(100vw - 32px));max-height:calc(100svh - 100px);overflow:auto;padding:18px;border-radius:20px;background:#fffffff5;box-shadow:0 8px 28px #0004}#teacher h2{margin:0 0 12px;font-size:20px}#teacher p{font-size:14px;line-height:1.5}#teacher label{display:block;font-weight:700;margin:12px 0 4px}#teacher input{width:100%;min-height:36px}.row{display:flex;justify-content:space-between;font-size:13px}#close{width:100%;margin-top:10px;font-weight:700}.status{position:fixed;left:50%;top:12px;transform:translateX(-50%);background:#ffffffe8;padding:7px 14px;border-radius:18px;font-size:14px;margin:0;max-width:45vw;text-align:center}#error{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);padding:12px 18px;border-radius:18px;background:#fffffff2;font-weight:650;width:min(500px,calc(100vw - 30px));text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:650px){header{inset:8px 10px auto}.brand{width:160px}.back{font-size:14px;padding:8px 12px}.status{top:auto;bottom:90px;max-width:85vw}.controls{bottom:24px;left:12px;transform:none}.controls button{font-size:17px;padding:10px 14px}#error{bottom:145px}}
