:root{color-scheme:dark;--navy:#112a36;--dark:#081b25;--panel:#193c4a;--panel2:#254b56;--cream:#fff4d6;--gold:#ffcd64;--green:#b1dc98;--mute:#b2ced0}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#102b36;color:var(--cream);font-family:ui-monospace,SFMono-Regular,Consolas,"Courier New",monospace}body{padding:16px 12px}.shell{max-width:1250px;margin:auto;border:4px solid #0b1e29;outline:3px solid #dfab56;background:var(--navy);box-shadow:9px 10px 0 #071821}.mast{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px 17px;background:linear-gradient(115deg,#24515d,#102934 66%);border-bottom:4px solid #eab757}.pretitle{font-size:13px;letter-spacing:3px;font-weight:900;color:var(--green)}h1{font-size:clamp(28px,4.4vw,56px);margin:7px 0 5px;line-height:1.03;letter-spacing:1px;text-shadow:4px 4px 0 #081822}h1 span{color:var(--gold)}.mast p{margin:8px 0 0;color:#d1dbce;font-size:12px}.stamp{font-size:15px;font-weight:1000;line-height:1.25;padding:13px;background:#daae5d;color:#223743;text-align:center;border:3px solid #fff0ce;box-shadow:4px 4px #0a1c25;transform:rotate(6deg);white-space:nowrap}.stamp span{color:#fff4ce}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 274px;gap:18px;padding:20px}.game-column{min-width:0}.hud{display:flex;align-items:center;justify-content:space-between;gap:6px;border:3px solid #436672;background:#09222e;padding:9px 14px 7px;font-size:12px;letter-spacing:1px;font-weight:900;color:#bce0d0}.hud b{color:var(--gold);font-size:clamp(20px,2.5vw,28px);margin-left:5px}.hud small{color:var(--gold)}.stage{position:relative;aspect-ratio:16/9;border:3px solid #436672;border-top:0;overflow:hidden;background:#1e5364}.stage canvas{display:block;width:100%;height:100%;image-rendering:pixelated;outline:0;touch-action:manipulation;cursor:crosshair}.stage canvas:focus-visible{box-shadow:inset 0 0 0 5px var(--gold)}.overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;padding:12px;background:rgba(6,24,32,.78)}[hidden]{display:none!important}.modal{width:min(95%,470px);max-height:100%;overflow:auto;background:rgba(16,48,59,.97);border:4px solid var(--gold);box-shadow:6px 6px 0 #051c24;padding:17px 22px;text-align:center}.modal-kicker{font-size:10px;letter-spacing:2px;color:#b1d49e;font-weight:bold}.modal h2{font-size:clamp(18px,2.8vw,29px);letter-spacing:2px;color:var(--gold);margin:7px 0 9px}.modal p{font-size:12px;line-height:1.55;color:#e6eddb;margin:7px 0}.modal em{font-style:normal;color:#ffdc82;font-weight:bold}.modal form{text-align:left}.modal label{display:block;font-size:10px;color:#a7d0c7;font-weight:900;letter-spacing:1px;margin:9px 0 4px}.modal input{border:2px solid #63818a;background:#fff7dd;color:#162d39;font:900 13px ui-monospace,monospace;width:100%;height:35px;padding:5px 10px;border-radius:0}.modal .micro,.micro{font-size:10px!important;line-height:1.5!important;color:#bacfc8!important}.button{border:0;cursor:pointer;padding:11px 13px;font:900 13px ui-monospace,monospace;letter-spacing:.6px;width:100%;min-height:40px}.button:focus-visible,.mini-button:focus-visible,.tabbar button:focus-visible{outline:3px solid white;outline-offset:2px}.gold{background:var(--gold);color:#172f36;box-shadow:inset 0 -4px #b77d2c}.gold:hover{background:#ffe5a6}.button:disabled{opacity:.56;cursor:default}.secondary{background:#315966;color:#fff1cc;border:2px solid #6a9296}.status{font-size:10px;color:#b7d8c3;margin-top:8px;min-height:15px}.huge-score{color:#ffd477;font-weight:900;line-height:1.1;font-size:clamp(32px,6vw,66px);text-shadow:4px 4px #071e27;margin:9px auto}.final-catches{font-size:11px;letter-spacing:1px;color:#b8d8bd}.proof-area{background:#103140;padding:9px;border:2px dashed #65868c;margin:10px 0}.proof-status{font-size:12px;color:#d1e8d3;font-weight:900}.proof-code{color:var(--gold);font-weight:900;font-size:clamp(12px,2vw,19px);margin:7px 0;letter-spacing:1px}.end-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.instructions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 2px;color:var(--mute);font-size:10px}.instructions strong{color:var(--gold)}.mini-button{cursor:pointer;border:2px solid #68818e;background:#254b59;color:#e7eedc;padding:7px 8px;font:900 10px ui-monospace,monospace}.mini-button:hover{background:#356477}.species-section{background:#0a2330;border:3px solid #426574;padding:9px 12px 11px;margin-top:7px}.species-section h2{font-size:13px;color:var(--gold);letter-spacing:1px;margin:2px 0 10px}.species-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.species-card{min-width:0;background:#173745;border:1px solid #50727a;text-align:center;padding:6px 2px;display:flex;flex-direction:column;justify-content:space-between}.species-card img{max-width:100%;height:42px;object-fit:contain;image-rendering:pixelated}.species-card strong{font-size:9px;color:#e8e3ca;line-height:1.2;min-height:25px}.species-card span{font-size:11px;font-weight:bold;color:var(--gold)}.species-card.golden{border-color:#ffca51;box-shadow:inset 0 0 11px #ac8e2a5e}.side{display:flex;flex-direction:column;gap:15px}.panel{background:#0c2834;border:3px solid #496675}.panel h2{font-size:16px;text-align:center;background:#244858;color:var(--gold);padding:12px 6px;margin:0;letter-spacing:1px}.tabbar{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid #466775}.tabbar button{background:#123440;color:#abc8c6;font:900 11px ui-monospace,monospace;border:0;cursor:pointer;padding:11px 4px}.tabbar button.active{background:#356171;color:#ffe091;box-shadow:inset 0 -3px var(--gold)}.mode{font-size:10px;color:#b7d1ce;text-align:center;letter-spacing:1px;margin:10px 8px}.scoreboard ol{list-style:none;margin:0;padding:0 10px;min-height:260px}.scoreboard li{border-bottom:1px dashed #42616b;display:flex;align-items:center;gap:7px;padding:10px 0;font-size:11px}.scoreboard li .rank{color:#ffd47d;min-width:24px}.scoreboard li .name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.scoreboard li .points{color:var(--gold);font-weight:900}.scoreboard li.no-scores{color:#a7c4c2;justify-content:center;text-align:center;padding:35px 0}.refresh{display:block;margin:9px auto 13px;width:90%}.prizes{padding-bottom:15px}.prizes .prize-star{text-align:center;color:var(--green);font-size:10px;letter-spacing:2px;margin:15px 6px 0}.prizes h2{background:none;padding:6px 4px}.prizes p,.tips p{font-size:11px;line-height:1.65;color:#d1dfd6;margin:9px 14px}.prizes a{display:block;margin:12px 13px;text-align:center;padding:9px 6px;background:#d8ae5b;color:#0b2530;font:900 11px ui-monospace,monospace;text-decoration:none}.prizes .micro{margin:10px 14px}.tips{padding-bottom:9px}.tips h2{font-size:14px}footer{border-top:2px solid #31505f;background:#0a222e;padding:10px 15px;color:#c4d4c3;font-size:10px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.float-text{position:absolute;pointer-events:none;font-size:22px;color:#ffe092;font-weight:900;text-shadow:2px 2px #123141;transition:opacity .15s}.float-text:empty{display:none}
@media(max-width:980px){.game-layout{grid-template-columns:minmax(0,1fr);padding:12px}.side{display:grid;grid-template-columns:1fr 1fr;align-items:start}.scoreboard{grid-row:span 2}.species-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}@media(max-width:640px){body{padding:5px}.shell{outline-width:2px;border-width:3px;box-shadow:none}.mast{padding:15px 12px;gap:6px}.pretitle{font-size:9px;letter-spacing:1.5px}h1{font-size:clamp(23px,6.6vw,37px)}.mast p{font-size:10px;line-height:1.4}.stamp{font-size:9px;border-width:2px;padding:7px}.game-layout{gap:10px;padding:8px}.hud{padding:7px 6px;font-size:9px;letter-spacing:0}.hud b{font-size:15px;margin-left:0}.modal{padding:8px 12px;border-width:2px;box-shadow:2px 2px #061b24}.modal h2{margin:3px 0;font-size:19px}.modal p{font-size:10px;line-height:1.28;margin:3px 0}.modal input{height:29px;font-size:11px}.modal label{font-size:9px;margin:5px 0 2px}.modal .micro{font-size:8px!important;line-height:1.15!important}.modal-kicker{font-size:9px}.button{min-height:32px;padding:7px 6px;font-size:10px}.modal .status{font-size:8px;margin-top:2px}.huge-score{font-size:32px;margin:2px}.proof-area{margin:5px 0;padding:3px}.proof-status{font-size:9px}.proof-code{font-size:11px;margin:2px}.end-actions{gap:4px}.instructions{font-size:9px;line-height:1.4}.species-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.side{display:flex}.scoreboard ol{min-height:100px}.panel h2{padding:9px 4px}.stamp{transform:rotate(3deg)}}
@media(max-width:640px){.stage:has(.overlay:not([hidden])){aspect-ratio:auto;height:390px}}
@media(max-width:360px){.modal p{display:none}.modal .micro{display:block}.modal h2{font-size:16px}}
