

    :host{display:block;width:100%;height:100%;color-scheme:light dark;--ink:#102c3d;--muted:#466674;--paper:#f4fafc;--panel:rgba(255,255,255,.95);--panel-edge:rgba(16,44,61,.16);--button:#123649;--button-ink:#fff;--button-soft:rgba(255,255,255,.74);--shadow:rgba(7,34,48,.24);--focus:#d44c2f;--warm:#c7462b;background:var(--paper);color:var(--ink);font-family:"Avenir Next",Avenir,"Trebuchet MS",sans-serif;overflow:hidden;overscroll-behavior:none;touch-action:none;-webkit-tap-highlight-color:transparent}
    @media(prefers-color-scheme:dark){:host{--ink:#eff9fb;--muted:#c2d7df;--paper:#081722;--panel:rgba(8,27,39,.96);--panel-edge:rgba(226,242,249,.2);--button:#f0b94e;--button-ink:#13252d;--button-soft:rgba(8,25,36,.8);--shadow:rgba(0,0,0,.46);--focus:#ffd66e;--warm:#ffae69}}
    *{box-sizing:border-box}button{font:inherit}.game-shell{position:relative;width:100vw;height:100vh;height:100svh;overflow:hidden;background:#167f91;isolation:isolate;touch-action:none}canvas{display:block;width:100%;height:100%;touch-action:none}button{touch-action:none}.hud{position:absolute;z-index:3;inset:max(14px,env(safe-area-inset-top)) 14px auto;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.score-block{display:grid;grid-template-columns:auto auto;gap:7px;align-items:baseline;padding:9px 12px 8px;color:#102c3d;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.85);border-radius:14px;box-shadow:0 5px 18px rgba(16,44,61,.13);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.score-label{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;opacity:.7}.score{font-size:25px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums}.best{grid-column:1/-1;font-size:12px;font-weight:750;opacity:.78}.top-controls{display:flex;gap:8px;pointer-events:auto}.icon-button{width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.82);border-radius:50%;color:#102c3d;background:rgba(255,255,255,.8);box-shadow:0 5px 18px rgba(16,44,61,.13);cursor:pointer;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.icon-button svg{width:20px;height:20px;fill:currentColor}.icon-button:active{transform:translateY(1px)}.icon-button:focus-visible,.primary:focus-visible,.secondary:focus-visible,.fish-choice:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.status-rail{position:absolute;z-index:3;top:max(82px,calc(env(safe-area-inset-top) + 72px));left:14px;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100vw - 28px);pointer-events:none}.status-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid rgba(255,255,255,.64);border-radius:10px;color:#102c3d;background:rgba(255,255,255,.76);box-shadow:0 3px 12px rgba(16,44,61,.1);font-size:11px;font-weight:850;letter-spacing:.02em;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.status-chip.power{color:#5d4100;background:rgba(255,226,135,.92)}.status-chip[hidden]{display:none}.overlay{position:absolute;z-index:4;inset:0;display:grid;place-items:center;padding:max(76px,calc(env(safe-area-inset-top) + 64px)) 20px max(24px,env(safe-area-inset-bottom));pointer-events:none}.card{width:min(420px,100%);max-height:calc(100svh - max(100px,calc(env(safe-area-inset-top) + 78px)) - max(30px,env(safe-area-inset-bottom)));overflow-y:auto;padding:24px 22px 20px;color:var(--ink);background:var(--panel);border:1px solid var(--panel-edge);border-radius:24px 24px 18px 18px;box-shadow:0 18px 50px var(--shadow);text-align:center;pointer-events:auto;scrollbar-width:thin}.card[hidden]{display:none}.eyebrow{margin:0 0 8px;color:var(--warm);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,8.5vw,46px);line-height:.98;letter-spacing:-.04em}.intro{margin:11px auto 14px;max-width:35ch;color:var(--muted);font-size:14px;line-height:1.43}.lake-note{margin:-3px 0 14px;font-size:12px;font-weight:800;color:var(--ink)}.fish-title{margin:0 0 8px;text-align:left;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.fish-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-bottom:14px}.fish-choice{position:relative;min-width:0;padding:9px 2px 8px;border:1px solid var(--panel-edge);border-radius:11px;color:var(--ink);background:transparent;cursor:pointer}.fish-choice.selected{color:var(--button-ink);background:var(--button);border-color:transparent}.fish-choice.locked{color:var(--muted);opacity:.55;cursor:not-allowed}.fish-swatch{display:block;width:29px;height:13px;margin:0 auto 5px;border-radius:60% 42% 42% 60%;background:var(--fish);box-shadow:inset 0 -4px rgba(0,0,0,.16)}.fish-choice b{display:block;overflow:hidden;text-overflow:ellipsis;font-size:9px;white-space:nowrap}.fish-choice small{display:block;margin-top:2px;font-size:8px;opacity:.78;white-space:nowrap}.controls-note{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-bottom:14px;color:var(--muted);font-size:11px;font-weight:700}.key{padding:4px 7px;border:1px solid var(--panel-edge);border-radius:7px;background:var(--button-soft)}.actions{display:grid;gap:9px}.primary,.secondary{min-height:49px;border-radius:14px;cursor:pointer;font-weight:850;letter-spacing:.01em}.primary{border:0;color:var(--button-ink);background:var(--button);box-shadow:0 6px 0 rgba(0,0,0,.15)}.primary:active{transform:translateY(2px);box-shadow:0 4px 0 rgba(0,0,0,.15)}.secondary{border:1px solid var(--panel-edge);color:var(--ink);background:transparent}.result-score{margin:17px 0 18px;display:grid;grid-template-columns:1fr 1fr}.result-score>div{padding:8px}.result-score>div+div{border-left:1px solid var(--panel-edge)}.result-score strong{display:block;font-size:32px;line-height:1;font-variant-numeric:tabular-nums}.result-score span{display:block;margin-top:5px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lake-banner{position:absolute;z-index:3;left:50%;bottom:clamp(84px,11vh,112px);transform:translateX(-50%);min-width:min(280px,calc(100vw - 32px));padding:9px 18px 10px;color:#fff;background:rgba(7,37,51,.76);border:1px solid rgba(255,255,255,.38);border-radius:16px;box-shadow:0 7px 22px rgba(4,31,43,.2);text-align:center;pointer-events:none;transition:opacity .16s ease,visibility .16s ease}.lake-banner small{display:block;margin-bottom:1px;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;opacity:.8}.lake-banner strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.05;letter-spacing:-.02em}.game-shell.cinematic .hud,.game-shell.cinematic .status-rail,.game-shell.cinematic .lake-banner{opacity:0;visibility:hidden}.lake-scores{margin:0 0 14px;text-align:left}.lake-scores-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 7px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.lake-scores-title span{font-size:9px;letter-spacing:.03em;text-transform:none;opacity:.8}.lake-scores-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.lake-score{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:7px 9px;border:1px solid var(--panel-edge);border-radius:9px;background:var(--button-soft);font-size:10px;font-weight:800}.lake-score span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lake-score strong{flex:none;font-size:11px;font-variant-numeric:tabular-nums}.toast{position:absolute;z-index:5;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:9px 13px;border-radius:999px;color:#fff;background:rgba(16,44,61,.92);font-size:13px;font-weight:750;text-align:center;pointer-events:none;opacity:0;transition:opacity .18s ease}.toast.show{opacity:1}@media(max-width:370px){.card{padding-left:16px;padding-right:16px}.fish-grid{gap:3px}.fish-choice b{font-size:8px}.fish-choice small{font-size:7px}}@media(max-height:650px){.card{padding:17px 18px 15px}h1{font-size:31px}.intro{margin:8px auto 10px}.controls-note{display:none}.fish-grid{margin-bottom:10px}.fish-choice{padding:7px 2px 6px}.result-score{margin:11px 0}}@media(prefers-reduced-motion:reduce){.toast{transition:none}}
  
    