.tide-game{color:#e2e8f0;box-sizing:border-box;background:linear-gradient(150deg,#1e293b,#131d35);border:1px solid #5b4b82;border-radius:22px;width:100%;max-width:520px;margin:auto;padding:12px;overflow:hidden}.tide-game [hidden]{display:none!important}.tide-game :is(button,a){min-height:44px}.tide-game button{font:inherit;color:inherit;cursor:pointer;background:#242c46;border:1px solid #69588c;border-radius:12px}.tide-game button:disabled{opacity:.45;cursor:default}.tide-game :is(button,a,canvas):focus-visible{outline-offset:3px;outline:3px solid #38bdf8}.tide-toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.tide-toolbar>span{letter-spacing:.12em;color:#c4b5fd;font-size:.62rem}.tide-toolbar>div{gap:5px;display:flex}.tide-hud{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0 0 9px;display:grid}.tide-hud>div{background:#0f172abf;border:1px solid #3c3c61;border-radius:10px;padding:8px 6px}.tide-hud dt{letter-spacing:.06em;color:#b4c9df;font-size:.54rem}.tide-hud dd{margin:4px 0 0;font-size:clamp(.98rem,4vw,1.4rem);font-weight:800;line-height:1.1}.tide-hud>div:first-child dd{color:#67e8f9}.tide-hud>div:last-child dd{color:#fbbf24}.tide-stage{aspect-ratio:auto;background:#0a1934;border:1px solid #365373;border-radius:14px;width:100%;height:min(600px,max(240px,100svh - 250px));position:relative;overflow:hidden}.tide-stage canvas{object-fit:contain;touch-action:pan-y;width:100%;height:100%;display:block}.tide-overlay{text-align:center;overscroll-behavior:contain;background:linear-gradient(#0d2033eb,#0c1533f5);flex-direction:column;justify-content:safe center;align-items:center;gap:12px;padding:18px;display:flex;position:absolute;inset:0;overflow:auto}.tide-overlay>*{flex-shrink:0}.tide-game h2,.tide-game p{margin:0}.tide-overlay h2{letter-spacing:-.05em;color:#f0f9ff;font-size:clamp(2rem,7vw,3.3rem);font-weight:900;line-height:1.03}.tide-overlay em{color:#67e8f9;font-style:normal}.tide-eyebrow{letter-spacing:.12em;color:#c4b5fd;font-size:.61rem;font-weight:800}.tide-overlay>p{color:#c1d1e0;font-size:.84rem;line-height:1.5}.tide-game .tide-primary{background:linear-gradient(110deg,#a855f7,#8927e8);border:1px solid #bd82f6;font-weight:750}.tide-overlay>button{width:100%;padding:10px}.tide-overlay>a{color:#c4b5fd;place-items:center;font-size:.8rem;display:grid}.tide-legend{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;font-size:.72rem;display:grid}.tide-legend span{background:#20304c;border-radius:8px;padding:7px}.tide-legend b{color:#fbbf24}.tide-overlay .tide-guidance{font-size:.72rem}.tide-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin:0;display:grid}.tide-summary>div{background:#1e293b;border-radius:10px;padding:8px}.tide-summary dt{color:#b4c9df;font-size:.58rem}.tide-summary dd{color:#e2e8f0;margin:4px 0 0;font-size:1.2rem;font-weight:800}.tide-overlay[data-record=true] .tide-eyebrow{color:#fbbf24}.tide-overlay[data-record=true]{background:radial-gradient(at 50% 12%,#fbbf2422,#0000 55%),#0c1733ed}.tide-overlay[data-record=true] h2{color:#fbbf24}.tide-overlay[data-phase=results]{justify-content:flex-start;animation:.3s ease-out tide-reveal}.tide-overlay[data-phase=results][data-record=true]:before{content:"✦  ·  ✧  ·  ✦";color:#fbbf24;letter-spacing:.2em;font-size:1.5rem}.tide-controls{touch-action:manipulation;grid-template-columns:1fr 1.5fr 1fr;gap:6px;margin-top:8px;display:grid}.tide-controls button{touch-action:none;user-select:none;min-height:62px;font-size:.88rem}.tide-controls span{font-size:1.2rem}.tide-status{color:#c0d3e4;min-height:22px;font-size:.73rem;line-height:1.5;margin:9px 0 4px!important}.tide-help{color:#91aac4;font-size:.64rem;line-height:1.6}.tide-game [data-tc-time][data-urgent=true]{color:#fbbf24}@keyframes tide-reveal{0%{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.game-viewport.is-expanded:has(.tide-game){justify-content:center;padding:0;display:flex}.game-viewport.is-expanded .tide-game{max-width:760px;height:100%;min-height:0;padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));border:0;border-radius:0;flex-direction:column;display:flex}.game-viewport.is-expanded .tide-stage{aspect-ratio:auto;flex:1;height:auto;min-height:180px}.game-viewport.is-expanded .tide-toolbar,.game-viewport.is-expanded .tide-hud,.game-viewport.is-expanded .tide-controls{flex-shrink:0}.game-viewport.is-expanded .tide-help{display:none}@media (width<=360px){.tide-game{padding:9px}.tide-toolbar{gap:4px}.tide-toolbar>span{letter-spacing:.04em;font-size:.51rem}.tide-toolbar>div{gap:3px}.tide-overlay{gap:9px;padding:12px}.tide-overlay h2{font-size:2rem}.tide-legend{gap:4px;font-size:.65rem}.tide-legend span{padding:5px}.tide-controls button{font-size:.75rem}.tide-hud dd{font-size:1rem}}@media (orientation:landscape) and (height<=650px){.game-viewport.is-expanded>.tide-game{grid-template-rows:auto auto 1fr auto;grid-template-columns:minmax(0,1fr) 230px;gap:8px 14px;max-width:1000px;display:grid}.game-viewport.is-expanded .tide-stage{grid-area:1/1/5;height:100%;min-height:0}.game-viewport.is-expanded .tide-toolbar{grid-area:1/2;margin:0}.game-viewport.is-expanded .tide-toolbar>span{display:none}.game-viewport.is-expanded .tide-hud{grid-area:2/2;grid-template-columns:repeat(2,1fr)}.game-viewport.is-expanded .tide-controls{grid-area:3/2;grid-template-columns:1fr 1fr;align-content:center}.game-viewport.is-expanded [data-tc-cast]{grid-area:2/1/auto/3}.game-viewport.is-expanded .tide-status{grid-area:4/2}.game-viewport.is-expanded .tide-overlay{gap:7px;padding:10px}.game-viewport.is-expanded .tide-overlay h2{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){.tide-game *{transition:none!important;animation:none!important}}.tide-overlay[data-phase=ready] .tide-legend{order:1}.tide-overlay[data-phase=ready] .tide-guidance{order:2}
