:root{color-scheme:dark;--ink:#ecf4e7;--muted:#b4cbc9;--edge:#416169;--water:#143642;--accent:#f5d99d;--sun:#ffc278;--kite:#80d7d1;--ripple:#dfa8d4}*{box-sizing:border-box}body{margin:0;background:#0b252f;color:var(--ink);font:15px 'Segoe UI',system-ui,sans-serif;background-image:radial-gradient(ellipse at 50% 20%,#214851 0,transparent 62%);min-height:100vh}main{max-width:404px;margin:auto;padding:12px 16px 20px}header{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.5px;color:var(--muted);margin-bottom:8px}a{color:var(--muted);font-size:12px;text-underline-offset:4px}.title-row{display:flex;justify-content:space-between;align-items:center}h1{font:30px Georgia,serif;letter-spacing:-.7px;margin:4px 0 12px}h1 em{color:var(--accent);font-weight:400}button,select{font:inherit;color:inherit;cursor:pointer}button{border:1px solid var(--edge);border-radius:11px;background:#1d424c;min-height:44px;padding:10px 12px;font-weight:650;touch-action:manipulation}button:hover{background:#2c5660}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #fff8db;outline-offset:3px}button:disabled{opacity:.42;cursor:default}button.primary{background:var(--accent);color:#223a3c;border-color:var(--accent)}button.primary:hover{background:#ffe5b5}#help{width:44px;border-radius:50%;font:22px Georgia,serif}.stats{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;background:#0c2731aa;padding:10px 14px;border:1px solid #35535b;border-radius:13px}.stats span{display:block;font-size:9px;letter-spacing:.9px;color:var(--muted)}.stats strong{display:block;font-size:26px;font-weight:650;font-variant-numeric:tabular-nums;margin-top:2px}.clock{text-align:center}.best{text-align:right}.best strong{color:var(--accent)}.drift-line{display:flex;justify-content:space-between;margin:13px 4px 0;font-size:12px;color:#c4ded6}#drift-dots{letter-spacing:5px;color:var(--accent)}#lagoon{position:relative;aspect-ratio:320/286;width:100%;isolation:isolate}#phaser,#cells{position:absolute;inset:0}#phaser canvas{display:block!important;width:100%!important;height:100%!important}#cells button{position:absolute;width:16.875%;height:20.979%;transform:translate(-50%,-50%);border:0;border-radius:0;clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%);background:transparent;min-height:0;padding:0;color:transparent;touch-action:manipulation}#cells button:focus-visible{outline:0;background:#ffffff33}#message{min-height:32px;text-align:center;font-size:13px;line-height:1.4;margin:0 0 8px;color:#e1e9d5}#offers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}#offers button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:52px;padding:6px;border:2px solid #44616a;background:#173944}#offers button[aria-pressed=true]{border-color:var(--accent);background:#294a4d;box-shadow:0 0 0 1px #f5d99d44}.glyph{width:29px;height:29px;border-radius:50%;display:inline-grid;place-items:center;font-size:21px;background:#0b263066}.glyph.c0{color:var(--sun)}.glyph.c1{color:var(--kite)}.glyph.c2{color:var(--ripple)}.placement{display:grid;grid-template-columns:1fr 1.4fr;gap:9px;margin-top:9px}.placement button{min-height:46px}kbd{font:10px inherit;opacity:.6;margin-left:6px}.utility{display:flex;gap:7px;margin:9px 0}.utility button{font-size:12px;flex:1;padding:7px}.utility button:first-child{flex:1.7}.utility small{display:block;font-size:9px;font-weight:400;margin-top:2px}.settings{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #35535b;padding-top:10px;font-size:10px}.settings button{font-size:11px;padding:6px 10px}.settings label{display:flex;align-items:center;gap:4px}select{max-width:109px;background:#1d414a;border:1px solid #49676b;padding:8px 4px;border-radius:8px;min-height:44px;font-size:11px}input{accent-color:#f5d99d;min-width:17px;min-height:20px}.legend{text-align:center;font-size:10px;color:var(--muted);line-height:1.6}.legend span{white-space:nowrap;margin-right:6px}.privacy{font-size:10px;line-height:1.6;text-align:center;color:#aac4c2;margin:8px 0}dialog{color:var(--ink);background:#16353f;border:1px solid #678780;border-radius:23px;width:min(360px,calc(100% - 28px));padding:26px 23px;box-shadow:0 30px 100px #0009;text-align:center;max-height:92dvh;overflow:auto}dialog::backdrop{background:#061a22dc;backdrop-filter:blur(5px)}dialog h2{font:35px/1.12 Georgia,serif;letter-spacing:-.6px;color:#fff0d1;margin:14px 0}dialog p{font-size:14px;line-height:1.6;color:#c6d9d3}dialog button{display:block;width:100%;margin-top:10px;min-height:48px}.eyebrow{font-size:9px!important;font-weight:750;letter-spacing:1.4px;color:#abccbe!important}.dialog-art{font-size:58px;color:#80d7d1;letter-spacing:7px;line-height:1.3}.dialog-art span{color:var(--accent);font-size:40px}.score-rule{font-size:12px!important;border-top:1px solid #48626a;padding-top:15px}.fine{font-size:10px!important;margin-bottom:0}#end-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}#end-stats div{padding:12px;background:#24454c;border-radius:10px;font-size:11px}#end-stats strong{display:block;font-size:22px;color:var(--accent)}#tutorial-note{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);width:min(360px,calc(100% - 24px));padding:14px 16px;background:#f5d99d;color:#183941;border-radius:14px;box-shadow:0 10px 35px #0007;z-index:5}#tutorial-note strong{font-size:14px}#tutorial-note p{font-size:12px;line-height:1.4;margin:5px 0}#tutorial-note div{display:flex;align-items:center;justify-content:space-between;font-size:11px}#tutorial-note button{color:#14323a;background:#fff0d0;font-size:11px;border:1px solid #bda571;min-height:36px}body.practice main{padding-bottom:160px}body.contrast{--sun:#ffdf00;--kite:#f5f5f5;--ripple:#77bcff}#load-error{padding:30px;background:#592e30;position:absolute;inset:20%;z-index:4}body.urgent #clock{color:#ffbb91}[hidden]{display:none!important}@media(max-width:350px){main{padding:10px 12px}h1{font-size:28px}.settings{gap:4px}.settings label{font-size:9px}.settings button{padding:4px 7px}dialog{padding:21px}dialog h2{font-size:31px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}dialog::backdrop{backdrop-filter:none}}

#tutorial-note{position:static;transform:none;width:100%;margin:8px 0;padding:10px 12px;box-shadow:none}body.practice main{padding-bottom:20px}

@media(max-width:350px){main{padding-left:8px;padding-right:8px}}

.top-actions{display:flex;align-items:center;gap:6px}.top-actions #pause{font-size:12px;padding:8px}.title-row{position:sticky;top:0;background:#102e39;z-index:2;border-radius:8px}@media(max-width:350px){.stats{padding:8px 10px}.stats strong{font-size:22px;margin-top:0}h1{margin:0 0 4px}header{margin-bottom:4px}.drift-line{margin-top:9px}#message{min-height:28px;font-size:12px}}
