/* Shared look of the small game pages (Fishle, Fish Atlas, Hat Cam). Colours and fonts match the main page. */
:root{
  --surface:#A6F0F2; --shallow:#46B5DE; --mid:#1766A8; --deep:#0B3274; --abyss:#040C2B;
  --ink:#EAF8FF; --ink-deep:#06284A;
  --gold:#FFB703; --coral:#FF5C8A; --kelp:#3DDC97;
  --display:"Bagel Fat One", "Arial Rounded MT Bold", "Trebuchet MS", system-ui, sans-serif;
  --body:"Shantell Sans", "Comic Sans MS", "Chalkboard SE", system-ui, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{background:var(--abyss)}
body{
  margin:0; min-height:100vh; font-family:var(--body); font-size:1.05rem; line-height:1.55; color:var(--ink);
  background:linear-gradient(180deg,var(--shallow) 0%,var(--mid) 28%,var(--deep) 66%,var(--abyss) 100%);
  padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px);
}
main{max-width:720px; margin:0 auto; padding:1rem 1rem 4rem}
a{color:var(--gold)}
:focus-visible{outline:3px dashed var(--gold); outline-offset:3px; border-radius:6px}
.back{display:inline-block; font-weight:800; text-decoration:none; color:var(--ink-deep); margin:.4rem 0 .8rem}
h1{
  font-family:var(--display); font-weight:400; font-size:clamp(2.4rem,9vw,3.6rem); line-height:1; margin:.2rem 0 .4rem;
  color:var(--ink-deep); text-shadow:3px 3px 0 var(--gold), 6px 6px 0 var(--coral);
}
h2,h3{font-family:var(--display); font-weight:400; line-height:1.05; margin:0 0 .5rem}
.lede{margin:.2rem 0 1rem; color:var(--ink-deep); font-weight:600}
.status{
  font-size:.95rem; padding:.6rem .9rem; border-radius:16px; margin:0 0 1.2rem;
  background:rgba(4,12,43,.4); border:2px solid rgba(255,255,255,.15);
}
.status b{color:var(--gold)}
.panel{padding:1rem 1.2rem; border-radius:22px; background:rgba(4,12,43,.38); border:2px solid rgba(255,255,255,.18)}
.row{display:flex; flex-wrap:wrap; gap:.6rem; align-items:center}
.btn{
  font:inherit; font-weight:800; border:0; border-radius:999px; padding:.65rem 1.15rem; cursor:pointer;
  background:var(--gold); color:#2B1A00; box-shadow:0 4px 0 #B07A00; touch-action:manipulation;
}
.btn:active{transform:translateY(2px); box-shadow:0 2px 0 #B07A00}
.btn.alt{background:#fff; color:var(--ink-deep); box-shadow:0 4px 0 #9FB3C8}
.btn.coral{background:var(--coral); color:#fff; box-shadow:0 4px 0 #B02A55}
.btn[disabled]{opacity:.45; cursor:default; transform:none}
.fine{font-size:.85rem; opacity:.75}
.earned{font-weight:800; color:var(--gold)}
.toast{
  position:fixed; left:50%; bottom:calc(env(safe-area-inset-bottom,0px) + 1.2rem); transform:translateX(-50%);
  background:#fff; color:var(--ink-deep); font-weight:800; padding:.6rem 1.1rem; border-radius:999px; max-width:90vw; text-align:center;
  box-shadow:0 6px 20px rgba(0,0,0,.3); opacity:0; transition:opacity .2s; pointer-events:none; z-index:20;
}
.toast.show{opacity:1}
@media (prefers-reduced-motion: reduce){ *{transition:none !important; animation:none !important} }

.realname{color:#FFD84D}
