.tide-hud{position:absolute;inset:0;pointer-events:none;color:#fff;font-family:var(--font);text-align:center;text-shadow:0 2px 3px #022f3c}
.tide-hud[hidden],.tide-hud [hidden]{display:none!important}
.tide-top{position:absolute;top:24px;left:50%;transform:translateX(-50%);width:min(820px,68vw);display:flex;flex-direction:column;align-items:center;gap:14px}
.tide-eyebrow{font-size:15px;letter-spacing:2px;color:#b5ffee;font-weight:700;background:#073e4ac9;border-radius:20px;padding:6px 15px}
.tide-top h1{font-size:clamp(40px,5vw,72px);line-height:1.1;margin:6px 0;letter-spacing:2px;color:#ffeeb1;text-shadow:0 4px 0 #166a71,0 8px 22px #022b41}
.tide-question{font:700 calc(32px * var(--u))/1.18 var(--font);padding:12px 22px;border-radius:20px;background:linear-gradient(100deg,#043c4fea,#0a676be0);box-shadow:0 4px 20px #022c3b44;border:2px solid #b4fff657;max-width:100%}
.tide-question:empty{display:none}.tide-meta{font-size:17px;color:#dcfff1;line-height:1.3}
.tide-bottom{position:absolute;bottom:calc(24px + var(--kb,0px));left:0;right:0;margin:0 auto;width:min(620px,calc(100vw - 36px));display:flex;flex-direction:column;align-items:center;gap:13px}
.tide-hearts{letter-spacing:0}
.tide-form{pointer-events:auto;width:100%;max-width:620px}.tide-input{font-size:calc(30px * var(--u));letter-spacing:.025em}.tide-input::placeholder{font-size:22px;letter-spacing:0}.tide-submit:disabled{opacity:.55}.tide-saved{font-size:17px;color:#afffdd;background:#063d4cdd;border-radius:12px;padding:7px 14px;max-width:100%;overflow-wrap:anywhere}.tide-saved.invalid{color:#ffcb9f}.tide-note{font-size:17px;line-height:1.3}.tide-note:empty{display:none}.tide-bottom>.btn{pointer-events:auto}
.tide-caption{position:absolute;bottom:16%;left:10%;width:80%;font-size:clamp(24px,3vw,42px);font-weight:700;text-shadow:0 3px 12px #002b48}
.tide-hud.cinematic .tide-top{top:8%;gap:12px}.tide-hud.cinematic .tide-question{background:none;border:0;box-shadow:none;font-size:25px}
.tide-screen-spray{position:absolute;inset:0;background:radial-gradient(ellipse,#e4fffa,#b6f3ec);opacity:0;pointer-events:none}
.tide-scene #labels>.w-lbl:not(.tide-label){visibility:hidden!important}.tide-label{text-align:center;color:white;white-space:nowrap;text-shadow:0 2px 3px #00343d}.tide-label strong{display:block;font-size:22px;background:#064557dc;border:1px solid #afffe577;border-radius:10px;padding:5px 12px}.tide-label span{display:block;color:#ffd68e;font-size:15px;margin-bottom:5px}.tide-label small{display:block;font-size:14px;margin-top:4px}.tide-label.longest strong{background:#78602bed;border-color:#ffe191}.tide-scene .quick-card-tray,.tide-scene .w-touch{display:none!important}.tide-cinema .side,.tide-cinema .counters,.tide-cinema .player-list,.tide-cinema .chat,.tide-cinema .plist{opacity:0;pointer-events:none}
@media(max-width:720px){.tide-top{top:55px;width:calc(100vw - 22px);gap:10px}.tide-eyebrow{font-size:12px;letter-spacing:1px}.tide-question{font-size:23px;padding:10px 12px}.tide-meta{font-size:13px}.tide-bottom{bottom:calc(16px + var(--kb,0px));gap:9px}.tide-input{font-size:22px}.tide-input::placeholder{font-size:18px}.tide-hearts{font-size:28px}.tide-saved,.tide-note{font-size:14px}.tide-label strong{font-size:17px}.tide-hud.cinematic .tide-top{top:8%}.tide-hud.cinematic .tide-question{font-size:21px}}
.kb-open .tide-top{top:52px;gap:5px}.kb-open .tide-eyebrow,.kb-open .tide-meta{display:none}.kb-open .tide-question{font-size:18px}.kb-open .tide-bottom{bottom:calc(8px + var(--kb,0px));gap:6px}.kb-open .tide-timer{width:64px;height:64px}.kb-open .tide-hearts{font-size:23px}.kb-open .tide-saved{padding:4px;font-size:12px}
@media(prefers-reduced-motion:reduce){.tide-screen-spray{display:none}}

.tide-form:not(:focus-within)::before{display:none!important}
.tide-hud.ending .tide-top{gap:10px}.tide-hud.ending .tide-meta{display:none}.tide-hud.ending .tide-hearts{display:none}

.tide-saved:empty { display:none; }
.tide-shark-credit { position:absolute;right:12px;bottom:8px;color:#dcfff1;font:11px var(--font);pointer-events:auto; }
/* Share Finish the Word's heart art, turn tools, and blue input focus ring. */
.tide-bottom .turn-row { width:100%;justify-content:center; }
@media(pointer:coarse) { .tide-hearts { position:static; } }

.tide-shark-credit a { color:inherit; }

.tide-submit,.tide-bottom .turn-tools,.tide-bottom .turn-tools button { pointer-events:auto; }
.tide-submit.tide-saved-pop { animation:tide-saved-pop .34s ease; }
@keyframes tide-saved-pop { 0%{transform:scale(.7) rotate(-12deg)} 60%{transform:scale(1.13) rotate(5deg)} 100%{transform:none} }
.tide-give-up { position:absolute;right:14px;bottom:40px;pointer-events:auto; }
.tide-damage-flash { position:fixed;inset:0;opacity:0;pointer-events:none;box-shadow:inset 0 0 80px 28px #f52246,inset 0 0 14px 5px #ff647a; }
.tide-damage-active { animation:tide-hit .65s ease; }
@keyframes tide-hit { 0%,100%{opacity:0} 20%{opacity:.8} 55%{opacity:.15} 75%{opacity:.5} }
.tide-label .tide-head-hearts { display:flex;justify-content:center;gap:3px;margin-top:6px; }
.tide-label .tide-head-heart { display:inline-flex;width:24px;height:24px;color:var(--heart);margin:0; }
.tide-head-heart .icon { width:100%;height:100%; }
.tide-head-heart.lost { color:#8c95a2; }
.tide-head-heart.breaking { animation:heart-break .8s ease; }
@media(max-width:720px) { .tide-give-up { right:10px;bottom:calc(190px + var(--kb,0px));font-size:11px; } }
@media(prefers-reduced-motion:reduce) { .tide-saved-pop,.tide-head-heart.breaking { animation:none!important; } .tide-damage-active { animation-duration:.25s; } }

.tide-form.answer-saved { border-color:#28c95b!important; background:#e6ffed!important; box-shadow:0 0 0 4px #3eea7466,0 5px 0 #176f32!important; }
.tide-form.answer-saved .tide-input { color:#145d2d; }
.tide-form.answer-saved::before { border-color:#28c95b!important; }

.tide-spectator,.game-spectator{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 18px;border:3px solid #162e3d;border-radius:20px;background:#eefaffed;color:#163c4a;text-shadow:none;box-shadow:0 5px 0 #162e3d;max-width:calc(100vw - 28px)}
.tide-watch-target{display:flex;align-items:center;gap:12px}.tide-watch-target strong{min-width:140px;max-width:220px;overflow-wrap:anywhere}.tide-spectator .btn,.game-spectator .btn{font-size:16px}

.game-spectator[hidden],.game-spectator [hidden]{display:none!important}
