*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#c2d7d9;color:#fff9e8;font-family:Georgia,serif}canvas{display:block;width:100%;height:100%;touch-action:none}header{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:flex-start;padding:30px 36px 70px;background:linear-gradient(#253c3b8c,transparent);pointer-events:none}header p{font:11px/1.5 system-ui,sans-serif;letter-spacing:.3em;margin:0 0 7px}h1{font-size:25px;font-weight:400;margin:0;text-shadow:0 1px 12px #18272b}a{color:inherit;text-decoration:none;pointer-events:auto;font:13px/1.3 system-ui,sans-serif;padding:11px 17px;border:1px solid #f5edc95e;border-radius:24px;background:#314f48a8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}main{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:max-content;max-width:94%;text-align:center;pointer-events:none}.caption{font-size:17px;text-shadow:0 1px 8px #152921,0 1px 4px #152921;margin:0 0 17px}nav{display:flex;gap:4px;justify-content:flex-start;max-width:94vw;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;background:#243e35d9;padding:5px;border:1px solid #ffffff32;border-radius:28px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto}button{flex:0 0 auto;white-space:nowrap;font:13px/1.2 system-ui,sans-serif;border:0;background:transparent;color:#f5ecd6;padding:12px 19px;border-radius:22px;cursor:pointer}nav::-webkit-scrollbar{display:none}button[aria-pressed=true]{background:#eee5c9;color:#334d3d}button:hover{background:#ffffff24}button[aria-pressed=true]:hover{background:#fff1d2}button:focus-visible,a:focus-visible{outline:3px solid #f7d78f;outline-offset:3px}.hint{font:11px/1.4 system-ui,sans-serif;color:#fff9e8d9;text-shadow:0 1px 5px #183023;margin:10px 0 0}#loading{position:absolute;inset:0;display:grid;place-items:center;background:#243e35e8;font-size:22px}#loading[hidden]{display:none}@media(max-width:600px){header{padding:20px}h1{font-size:20px}a{font-size:11px;padding:10px 12px}.caption{font-size:15px;max-width:90vw}button{font-size:12px;padding:12px 13px}.hint{font-size:10px}}
