:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07161f;color:#eef9fb;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--panel: rgba(9, 22, 31, .72);--panel-strong: rgba(10, 24, 35, .92);--line: rgba(218, 251, 255, .14);--muted: rgba(226, 247, 250, .68);--income: #62e6a6;--warning: #ffd166;--danger: #ff7b61;--water: #67d8f4}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button{font:inherit}.game-shell{position:relative;width:100vw;height:100dvh;overflow:hidden;background:radial-gradient(circle at 48% 24%,rgba(77,221,255,.16),transparent 34%),linear-gradient(180deg,#08283a,#061a26 55%,#051118)}.aquarium-stage{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.aquarium-stage canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;width:100%;height:100%}.aquarium-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background-image:linear-gradient(180deg,#04223338,#030c12b8),url(/images/aquarium-bg.png);background-size:cover;background-position:center;filter:saturate(1.08) contrast(1.05)}.glass-glare{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;background:linear-gradient(112deg,rgba(255,255,255,.12),transparent 26%,transparent 70%,rgba(255,255,255,.06)),radial-gradient(circle at 50% 12%,rgba(179,241,255,.18),transparent 42%);mix-blend-mode:screen}.fish-hitbox{position:absolute;z-index:6;width:86px;height:54px;border:0;padding:0;transform:translate(-50%,-50%);background:transparent;border-radius:999px;cursor:pointer}.fish-hitbox:focus-visible{outline:2px solid var(--water);outline-offset:4px}.food-hitbox{position:absolute;z-index:6;width:14px;height:14px;transform:translate(-50%,-50%);pointer-events:none}.tip-hitbox{position:absolute;z-index:8;display:grid;place-items:center;border:0;padding:0;transform:translate(-50%,-50%);color:var(--income);background:transparent;border-radius:999px;cursor:pointer;font-weight:900;text-shadow:0 2px 10px rgba(0,0,0,.55)}.tip-hitbox:focus-visible{outline:2px solid var(--income);outline-offset:3px}.tip-hitbox:disabled{pointer-events:none}.tip-hitbox span{animation:tip-pop .72s ease-out both;font-size:16px}.artifact-hitbox{position:absolute;z-index:18;display:grid;width:58px;height:58px;place-items:center;border:1px solid color-mix(in srgb,var(--artifact-accent) 58%,rgba(255,255,255,.18));border-radius:999px;color:var(--artifact-accent);background:#05111833;box-shadow:0 12px 28px #0000002e;margin-top:-29px;margin-left:-29px;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.artifact-hitbox>span:first-child{display:grid;width:32px;height:32px;place-items:center;border-radius:999px;background:#05111873;font-size:12px;font-weight:900;line-height:1}.artifact-hitbox:hover,.artifact-hitbox:focus-visible{outline:0;box-shadow:0 16px 34px #00000047}.artifact-tooltip{position:fixed;z-index:50;left:50%;top:84px;display:flex;width:240px;flex-direction:column;gap:5px;padding:11px;border:1px solid var(--line);border-radius:12px;color:#eef9fb;background:var(--panel-strong);box-shadow:0 18px 48px #00000061;text-align:left;transform:translate(-50%)}.artifact-tooltip strong{font-size:13px}.artifact-tooltip small{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.artifact-tooltip span{color:#eef9fbc7;font-size:12px;line-height:1.35}.artifact-tooltip b{color:var(--income);font-size:12px}.artifact-tooltip em{color:var(--warning);font-size:12px;font-style:normal}@keyframes tip-pop{0%{opacity:0;transform:translateY(6px) scale(.82)}24%{opacity:1}to{opacity:0;transform:translateY(-22px) scale(1.18)}}.overlay-layer{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;flex-direction:column;justify-content:space-between;padding:14px}.top-hud{pointer-events:auto;display:flex;align-items:center;gap:14px;width:min(1180px,calc(100vw - 28px));min-height:66px;padding:10px 12px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 20px 70px #00000042;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-mark{display:flex;align-items:center;gap:9px;padding-right:2px}.brand-mark>span{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(103,216,244,.36);border-radius:12px;color:var(--water);background:#67d8f41f}.brand-mark div,.hud-stat span{display:flex;flex-direction:column;gap:2px}.brand-mark strong,.hud-stat strong{font-size:14px;line-height:1.1;white-space:nowrap}.brand-mark small,.hud-stat small{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:0;line-height:1.1;text-transform:uppercase}.hud-stat{display:flex;align-items:center;gap:8px;min-width:78px;color:#edfbffeb}.hud-stat svg{color:var(--muted);flex:0 0 auto}.hud-stat[data-tone=income] strong,.hud-stat[data-tone=income] svg{color:var(--income)}.hud-stat[data-tone=warning] strong,.hud-stat[data-tone=warning] svg{color:var(--warning)}.hud-stat[data-tone=danger] strong,.hud-stat[data-tone=danger] svg{color:var(--danger)}.hud-actions{display:flex;gap:6px;margin-left:auto}.icon-button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:11px;color:#eef9fb;background:#ffffff0f;cursor:pointer}.icon-button:hover,.action-button:hover:not(:disabled),.buy-button:hover:not(:disabled),.primary-button:hover{transform:translateY(-1px);background:#ffffff1c}.bottom-bar{pointer-events:auto;align-self:center;display:flex;gap:8px;max-width:calc(100vw - 28px);overflow-x:auto;padding:8px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:0 20px 70px #00000047;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.action-button{display:grid;grid-template-rows:34px 16px 14px;justify-items:center;width:88px;min-height:78px;gap:4px;border:1px solid rgba(224,251,255,.12);border-radius:14px;color:#eef9fb;background:#ffffff0e;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease}.action-button:disabled{cursor:not-allowed;opacity:.42}.action-button[data-tone=danger]:not(:disabled){border-color:#ff7b617a}.action-button[data-tone=danger]:not(:disabled) .action-icon{color:var(--danger);background:#ff7b611f}.action-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:var(--water);background:#67d8f41a}.action-button strong{max-width:76px;overflow:hidden;font-size:12px;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}.action-button small{color:var(--income);font-size:10px;font-weight:800;line-height:1}.ambient-readout,.quick-summary,.mobile-run-pill,.restart-chip,.shop-chip,.log-chip{pointer-events:auto;position:absolute;border:1px solid var(--line);background:#08151e8f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ambient-readout{left:14px;bottom:118px;display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;color:#eef9fbd1;font-size:12px}.totem-layer{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:14}.totem-slot{pointer-events:auto;position:absolute;display:flex;gap:7px}.totem-slot[data-slot=shelf-left]{left:18px;top:118px}.totem-slot[data-slot=shelf-right]{right:18px;top:88px}.totem-slot[data-slot=tank-floor]{left:42%;bottom:116px}.totem-slot[data-slot=tank-back]{left:52%;top:136px}.totem-slot[data-slot=filter-side]{right:18px;bottom:212px}.totem-token{position:relative;display:grid;width:46px;height:54px;place-items:center;border:1px solid color-mix(in srgb,var(--totem-accent) 58%,rgba(255,255,255,.18));border-radius:14px 14px 10px 10px;color:var(--totem-accent);background:#07141d99;box-shadow:inset 0 -10px 18px #00000038,0 12px 28px #00000042;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.totem-token:hover,.totem-token:focus-visible{transform:translateY(-2px);outline:0}.totem-glyph{position:relative;display:grid;width:30px;height:38px;place-items:center}.totem-glyph i{position:absolute;display:block}.totem-glyph [data-part=base]{bottom:0;width:28px;height:7px;border-radius:999px;background:currentColor;opacity:.38}.totem-glyph [data-part=idol]{bottom:6px;width:18px;height:28px;border-radius:9px 9px 5px 5px;border:2px solid currentColor}.totem-glyph [data-part=scale]{bottom:8px;width:24px;height:24px;border-radius:70% 30%;background:currentColor;transform:rotate(18deg)}.totem-glyph [data-part=coral]{bottom:6px;width:22px;height:28px;border-left:4px solid currentColor;border-right:4px solid currentColor;border-radius:12px 12px 4px 4px}.totem-glyph [data-part=lens]{bottom:10px;width:24px;height:24px;border:3px solid currentColor;border-radius:999px}.totem-glyph [data-part=shrine]{bottom:7px;width:24px;height:25px;border:2px solid currentColor;border-top-width:7px;border-radius:5px}.totem-glyph [data-part=shell]{bottom:8px;width:26px;height:22px;border-radius:50% 50% 12px 12px;border:3px solid currentColor;border-bottom-width:6px}.totem-tooltip{position:absolute;left:50%;bottom:calc(100% + 10px);z-index:40;display:flex;width:230px;flex-direction:column;gap:5px;padding:11px;border:1px solid var(--line);border-radius:12px;color:#eef9fb;background:var(--panel-strong);box-shadow:0 18px 48px #00000061;text-align:left;transform:translate(-50%)}.totem-tooltip strong{font-size:13px}.totem-tooltip small{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.totem-tooltip span{color:#eef9fbc7;font-size:12px;line-height:1.35}.totem-tooltip b{color:var(--income);font-size:12px}.totem-tooltip em{color:var(--warning);font-size:12px;font-style:normal}.visitor-comments,.objectives-panel{pointer-events:auto;position:absolute;z-index:15;border:1px solid var(--line);background:#08151e9e;box-shadow:0 18px 52px #0000003d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.visitor-comments{right:14px;bottom:118px;width:min(330px,calc(100vw - 28px));padding:11px;border-radius:16px}.visitor-comments header,.objectives-title{display:flex;align-items:center;gap:7px;color:#eef9fbe6}.visitor-comments header strong,.objectives-title strong{font-size:12px}.visitor-comments p{margin:8px 0 0;color:var(--muted);font-size:12px}.visitor-comments ul{display:flex;flex-direction:column;gap:7px;margin:9px 0 0;padding:0;list-style:none}.visitor-comments li{color:#eef9fbd1;font-size:12px;line-height:1.35}.visitor-comments li[data-severity=positive]{color:var(--income)}.visitor-comments li[data-severity=warning]{color:var(--warning)}.visitor-comments li[data-severity=negative]{color:var(--danger)}.objectives-panel{left:14px;top:138px;display:flex;width:min(330px,calc(100vw - 28px));flex-direction:column;gap:10px;padding:11px;border-radius:16px}.objectives-title{border:0;padding:0;color:#eef9fb;background:transparent;cursor:pointer}.objective-row{display:grid;grid-template-columns:1fr auto;gap:6px 9px}.objective-row div{display:flex;flex-direction:column;gap:2px}.objective-row strong{font-size:12px;line-height:1.2}.objective-row span{color:var(--muted);font-size:11px;line-height:1.25}.objective-row small{color:var(--income);font-size:11px;font-weight:900;white-space:nowrap}.objective-row i{grid-column:1 / -1;height:7px;overflow:hidden;border-radius:999px;background:#ffffff1a}.objective-row b{display:block;height:100%;border-radius:inherit;background:var(--income)}.objective-row[data-completed=true] small,.objective-card[data-completed=true] .objective-row small{color:var(--water)}.objective-card{display:flex;flex-direction:column;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff0b}.objective-card>small{color:var(--muted);font-size:11px;font-weight:800}.ambient-readout span,.quick-summary span{display:flex;align-items:center;gap:6px}.event-log{pointer-events:auto;position:absolute;right:14px;bottom:118px;width:min(360px,calc(100vw - 28px));max-height:320px;overflow:auto;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--panel-strong);box-shadow:0 22px 80px #00000059}.event-log h2{margin:0 0 10px;font-size:14px}.event-log ul{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.event-log li{display:grid;grid-template-columns:44px 1fr;gap:9px;color:#eef9fbd6;font-size:12px;line-height:1.35}.event-log li span{color:var(--muted);font-variant-numeric:tabular-nums}.event-log li[data-tone=danger]{color:var(--danger)}.event-log li[data-tone=good]{color:var(--income)}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:18px;background:#020a0f57;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog,.side-sheet{pointer-events:auto;border:1px solid var(--line);background:var(--panel-strong);box-shadow:0 24px 90px #00000070;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dialog{width:min(880px,calc(100vw - 36px));max-height:min(760px,calc(100dvh - 36px));overflow:auto;border-radius:22px}.dialog-header{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line)}.dialog h2,.side-sheet h2{margin:0;font-size:18px;line-height:1.2}.dialog p,.side-sheet p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.money-pill{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;border-radius:999px;color:var(--income);background:#62e6a61a;font-weight:800}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.shop-item{display:grid;grid-template-columns:auto 1fr;gap:12px;min-height:250px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#ffffff0b}.fish-token{width:42px;height:42px;flex:0 0 auto;border:2px solid rgba(255,255,255,.28);border-radius:999px;box-shadow:inset 0 -8px 16px #0000003d,0 10px 22px #00000038}.shop-copy h3{margin:0;font-size:15px}.shop-copy small{display:block;margin-top:2px;color:var(--muted);font-size:11px;text-transform:uppercase}.shop-copy p{margin-top:9px}.trait-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.trait-row span{padding:4px 7px;border-radius:999px;color:#eef9fbd1;background:#ffffff13;font-size:11px}.shop-item dl,.end-stats{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}.shop-item dl div,.end-stats div,.stat-pair{padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0b}dt,.stat-pair span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}dd,.stat-pair strong{margin:3px 0 0;font-size:13px}.buy-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(103,216,244,.36);border-radius:13px;color:#06202d;background:var(--water);cursor:pointer;font-weight:900;transition:transform .16s ease,background .16s ease,opacity .16s ease}.buy-button{grid-column:1 / -1;min-height:40px}.buy-button:disabled{cursor:not-allowed;color:#eef9fb85;background:#ffffff14}.side-sheet{position:absolute;top:0;right:0;z-index:26;width:min(390px,100vw);height:100dvh;overflow:auto;border-radius:20px 0 0 20px}.sheet-title-row{display:flex;align-items:center;gap:11px}.sheet-body{display:flex;flex-direction:column;gap:13px;padding:16px}.meter{display:grid;grid-template-columns:1fr auto;gap:8px}.meter span{display:flex;align-items:center;gap:7px;color:#eef9fbd1;font-size:13px}.meter strong{font-size:13px;font-variant-numeric:tabular-nums}.meter i{grid-column:1 / -1;height:8px;overflow:hidden;border-radius:999px;background:#ffffff1a}.meter b{display:block;height:100%;border-radius:inherit;background:var(--income);transition:width .18s ease}.meter[data-status=warn] b{background:var(--warning)}.meter[data-status=bad] b{background:var(--danger)}.sheet-note,.danger-note{padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff0b}.danger-note{display:flex;align-items:center;gap:8px;color:var(--danger)!important}.attraction-breakdown{display:flex;flex-direction:column;gap:8px;margin-top:4px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff0b}.attraction-breakdown h3{margin:0 0 2px;font-size:13px}.attraction-breakdown div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#eef9fbc7;font-size:12px}.attraction-breakdown strong{color:#eef9fb;font-variant-numeric:tabular-nums;white-space:nowrap}.end-dialog{width:min(520px,calc(100vw - 36px));padding:22px}.end-dialog header{margin-bottom:16px}.end-stats{grid-template-columns:repeat(2,1fr);margin-bottom:16px}.reward-dialog{width:min(760px,calc(100vw - 36px))}.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.reward-card{display:flex;min-height:260px;flex-direction:column;align-items:flex-start;gap:9px;padding:15px;border:1px solid var(--line);border-radius:16px;color:#eef9fb;background:#ffffff0e;cursor:pointer;text-align:left;transition:transform .16s ease,background .16s ease,border-color .16s ease}.reward-card:hover{transform:translateY(-2px);border-color:#67d8f470;background:#ffffff17}.reward-card[data-rarity=rare],.bonus-item[data-rarity=rare]{border-color:#67d8f46b}.reward-card[data-rarity=epic],.bonus-item[data-rarity=epic]{border-color:#d8b4fe7a}.reward-card[data-rarity=legendary],.bonus-item[data-rarity=legendary]{border-color:#ffd1668c}.reward-type{display:inline-flex;align-items:center;gap:6px;color:var(--water);font-size:11px;font-weight:900;text-transform:uppercase}.reward-card strong,.bonus-item strong{font-size:16px;line-height:1.15}.reward-card small,.bonus-item small{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.reward-card p,.bonus-item p{margin:0;color:#eef9fbc7;font-size:13px;line-height:1.4}.reward-card b{margin-top:auto;color:var(--income);font-size:13px}.reward-card em,.bonus-item em{color:var(--warning);font-size:12px;font-style:normal;line-height:1.35}.reward-pick{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:34px;margin-top:4px;border-radius:10px;color:#06202d;background:var(--water);font-size:12px;font-weight:900}.bonus-item{display:flex;flex-direction:column;gap:8px;padding:13px;border:1px solid var(--line);border-radius:14px;background:#ffffff0b}.bonus-item div{display:flex;flex-direction:column;gap:3px}.primary-button{width:100%;min-height:46px}.sr-debug{position:fixed;left:-9999px;width:1px;height:1px;overflow:hidden}.species-strip{position:absolute;left:16px;top:94px;z-index:10;display:flex;gap:7px}.species-strip span{width:10px;height:10px;border-radius:999px}.quick-summary,.mobile-run-pill,.restart-chip,.shop-chip,.log-chip{display:none}@media(max-width:960px){.top-hud{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:calc(100vw - 24px)}.brand-mark{grid-column:1 / -1}.hud-actions{position:absolute;top:10px;right:10px}.hud-stat{min-width:0}.hud-stat strong{font-size:12px}}@media(max-width:720px){.overlay-layer{padding:10px}.top-hud{grid-template-columns:repeat(2,minmax(0,1fr));max-height:196px;overflow:hidden;padding:10px}.bottom-bar{display:grid;grid-template-columns:repeat(6,minmax(46px,1fr));width:calc(100vw - 20px);gap:5px;padding:6px}.action-button{width:auto;min-width:0;min-height:68px;grid-template-rows:30px 24px 12px;padding:4px 2px}.action-icon{width:30px;height:30px}.action-button strong{max-width:58px;white-space:normal;font-size:10px}.ambient-readout,.quick-summary{display:none}.objectives-panel{left:10px;top:206px;width:calc(100vw - 20px);max-height:138px;overflow:hidden}.visitor-comments{right:10px;bottom:88px;width:calc(100vw - 20px);max-height:112px;overflow:hidden}.visitor-comments li:nth-child(n+3){display:none}.totem-slot[data-slot=shelf-left]{left:10px;top:92px}.totem-slot[data-slot=shelf-right]{right:10px;top:92px}.totem-slot[data-slot=tank-floor]{left:36%;bottom:176px}.totem-slot[data-slot=tank-back]{left:48%;top:154px}.totem-slot[data-slot=filter-side]{right:10px;bottom:210px}.totem-token{width:42px;height:48px}.totem-tooltip{width:min(230px,calc(100vw - 24px))}.shop-grid,.reward-grid{grid-template-columns:1fr}.shop-item{min-height:0}.shop-item dl{grid-template-columns:repeat(2,1fr)}.side-sheet{width:100vw;border-radius:18px 18px 0 0}.event-log{right:10px;bottom:98px}.artifact-tooltip{position:fixed;right:12px;bottom:92px;left:12px;top:auto;width:auto;transform:none}}
