:root{--text: #eaf3fa;--dim: #9db1c0;--accent: #5fd4ff;--gold: #ffc857;--ok: #62d98b;--danger: #ff5d6c;--glass: rgba(9, 16, 25, .72);--glass-soft: rgba(9, 16, 25, .55);--stroke: rgba(255, 255, 255, .1);--r-common: #aebdca;--r-uncommon: #62d98b;--r-rare: #58a6ff;--r-epic: #c08bff;--r-legendary: #ffb13d;--shadow: 0 12px 40px rgba(0, 0, 0, .45);font-size:16px}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#06101a;color:var(--text);font-family:Outfit,Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none}#app{position:fixed;inset:0}#canvas-wrap{position:absolute;inset:0;cursor:crosshair;touch-action:none}#canvas-wrap canvas{display:block}#vignette{position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(ellipse at center,transparent 58%,rgba(2,8,14,.42) 100%);transition:box-shadow .25s ease}#vignette.tension-danger{box-shadow:inset 0 0 140px #ff3c5059;animation:dangerPulse .5s ease-in-out infinite alternate}@keyframes dangerPulse{0%{box-shadow:inset 0 0 110px #ff3c5038}to{box-shadow:inset 0 0 170px #ff3c5073}}.hidden{display:none!important}.btn{font-family:inherit;font-size:.95rem;font-weight:600;letter-spacing:.02em;color:var(--text);background:#ffffff12;border:1px solid var(--stroke);border-radius:10px;padding:10px 18px;cursor:pointer;transition:background .15s ease,transform .1s ease,border-color .15s ease}.btn:hover{background:#ffffff24;border-color:#ffffff40}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:default;transform:none}.btn:disabled:hover{background:#ffffff12}.btn-primary{background:linear-gradient(135deg,#1d9dd4,#1565a8);border-color:#78d7ff80}.btn-primary:hover{background:linear-gradient(135deg,#27aee6,#1b76bf)}.btn-big{font-size:1.15rem;padding:14px 26px}.btn-danger-ghost{color:#ff8d99;border-color:#ff5d6c59}.btn-danger-ghost:hover{background:#ff5d6c1f}.btn-close{padding:8px 14px}.btn-buy{background:linear-gradient(135deg,#20a45d,#157a44);border-color:#6ee6a073}.btn-buy:hover{background:linear-gradient(135deg,#27b96b,#1b8a50)}kbd{background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-bottom-width:2px;border-radius:5px;padding:1px 7px;font-family:inherit;font-size:.85em}.excl{color:var(--gold);font-weight:800}#hud{position:absolute;inset:0;z-index:10;pointer-events:none}#hud button{pointer-events:auto}.hud-corner{position:absolute;display:flex;flex-direction:column;gap:8px}.hud-topleft{top:16px;left:16px}.hud-topright{top:16px;right:16px;align-items:flex-end}.hud-bottomleft{bottom:16px;left:16px;flex-direction:row;gap:8px}.hud-bottomright{bottom:16px;right:16px}.hud-card{background:var(--glass);border:1px solid var(--stroke);border-radius:14px;padding:12px 16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:190px}.money-text{font-size:1.45rem;font-weight:800;color:var(--gold);text-shadow:0 2px 10px rgba(255,200,87,.25);transition:transform .15s ease}.money-text.pulse{animation:popPulse .4s ease}@keyframes popPulse{30%{transform:scale(1.18)}}.level-row{display:flex;align-items:center;gap:8px;margin-top:6px}.level-badge{background:linear-gradient(135deg,#2b86c8,#1c5d96);border-radius:7px;font-size:.78rem;font-weight:700;padding:2px 8px;white-space:nowrap}.xp-bar{flex:1;height:8px;border-radius:4px;background:#ffffff1a;overflow:hidden}.xp-fill{height:100%;width:0%;background:linear-gradient(90deg,#46c6ff,#7ee0ff);border-radius:4px;transition:width .4s ease}.xp-text{font-size:.72rem;color:var(--dim);margin-top:4px}.hud-clockcard{text-align:right}.clock-row{display:flex;gap:8px;align-items:center;justify-content:flex-end}.clock-text{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}.seg-chip{font-size:.72rem;font-weight:700;border-radius:6px;padding:2px 8px;text-transform:uppercase;letter-spacing:.06em}.seg-dawn{background:#ffaa6e33;color:#ffc49b}.seg-day{background:#78c8ff2e;color:#a8dcff}.seg-dusk{background:#ff82822e;color:#ffb1a6}.seg-night{background:#7882ff29;color:#b3baff}.weather-chip{font-size:.72rem;color:var(--dim);border:1px solid var(--stroke);border-radius:6px;padding:2px 8px}.loc-text{font-size:.85rem;color:var(--accent);font-weight:600;margin-top:4px}.hud-buttons{display:flex;gap:6px}.hud-btn{font-family:inherit;font-size:.8rem;font-weight:600;color:var(--text);background:var(--glass);border:1px solid var(--stroke);border-radius:9px;padding:8px 13px;cursor:pointer;backdrop-filter:blur(8px);transition:background .15s ease}.hud-btn:hover{background:#5096c84d}.hud-btn:disabled{opacity:.35;cursor:default}.gear-chip{background:var(--glass);border:1px solid var(--stroke);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;gap:1px;backdrop-filter:blur(8px)}.gear-label{font-size:.62rem;color:var(--dim);text-transform:uppercase;letter-spacing:.1em}.gear-name{font-size:.85rem;font-weight:600}.bag-chip{font-family:inherit;color:var(--text);background:var(--glass);border:1px solid var(--stroke);border-radius:10px;padding:10px 14px;font-size:.85rem;font-weight:600;cursor:pointer;backdrop-filter:blur(8px);transition:background .15s ease}.bag-chip:hover{background:#5096c84d}.prompt{position:absolute;bottom:86px;left:50%;transform:translate(-50%);background:var(--glass-soft);border:1px solid var(--stroke);border-radius:12px;padding:10px 22px;font-size:1rem;font-weight:500;text-align:center;backdrop-filter:blur(8px);white-space:nowrap;max-width:92vw}.prompt b{color:var(--accent)}.prompt.urgent{border-color:var(--gold);color:var(--gold);font-weight:800;font-size:1.25rem;animation:urgentFlash .22s ease-in-out infinite alternate}@keyframes urgentFlash{0%{transform:translate(-50%) scale(1)}to{transform:translate(-50%) scale(1.07)}}.zone-hint{position:absolute;bottom:140px;left:50%;transform:translate(-50%);font-size:.8rem;color:var(--dim);background:var(--glass-soft);border-radius:8px;padding:4px 12px}.power-wrap{position:absolute;bottom:170px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px}.power-track{position:relative;width:260px;height:18px;border-radius:9px;background:#0000008c;border:1px solid var(--stroke);overflow:hidden}.power-fill{height:100%;width:0%;background:linear-gradient(90deg,#3ec97e,#ffd95e 60%,#ff7847 90%);border-radius:9px}.power-sweet{position:absolute;left:78%;width:17%;top:0;bottom:0;background:#ffffff2e;border-left:1px solid rgba(255,255,255,.4);border-right:1px solid rgba(255,255,255,.4)}.power-label{font-size:.68rem;letter-spacing:.22em;color:var(--dim);font-weight:700}.reel-wrap{position:absolute;bottom:130px;left:50%;transform:translate(-50%);width:min(480px,92vw);background:var(--glass);border:1px solid var(--stroke);border-radius:16px;padding:14px 18px;backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:9px}.fight-head{display:flex;justify-content:space-between;align-items:center}.fight-name{font-weight:700;font-size:.95rem}.fight-stars{color:var(--gold);letter-spacing:.15em;font-size:.85rem}.surge-banner{text-align:center;font-weight:800;font-size:1.05rem;color:#fff;background:linear-gradient(90deg,#ff465a00,#ff465ad9,#ff465a00);border-radius:8px;padding:4px 0;animation:surgeFlash .3s ease-in-out infinite alternate}.surge-banner.telegraph{color:var(--gold);background:linear-gradient(90deg,#ffc35000,#ffc3508c,#ffc35000)}@keyframes surgeFlash{0%{opacity:.75}to{opacity:1}}.bar-row{display:flex;align-items:center;gap:10px}.bar-tag{width:64px;text-align:right;font-size:.64rem;font-weight:700;letter-spacing:.12em;color:var(--dim)}.bar{flex:1;height:16px;border-radius:8px;overflow:hidden;background:#00000080;border:1px solid var(--stroke)}.bar-fill{height:100%;width:0%;border-radius:8px;transition:width .08s linear}.tension-fill{background:linear-gradient(90deg,#3ec97e,#ffd95e 55%,#ff5d6c 85%)}.progress-fill{background:linear-gradient(90deg,#46c6ff,#7ee0ff)}.bite-indicator{position:absolute;z-index:12;pointer-events:none;font-size:2.6rem;font-weight:800;color:var(--gold);text-shadow:0 0 18px rgba(255,200,87,.9),0 2px 4px rgba(0,0,0,.7);transform:translate(-50%,-100%);animation:biteBounce .3s ease-in-out infinite alternate}@keyframes biteBounce{0%{margin-top:0}to{margin-top:-14px}}#toasts{position:absolute;top:18px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:50;align-items:center;pointer-events:none}.toast{background:var(--glass);border:1px solid var(--stroke);border-radius:10px;padding:9px 20px;font-size:.92rem;font-weight:600;backdrop-filter:blur(10px);box-shadow:var(--shadow);animation:toastIn .3s ease,toastOut .4s ease 3s forwards;max-width:86vw;text-align:center}.toast-success{border-color:#62d98b80;color:#9af0ba}.toast-warn{border-color:#ff5d6c80;color:#ffaab2}.toast-gold{border-color:#ffc85799;color:var(--gold);box-shadow:0 0 26px #ffc85733}@keyframes toastIn{0%{opacity:0;transform:translateY(-12px)}}@keyframes toastOut{to{opacity:0;transform:translateY(-8px)}}@media(max-width:768px){:root{font-size:13px}#wallet-mount{top:4px!important;right:4px!important;min-width:100px!important}.wallet-card{min-width:100px!important;padding:4px 6px!important}.wallet-row{gap:3px!important}.wallet-net{font-size:.5rem!important}.wallet-sub{font-size:.55rem!important}.wallet-connect{font-size:.65rem!important;padding:4px 8px!important;border-radius:5px!important}.wallet-dot{width:5px!important;height:5px!important}.wallet-addr{font-size:.65rem!important}.wallet-disconnect{width:16px!important;height:16px!important;font-size:.75rem!important}.wallet-balances{gap:6px!important;padding-top:3px!important}.wallet-bal-tag{font-size:.48rem!important}.wallet-bal-val{font-size:.7rem!important}.hud-topright{top:60px!important}.hud-topleft{top:4px;left:4px}.hud-topright{top:4px;right:4px}.hud-bottomleft{bottom:4px;left:4px;flex-direction:row;gap:4px;max-width:50vw}.hud-bottomright{bottom:4px;right:4px}.hud-card{padding:6px 10px;min-width:100px;backdrop-filter:blur(8px)}.money-text{font-size:1rem}.level-row{gap:4px;margin-top:4px}.xp-text{font-size:.65rem;margin-top:2px}.hud-clockcard .clock-row{gap:4px}.clock-text{font-size:1rem}.seg-chip{font-size:.65rem;padding:2px 6px}.weather-chip{display:none}.loc-text{font-size:.75rem;margin-top:2px}.hud-buttons{flex-wrap:nowrap;gap:3px}.hud-btn{font-size:.7rem;padding:5px 8px;border-radius:6px}.gear-chip{padding:4px 8px;min-width:unset}.gear-label{font-size:.55rem}.gear-name{font-size:.75rem}.bag-chip{padding:6px 10px;font-size:.75rem}.prompt{bottom:60px;padding:6px 14px;font-size:.85rem;max-width:90vw;white-space:normal}.prompt.urgent{font-size:1rem}.zone-hint{bottom:100px;font-size:.7rem;padding:3px 10px}.power-wrap{bottom:120px;gap:4px}.power-track{width:min(240px,70vw);height:16px}.power-label{font-size:.65rem}.reel-wrap{bottom:90px;width:min(420px,94vw);padding:10px 12px;gap:6px}.fight-head{margin-bottom:4px}.fight-name{font-size:.9rem}.fight-stars{font-size:.8rem}.surge-banner{font-size:.9rem;padding:3px 0}.bar-row{gap:6px}.bar-tag{width:50px;font-size:.6rem}.bar{height:14px}.bite-indicator{font-size:2.2rem}#toasts{top:8px;max-width:94vw}.toast{padding:6px 14px;font-size:.8rem;max-width:90vw}.xp-text{display:none}}@media(max-width:480px){:root{font-size:12px}#wallet-mount{min-width:90px!important}.wallet-card{min-width:90px!important;padding:3px 5px!important}.wallet-net{font-size:.45rem!important}.wallet-sub{font-size:.5rem!important}.wallet-connect{font-size:.6rem!important;padding:3px 6px!important}.wallet-addr{font-size:.6rem!important}.wallet-disconnect{width:14px!important;height:14px!important;font-size:.7rem!important}.wallet-balances{gap:5px!important}.wallet-bal-tag{font-size:.45rem!important}.wallet-bal-val{font-size:.65rem!important}.hud-topright{top:55px!important}.hud-card{padding:4px 8px;min-width:90px}.money-text{font-size:.95rem}.level-badge{font-size:.65rem;padding:1px 5px}.xp-bar{height:5px}.clock-text{font-size:.9rem}.loc-text{font-size:.7rem}.hud-btn{font-size:.65rem;padding:4px 6px}.gear-chip{padding:3px 6px}.gear-name{font-size:.7rem}.bag-chip{padding:5px 8px;font-size:.7rem}.prompt{bottom:55px;font-size:.8rem;padding:5px 12px}.power-track{width:min(200px,75vw);height:14px}.reel-wrap{bottom:80px;padding:8px 10px;gap:5px}.fight-name{font-size:.8rem}.bar{height:12px}.bar-tag{width:45px;font-size:.55rem}.bite-indicator{font-size:1.8rem}.toast{font-size:.75rem;padding:5px 12px}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.hud-card{padding:4px 8px}.hud-buttons{gap:2px}.hud-btn{padding:4px 6px;font-size:.7rem}.prompt{bottom:40px;font-size:.75rem}.power-wrap{bottom:80px}.reel-wrap{bottom:60px;padding:8px 10px}.zone-hint{bottom:70px}}#app.shake #canvas-wrap{animation:shakeAnim .35s ease}@keyframes shakeAnim{20%{transform:translate(-7px,4px)}40%{transform:translate(6px,-5px)}60%{transform:translate(-4px,3px)}80%{transform:translate(3px,-2px)}}.screen{position:absolute;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#040a118c;backdrop-filter:blur(4px);animation:screenIn .22s ease}@keyframes screenIn{0%{opacity:0}}#screen-menu{background:linear-gradient(180deg,#040a1240,#040a12b8);backdrop-filter:none}.menu-box{text-align:center;padding:30px}.game-title{font-size:clamp(3.2rem,9vw,5.6rem);font-weight:800;letter-spacing:.14em;background:linear-gradient(180deg,#d9f2ff 20%,#4db9e8 70%,#1b6fa8);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 18px 60px rgba(64,180,240,.35)}.game-sub{color:var(--dim);letter-spacing:.3em;text-transform:uppercase;font-size:.85rem;margin:6px 0 34px}.menu-buttons{display:flex;flex-direction:column;gap:10px;width:280px;margin:0 auto}.menu-save-info{margin-top:18px;font-size:.8rem;color:var(--dim)}.menu-credits{margin-top:26px;font-size:.72rem;color:#9db1c08c}.panel{background:var(--glass);border:1px solid var(--stroke);border-radius:18px;padding:26px 30px;box-shadow:var(--shadow);backdrop-filter:blur(14px);max-height:88vh;display:flex;flex-direction:column;animation:panelIn .25s ease}@keyframes panelIn{0%{opacity:0;transform:translateY(14px) scale(.98)}}.panel-narrow{width:min(420px,92vw)}.panel-mid{width:min(620px,94vw)}.panel-wide{width:min(880px,95vw);height:min(640px,88vh)}.panel-title{font-size:1.45rem;font-weight:800;letter-spacing:.03em}.panel-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}.panel-head .panel-title{flex:1}.howto-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin:18px 0 22px}.howto-list li{font-size:.92rem;color:#cfdde8;line-height:1.45}.howto-list b{color:var(--text)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.95rem}.setting-row:first-of-type{margin-top:8px}.setting-row input[type=range]{width:150px;accent-color:var(--accent)}.setting-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}.setting-row select{font-family:inherit;background:#ffffff14;color:var(--text);border:1px solid var(--stroke);border-radius:8px;padding:6px 10px}.setting-danger{border-bottom:none;margin-bottom:10px}#screen-settings .btn-primary,#screen-howto .btn-primary{margin-top:14px;align-self:center;min-width:160px}.tab-row{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.tab-btn{font-family:inherit;font-size:.88rem;font-weight:600;color:var(--dim);background:#ffffff0d;border:1px solid var(--stroke);border-radius:9px;padding:8px 18px;cursor:pointer;transition:all .15s ease}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--text);background:#4696d24d;border-color:#78c8ff73}.shop-content{flex:1;overflow-y:auto;padding-right:6px}.shop-item{display:flex;align-items:center;gap:16px;background:#ffffff0a;border:1px solid var(--stroke);border-radius:12px;padding:14px 16px;margin-bottom:9px}.shop-item.equipped{border-color:#78c8ff80;background:#4696d21a}.shop-item.locked{opacity:.55}.shop-item-info{flex:1}.shop-item-name{font-weight:700;font-size:1rem;display:flex;gap:8px;align-items:center}.tier-badge{font-size:.62rem;font-weight:800;letter-spacing:.08em;color:#0a141e;background:linear-gradient(135deg,#9fd9ff,#5fb6e8);border-radius:5px;padding:1px 7px}.shop-item-stats{font-size:.8rem;color:var(--dim);margin-top:3px}.stat-up{color:var(--ok);font-weight:600}.shop-item-blurb{font-size:.76rem;color:#9db1c0b3;margin-top:2px;font-style:italic}.shop-item-action{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:120px}.lock-note{font-size:.72rem;color:var(--dim)}.equipped-tag{color:var(--accent);font-weight:700;font-size:.85rem;padding:8px 4px}.sell-row{display:flex;align-items:center;gap:14px;background:#ffffff0a;border:1px solid var(--stroke);border-radius:10px;padding:10px 14px;margin-bottom:7px;font-size:.9rem}.sell-row .fish-mini{width:44px;height:34px;flex-shrink:0}.sell-name{flex:1;font-weight:600}.sell-meta{color:var(--dim);font-size:.8rem}.sell-value{color:var(--gold);font-weight:700;min-width:64px;text-align:right}.sell-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 4px 2px;gap:12px}.sell-total{font-size:1rem;font-weight:700}.shop-empty{text-align:center;color:var(--dim);padding:50px 0;font-size:.95rem}.journal-stats{color:var(--dim);font-size:.85rem}.journal-scroll{flex:1;overflow-y:auto;padding-right:6px}.rarity-section{margin-bottom:18px}.rarity-head{font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px;padding-left:2px}.journal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.journal-card{background:#ffffff0a;border:1px solid var(--stroke);border-radius:12px;padding:12px;text-align:center;transition:transform .15s ease}.journal-card:hover{transform:translateY(-2px)}.journal-card .fish-svg{width:90px;height:72px}.journal-card.locked .fish-svg{filter:grayscale(1) brightness(.25)}.jc-name{font-weight:700;font-size:.92rem;margin-top:4px}.jc-meta{font-size:.74rem;color:var(--dim);margin-top:3px;line-height:1.5}.jc-hint{font-size:.7rem;color:#9db1c0a6;margin-top:4px;font-style:italic;line-height:1.45}.jc-count{color:var(--accent);font-weight:600}.map-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px;align-content:start}.map-card{border:1px solid var(--stroke);border-radius:14px;overflow:hidden;background:#ffffff0a;display:flex;flex-direction:column}.map-thumb{height:110px;position:relative}.map-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(9,16,25,.9))}.map-thumb[data-loc=lake]{background:linear-gradient(160deg,#7fcab5,#1c5e51 60%,#0d3a33)}.map-thumb[data-loc=river]{background:linear-gradient(160deg,#9fd8c8,#2a7d8f 60%,#14454f)}.map-thumb[data-loc=pier]{background:linear-gradient(160deg,#ffd9a0,#3e85b8 55%,#1b4565)}.map-thumb[data-loc=ocean]{background:linear-gradient(160deg,#6f9fd8,#1d3f78 55%,#0a1e3e)}.map-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:7px;flex:1}.map-card-name{font-weight:800;font-size:1.1rem;display:flex;align-items:center;gap:10px}.current-tag{font-size:.64rem;font-weight:800;letter-spacing:.1em;color:#0a141e;background:var(--accent);border-radius:5px;padding:2px 7px}.map-card-blurb{font-size:.8rem;color:var(--dim);line-height:1.45;flex:1}.map-card-fish{font-size:.75rem;color:var(--accent)}.map-req{font-size:.78rem;color:var(--dim)}.map-req .ok{color:var(--ok)}.map-req .bad{color:var(--danger)}#catch-root{position:absolute;inset:0;pointer-events:none;z-index:120}#catch-root>*{pointer-events:auto}.catch-overlay{position:absolute;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;background:#03080e73;animation:screenIn .25s ease}.catch-card{width:min(400px,92vw);background:linear-gradient(180deg,#101b28f5,#091019f5);border:2px solid var(--rarity, var(--stroke));border-radius:20px;padding:26px 28px 22px;text-align:center;position:relative;box-shadow:0 0 60px color-mix(in srgb,var(--rarity, #fff) 28%,transparent),var(--shadow);animation:cardPop .45s cubic-bezier(.18,1.4,.4,1)}@keyframes cardPop{0%{opacity:0;transform:scale(.7) translateY(30px)}}.catch-ribbon{position:absolute;top:-14px;left:50%;transform:translate(-50%);font-size:.72rem;font-weight:800;letter-spacing:.16em;color:#16240e;background:linear-gradient(135deg,#b9f08e,#62d98b);border-radius:8px;padding:5px 16px;white-space:nowrap;box-shadow:0 4px 18px #62d98b73}.catch-ribbon.record{color:#2a1c04;background:linear-gradient(135deg,#ffe29b,#ffb13d);box-shadow:0 4px 18px #ffb13d73}.catch-rarity{font-size:.72rem;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--rarity, var(--dim))}.catch-name{font-size:1.7rem;font-weight:800;margin:2px 0 10px}.catch-card .fish-svg{width:170px;height:130px;filter:drop-shadow(0 8px 22px rgba(0,0,0,.5))}.catch-stats{display:flex;justify-content:center;gap:22px;margin:12px 0 4px}.catch-stat{display:flex;flex-direction:column;gap:2px}.catch-stat .cs-label{font-size:.62rem;letter-spacing:.14em;color:var(--dim);text-transform:uppercase}.catch-stat .cs-value{font-size:1.05rem;font-weight:700}.catch-value{font-size:1.25rem;font-weight:800;color:var(--gold);margin:8px 0 16px}.catch-xp{font-size:.8rem;color:var(--accent);margin-top:-12px;margin-bottom:14px}.confetti-bit{position:absolute;width:8px;height:8px;border-radius:2px;pointer-events:none;animation:confettiFall 1.4s ease-out forwards}@keyframes confettiFall{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(var(--cx),var(--cy)) rotate(540deg)}}.fish-svg{overflow:visible}.fish-svg.shape-slim{transform:scaleY(.78)}.fish-svg.shape-long{transform:scale(1.15,.55)}.fish-svg.shape-flat{transform:scaleY(1.18)}.fish-svg.shape-billed{transform:scaleX(1.1)}#boot-loader{position:absolute;inset:0;z-index:500;background:#06101a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.boot-spin{width:44px;height:44px;border-radius:50%;border:3px solid rgba(95,212,255,.18);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot-text{font-weight:700;letter-spacing:.18em}.boot-sub{font-size:.75rem;color:var(--dim)}.shop-content::-webkit-scrollbar,.journal-scroll::-webkit-scrollbar,.map-grid::-webkit-scrollbar{width:8px}.shop-content::-webkit-scrollbar-thumb,.journal-scroll::-webkit-scrollbar-thumb,.map-grid::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:4px}@media(max-width:760px){:root{font-size:14px}.hud-card{min-width:150px;padding:9px 12px}.hud-buttons{flex-wrap:wrap;justify-content:flex-end}.prompt{bottom:70px;white-space:normal;width:92vw}.power-wrap{bottom:150px}.power-track{width:200px}.reel-wrap{bottom:110px}.hud-bottomleft{display:none}.panel{padding:18px}.panel-wide{height:92vh}}#wallet-mount{position:fixed;top:16px;right:16px;z-index:150;pointer-events:auto;min-width:220px}.hud-topright{top:130px!important}.hud-card.wallet-card{margin-bottom:0}.wallet-card{display:flex;flex-direction:column;gap:8px;min-width:220px;border:1px solid rgba(132,220,255,.18)}.wallet-row{display:flex;align-items:center;gap:8px;justify-content:space-between}.wallet-net{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700}.wallet-sub{font-size:.7rem;color:var(--dim);letter-spacing:.04em}.wallet-connect{font-size:.82rem;padding:7px 14px;border-radius:9px}.wallet-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px #62d98b99;flex-shrink:0}.wallet-addr{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.86rem;font-weight:600;letter-spacing:.04em;color:var(--text);text-decoration:none;flex:1}.wallet-addr:hover{color:var(--accent)}.wallet-disconnect{width:22px;height:22px;border-radius:50%;background:#ff5d6c2e;border:1px solid rgba(255,93,108,.4);color:var(--danger);cursor:pointer;line-height:1;font-size:1rem;font-weight:700;padding:0;display:flex;align-items:center;justify-content:center}.wallet-disconnect:hover{background:#ff5d6c52}.wallet-balances{display:flex;gap:16px;align-items:center;padding-top:4px;border-top:1px solid var(--stroke)}.wallet-bal{display:flex;flex-direction:column;gap:1px}.wallet-bal-tag{font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-weight:700}.wallet-bal-val{font-size:.95rem;font-weight:700;color:var(--text)}.wallet-modal{display:flex;align-items:center;justify-content:center;position:fixed;inset:0;z-index:200;background:#02080eb3;backdrop-filter:blur(6px)}.wallet-pick-panel{max-width:380px}.wallet-warn{font-size:.78rem;color:var(--gold);background:#ffc85714;border:1px solid rgba(255,200,87,.25);border-radius:8px;padding:8px 12px;margin:8px 0 14px;line-height:1.4}.wallet-pick-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.wallet-pick{display:flex;align-items:center;gap:12px;background:#ffffff0f;border:1px solid var(--stroke);border-radius:12px;padding:12px 16px;font-family:inherit;font-size:.95rem;font-weight:600;color:var(--text);cursor:pointer;transition:background .15s ease,border-color .15s ease}.wallet-pick:hover{background:#ffffff1f;border-color:#84dcff66}.wallet-pick:disabled{opacity:.6;cursor:wait}.wallet-pick-icon{width:28px;height:28px;border-radius:6px;flex-shrink:0}.wallet-pick-name{flex:1;text-align:left}.wallet-pick-cancel{width:100%}.wallet-empty{color:var(--dim);font-size:.9rem;line-height:1.55;margin-bottom:14px}.wallet-empty a{color:var(--accent)}.wallet-mobile-hint{font-size:.85rem;line-height:1.65;text-align:left}.wallet-mobile-hint strong{color:var(--text);font-weight:700}.wallet-err{font-size:.82rem;color:var(--danger);background:#ff5d6c14;border-radius:8px;padding:8px 12px;margin-top:10px}.btn-onchain{margin-left:6px;font-size:.78rem;padding:7px 12px;background:linear-gradient(135deg,#9f7aea38,#667eea38);border:1px solid rgba(159,122,234,.55);color:#c4b5fd}.btn-onchain:hover{background:linear-gradient(135deg,#9f7aea59,#667eea59);border-color:#9f7aeacc}.btn-onchain:disabled{opacity:.6;cursor:wait}.fish-img{display:block;margin:0 auto;object-fit:contain;filter:drop-shadow(0 8px 22px rgba(0,0,0,.5))}.catch-card .fish-img{width:200px;height:170px}.catch-ribbon.jackpot{color:#1a0c00;background:linear-gradient(135deg,#ff9b3d,#ffd93d,#ff5d6c,#ffd93d);background-size:300% 100%;animation:jackpotShine 2s linear infinite;letter-spacing:.22em;box-shadow:0 6px 28px #ffb13db3;font-size:.84rem;padding:7px 22px}@keyframes jackpotShine{0%{background-position:0% 50%}to{background-position:300% 50%}}.catch-card-jackpot{--rarity: #ffd93d;border:2px solid rgba(255,217,61,.6);box-shadow:0 0 0 1px #ffd93d4d,0 16px 60px #ff9b3d73,0 0 80px #ff5d6c59;animation:jackpotPulse 1.6s ease-in-out infinite alternate}@keyframes jackpotPulse{0%{box-shadow:0 0 0 1px #ffd93d4d,0 16px 60px #ff9b3d73,0 0 80px #ff5d6c59}to{box-shadow:0 0 0 1px #ffd93d99,0 22px 80px #ff9b3db3,0 0 130px #ff5d6c99}}.catch-jackpot-value{font-size:1.9rem;font-weight:800;background:linear-gradient(135deg,#ffd93d,#ff9b3d);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 24px rgba(255,217,61,.4);line-height:1.05;margin:14px 0 6px}.catch-jackpot-sub{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:700;background:none;-webkit-text-fill-color:var(--gold);margin-top:2px}.wallet-withdraw{padding-top:4px;border-top:1px solid var(--stroke);display:flex;flex-direction:column;gap:4px}.btn-withdraw{background:linear-gradient(135deg,#1d9dd4,#6ad6a4);border:1px solid rgba(120,230,200,.55);color:#052015;font-weight:700;letter-spacing:.04em;padding:9px 14px;font-size:.92rem;width:100%;box-shadow:0 6px 22px #6ad6a447}.btn-withdraw:hover{filter:brightness(1.08)}.btn-withdraw:disabled{background:linear-gradient(135deg,#1d9dd459,#6ad6a459);color:#052015a6;box-shadow:none;cursor:not-allowed}.wallet-withdraw-sub{font-size:.66rem;color:var(--dim);text-align:center;letter-spacing:.04em}.profile-modal .modal-content{width:min(900px,95vw);max-height:90vh;overflow-y:auto}.profile-content{display:flex;flex-direction:column;gap:24px}.profile-header{display:flex;gap:32px;padding:24px;background:linear-gradient(135deg,#4a9eff26,#26de8126);border-radius:12px;border:2px solid rgba(255,255,255,.1)}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:12px}.profile-avatar-large{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:64px;border:4px solid rgba(255,255,255,.2);box-shadow:0 8px 24px #0000004d}.avatar-emoji{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.btn-change-avatar{padding:8px 16px;font-size:14px}.profile-info-section{flex:1;display:flex;flex-direction:column;gap:12px}.profile-username-row{display:flex;align-items:center;gap:12px}.profile-username{margin:0;font-size:32px;font-weight:800;color:#fff}.btn-icon{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);padding:6px 12px;border-radius:6px;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#fff3;transform:scale(1.05)}.btn-edit-username,.btn-edit-bio{font-size:16px}.profile-wallet{display:flex;align-items:center;gap:8px;color:#ffffffb3;font-size:14px}.wallet-label{font-weight:600}.wallet-addr{font-family:monospace;background:#0000004d;padding:4px 8px;border-radius:4px}.profile-bio{display:flex;align-items:flex-start;gap:12px;background:#0003;padding:12px;border-radius:8px;margin-top:8px}.bio-text{flex:1;font-size:16px;line-height:1.5}.bio-text em{opacity:.6}.profile-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:0 24px}.stat-card{background:linear-gradient(135deg,#4a9eff1a,#26de811a);border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-4px);border-color:#fff3}.stat-icon{font-size:32px;margin-bottom:8px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.stat-value{font-size:24px;font-weight:800;color:#fff;margin-bottom:4px}.stat-label{font-size:14px;color:#ffffffb3;font-weight:600}.profile-achievements{padding:0 24px 24px}.achievements-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.achievements-header h4{margin:0;font-size:24px;font-weight:800}.achievements-progress{display:flex;align-items:center;gap:12px;flex:1;max-width:400px}.progress-bar{flex:1;height:16px;background:#0000004d;border-radius:8px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.2)}.progress-fill{height:100%;background:linear-gradient(90deg,#26de81,#20bf6b);transition:width .5s ease;box-shadow:0 0 12px #26de8199}.progress-text{font-size:14px;font-weight:700;color:#fff;white-space:nowrap}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.achievement-badge{display:flex;align-items:center;gap:12px;padding:16px;background:#0003;border:2px solid rgba(255,255,255,.1);border-radius:12px;transition:all .2s;position:relative}.achievement-badge.unlocked{background:linear-gradient(135deg,#4a9eff26,#26de8126);border-color:#26de8180}.achievement-badge.locked{opacity:.5;filter:grayscale(.8)}.achievement-badge:hover{transform:translateY(-2px);border-color:#ffffff4d}.badge-icon{font-size:48px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));min-width:48px}.badge-info{flex:1;display:flex;flex-direction:column;gap:4px}.badge-label{font-size:16px;font-weight:700;color:#fff}.badge-desc{font-size:14px;color:#ffffffb3;line-height:1.4}.badge-reward{font-size:13px;color:gold;font-weight:700;margin-top:4px}.badge-check{position:absolute;top:8px;right:8px;width:24px;height:24px;background:#26de81;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:900;box-shadow:0 2px 8px #26de8199}.badge-lock{position:absolute;top:8px;right:8px;font-size:20px;opacity:.5}.profile-footer{text-align:center;padding:16px;color:#ffffff80;font-size:14px}.avatar-picker-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s}.avatar-picker-content{background:linear-gradient(135deg,#1e3c72,#2a5298);padding:32px;border-radius:16px;border:2px solid rgba(255,255,255,.2);box-shadow:0 16px 48px #00000080;max-width:600px;max-height:80vh;overflow-y:auto}.avatar-picker-content h3{margin:0 0 24px;font-size:28px;font-weight:800;text-align:center;color:#fff}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-bottom:24px}.avatar-option{aspect-ratio:1;border:2px solid rgba(255,255,255,.2);border-radius:12px;background:#0003;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px}.avatar-option:hover{transform:scale(1.05);border-color:#ffffff80;box-shadow:0 4px 16px #0000004d}.avatar-option .avatar-emoji{font-size:40px}.avatar-option .avatar-label{font-size:12px;font-weight:600;color:#ffffffe6;text-align:center}.avatar-picker-content .btn-cancel{width:100%;padding:12px;margin-top:8px}.input-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s;padding:16px}.input-modal-content{background:linear-gradient(135deg,#1e3c72,#2a5298);padding:28px;border-radius:16px;border:2px solid rgba(255,255,255,.2);box-shadow:0 16px 48px #00000080;width:100%;max-width:440px}.input-modal-content h3{margin:0 0 16px;font-size:22px;font-weight:800;color:#fff}.input-modal-label{display:block;font-size:13px;font-weight:600;color:#ffffffbf;margin-bottom:8px}.input-modal-field{width:100%;box-sizing:border-box;padding:12px 14px;font-size:16px;color:#fff;background:#0000004d;border:2px solid rgba(255,255,255,.25);border-radius:10px;outline:none;font-family:inherit;resize:vertical}.input-modal-field:focus{border-color:#4fc3f7;box-shadow:0 0 0 3px #4fc3f740}.input-modal-counter{text-align:right;font-size:12px;color:#fff9;margin-top:6px}.input-modal-actions{display:flex;gap:12px;margin-top:20px}.input-modal-actions .btn{flex:1;padding:12px}@media(max-width:768px){.profile-header{flex-direction:column;align-items:center;text-align:center}.profile-stats-grid{grid-template-columns:repeat(2,1fr)}.achievements-grid{grid-template-columns:1fr}.profile-username{font-size:24px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.payment-options{display:flex;flex-direction:column;gap:8px;min-width:200px}.payment-options .btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 16px;min-height:60px;transition:all .2s}.payment-options .pay-label{font-size:12px;font-weight:600;opacity:.8;margin-bottom:4px}.payment-options .pay-amount{font-size:16px;font-weight:800}.btn-sol{background:linear-gradient(135deg,#14f195,#9945ff);border:2px solid rgba(255,255,255,.2)}.btn-sol:hover{background:linear-gradient(135deg,#1affaa,#a5f);border-color:#fff6;transform:translateY(-2px);box-shadow:0 4px 16px #9945ff66}.btn-tide{background:linear-gradient(135deg,#4a9eff,#26de81);border:2px solid rgba(255,255,255,.2)}.btn-tide:hover{background:linear-gradient(135deg,#5aaeff,#36ee91);border-color:#fff6;transform:translateY(-2px);box-shadow:0 4px 16px #26de8166}@media(max-width:768px){.payment-options{min-width:150px}.payment-options .btn{min-height:50px;padding:8px 12px}.payment-options .pay-label{font-size:11px}.payment-options .pay-amount{font-size:14px}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,#1a2332,#2a3444);border:2px solid var(--accent);border-radius:16px;max-width:90vw;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid var(--stroke);background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,transparent 100%)}.modal-header h2{margin:0;font-size:1.8rem;color:var(--accent);text-shadow:0 2px 8px rgba(0,0,0,.5)}.btn-close{background:#ffffff1a;border:none;color:#fff;font-size:2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.btn-close:hover{background:#fff3;transform:rotate(90deg)}.journal-modal{width:95vw;max-width:1400px}.journal-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:20px 24px;background:#0000004d}.stat-box{text-align:center;padding:16px;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border-radius:12px;border:1px solid rgba(255,255,255,.1)}.stat-value{font-size:2rem;font-weight:700;color:var(--accent);text-shadow:0 2px 8px rgba(0,0,0,.5)}.stat-label{font-size:.85rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:.1em;margin-top:4px}.journal-rewards{padding:16px 24px;background:linear-gradient(90deg,rgba(255,215,0,.1),transparent);border-left:4px solid gold;margin:0 24px 16px;border-radius:8px}.journal-rewards h3{margin:0 0 12px;color:gold}.reward-claim{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.btn-claim{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.btn-claim:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4caf5066}.journal-filters{display:flex;gap:8px;padding:16px 24px;flex-wrap:wrap;border-bottom:2px solid var(--stroke)}.filter-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s;text-transform:uppercase;letter-spacing:.05em}.filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.filter-btn:hover{background:#fff3}.journal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;padding:24px;overflow-y:auto;max-height:calc(90vh - 400px)}.journal-card{background:linear-gradient(135deg,#ffffff14,#ffffff08);border:2px solid var(--rarity-color, rgba(255,255,255,.2));border-radius:12px;overflow:hidden;transition:all .3s;cursor:pointer}.journal-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006;border-color:var(--rarity-color)}.journal-card.uncaught{opacity:.5;filter:grayscale(1)}.card-image{height:150px;display:flex;align-items:center;justify-content:center;padding:16px}.card-image img{max-width:100%;max-height:100%;object-fit:contain}.fish-silhouette{font-size:4rem;opacity:.6}.card-info{padding:12px;background:#0006}.card-info h4{margin:0 0 8px;font-size:1.1rem;color:#fff}.rarity-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.stats-row{display:flex;justify-content:space-between;font-size:.85rem;color:#fffc;padding:4px 0}.card-unknown{height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.silhouette{font-size:5rem;opacity:.3;margin-bottom:12px}.unknown-text{font-size:2rem;font-weight:700;color:#ffffff4d;margin-bottom:12px}.daily-login-modal{width:600px;max-width:95vw}.streak-display{text-align:center;padding:32px 24px;background:linear-gradient(135deg,#ff640033,#ff96001a)}.streak-flame{font-size:5rem;margin-bottom:12px;animation:flame 1s ease-in-out infinite}@keyframes flame{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.3)}}.streak-number{font-size:4rem;font-weight:900;color:#f60;text-shadow:0 0 20px rgba(255,100,0,.6);margin-bottom:8px}.streak-label{font-size:1.2rem;text-transform:uppercase;letter-spacing:.2em;color:#ffffffe6;font-weight:600}.reward-available,.reward-claimed{padding:24px;text-align:center}.reward-available h3{margin:0 0 20px;color:var(--accent);font-size:1.5rem}.reward-preview{background:linear-gradient(135deg,#4caf5033,#4caf501a);border:2px solid #4CAF50;border-radius:16px;padding:24px;margin:20px 0}.reward-amount{font-size:2.5rem;font-weight:900;color:#4caf50;text-shadow:0 0 20px rgba(76,175,80,.6);margin-bottom:8px}.bonus-badge{display:inline-block;background:linear-gradient(135deg,gold,#f60);padding:8px 16px;border-radius:20px;font-weight:700;font-size:.9rem;margin-top:8px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.btn-claim-daily{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:16px 48px;border-radius:12px;font-size:1.2rem;font-weight:700;cursor:pointer;margin-top:16px;transition:all .3s;text-transform:uppercase;letter-spacing:.1em}.btn-claim-daily:hover{transform:translateY(-2px);box-shadow:0 8px 24px #4caf5066}.reward-claimed{padding:48px 24px}.checkmark{font-size:5rem;color:#4caf50;margin-bottom:16px}.next-reward{color:#fff9;font-size:.9rem;margin-top:8px}.streak-calendar{padding:24px;border-top:2px solid var(--stroke)}.streak-calendar h3{margin:0 0 16px;color:var(--accent)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-day{aspect-ratio:1;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;position:relative}.calendar-day.claimed{background:linear-gradient(135deg,#4caf504d,#4caf501a);border-color:#4caf50}.day-number{font-size:.75rem;color:#ffffffb3;margin-bottom:4px}.day-check{font-size:1.5rem;color:#4caf50}.day-bonus{position:absolute;top:4px;right:4px;font-size:1rem}.milestone-tracker{padding:24px;border-top:2px solid var(--stroke)}.milestone-tracker h3{margin:0 0 16px;color:var(--accent)}.milestones{display:flex;flex-direction:column;gap:12px}.milestone{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.milestone-day{font-weight:700;color:var(--accent);font-size:1.1rem}.milestone-label{color:#ffffffb3}.milestone-reward{color:#4caf50;font-weight:600}.milestone-progress{color:#ffffff80;font-size:.85rem}.login-stats{padding:16px 24px;background:#0000004d;display:flex;justify-content:space-around}.stat-item{display:flex;flex-direction:column;align-items:center}.daily-reward-toast{position:fixed;top:100px;right:24px;z-index:10001;animation:slideInRight .5s ease,fadeOut .5s ease 3.5s forwards}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.challenges-widget{position:fixed;top:300px;right:24px;width:320px;background:linear-gradient(135deg,#1a2332f2,#2a3444f2);border:2px solid var(--accent);border-radius:12px;box-shadow:0 4px 16px #0006;z-index:100;transition:all .3s ease}.challenges-widget:not(.expanded) .widget-body{max-height:0;overflow:hidden;padding:0}.challenges-widget.expanded .widget-body{max-height:400px;padding:12px}.widget-header{padding:12px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;background:#ffffff0d;border-radius:10px 10px 0 0}.widget-header:hover{background:#ffffff14}.widget-title{font-weight:700;font-size:.95rem;color:var(--accent)}.widget-progress{background:linear-gradient(135deg,#4caf50,#45a049);padding:4px 12px;border-radius:12px;font-weight:700;font-size:.85rem}.widget-body{transition:all .3s ease;overflow:hidden}.challenge-item{padding:12px;background:#ffffff0d;border-radius:8px;margin-bottom:8px;border-left:3px solid var(--accent)}.challenge-item.completed{opacity:.6;border-left-color:#4caf50}.challenge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.challenge-label{font-size:.9rem;font-weight:600;color:#fff}.challenge-check{color:#4caf50;font-size:1.2rem}.challenge-reward{color:#4caf50;font-weight:700;font-size:.85rem}.challenge-progress-bar{position:relative;background:#0006;height:20px;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#4CAF50);transition:width .5s ease;border-radius:10px}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8)}.challenge-toast{position:fixed;top:100px;left:50%;transform:translate(-50%);z-index:10001;animation:slideDown .5s ease,fadeOut .5s ease 3.5s forwards}@keyframes slideDown{0%{transform:translate(-50%,-100px);opacity:0}to{transform:translate(-50%);opacity:1}}.toast-content{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#4caf50f2,#45a049f2);padding:16px 24px;border-radius:12px;box-shadow:0 8px 24px #0006;border:2px solid #4CAF50}.toast-icon{font-size:2.5rem}.toast-text{color:#fff}.toast-title{font-size:1.1rem;font-weight:700;margin-bottom:4px}.toast-subtitle{font-size:.9rem;opacity:.9}.toast-reward{font-size:1rem;font-weight:700;margin-top:4px;color:#ffeb3b}.achievements-modal{width:95vw;max-width:1200px}.achievements-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px 24px;background:#0000004d}.achievements-filters{display:flex;gap:8px;padding:16px 24px;border-bottom:2px solid var(--stroke)}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;padding:24px;overflow-y:auto;max-height:calc(90vh - 350px)}.achievement-card{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:2px solid rgba(255,255,255,.2);border-radius:12px;transition:all .3s}.achievement-card.locked{opacity:.5;filter:grayscale(.8)}.achievement-card.unlocked{border-color:var(--accent);background:linear-gradient(135deg,rgba(255,215,0,.1),transparent)}.achievement-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d}.achievement-icon{font-size:3rem;min-width:60px;text-align:center}.achievement-content{flex:1}.achievement-title{margin:0 0 4px;font-size:1.1rem;color:#fff;font-weight:700}.achievement-desc{margin:0 0 8px;font-size:.85rem;color:#ffffffb3}.achievement-progress{margin-top:8px}.progress-bar{background:#0006;height:8px;border-radius:4px;overflow:hidden;margin-bottom:4px}.achievement-reward{color:#4caf50;font-weight:600;font-size:.85rem;margin-top:4px}.achievement-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10002;animation:achievementPop .5s ease,fadeOut .5s ease 4.5s forwards}@keyframes achievementPop{0%{transform:translate(-50%,-50%) scale(0);opacity:0}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.toast-icon-large{font-size:5rem;text-align:center;margin-bottom:16px;animation:bounce 1s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.toast-desc{font-size:.9rem;opacity:.8;margin-top:4px}.weather-widget{position:fixed;top:140px;left:24px;background:linear-gradient(135deg,#1a2332eb,#2a3444eb);border:2px solid rgba(255,255,255,.2);border-radius:12px;padding:12px 16px;backdrop-filter:blur(10px);box-shadow:0 4px 16px #0000004d;z-index:100;min-width:200px}.weather-display{display:flex;align-items:center;gap:12px}.weather-icon{font-size:2.5rem}.weather-info{flex:1}.weather-name{font-weight:700;font-size:1.1rem;color:#fff;margin-bottom:4px}.weather-effects{display:flex;flex-direction:column;gap:2px}.effect{font-size:.75rem;padding:2px 8px;border-radius:12px;display:inline-block;font-weight:600}.effect.positive{background:#4caf504d;color:#4caf50;border:1px solid #4CAF50}.effect.negative{background:#f443364d;color:#f44336;border:1px solid #f44336}.moon-phase{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:8px;font-size:.85rem}.moon-icon{font-size:1.5rem}.weather-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:50}.weather-overlay.fog{background:linear-gradient(180deg,#c8c8dc4d,#b4b4c833,#a0a0b41a);animation:fogDrift 20s ease-in-out infinite}@keyframes fogDrift{0%,to{opacity:.3}50%{opacity:.5}}.lightning-flash{position:fixed;top:0;left:0;width:100%;height:100%;background:#fff;pointer-events:none;z-index:51;animation:flash .2s ease}@keyframes flash{0%,to{opacity:0}50%{opacity:.8}}body.weather-rain{filter:brightness(.85) saturate(1.1)}body.weather-storm{filter:brightness(.7) saturate(.9)}body.weather-fog{filter:contrast(.9) saturate(.8)}body.weather-cloudy{filter:brightness(.95)}.tournament-widget{position:fixed;bottom:24px;right:24px;min-width:280px;background:linear-gradient(135deg,#1a2332f2,#2a3444f2);border:2px solid gold;border-radius:12px;box-shadow:0 4px 16px #0006;z-index:100;animation:slideInRight .5s ease}.tournament-active,.tournament-upcoming{padding:16px;position:relative}.tournament-close{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:1.3rem;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.tournament-close:hover{background:#fff3;border-color:#fff6;transform:scale(1.1)}.tournament-close:active{transform:scale(.95)}.tournament-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.tournament-icon{font-size:1.5rem}.tournament-title{font-weight:700;font-size:1rem;color:gold}.tournament-name{font-size:.95rem;font-weight:600;color:#fff;margin-bottom:8px}.tournament-timer{font-size:2rem;font-weight:900;color:#4caf50;text-align:center;margin:12px 0;text-shadow:0 0 10px rgba(76,175,80,.5)}.tournament-timer.urgent{color:#f44336;animation:pulse 1s ease-in-out infinite;text-shadow:0 0 10px rgba(244,67,54,.8)}.tournament-score{font-size:1.3rem;font-weight:700;color:var(--accent);text-align:center;margin:8px 0}.tournament-catches{text-align:center;color:#ffffffb3;font-size:.9rem}.tournament-countdown{font-size:1.2rem;font-weight:700;color:var(--accent);text-align:center;margin:12px 0}.tournament-compact{padding:10px 12px}.tournament-compact .tournament-header{margin-bottom:6px}.tournament-compact .tournament-name{font-size:.85rem;margin-bottom:4px}.tournament-countdown-compact{font-size:.9rem;font-weight:600;color:#ffffffb3;text-align:center}.tournament-details{display:flex;flex-direction:column;gap:8px;margin:12px 0;padding:12px;background:#0000004d;border-radius:8px}.detail-item{display:flex;justify-content:space-between;font-size:.85rem}.detail-label{color:#ffffffb3}.detail-value{color:#fff;font-weight:600}.btn-join-tournament{width:100%;background:linear-gradient(135deg,gold,#ff9800);color:#000;border:none;padding:12px;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.05em;margin-top:8px}.btn-join-tournament:hover{transform:translateY(-2px);box-shadow:0 4px 16px #ffc10780}.tournament-results-modal{width:500px;max-width:95vw}.results-content{padding:24px;text-align:center}.results-title{font-size:1.3rem;font-weight:700;color:var(--accent);margin-bottom:20px}.results-score{margin:24px 0;padding:20px;background:linear-gradient(135deg,#ffd70033,#ffd7001a);border:2px solid gold;border-radius:12px}.score-label{font-size:.9rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.score-value{font-size:2.5rem;font-weight:900;color:gold;text-shadow:0 0 20px rgba(255,215,0,.6)}.results-stats{display:flex;justify-content:space-around;margin:20px 0;padding:16px;background:#0000004d;border-radius:8px}.results-note{color:#ffffffb3;font-size:.9rem;margin:16px 0}.tournament-toast{position:fixed;bottom:100px;right:24px;padding:16px 24px;border-radius:8px;font-weight:600;z-index:10001;animation:slideInRight .5s ease,fadeOut .5s ease 2.5s forwards}.toast-success{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.toast-error{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}@media(max-width:768px){.weather-widget,.challenges-widget{display:none}.tournament-widget{position:fixed;bottom:4px;left:4px;right:4px;min-width:unset;width:auto;z-index:150;padding:0}.tournament-active,.tournament-upcoming{padding:8px}.tournament-header{gap:6px;margin-bottom:6px}.tournament-icon{font-size:1.2rem}.tournament-title{font-size:.85rem}.tournament-name{font-size:.8rem;margin-bottom:4px}.tournament-timer{font-size:1.2rem;margin:6px 0}.tournament-score{font-size:.95rem;margin:4px 0}.tournament-catches{font-size:.75rem}.tournament-countdown{font-size:.95rem;margin:6px 0}.tournament-details{padding:6px;gap:4px;margin:6px 0}.detail-item{font-size:.75rem}.btn-join-tournament{padding:8px;font-size:.85rem;margin-top:4px}.modal-overlay{backdrop-filter:blur(3px)}.modal-content{max-width:100vw;max-height:100vh;height:100vh;border-radius:0;margin:0;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:10px 14px;flex-shrink:0}.modal-header h2{font-size:1.1rem}.btn-close{padding:5px 10px;font-size:.75rem}.journal-grid,.achievements-grid,.leaderboard-tabs+div{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.journal-grid{grid-template-columns:1fr;gap:8px;padding:10px}.journal-card{padding:10px}.species-preview{font-size:1.8rem}.species-name{font-size:.85rem}.journal-stats{font-size:.7rem}.stat-box{padding:6px}.stat-value{font-size:1.1rem}.stat-label{font-size:.65rem}.achievements-grid{grid-template-columns:1fr;gap:8px;padding:10px}.achievement-card{padding:10px}.achievement-icon{font-size:1.8rem}.achievement-title{font-size:.85rem}.achievement-description{font-size:.7rem}.species-grid{grid-template-columns:repeat(3,1fr);gap:6px}.species-card{padding:6px}.species-emoji{font-size:1.8rem}.leaderboard-entry{padding:8px;gap:6px}.entry-rank{font-size:1rem;min-width:28px}.trophy{font-size:1.6rem}.entry-wallet,.entry-value{font-size:.8rem}.journal-filters,.achievements-filters,.leaderboard-tabs{gap:4px;flex-wrap:wrap}.filter-btn{padding:5px 9px;font-size:.7rem}.calendar-grid{gap:3px}.calendar-day{padding:5px 3px;min-width:30px}.day-number{font-size:.6rem}.day-check{font-size:1rem}.milestone-card{padding:8px}.milestone-days{font-size:1.3rem}.milestone-label{font-size:.65rem}.milestone-reward{font-size:.8rem}.achievement-toast,.challenge-toast,.daily-reward-toast,.tournament-toast{left:50%;right:auto;transform:translate(-50%);max-width:90vw;padding:8px 12px}.toast-content{padding:8px 10px;gap:6px}.toast-icon{font-size:1.6rem;min-width:36px}.toast-title{font-size:.8rem}.toast-description{font-size:.7rem}.share-modal{max-width:94vw}.catch-actions{flex-direction:column;gap:6px}.btn-share{width:100%;padding:8px;font-size:.8rem}}@media(max-width:480px){.modal-header h2{font-size:.95rem}.journal-grid,.achievements-grid{padding:8px;gap:6px}.journal-card,.achievement-card{padding:8px}.species-grid{grid-template-columns:repeat(2,1fr);gap:4px}.species-emoji{font-size:1.5rem}.leaderboard-entry{padding:6px;gap:4px}.trophy{font-size:1.4rem}.entry-wallet,.entry-value{font-size:.75rem}.tournament-widget{left:2px;right:2px}.calendar-day{padding:4px 2px;min-width:26px}.filter-btn{padding:4px 7px;font-size:.65rem}}@media(hover:none)and (pointer:coarse){.btn{min-height:38px;padding:10px 16px}.filter-btn,.hud-btn{min-height:34px}.journal-card,.achievement-card,.leaderboard-entry{cursor:default}.journal-card:hover,.achievement-card:hover,.leaderboard-entry:hover{transform:none;box-shadow:0 2px 8px #0003}.btn:active,.filter-btn:active,.hud-btn:active{transform:scale(.97);transition:transform .05s ease}.modal-content,.journal-grid,.achievements-grid{overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.tournament-widget{bottom:2px}.tournament-active,.tournament-upcoming{padding:4px 6px}.tournament-timer{font-size:1rem;margin:3px 0}.tournament-score{font-size:.85rem;margin:3px 0}.tournament-details{padding:4px;margin:4px 0}.modal-content{max-height:98vh}.journal-grid,.achievements-grid{grid-template-columns:repeat(2,1fr)}}.leaderboard-modal{width:95vw;max-width:900px}.leaderboard-tabs{display:flex;gap:8px;padding:16px 24px;border-bottom:2px solid var(--stroke);background:#0000004d}.tab-btn{flex:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;padding:12px 16px;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.tab-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.tab-btn:hover:not(.active){background:#ffffff26}.leaderboard-content{padding:24px;overflow-y:auto;max-height:calc(90vh - 250px);min-height:400px}.loading,.empty,.error{text-align:center;padding:48px 24px;color:#fff9;font-size:1.1rem}.error{color:#f44336}.leaderboard-list{display:flex;flex-direction:column;gap:12px}.leaderboard-entry{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:2px solid rgba(255,255,255,.15);border-radius:12px;transition:all .2s}.leaderboard-entry:hover{transform:translate(4px);border-color:var(--accent)}.leaderboard-entry.rank-1{border-color:gold;background:linear-gradient(135deg,#ffd70026,#ffd7000d)}.leaderboard-entry.rank-2{border-color:silver;background:linear-gradient(135deg,#c0c0c026,#c0c0c00d)}.leaderboard-entry.rank-3{border-color:#cd7f32;background:linear-gradient(135deg,#cd7f3226,#cd7f320d)}.entry-rank{font-size:1.5rem;font-weight:900;min-width:40px;text-align:center;color:var(--accent)}.entry-info{flex:1}.entry-wallet{font-weight:700;font-size:1.1rem;color:#fff;margin-bottom:4px}.entry-value{font-size:.9rem;color:#ffffffb3}.trophy{font-size:2rem}.trophy[data-share]{cursor:pointer;transition:transform .12s ease,filter .12s ease}.trophy[data-share]:hover{transform:scale(1.25) rotate(-6deg);filter:drop-shadow(0 2px 6px rgba(95,212,255,.6))}.recent-feed{display:flex;flex-direction:column;gap:12px}.feed-item{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:8px;border-left:3px solid var(--accent)}.feed-icon{min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:2rem}.feed-icon img{width:40px;height:40px;object-fit:contain}.feed-content{flex:1}.feed-text{font-size:.95rem;color:#fff;margin-bottom:4px}.feed-wallet{font-weight:700;color:var(--accent)}.feed-species{font-weight:600;color:#62d98b}.feed-meta{font-size:.8rem;color:#fff9}.species-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.species-btn{aspect-ratio:1;background:linear-gradient(135deg,#ffffff14,#ffffff08);border:2px solid rgba(255,255,255,.2);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;transition:all .2s}.species-btn:hover{transform:scale(1.05);border-color:var(--accent);background:#ffffff1f}.species-icon{font-size:3rem}.species-icon img{width:60px;height:60px;object-fit:contain}.species-name{font-size:.85rem;font-weight:600;text-align:center;color:#fff}.species-leaderboard .btn-back{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;margin-bottom:16px;font-weight:600;transition:all .2s}.species-leaderboard .btn-back:hover{background:#fff3}.species-leaderboard h3{margin:0 0 20px;color:var(--accent);font-size:1.5rem}.catch-actions{display:flex;gap:12px;margin-top:16px}.btn-share{flex:.4;background:linear-gradient(135deg,#1da1f2,#0d8bd9);color:#fff;border:none;font-weight:600;transition:all .2s}.btn-share:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1da1f266}.share-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:20000;animation:fadeIn .2s ease}.share-modal-content{background:linear-gradient(135deg,#1a2332,#2a3444);border:2px solid var(--accent);border-radius:16px;padding:32px;text-align:center;max-width:400px;animation:slideUp .3s ease}.share-modal-content h3{margin:0 0 16px;color:var(--accent);font-size:1.5rem}.share-modal-content p{margin:0 0 20px;color:#fffc}.btn-twitter{display:inline-block;background:linear-gradient(135deg,#1da1f2,#0d8bd9);color:#fff;padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:700;margin-bottom:12px;transition:all .2s}.btn-twitter:hover{transform:translateY(-2px);box-shadow:0 4px 16px #1da1f280}.onboarding-overlay{z-index:11000}.onboarding-modal{width:92vw;max-width:460px;padding:0;text-align:center;border-color:var(--accent);box-shadow:0 0 0 1px #5fd4ff40,0 18px 60px #0009}.onboarding-hero{padding:34px 28px 20px;background:radial-gradient(120% 90% at 50% -20%,rgba(95,212,255,.28),transparent 60%),linear-gradient(180deg,rgba(95,212,255,.1) 0%,transparent 100%);border-bottom:1px solid var(--stroke)}.onboarding-logo{font-size:3.4rem;line-height:1;filter:drop-shadow(0 4px 14px rgba(95,212,255,.5));animation:onboardBob 3s ease-in-out infinite}@keyframes onboardBob{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-6px) rotate(4deg)}}.onboarding-title{margin:14px 0 8px;font-size:1.7rem;font-weight:800;color:#eaf7ff;letter-spacing:.3px}.onboarding-title span{color:var(--accent);text-shadow:0 2px 10px rgba(95,212,255,.45)}.onboarding-tagline{margin:0 auto;max-width:360px;font-size:.96rem;line-height:1.5;color:#aebfd0}.onboarding-body{padding:22px 28px 28px;display:flex;flex-direction:column}.onboarding-label{text-align:left;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--accent);margin-bottom:8px}.onboarding-input{width:100%;box-sizing:border-box;padding:14px 16px;font-size:1.1rem;color:#fff;background:#00000059;border:2px solid var(--stroke);border-radius:12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.onboarding-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5fd4ff38}.onboarding-input::placeholder{color:#5f7488}.onboarding-meta{display:flex;justify-content:space-between;align-items:center;margin:8px 2px 0;min-height:18px}.onboarding-error{font-size:.82rem;color:#ff8484;text-align:left}.onboarding-counter{margin-left:auto;font-size:.8rem;color:#7f8ea0}.onboarding-start{margin-top:18px;width:100%;padding:14px 20px;font-size:1.05rem;font-weight:800;letter-spacing:.3px;border:none;border-radius:12px;cursor:pointer;color:#06222e;background:linear-gradient(135deg,#5fd4ff,#1b76bf);box-shadow:0 6px 20px #1da1f273;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}.onboarding-start:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 26px #1da1f299}.onboarding-start:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.onboarding-hint{margin:14px 0 0;font-size:.8rem;color:#7f8ea0}.species-leaderboard .btn-back{margin-bottom:12px}@media(max-width:480px){.onboarding-logo{font-size:2.8rem}.onboarding-title{font-size:1.4rem}.onboarding-hero{padding:26px 20px 16px}.onboarding-body{padding:18px 20px 22px}}.trollbox{position:fixed;left:16px;bottom:86px;width:320px;max-width:calc(100vw - 24px);max-height:440px;display:flex;flex-direction:column;background:linear-gradient(135deg,#141e2ef7,#1c283af7);border:1px solid var(--accent);border-radius:14px;box-shadow:0 10px 34px #00000080;z-index:900;overflow:hidden;backdrop-filter:blur(6px);font-size:.9rem}.trollbox-header{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;cursor:pointer;background:linear-gradient(180deg,rgba(95,212,255,.14),transparent);border-bottom:1px solid var(--stroke);user-select:none}.trollbox-title{font-weight:800;color:#eaf7ff;font-size:.92rem}.trollbox-sub{font-weight:600;font-size:.7rem;color:var(--accent);opacity:.8;margin-left:4px}.trollbox-toggle{background:#ffffff14;border:none;color:#cfe6f2;width:26px;height:22px;border-radius:6px;cursor:pointer;line-height:1;font-size:.95rem}.trollbox-toggle:hover{background:#ffffff2e}.trollbox.collapsed{max-height:none}.trollbox.collapsed .trollbox-messages,.trollbox.collapsed .trollbox-footer{display:none}.trollbox-messages{flex:1;min-height:140px;max-height:320px;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:7px}.trollbox-messages::-webkit-scrollbar{width:7px}.trollbox-messages::-webkit-scrollbar-thumb{background:#5fd4ff4d;border-radius:4px}.trollbox-empty{margin:auto;color:#7f8ea0;font-size:.82rem;text-align:center}.trollbox-msg{line-height:1.35;word-break:break-word}.trollbox-name{font-weight:700;color:var(--accent);margin-right:6px}.trollbox-msg.mine .trollbox-name{color:var(--gold)}.trollbox-text{color:#dce7f0}.trollbox-footer{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--stroke);background:#00000040}.trollbox-input{flex:1;min-width:0;padding:8px 10px;border-radius:9px;border:1px solid var(--stroke);background:#00000059;color:#fff;font-size:.86rem;outline:none}.trollbox-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #5fd4ff33}.trollbox-send{flex:0 0 auto;padding:0 14px;border:none;border-radius:9px;background:linear-gradient(135deg,#5fd4ff,#1b76bf);color:#06222e;font-weight:800;cursor:pointer}.trollbox-send:hover{filter:brightness(1.08)}.trollbox-locked{width:100%;text-align:center;font-size:.82rem;color:#7f8ea0;padding:4px}.trollbox-setname{width:100%;padding:8px;border:1px dashed var(--accent);border-radius:9px;background:#5fd4ff14;color:var(--accent);font-weight:700;cursor:pointer;font-size:.82rem}.trollbox-setname:hover{background:#5fd4ff29}@media(max-width:560px){.trollbox{right:8px;left:8px;bottom:8px;width:auto;max-height:50vh}.trollbox-messages{max-height:34vh}}
