:root{--zoom-width: 118px;--color-bg: #1d2b1f;--color-panel: rgba(40, 32, 24, .88);--color-panel-solid: #2e251c;--color-panel-border: #c9a46a;--color-text: #fdf6e3;--color-muted: #d8c9a8;--color-error: #f4a6a6;--color-accent: #f2d24b;--hunt-live: #ff7a59;--hunt-live-soft: #ffb199;--rarity-common: #b9c4b0;--rarity-uncommon: #7fc47a;--rarity-rare: #6fb3f2;--rarity-legendary: #f2b84b;--font-ui: "Trebuchet MS", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--color-bg);color:var(--color-text);font-family:var(--font-ui)}.app{position:relative;width:100%;height:100%;overflow:hidden}.game-container{position:absolute;inset:0}.game-container canvas{image-rendering:pixelated}kbd{display:inline-block;min-width:18px;padding:0 5px;border:1px solid var(--color-panel-border);border-bottom-width:2px;border-radius:3px;background:#00000040;font-family:inherit;font-size:11px;line-height:16px;text-align:center}.btn{padding:8px 18px;border:2px solid var(--color-panel-border);border-radius:6px;background:#6b4a2b;color:var(--color-text);font:inherit;font-weight:700;cursor:pointer}.btn:hover,.btn:focus-visible{background:#845c36;outline:none;box-shadow:0 0 0 2px var(--color-accent)}.btn:disabled{opacity:.5;cursor:default;box-shadow:none}.btn--small{padding:5px 10px;font-size:13px}.btn--ghost{background:transparent}.btn--danger{background:#a8452f}.btn--danger:hover{background:#bf5139}.splash{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;padding:16px;text-align:center}.splash h1{margin:0;font-size:32px}.splash__error{color:var(--color-error)}.hud-column{position:absolute;top:16px;left:16px;display:flex;flex-direction:column;align-items:stretch;gap:8px;pointer-events:none}.hud{padding:10px 14px;background:var(--color-panel);border:2px solid var(--color-panel-border);border-radius:6px;pointer-events:none}.hud__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.hud__title{margin:0;font-size:18px}.hud__fold{flex:none;margin:-4px -8px 0 0;padding:2px 8px;border:none;background:transparent;color:var(--color-accent);font:inherit;font-size:14px;line-height:1.2;cursor:pointer;pointer-events:auto}.hud--folded .hud__head{margin-bottom:0}.hud p{margin:0;font-size:13px;color:var(--color-muted)}.hud .hud__stats{display:flex;gap:10px;margin-top:4px;color:var(--color-text)}.hud__coins{color:var(--color-accent);font-weight:700}.toolbar{position:absolute;top:16px;right:calc(16px + var(--zoom-width) + 8px);display:flex;gap:8px}.zoom{position:absolute;top:16px;right:16px;display:flex;width:var(--zoom-width);border:2px solid var(--color-panel-border);border-radius:6px;background:var(--color-panel);overflow:hidden}.zoom__btn,.zoom__level{border:none;background:transparent;font:inherit;font-weight:700;cursor:pointer}.zoom__btn{flex:1;padding:6px 0;color:var(--color-text);font-size:18px;line-height:1.2}.zoom__level{flex:1.2;border-left:1px solid rgba(201,164,106,.35);border-right:1px solid rgba(201,164,106,.35);color:var(--color-accent);font-size:13px}.zoom__btn:hover:not(:disabled),.zoom__level:hover{background:#4a3b2b}.zoom__btn:disabled{opacity:.35;cursor:default}.tool-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:2px solid var(--color-panel-border);border-radius:6px;background:var(--color-panel);color:var(--color-text);font:inherit;font-size:14px;font-weight:700;cursor:pointer}.tool-btn:hover{background:#4a3b2b}.tool-btn__badge{min-width:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#2e251c;font-size:11px;line-height:16px;text-align:center}.goals{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.goal{padding:10px 12px;border:2px solid var(--color-panel-border);border-radius:6px}.goal--done{border-color:var(--color-accent)}.goal--claimed{opacity:.6}.goal__text{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px}.goal__reward{color:var(--color-accent);font-weight:700;white-space:nowrap}.goal__bar{height:6px;margin:8px 0 6px;border-radius:3px;background:#0000004d;overflow:hidden}.goal__bar>span{display:block;height:100%;background:#9fd6a0}.goal__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--color-muted);font-variant-numeric:tabular-nums}.goal__claim{padding:4px 12px}.goal__got{color:#9fd6a0;font-weight:700}.goals__empty,.goals__note{color:var(--color-muted)}.goals__note{margin:12px 0 0;font-size:13px}@media(max-width:560px){.tool-btn kbd{display:none}}.panel{display:flex;flex-direction:column;width:min(760px,100%);max-height:100%;background:var(--color-panel-solid);border:3px solid var(--color-panel-border);border-radius:10px;box-shadow:0 8px #0000004d;animation:card-in .2s ease-out}.panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 18px 10px;border-bottom:2px solid rgba(201,164,106,.35)}.panel__header h2{margin:0;font-size:22px}.panel__subtitle{margin:2px 0 0;font-size:13px;color:var(--color-muted)}.panel__close{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:0;border-radius:6px;background:transparent;color:var(--color-text);font:inherit;font-size:16px;cursor:pointer}.panel__close:hover{background:#ffffff14}.panel__body{overflow-y:auto;padding:14px 18px 18px}.panel__empty,.panel__note{color:var(--color-muted);font-size:13px;text-align:center}.panel__error{color:var(--color-error)}.segmented{display:inline-flex;margin-bottom:12px;border:2px solid var(--color-panel-border);border-radius:8px;overflow:hidden}.segmented button{padding:5px 12px;border:0;background:transparent;color:var(--color-muted);font:inherit;font-size:13px;cursor:pointer}.segmented button.is-active{background:var(--color-panel-border);color:#2e251c;font-weight:700}.fish-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;padding:0;list-style:none}.fish-tile{--rarity: var(--rarity-common);padding:8px 10px 10px;background:#00000038;border:2px solid transparent;border-left-color:var(--rarity);border-radius:8px;font-size:12px}.fish-tile--uncommon{--rarity: var(--rarity-uncommon)}.fish-tile--rare{--rarity: var(--rarity-rare)}.fish-tile--legendary{--rarity: var(--rarity-legendary)}.fish-tile img{display:block;width:96px;height:48px;margin:0 auto 4px;image-rendering:pixelated}.fish-tile__name{font-size:14px;font-weight:700}.fish-tile__meta{margin-top:3px;color:var(--color-text)}.fish-tile__when{margin-top:4px;color:var(--color-muted);font-size:11px}.market__tools{display:flex;gap:8px;margin-bottom:10px}.fish-tile--pick{position:relative;display:block;width:100%;color:var(--color-text);font:inherit;font-size:12px;text-align:left;cursor:pointer}.fish-tile--pick:hover{border-top-color:#c9a46a80;border-right-color:#c9a46a80;border-bottom-color:#c9a46a80}.fish-tile--pick.is-selected{border-color:var(--color-accent);background:#f2d24b1f}.fish-tile__check{position:absolute;top:6px;right:6px;width:18px;height:18px;border:2px solid var(--color-panel-border);border-radius:4px;color:var(--color-accent);font-weight:700;line-height:14px;text-align:center}.market__footer{position:sticky;bottom:-18px;margin:12px -18px -18px;padding:12px 18px;background:var(--color-panel-solid);border-top:2px solid rgba(201,164,106,.35);text-align:center}.confirm p{margin:0 0 10px}.confirm__buttons{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.shop-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.shop-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 12px;background:#00000038;border:2px solid transparent;border-radius:8px}@media(max-width:520px){.shop-item{grid-template-columns:1fr}}.shop-item--active{border-color:#7fc47ab3}.shop-item__name{font-weight:700}.shop-item__count{color:var(--color-accent);font-weight:400}.shop-item__desc{color:var(--color-muted);font-size:12px}.shop-item__perk{margin-top:3px;color:var(--rarity-uncommon);font-size:12px}.shop-item__action{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.shop-item__tag{padding:4px 10px;border-radius:999px;background:#7fc47a33;color:var(--rarity-uncommon);font-size:12px;font-weight:700}.tackle{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:14px;padding:10px 12px;background:#00000038;border-radius:8px}.tackle label{display:flex;align-items:center;gap:8px;font-size:13px}.tackle label span{color:var(--color-muted)}.tackle select{max-width:100%;padding:4px 6px;border:2px solid var(--color-panel-border);border-radius:6px;background:var(--color-panel-solid);color:var(--color-text);font:inherit}.tackle__hint{flex-basis:100%;margin:0;color:var(--color-muted);font-size:12px}.panel--narrow{width:min(420px,100%)}.sleep__text{margin:0 0 14px;line-height:1.45}.settings{display:grid;gap:16px}.slider label{display:flex;justify-content:space-between;margin-bottom:4px;font-weight:700}.slider__value{color:var(--color-accent)}.slider input[type=range]{width:100%;accent-color:var(--color-accent)}.slider__hint{margin-top:2px;color:var(--color-muted);font-size:12px}.panel__note--left{margin:0 0 10px;text-align:left}.segmented button{position:relative}.segmented__badge{display:inline-block;min-width:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:#2e251c;font-size:11px;font-weight:700;line-height:16px}.orders{display:grid;gap:10px;margin:0;padding:0;list-style:none}.order{padding:10px 12px;background:#00000038;border:2px solid transparent;border-radius:8px}.order--ready{border-color:#7fc47ab3}.order--premium{border-left:4px solid var(--rarity-legendary)}.order__head{display:flex;align-items:center;gap:8px}.order__days{margin-left:auto;color:var(--color-muted);font-size:12px}.order__text{margin:4px 0 8px;color:var(--color-muted);font-size:13px;font-style:italic}.order__reqs{display:grid;gap:4px;margin:0 0 10px;padding:0;list-style:none}.order__reqs li{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:8px;padding:3px 8px;background:#0003;border-radius:6px;font-size:13px}.order__reqs img{width:56px;height:28px;image-rendering:pixelated}.order__anyfish{width:56px;text-align:center;color:var(--rarity-rare);font-size:20px;font-weight:700}.order__size{color:var(--color-muted);font-size:12px}.order__have{font-weight:700;color:var(--color-muted)}.order__reqs li.is-done .order__have{color:var(--rarity-uncommon)}.order__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.order__reward{color:var(--color-accent);font-weight:700}.order__xp{color:var(--color-muted);font-weight:400;font-size:12px}.order__buttons{display:flex;gap:6px}.badge--premium{background:var(--rarity-legendary)}.stall-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:0 0 12px}.stall-summary div{padding:6px 8px;background:#00000040;border-radius:6px;text-align:center}.stall-summary dt{color:var(--color-muted);font-size:11px}.stall-summary dd{margin:2px 0 0;font-weight:700}.shop-item__blocker{margin-top:3px;color:var(--color-error);font-size:12px}.worldmap{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,290px);gap:16px;align-items:start}.worldmap__left{display:contents}.worldmap__left .worldmap__svg{grid-column:1 / -1}@media(max-width:560px){.worldmap{grid-template-columns:1fr}}.worldmap__svg{width:100%;max-height:60vh;border:2px solid rgba(201,164,106,.5);border-radius:8px}.worldmap__sea{fill:#2c5f7c}.worldmap__sea-label{fill:#ffffff59;font-size:8px;font-style:italic;letter-spacing:.12em;text-anchor:middle}.worldmap__state{stroke:#f4efd8;stroke-width:.9;stroke-linejoin:round;fill:#6f9a52}.worldmap__state--1{fill:#7aa65a}.worldmap__state--2{fill:#64924d}.worldmap__state--3{fill:#84ad62}.worldmap__state.is-active{fill:#b3d27a}.worldmap__state-label{fill:#142814b3;font-size:7px;font-weight:700;letter-spacing:.04em;pointer-events:none;text-transform:uppercase}.worldmap__pin{cursor:pointer;outline:none}.worldmap__pin-hit{fill:transparent}.worldmap__pin-dot{stroke:#fdf6e3;stroke-width:2}.worldmap__pin--current .worldmap__pin-dot{fill:#f2d24b}.worldmap__pin--open .worldmap__pin-dot{fill:#3f9a52}.worldmap__pin--locked .worldmap__pin-dot{fill:#8a8a8a}.placelist{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px;margin:0;padding:0;list-style:none}.placelist__item{display:flex;justify-content:space-between;gap:6px;width:100%;padding:5px 8px;border:1px solid rgba(201,164,106,.35);border-radius:6px;background:#0003;color:inherit;font:inherit;font-size:12px;text-align:left;cursor:pointer}.placelist__item--locked{opacity:.65}.placelist__item--current{border-color:#f2d24b}.placelist__item.is-selected{background:#f2d24b2e;border-color:#f2d24b}.placelist__meta{color:var(--color-muted);white-space:nowrap}.worldmap__pin-lock{fill:#2e251c}.worldmap__pin-label{fill:#fdf6e3;stroke:#1d2b1f;stroke-width:3;paint-order:stroke;font-size:10px;font-weight:700}.worldmap__pin.is-selected .worldmap__pin-dot,.worldmap__pin:focus-visible .worldmap__pin-dot{stroke:#f2d24b;stroke-width:3}.locationcard{padding:12px 14px;background:#00000040;border-radius:8px}.locationcard__art{position:relative;margin:-4px -6px 10px;border-radius:6px;overflow:hidden;background:#2c5f7c;line-height:0}.locationcard__picture{display:block;width:100%;height:auto;image-rendering:pixelated}.locationcard__badge{position:absolute;right:6px;bottom:6px;padding:1px 8px;border-radius:10px;background:#0000008c;font-size:11px;font-weight:700}.locationcard__facts{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:0 0 8px;font-size:12px}.locationcard__facts dt{color:var(--color-muted)}.locationcard__facts dd{margin:0}.locationcard__bar{height:6px;margin-bottom:8px;border-radius:3px;background:#ffffff26;overflow:hidden}.locationcard__bar>span{display:block;height:100%;background:#f2d24b}.locationcard h3{margin:0;font-size:20px}.locationcard h4{margin:12px 0 6px;font-size:13px;color:var(--color-muted)}.locationcard__region{margin:2px 0 8px;color:var(--color-accent);font-size:12px;font-weight:700}.locationcard__desc{margin:0 0 8px;font-size:13px}.locationcard__species{margin:0 0 4px;color:var(--color-muted);font-size:12px}.locationcard__here{margin:12px 0 0;color:var(--rarity-uncommon);font-weight:700}.locationcard__note{margin:8px 0 0;color:var(--color-muted);font-size:12px}.requirements{margin:0 0 12px;padding:0;list-style:none;font-size:13px}.requirements li{display:flex;gap:8px;padding:3px 0;color:var(--color-muted)}.requirements li.is-met{color:var(--rarity-uncommon)}.collection{display:grid;grid-template-columns:1fr 240px;gap:16px;align-items:start}@media(max-width:640px){.collection{grid-template-columns:1fr}}.collection__section+.collection__section{margin-top:14px}.collection__section h3{display:flex;justify-content:space-between;margin:0 0 4px;font-size:15px}.collection__count{color:var(--color-muted);font-size:12px;font-weight:400}.collection__bar{height:5px;margin-bottom:8px;background:#0000004d;border-radius:3px;overflow:hidden}.collection__bar div{height:100%;background:var(--rarity-uncommon)}.species-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;margin:0;padding:0;list-style:none}.species-tile{width:100%;padding:6px 4px;background:#00000038;border:2px solid transparent;border-radius:8px;color:var(--color-text);font:inherit;font-size:11px;cursor:pointer}.species-tile{position:relative}.species-tile__only{position:absolute;top:2px;right:3px;padding:0 4px;border-radius:999px;background:#f2d24bd9;color:#2e251c;font-size:8px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.species-tile img{display:block;width:64px;height:32px;margin:0 auto 2px;image-rendering:pixelated}.species-tile--discovered,.species-tile--undiscovered{color:var(--color-muted)}.species-tile--undiscovered img{opacity:.45}.species-tile:hover{border-color:#c9a46a80}.species-tile.is-selected{border-color:var(--color-accent)}.species-detail{--rarity: var(--rarity-common);position:sticky;top:0;padding:12px;background:#00000040;border-top:3px solid var(--rarity);border-radius:8px;text-align:center}.species-detail--uncommon{--rarity: var(--rarity-uncommon)}.species-detail--rare{--rarity: var(--rarity-rare)}.species-detail--legendary{--rarity: var(--rarity-legendary)}.species-detail img{width:160px;height:80px;image-rendering:pixelated}.species-detail h3{margin:4px 0;font-size:18px}.species-detail p{margin:4px 0}.species-detail__desc{color:var(--color-muted);font-size:12px}.species-detail__facts{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:10px 0 0;font-size:12px;text-align:left}.species-detail__facts dt{color:var(--color-muted)}.species-detail__facts dd{margin:0}.achievement-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.achievement{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:8px 12px;background:#00000038;border-radius:8px;opacity:.7}.achievement--done{opacity:1;border-left:3px solid var(--color-accent)}.achievement__icon{font-size:20px;color:var(--color-accent);text-align:center}.achievement__name{font-weight:700}.achievement__desc,.achievement__reward{color:var(--color-muted);font-size:12px}.action-bar{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.action-bar__quiet{padding:4px 12px;background:var(--color-panel);border-radius:999px;font-size:12px;opacity:.75;white-space:nowrap}.action-bar__caption{padding:2px 10px;background:var(--color-panel);border-radius:999px;font-size:12px;color:var(--color-muted)}.action-bar__caption--bite{color:var(--color-accent);font-weight:700}.action-btn{display:inline-flex;align-items:center;gap:10px;min-width:140px;justify-content:center;padding:10px 22px;border:3px solid var(--color-panel-border);border-radius:999px;background:#6b4a2b;box-shadow:0 4px #3e2a17;color:var(--color-text);font:inherit;font-size:17px;font-weight:700;cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;touch-action:manipulation}.action-btn:hover{background:#845c36}.action-btn:active{transform:translateY(3px);box-shadow:0 1px #3e2a17}.action-btn--cast{background:#3f7a4a;box-shadow:0 4px #24472b}.action-btn--cast:hover{background:#4b8f57}.action-btn--market,.action-btn--shop,.action-btn--map,.action-btn--sleep{background:#3a5f8a;box-shadow:0 4px #233a55}.action-btn--market:hover,.action-btn--shop:hover,.action-btn--map:hover,.action-btn--sleep:hover{background:#46709f}.action-btn--bite{border-color:var(--color-accent);background:#b8462f;box-shadow:0 4px #6e2516;animation:pulse .45s ease-in-out infinite alternate}.action-btn--bite:hover{background:#cc5238}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.08)}}.toasts{position:absolute;left:50%;bottom:110px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.toast{max-width:min(420px,calc(100vw - 32px));padding:6px 12px;background:var(--color-panel);border-radius:6px;font-size:13px;text-align:center;animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.modal-backdrop{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:#0a120c73}.catch-card{--rarity: var(--rarity-common);width:min(340px,100%);max-height:100%;overflow-y:auto;padding:18px 20px 20px;background:var(--color-panel-solid);border:3px solid var(--rarity);border-radius:10px;box-shadow:0 8px #0000004d;text-align:center;animation:card-in .25s cubic-bezier(.2,1.4,.5,1)}.catch-card--uncommon{--rarity: var(--rarity-uncommon)}.catch-card--rare{--rarity: var(--rarity-rare)}.catch-card--legendary{--rarity: var(--rarity-legendary)}@keyframes card-in{0%{opacity:0;transform:scale(.85)}}.catch-card h2{margin:4px 0 6px;font-size:22px}.catch-card__badges{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}.badge{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1d2b1f;background:var(--rarity-common)}.badge--uncommon{background:var(--rarity-uncommon)}.badge--rare{background:var(--rarity-rare)}.badge--legendary{background:var(--rarity-legendary)}.badge--new{background:var(--color-accent)}.badge--pb{background:#f28fb0}.catch-card__fish{display:block;width:192px;height:96px;margin:10px auto 4px;image-rendering:pixelated}.catch-card__english{margin:-4px 0 6px;color:var(--color-muted);font-size:13px}.catch-card__xp{margin:-6px 0 12px;color:var(--color-muted);font-size:13px}.catch-card__levelup{color:var(--color-accent)}.hud .hud__full{color:var(--color-error);font-weight:700}.hud__xp{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px}.hud__xpbar{display:inline-block;width:64px;height:6px;background:#00000059;border-radius:3px;overflow:hidden}.hud__xpbar>span{display:block;height:100%;background:var(--rarity-uncommon)}.catch-card__buttons{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.catch-card__confirm{padding:10px 12px;border:1px solid #a8452f;border-radius:6px;background:#a8452f1f}.catch-card__confirm p{margin:0 0 8px;font-size:13px}.fish-tile__release{margin-top:6px}.fish-tile__confirm{margin-top:6px;display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.fish-tile__confirm p{flex-basis:100%;margin:0 0 2px;font-size:12px}.catch-card__release{margin:-6px 0 14px;padding:8px 10px;background:#7fc47a24;border:1px solid rgba(127,196,122,.55);border-radius:6px;font-size:13px;text-align:left}.badge--protected{background:var(--rarity-uncommon)}.fish-tile__english,.shop-item__english{color:var(--color-muted);font-size:11px;font-weight:400}.species-detail__english{color:var(--color-muted);font-size:12px}.species-detail__protected{color:var(--rarity-uncommon);font-size:12px;font-weight:700}.catch-card__desc{margin:0 0 12px;font-size:13px;color:var(--color-muted)}.catch-card__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 16px}.catch-card__stats div{padding:6px 4px;background:#00000040;border-radius:6px}.catch-card__stats dt{font-size:11px;color:var(--color-muted)}.catch-card__stats dd{margin:2px 0 0;font-weight:700}.catch-card__achievements{margin:-6px 0 14px;padding:8px 10px;list-style:none;background:#f2d24b1f;border:1px solid rgba(242,210,75,.5);border-radius:6px;font-size:13px;text-align:left}.catch-card__achievements span{color:var(--color-accent)}.btn--big{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:240px;padding:12px 24px;font-size:18px}.btn__sub{font-size:12px;font-weight:400;color:var(--color-muted)}.title{position:relative;display:flex;align-items:center;justify-content:center;height:100%;padding:16px;overflow:auto}.title__scene{position:fixed;inset:0;background:linear-gradient(#f6c98a,#f8e2b0 38%,#bfe0d0 60%);overflow:hidden}.title__sun{position:absolute;top:12%;left:62%;width:clamp(70px,12vw,140px);aspect-ratio:1;border-radius:50%;background:#fff3c4;box-shadow:0 0 0 14px #fff3c459,0 0 0 34px #fff3c429}.title__hills{position:absolute;left:-5%;right:-5%;bottom:34%;height:22%;background:#4f8a4a;border-radius:50% 50% 0 0/100% 100% 0 0;box-shadow:0 -8px 0 -2px #6fa55a inset}.title__water{position:absolute;left:0;right:0;bottom:0;height:36%;background:linear-gradient(#5fa8b8,#3d7f96)}.title__water i{position:absolute;height:3px;border-radius:2px;background:#ffffff8c;animation:title-glint 5s ease-in-out infinite}.title__water i:nth-child(1){top:22%;left:18%;width:90px}.title__water i:nth-child(2){top:48%;left:55%;width:130px;animation-delay:-2s}.title__water i:nth-child(3){top:72%;left:32%;width:70px;animation-delay:-3.5s}@keyframes title-glint{0%,to{transform:translate(-14px);opacity:.25}50%{transform:translate(14px);opacity:.8}}.title__card{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(100%,460px);padding:24px 22px 22px;border:2px solid var(--color-panel-border);border-radius:12px;background:var(--color-panel);text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.title__name{margin:0;font-size:clamp(32px,8vw,46px);letter-spacing:1px;color:var(--color-accent);text-shadow:0 3px 0 rgba(0,0,0,.45)}.title__tag{margin:0 0 8px;color:var(--color-muted)}.title__notice{margin:0;padding:8px 12px;border-radius:6px;background:#f4a6a629;color:var(--color-error)}.title__menu{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.title__busy{margin:0;color:var(--color-muted)}.setup{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;width:100%;text-align:left}.setup--load{grid-template-columns:1fr}.setup__preview{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:8px;background:linear-gradient(#bfe0d0,#7fb85a)}.character-preview{image-rendering:pixelated}.setup__fields{display:flex;flex-direction:column;gap:8px;min-width:0}.setup__label{padding:0;font-size:13px;font-weight:700;color:var(--color-muted)}.setup__input{width:100%;padding:8px 10px;border:2px solid var(--color-panel-border);border-radius:6px;background:#0000004d;color:var(--color-text);font:inherit}.setup__input:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-accent)}.setup__input--code{font-family:ui-monospace,Consolas,monospace;letter-spacing:1px}.setup__warn,.setup>.splash__error,.setup>.panel__note,.setup__buttons{grid-column:1 / -1}.setup__warn{margin:0;font-size:13px;color:var(--color-muted)}.setup__buttons{display:flex;justify-content:space-between;gap:10px}.setup__buttons .btn--big{min-width:0;flex:1}.swatches{margin:0;padding:0;border:0;min-width:0}.swatches__row{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.swatch{width:30px;height:30px;padding:0;border:2px solid rgba(0,0,0,.45);border-radius:50%;cursor:pointer}.swatch:hover{transform:scale(1.1)}.swatch:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-accent)}.swatch--on{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-accent)}.stylepick{padding:4px 10px;border:2px solid var(--color-panel-border);border-radius:6px;background:transparent;color:var(--color-text);font:inherit;font-size:13px;cursor:pointer}.stylepick:hover{border-color:var(--color-muted)}.stylepick--on{border-color:var(--color-accent);color:var(--color-accent);font-weight:700}@media(max-width:440px){.setup{grid-template-columns:1fr}.setup__preview{justify-self:center}}@media(prefers-reduced-motion:reduce){.title__water i{animation:none}}.savecode{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:14px;border-top:1px solid rgba(201,164,106,.4)}.savecode h3{margin:0;font-size:15px}.savecode__code{display:block;width:100%;padding:10px;border:2px dashed var(--color-panel-border);border-radius:6px;background:#0000004d;font-family:ui-monospace,Consolas,monospace;font-size:18px;letter-spacing:1px;text-align:center;-webkit-user-select:all;user-select:all;word-break:break-all}.savecode__row{display:flex;gap:8px}.settings__quit{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-top:14px;border-top:1px solid rgba(201,164,106,.4)}@media(max-width:720px){.hud-column{top:calc(8px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));gap:6px}.hud{padding:6px 10px}.hud__head{margin-bottom:2px}.hud__title{font-size:15px}.hud__fold{min-width:32px;min-height:28px;margin:-4px -8px -4px 0}.hud p{font-size:12px}.zoom{top:calc(8px + env(safe-area-inset-top,0px));right:calc(8px + env(safe-area-inset-right,0px));flex-direction:column-reverse;width:44px}.zoom__btn{min-height:38px}.zoom__level{padding:6px 0;border:none;border-top:1px solid rgba(201,164,106,.35);border-bottom:1px solid rgba(201,164,106,.35)}.toolbar{top:auto;right:calc(8px + env(safe-area-inset-right,0px));bottom:calc(8px + env(safe-area-inset-bottom,0px));left:calc(8px + env(safe-area-inset-left,0px));gap:6px}.tool-btn{flex:1;justify-content:center;padding:10px 4px;min-height:44px;font-size:13px}.tool-btn kbd{display:none}.action-bar{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.toasts{bottom:calc(150px + env(safe-area-inset-bottom,0px))}}@media(max-height:520px){.hud__extra{display:none}}.panel:focus,.panel:focus-visible{outline:none}.tool-btn:focus-visible,.panel__close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:root{--grade-trophy: #f0b848;--grade-unique: #b78cf2}.badge--grade-common{background:var(--rarity-common)}.badge--grade-trophy{background:var(--grade-trophy)}.badge--grade-unique{background:var(--grade-unique)}.fish-tile--grade-trophy{box-shadow:inset 0 0 0 2px var(--grade-trophy)}.fish-tile--grade-unique{box-shadow:inset 0 0 0 2px var(--grade-unique),0 0 10px #b78cf273}.catch-card--grade-trophy{box-shadow:0 0 0 3px var(--grade-trophy),0 12px 40px #00000080}.catch-card--grade-unique{box-shadow:0 0 0 3px var(--grade-unique),0 0 36px #b78cf28c,0 12px 40px #00000080}.grade-pips{display:flex;justify-content:center;gap:4px;margin-top:3px}.grade-pip{width:8px;height:8px;border:1px solid var(--color-muted);border-radius:50%}.grade-pip--on{border-color:transparent;background:var(--rarity-common)}.grade-pip--trophy{border-color:var(--grade-trophy)}.grade-pip--trophy.grade-pip--on{background:var(--grade-trophy)}.grade-pip--unique{border-color:var(--grade-unique)}.grade-pip--unique.grade-pip--on{background:var(--grade-unique)}.grade-pip--na{border-style:dashed;opacity:.3}.species-detail__heading{margin:10px 0 4px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.grade-list{display:flex;flex-direction:column;gap:4px;margin:0 0 8px;padding:0;list-style:none;text-align:left}.grade-row{display:flex;align-items:baseline;gap:8px;font-size:12px;color:var(--color-muted)}.grade-row.is-caught{color:var(--color-text)}.grade-row .badge{flex:none;min-width:56px;text-align:center}.grade-row__text small{display:block;color:var(--color-muted)}.species-detail__hint{margin:0 0 8px;font-size:12px;color:var(--color-muted);text-align:left}.shop-item__perk--special{color:var(--grade-trophy)}.action-btn--noboat{background:#6d6354;border-color:#a79b86;box-shadow:0 4px #3f392f;color:#efe6d2}.action-btn--noboat:hover{background:#7d725f}:root{--rarity-epic: #b98cf2;--rarity-mythical: #ff7fb6}.fish-tile--epic,.species-detail--epic,.catch-card--epic{--rarity: var(--rarity-epic)}.fish-tile--mythical,.species-detail--mythical,.catch-card--mythical{--rarity: var(--rarity-mythical)}.badge--epic{background:var(--rarity-epic)}.badge--mythical{background:linear-gradient(90deg,#ff7fb6,#ffd36e,#7fe3ff)}.catch-card--mythical{box-shadow:0 0 0 3px var(--rarity-mythical),0 0 40px #ff7fb68c,0 12px 40px #00000080}.encyclopedia{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,270px);gap:14px;align-items:start}@media(max-width:640px){.encyclopedia{grid-template-columns:1fr}}.encyclopedia__count{margin:0 0 8px;color:var(--color-muted);font-size:12px}.encyclopedia__filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.encyclopedia__filters .input{flex:1 1 180px;min-width:0}.encyclopedia__filters select,.encyclopedia__filters .input{padding:5px 8px;border:1px solid rgba(201,164,106,.45);border-radius:6px;background:#0000004d;color:inherit;font:inherit;font-size:12px}.mastery{display:flex;flex-wrap:wrap;gap:4px 10px;margin:4px 0 8px;padding:0;list-style:none;font-size:11px;color:var(--color-muted)}.mastery li small{display:block;font-size:10px;opacity:.8}.mastery li.is-done{color:var(--rarity-uncommon);font-weight:700}.catch-card__bonus{margin:4px 0;color:#f2d24b;font-size:13px;font-weight:700}.basket-space{margin-bottom:12px;padding:10px 12px;background:#00000038;border-radius:8px}.basket-space__row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.basket-space__bar{height:8px;margin:8px 0 6px;border-radius:4px;background:#ffffff26;overflow:hidden}.basket-space__bar>span{display:block;height:100%;background:#6fb86b}.basket-space__bar>span.is-full{background:#d9674a}.basket-space__hint{margin:0;color:var(--color-muted);font-size:12px}.account{margin-top:14px;padding:10px 12px;background:#00000038;border-radius:8px}.account h3{margin:0 0 6px;font-size:15px}.account__form{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.account__form label,.account label{font-size:12px;color:var(--color-muted)}.account__row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.account__ok{color:var(--rarity-uncommon);font-size:12px}.setup__hint{margin:2px 0 6px;color:var(--color-muted);font-size:12px}.linkbtn{padding:0;border:0;background:none;color:var(--color-accent);font:inherit;text-decoration:underline;cursor:pointer}.tutorial{position:absolute;left:16px;bottom:16px;width:min(300px,calc(100vw - 32px));padding:10px 12px 12px;background:var(--color-panel);border:2px solid var(--color-accent);border-radius:8px;box-shadow:0 6px 20px #0006;pointer-events:auto}.tutorial__top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:11px;color:var(--color-muted)}.tutorial__title{margin:0 0 4px;font-size:16px;color:var(--color-accent)}.tutorial__text{margin:0 0 8px;font-size:13px;line-height:1.4}.tutorial__bar{height:4px;margin-bottom:8px;border-radius:2px;background:#ffffff26;overflow:hidden}.tutorial__bar>span{display:block;height:100%;background:var(--color-accent)}.tutorial__buttons{display:flex;justify-content:flex-end}.tool-btn--pulse{animation:tool-pulse 1.1s ease-in-out infinite;border-color:var(--color-accent)}@keyframes tool-pulse{0%,to{box-shadow:0 0 #f2d24bb3}50%{box-shadow:0 0 0 7px #f2d24b00}}@media(prefers-reduced-motion:reduce){.tool-btn--pulse{animation:none;box-shadow:0 0 0 3px #f2d24bcc}}@media(max-width:720px){.tutorial{left:calc(8px + env(safe-area-inset-left,0px));right:calc(8px + env(safe-area-inset-right,0px));bottom:calc(64px + env(safe-area-inset-bottom,0px));width:auto}}.chat{position:absolute;top:64px;right:16px;width:min(320px,calc(100vw - 32px));display:flex;flex-direction:column;gap:4px;pointer-events:none;font-size:13px}.chat>*{pointer-events:auto}.chat__tabs{display:flex;justify-content:flex-end;gap:4px;pointer-events:none}.chat__tabs>*{pointer-events:auto}.chat__tab{position:relative;padding:3px 10px;border:1px solid var(--color-panel-border);border-radius:6px 6px 0 0;background:var(--color-panel);color:var(--color-muted);font:inherit;font-size:12px;cursor:pointer}.chat__tab--on{color:var(--color-accent);border-color:var(--color-accent)}.chat__toggle{padding:3px 9px}.chat__badge{margin-left:6px;padding:0 5px;border-radius:8px;background:var(--color-accent);color:#2e251c;font-size:10px;font-weight:700}.chat__log{height:130px;overflow-y:auto;padding:6px 8px;background:var(--color-panel);border:1px solid var(--color-panel-border);border-radius:0 6px 6px}.chat__line{margin:0 0 3px;overflow-wrap:anywhere;line-height:1.3}.chat__line b{color:var(--color-accent)}.chat__line--me b{color:#9fd6a0}.chat__line--catch{color:var(--color-muted);font-style:italic}.chat__line--trophy{color:var(--rarity-rare)}.chat__line--unique{color:var(--rarity-legendary);font-weight:700}.chat__empty{margin:0;color:var(--color-muted)}.chat__notice{margin:0;padding:2px 8px;color:var(--color-error);font-size:12px}.chat__input{padding:6px 8px;border:1px solid var(--color-panel-border);border-radius:6px;background:var(--color-panel-solid);color:var(--color-text);font:inherit}@media(max-width:720px){.chat{top:calc(148px + env(safe-area-inset-top,0px));right:0;width:min(300px,100vw)}.chat:not(.chat--closed)>*{margin-right:calc(8px + env(safe-area-inset-right,0px))}.chat__log{height:110px}.chat__tab{padding:6px 10px;min-height:36px}.chat__tab--edge{min-height:44px;padding:6px 12px 6px 14px;border-right:none;border-radius:10px 0 0 10px;font-size:13px;font-weight:700;color:var(--color-text);padding-right:calc(10px + env(safe-area-inset-right,0px))}}.ranks-box{position:relative;width:0;min-width:100%;container-type:inline-size;background:var(--color-panel);border:2px solid var(--color-panel-border);border-radius:6px;pointer-events:auto;font-size:13px}.ranks-box__head{display:flex}.ranks-box__toggle{display:flex;flex:1 1 auto;min-width:0;justify-content:center;align-items:center;gap:3px;padding:5px 4px;border:none;background:transparent;color:var(--color-muted);font:inherit;font-weight:700;text-align:left;white-space:nowrap;cursor:pointer}.ranks-box__toggle+.ranks-box__toggle{border-left:1px solid var(--color-panel-border)}.ranks-box__toggle--on,.ranks-box--closed .ranks-box__toggle{color:var(--color-accent)}@container (max-width: 250px){.ranks-box__toggle{padding:5px 2px;font-size:12px}.ranks-box__toggle>span[aria-hidden=true]{display:none}}.ranks-box__label-short{display:none}@container (max-width: 220px){.ranks-box__label-short{display:inline}.ranks-box__label--has-short,.ranks-box__paren{display:none}.ranks-box .ranks-box__online{display:inline-block;min-width:15px;margin-left:3px;padding:0 4px;border-radius:999px;background:#7fc47a40;font-size:10px;line-height:15px;text-align:center}}@container (max-width: 190px){.ranks-box__toggle{padding:5px 1px;font-size:11px;gap:1px}.ranks-box__online,.ranks-box__new{margin-left:2px}.ranks-box .ranks-box__online{padding:0 3px}.ranks-box .ranks-box__new{min-width:0;width:7px;height:7px;padding:0;border-radius:50%;font-size:0;line-height:0;vertical-align:5px}}.ranks-box__panel{position:absolute;top:calc(100% + 4px);left:-2px;width:340px;max-width:calc(100vw - 32px);padding-top:8px;background:var(--color-panel);border:2px solid var(--color-panel-border);border-radius:6px;pointer-events:auto}.ranks-box__new{display:inline-block;min-width:15px;margin-left:4px;padding:0 4px;border-radius:999px;background:#d9534f;color:#fff;font-size:10px;line-height:15px;text-align:center}.ranks-box__event{width:100%;justify-content:space-between;flex-wrap:wrap;gap:1px 6px;padding:5px 8px;border-top:1px solid var(--color-panel-border)}.ranks-box__event-name{display:inline-flex;align-items:center;gap:5px}.ranks-box__event-time{margin-left:auto;white-space:nowrap;font-weight:400;font-variant-numeric:tabular-nums;color:var(--color-muted)}.ranks-box__event--live,.ranks-box--closed .ranks-box__event--live{color:var(--hunt-live)}.ranks-box__event--live .ranks-box__event-time{color:var(--hunt-live-soft)}.hunt__dot{width:8px;height:8px;border-radius:50%;background:var(--hunt-live);box-shadow:0 0 0 0 var(--hunt-live);animation:hunt-pulse 1.4s ease-out infinite}@keyframes hunt-pulse{0%{box-shadow:0 0 #ff7a59b3}to{box-shadow:0 0 0 7px #ff7a5900}}@media(prefers-reduced-motion:reduce){.hunt__dot{animation:none}}@container (max-width: 250px){.ranks-box__event{padding:5px 4px}}.ranks__list.hunt{max-height:380px}.hunt__intro{margin:0 0 8px;color:var(--color-muted);font-size:12px;line-height:1.35}.hunt__here{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(201,164,106,.3)}.hunt__where,.hunt__place{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-weight:700}.hunt__where{color:var(--color-accent)}.hunt__places{margin:0;padding:0;list-style:none}.hunt__place{width:100%;padding:4px;border:none;border-radius:4px;background:transparent;color:var(--color-text);font:inherit;font-weight:400;text-align:left;cursor:pointer}.hunt__place:hover,.hunt__place--on{background:#c9a46a2e}.hunt__place--locked .hunt__place-name{color:var(--color-muted)}.hunt__place>span:last-child,.hunt__where>span:last-child{flex:none;font-variant-numeric:tabular-nums;font-size:12px}.hunt__live{color:var(--hunt-live);font-weight:700}.hunt__muted{color:var(--color-muted);font-weight:400}.hunt__monsters{margin:4px 0 6px;padding:0;list-style:none}.hunt__monster{display:flex;align-items:center;gap:8px;padding:3px 4px}.hunt__monster img{flex:none;image-rendering:pixelated}.hunt__monster-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.hunt__monster-text .hunt__muted{font-size:11px}.hunt__monster--landed img{opacity:.55}.hunt__landed{margin-left:auto;color:#9fd6a0;font-weight:700}.badge--monster{background:linear-gradient(90deg,#ff7a59,#f0b429);color:#2a1608}.ranks__list.news{max-height:380px}.news__entry+.news__entry{margin-top:10px;padding-top:8px;border-top:1px solid rgba(201,164,106,.3)}.news__when{margin:0;color:var(--color-muted);font-size:11px}.news__title{margin:1px 0 3px;color:var(--color-accent);font-size:13px}.news__points{margin:0;padding-left:16px;line-height:1.35}.news__points li+li{margin-top:2px}.ranks-box__online{margin-left:4px;color:#9fd6a0}.online__place+.online__place{margin-top:6px}.online__where{margin:0;padding:2px 0;color:var(--color-accent);font-weight:700}.online__count{color:var(--color-muted);font-weight:400}.online__place .ranks__row{padding-left:8px}.online__who{width:100%;border:none;border-radius:3px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.online__who:hover,.online__who--on{background:#c9a46a26}.online__card{margin:2px 0 6px 8px;padding:6px 8px;border-left:2px solid var(--color-accent);line-height:1.35}.online__card p{margin:0}.online__muted{color:var(--color-muted)}.online__go{margin-top:4px;padding:4px 10px;border:1px solid var(--color-accent);border-radius:4px;background:transparent;color:var(--color-accent);font:inherit;font-weight:700;cursor:pointer}.online__go:disabled{opacity:.6;cursor:default}.ranks{display:flex;flex-direction:column}.ranks__boards{display:flex;gap:4px;padding:0 8px 6px}.ranks__board{flex:1;padding:3px 4px;white-space:nowrap;border:1px solid var(--color-panel-border);border-radius:4px;background:transparent;color:var(--color-muted);font:inherit;font-size:12px;cursor:pointer}.ranks__board--on{color:var(--color-accent);border-color:var(--color-accent)}.ranks__list{max-height:250px;overflow-y:auto;padding:0 10px 8px}.ranks__empty{margin:0;padding:4px 0;color:var(--color-muted)}.ranks__rows{margin:0;padding:0;list-style:none}.ranks__row{display:flex;gap:8px;align-items:baseline;padding:2px 0;line-height:1.3}.ranks__row--me{color:#9fd6a0;font-weight:700}.ranks__rank{min-width:1.6em;text-align:right;color:var(--color-accent);font-variant-numeric:tabular-nums}.ranks__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranks__value{color:var(--color-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.ranks__row--me .ranks__value{color:inherit}.ranks__gap{color:var(--color-muted);text-align:center}@media(max-width:720px){.ranks-box{font-size:12px}.ranks-box__panel{max-width:calc(100vw - 16px)}.ranks-box__toggle{min-height:36px}.ranks__list{max-height:180px}.ranks__board,.online__who{min-height:32px}}.wardrobe{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.wardrobe__item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:8px 10px;border:2px solid var(--color-panel-border);border-radius:6px}.wardrobe__item--on{border-color:var(--color-accent)}.wardrobe__trail{display:grid;place-items:center;width:60px;height:60px;border-radius:6px;background:#7fb85a;color:#fff6c8;font-size:26px;text-shadow:0 0 6px #ffe08a}.wardrobe__aura{display:grid;place-items:center;width:60px;height:60px;border-radius:6px;background:radial-gradient(ellipse 45% 55% at 50% 52%,var(--aura2) 0%,var(--aura) 45%,transparent 75%),#2c3a2e}.wardrobe__bonus{margin-top:2px;color:#9fd6a0;font-size:12px;font-weight:700}.wardrobe__summary{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0 0 10px;color:var(--color-muted);font-size:13px}.wardrobe__summary small{opacity:.75}.wardrobe__summary-on{color:#9fd6a0;font-weight:700}.hud .hud__outfit{color:#9fd6a0}.wardrobe__thing{display:grid;place-items:center;width:60px;height:60px;border-radius:6px;background:#7fb85a}.wardrobe__thing--water{background:#3b7c9e}.wardrobe__off{margin:0 0 8px}.segmented--wrap{flex-wrap:wrap}.wardrobe__text{min-width:0}.lookshop{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.lookshop__preview{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;border:2px solid var(--color-panel-border);border-radius:6px;background:#7fb85a}.lookshop__was{color:#2e251c;font-size:12px;font-weight:700}.lookshop__pick{flex:1;min-width:240px;display:flex;flex-direction:column;gap:10px}@media(max-width:560px){.wardrobe__item{grid-template-columns:auto 1fr}.wardrobe__action{grid-column:1 / -1;justify-self:end}}.speech-bubble{position:relative;box-sizing:border-box;width:max-content;max-width:96px;margin-bottom:4px;padding:2px 4px;border:1px solid #2b2433;border-radius:3px;background:#fffdf4;color:#2b2433;font:600 7px/1.3 Trebuchet MS,system-ui,sans-serif;text-align:center;overflow-wrap:anywhere;pointer-events:none;-webkit-user-select:none;user-select:none}.speech-bubble:after{content:"";position:absolute;left:50%;bottom:-4px;width:5px;height:5px;margin-left:-3px;border-right:1px solid #2b2433;border-bottom:1px solid #2b2433;background:#fffdf4;transform:rotate(45deg)}.name-tag{white-space:nowrap;color:#fff;font:700 7px/1 Trebuchet MS,system-ui,sans-serif;text-shadow:0 0 1px #1d2b1f,.5px .5px 0 #1d2b1f,-.5px .5px 0 #1d2b1f,.5px -.5px 0 #1d2b1f,-.5px -.5px 0 #1d2b1f;pointer-events:none;-webkit-user-select:none;user-select:none}.trophy-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:10px 0 0;padding:12px;list-style:none;background:linear-gradient(#7a5233,#5e3d22);border:2px solid #3e2715;border-radius:8px}.trophy{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:150px;padding:8px;background:#140e088c;border:2px solid #a9875c;border-radius:8px;font-size:12px;text-align:center}.trophy img{width:112px;height:56px;image-rendering:pixelated}.trophy--trophy{border-color:var(--rarity-legendary);box-shadow:0 0 0 1px #f2b84b66,0 0 10px #f2b84b40}.trophy--unique{border-color:#c38cf2;box-shadow:0 0 0 1px #c38cf273,0 0 12px #c38cf24d}.trophy--empty{justify-content:center;border-style:dashed;border-color:#c9a46a73;background:#140e084d;color:var(--color-muted)}.trophy__name{font-size:14px;font-weight:700}.trophy__meta{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.trophy__when{color:var(--color-muted);font-size:11px}.trophy .btn{margin-top:auto}.trophy-wall__heading{margin:16px 0 6px;font-size:15px}.trophy-pick{display:grid;gap:4px;margin:0;padding:0;list-style:none}.trophy-pick li{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#00000038;border-radius:6px}.trophy-pick img{width:56px;height:28px;image-rendering:pixelated}.trophy-pick__name{flex:1;min-width:0;display:flex;flex-direction:column;font-weight:700}.trophy-pick__meta{color:var(--color-muted);font-size:12px;font-weight:400}.fish-tile__actions{display:flex;gap:4px;margin-top:6px}.fish-tile__actions .btn{flex:1;padding-left:4px;padding-right:4px}.online__trophies ul{display:flex;flex-wrap:wrap;gap:2px;margin:2px 0 4px;padding:0;list-style:none}.online__trophies img{display:block;width:42px;height:21px;image-rendering:pixelated}.fight{position:absolute;left:50%;bottom:84px;transform:translate(-50%);width:min(340px,calc(100vw - 32px));padding:10px 12px;background:var(--color-panel);border:2px solid var(--color-panel-border);border-radius:8px;pointer-events:none;font-size:13px}.fight__title{margin:0 0 4px;text-align:center}.fight__arena{position:relative;height:150px;overflow:hidden}.fight__arena>*{position:absolute;left:50%;top:50%;translate:-50% -50%;border-radius:50%}.fight__band{box-sizing:border-box;border-style:solid}.fight__band--good{border-color:#7fc47a59}.fight__band--perfect{border-color:#f2d24b8c}.fight__target{display:grid;place-items:center;border:2px dashed rgba(240,232,214,.55)}.fight__target img{width:56px;height:28px;image-rendering:pixelated}.fight__ring{box-sizing:border-box;border:3px solid #f0e8d6;box-shadow:0 0 6px #f0e8d699;opacity:0;will-change:transform}.fight__judgement{top:18%;font-weight:700;font-size:16px;white-space:nowrap;border-radius:0;animation:fight-pop .7s ease-out forwards}.fight__judgement--perfect{color:var(--color-accent)}.fight__judgement--good{color:#9fd6a0}.fight__judgement--miss,.fight__judgement--late{color:#f08a7a}@keyframes fight-pop{0%{opacity:0;scale:.7}20%{opacity:1;scale:1.1}70%{opacity:1;scale:1}to{opacity:0;scale:1}}.fight__row{display:flex;align-items:center;gap:8px}.fight__label{color:var(--color-muted);font-size:12px}.fight__progress{flex:1;height:10px;background:#00000059;border-radius:5px;overflow:hidden}.fight__progress>span{display:block;height:100%;background:#7fc47a;transition:width .15s ease-out}.fight__cue{display:flex;justify-content:space-between;align-items:center;margin:8px 0 2px;color:var(--color-muted);font-size:12px}.fight__strikes{display:inline-flex;gap:3px;vertical-align:middle}.fight__strikes>span{width:9px;height:9px;border:1px solid #f08a7a;border-radius:50%}.fight__strikes>span.is-used{background:#f08a7a}.fight__time{font-variant-numeric:tabular-nums}.fight__hint{margin:0;color:var(--color-muted);font-size:11px}.action-btn--fight{touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}@media(prefers-reduced-motion:reduce){.fight__judgement{animation-duration:.01s;animation-fill-mode:none}}@media(max-width:720px){.fight{bottom:calc(132px + env(safe-area-inset-bottom,0px));font-size:12px}.fight__arena{height:130px}}.tool-btn--admin{border-color:var(--hunt-live)}.admin__section{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:18px}.admin__section>.setup__input{max-width:420px}.admin__heading{margin:0;font-size:16px;color:var(--color-accent)}.admin__label{color:var(--color-muted);font-size:13px}.admin__status{margin:0}.admin__status--closed{color:var(--hunt-live-soft);font-weight:700}.admin__note{margin:0;color:var(--rarity-uncommon)}.admin__confirm{display:flex;flex-direction:column;gap:8px;width:100%;max-width:420px}.admin__confirm p{margin:0}.admin__buttons{display:flex;flex-wrap:wrap;gap:6px}.admin__players{display:flex;flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none}.admin__player{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid rgba(201,164,106,.4);border-radius:6px;background:#0000002e}.admin__player--banned{opacity:.75}.admin__who{display:flex;flex-direction:column;min-width:0}.admin__meta{color:var(--color-muted);font-size:13px;overflow-wrap:anywhere}.admin__tag{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:#f2d24b33;color:var(--color-accent);font-size:11px;font-weight:700}.admin__tag--online{background:#7fc47a33;color:var(--rarity-uncommon)}.admin__tag--banned{background:#a8452f59;color:var(--color-error)}
