:root{color:#123040;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#d9f7fb}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.profile-page{align-items:center;background:linear-gradient(180deg,#ffffffb3,#d9f7fb33),#8adce8;display:flex;justify-content:center;min-height:100vh;padding:32px}.profile-panel{max-width:860px;text-align:center;width:100%}.eyebrow{color:#176071;font-size:.95rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1{color:#0d4053;font-size:clamp(2.2rem,4vw,4rem);line-height:1;margin:0 0 28px}.auth-panel{background:#fff;border:3px solid #176071;border-radius:8px;box-shadow:0 12px #1760712e;max-width:420px;padding:28px;text-align:center;width:100%}.auth-tabs{background:#e7fbff;border:1px solid #9edee9;border-radius:8px;display:grid;gap:4px;grid-template-columns:repeat(2,1fr);margin-bottom:18px;padding:4px}.auth-tab{background:transparent;border:0;border-radius:6px;color:#176071;cursor:pointer;font-weight:900;padding:10px}.auth-tab[aria-selected=true]{background:#fff;color:#0d4053}.auth-form,.profile-form{display:grid;gap:14px;text-align:left}.auth-form label,.profile-form label{color:#0d4053;display:grid;font-weight:800;gap:6px}.auth-form input,.profile-form input[type=text],.profile-form input[type=email],.profile-form input[type=password]{border:2px solid #9edee9;border-radius:8px;color:#123040;font:inherit;padding:11px 12px}.auth-submit{justify-self:stretch}.profile-session{align-items:center;display:flex;gap:12px;justify-content:center;margin:-12px 0 24px}.profile-session span{color:#4b7180;font-weight:800}.profile-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.profile-create-button{margin-top:24px}.modal-backdrop{align-items:center;background:#1230406b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:20}.profile-modal{background:#fff;border:3px solid #176071;border-radius:8px;box-shadow:0 16px #1230402e;max-width:440px;padding:24px;width:100%}.profile-modal h2{color:#0d4053;font-size:1.7rem;line-height:1.1;margin:0 0 18px;text-align:center}.profile-form fieldset{border:2px solid #9edee9;border-radius:8px;margin:0;padding:12px}.profile-form legend{color:#0d4053;font-weight:900;padding:0 6px}.avatar-options{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.avatar-option{align-items:center;background:#f5fbfc;border:1px solid rgba(23,96,113,.16);border-radius:8px;cursor:pointer;display:grid!important;gap:6px!important;justify-content:center;justify-items:center;min-width:0;padding:10px 8px;text-align:center}.avatar-option:has(input:checked){background:#fff7d6;border-color:#f2bf4c}.avatar-option:has(input:focus-visible){outline:3px solid rgba(23,96,113,.24);outline-offset:2px}.avatar-option input{height:1px;opacity:0;position:absolute;width:1px}.avatar-option img{display:block;height:44px;object-fit:contain;width:44px}.avatar-option span{font-size:.88rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.secondary-button{background:#f5fbfc;border-color:#9edee9;color:#176071}.profile-card{align-items:center;background:#fff;border:3px solid #176071;border-radius:8px;box-shadow:0 10px #1760712e;color:#123040;cursor:pointer;display:flex;flex-direction:column;gap:10px;min-height:180px;padding:22px;transition:transform .15s ease,box-shadow .15s ease}.profile-card:hover,.profile-card:focus-visible{box-shadow:0 14px #17607138;outline:none;transform:translateY(-4px)}.profile-avatar{align-items:center;aspect-ratio:1;background:#e7fbff;border:3px solid #9edee9;border-radius:999px;display:flex;justify-content:center;overflow:hidden;padding:6px;width:76px}.profile-avatar img{display:block;height:100%;object-fit:contain;width:100%}.profile-avatar-fallback{color:#176071;font-size:2rem;font-weight:900}.profile-name{font-size:1.35rem;font-weight:800}.profile-meta,.status-text{color:#4b7180}.error-text{color:#9f1239;font-weight:700}.game-page{background:#baeef5;display:grid;grid-template-rows:auto 1fr auto;min-height:100vh}.top-hud,.bottom-shop{align-items:center;background:#fff;border-color:#12304029;display:flex;gap:14px;min-height:72px;padding:12px 18px}.top-hud{border-bottom:1px solid rgba(18,48,64,.16)}.bottom-shop{border-top:1px solid rgba(18,48,64,.16);justify-content:center}.hud-profile{min-width:120px}.currency-row{display:flex;flex:1;flex-wrap:wrap;gap:10px}.currency-row span{background:#e7fbff;border:1px solid #9edee9;border-radius:8px;font-weight:800;padding:8px 10px}.save-status{align-items:center;background:#e7fbff;border:1px solid #9edee9;border-radius:8px;color:#176071;display:inline-flex;flex:0 0 44px;height:44px;justify-content:center;width:44px}.save-status-saving svg{animation:save-spin .9s linear infinite}.save-status-saved{background:#dcfce7;border-color:#86efac;color:#166534}.save-status-failed{background:#ffe4e6;border-color:#fda4af;color:#9f1239}@keyframes save-spin{to{transform:rotate(360deg)}}.icon-button,.text-button,.shop-button{border-radius:8px;cursor:pointer;font-weight:800}.icon-button{align-items:center;aspect-ratio:1;background:#176071;border:0;color:#fff;display:flex;justify-content:center;width:44px}.text-button{background:#ffe08a;border:2px solid #f89c4a;color:#5c2d0f;padding:10px 14px}.game-main{align-items:center;display:flex;gap:16px;justify-content:center;min-height:0;padding:18px}.game-main-debug{align-items:stretch}.aquarium-shell{align-items:center;display:flex;flex:1 1 1100px;justify-content:center;min-height:0;min-width:0}.aquarium-canvas{aspect-ratio:16 / 9;background:#58c7df;border:4px solid #176071;border-radius:8px;display:flex;flex:0 1 1100px;max-height:100%;max-width:100%;min-height:0;overflow:hidden;width:100%}.aquarium-canvas canvas{display:block;height:100%!important;width:100%!important}.shop-button{background:#fff7d6;border:2px solid #f2bf4c;color:#5c2d0f;display:grid;gap:3px;justify-items:center;min-width:116px;padding:10px 12px}.shop-fish-button{grid-template-rows:42px auto;min-height:76px;padding:8px 10px}.shop-fish-image{align-self:center;display:block;max-height:40px;max-width:82px;object-fit:contain}.shop-button:disabled{background:#eef3f4;border-color:#c7d3d7;color:#81929a;cursor:not-allowed}.dev-panel{align-self:stretch;background:#fff;border:2px solid rgba(18,48,64,.18);border-radius:8px;box-shadow:0 10px 24px #1230401f;color:#123040;flex:0 1 825px;max-height:100%;min-height:0;overflow:auto;padding:14px}.dev-panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.dev-panel-header strong,.dev-section-title{color:#0d4053;font-size:.95rem;font-weight:900}.dev-panel-header span{background:#e7fbff;border:1px solid #9edee9;border-radius:8px;color:#176071;font-size:.78rem;font-weight:800;padding:5px 7px}.dev-panel-actions{align-items:center;display:flex;gap:8px}.dev-stat-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.dev-stat-grid div{background:#f5fbfc;border:1px solid rgba(23,96,113,.14);border-radius:8px;min-width:0;padding:7px}.dev-panel dt{color:#577987;font-size:.72rem;font-weight:800;margin:0 0 2px;text-transform:uppercase}.dev-panel dd{font-size:.86rem;font-weight:800;margin:0;overflow-wrap:anywhere}.dev-section-title{margin:16px 0 8px}.dev-table-wrap{border:1px solid rgba(18,48,64,.16);border-radius:8px;overflow:auto}.dev-fish-table{border-collapse:collapse;font-size:.76rem;min-width:880px;width:100%}.dev-fish-table th,.dev-fish-table td{border-bottom:1px solid rgba(18,48,64,.1);padding:7px 8px;text-align:left;vertical-align:middle;white-space:nowrap}.dev-fish-table th{background:#e7fbff;color:#176071;font-size:.68rem;font-weight:900;position:sticky;text-transform:uppercase;top:0;z-index:1}.dev-fish-table tbody tr:last-child td{border-bottom:0}.dev-fish-id{font-weight:900;max-width:130px;overflow:hidden;text-overflow:ellipsis}.dev-danger-button{background:#ffe4e6;border:1px solid #fda4af;border-radius:8px;color:#9f1239;cursor:pointer;font-size:.72rem;font-weight:900;padding:5px 7px}.dev-danger-button:hover,.dev-danger-button:focus-visible{background:#fecdd3;outline:2px solid rgba(159,18,57,.25);outline-offset:2px}@media(max-width:720px){.top-hud,.bottom-shop{align-items:stretch;flex-wrap:wrap}.shop-button{flex:1;min-width:130px}.game-main-debug{align-items:stretch;flex-direction:column}.dev-panel{flex-basis:auto;max-height:260px;width:100%}}
