@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:root{--accent:#078699;--surface:#effbf7;--text:#123d4d;--muted:#426b72;color:#123d4d;font-synthesis:none;background:#daf5ee;font-family:Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(at 0 34%,#b0e9dd 0 9%,#0000 9.2%),radial-gradient(at 105% 62%,#b3eadf 0 13%,#0000 13.2%),radial-gradient(at 0 100%,#abebdd,#0000 55%),#dff6ef;min-width:280px;margin:0}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}#app{max-width:500px;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 16px) 22px calc(env(safe-area-inset-bottom) + 28px);margin:auto}.brand-header{letter-spacing:1.5px;justify-content:space-between;align-items:center;font-size:12px;display:flex}.brand-header button{color:#08768b;background:0 0;border:0;width:44px;height:44px;font-size:30px}.title-block{justify-content:center;align-items:center;gap:14px;margin:16px 0 10px;display:flex}.brain{color:#106d80;text-align:center;background:linear-gradient(90deg,#17b9bf 50%,#ff827f 50%);border:3px solid #117c89;border-radius:45% 42% 44% 40%;width:63px;height:67px;font-size:44px;line-height:58px;box-shadow:inset 5px 3px #fff4}h1{color:#078699;letter-spacing:.5px;text-shadow:0 2px #fff;margin:0;font-size:clamp(25px,7.6vw,36px);font-weight:950;line-height:1.06}h1 strong{color:#ff7478}.level-label{text-align:center;color:#fff;background:linear-gradient(#0bb7bd,#008ca5);border-radius:30px;width:145px;margin:16px auto 24px;padding:8px;font-weight:750}.memory-label{text-align:center;margin-bottom:16px;font-size:16px;font-weight:650}.memory-label span{color:#04899a;background:#fff;border-radius:50%;place-items:center;width:34px;height:30px;margin-right:8px;display:inline-grid}.memory-grid{aspect-ratio:1;background:#ffffffc9;border-radius:22px;gap:7px;padding:13px;display:grid;box-shadow:0 5px 20px #227e8310}.memory-cell{color:#fff;background:linear-gradient(140deg,#b8e7df,#a6dcd5);border:2px solid #0000;border-radius:12px;min-width:0;min-height:0;font-size:clamp(15px,5vw,25px);font-weight:700;transition:background .15s,transform .12s}.memory-cell:focus-visible{outline-offset:1px;outline:3px solid #004e67}.memory-cell.lit,.memory-cell.selected{background:linear-gradient(140deg,#ff9190,#ff696f);box-shadow:inset 0 2px #fff4}.memory-cell.selected{border-color:#e94759;transform:scale(.96)}.memory-cell.correct{background:#02a995;border-color:#008878}.memory-cell.missed{background:#ff7478;border:3px dashed #a92f4b}.memory-cell.wrong{background:#7c859d;border-color:#46536e}h2{text-align:center;margin:22px 0 7px;font-size:19px}#phase-detail{text-align:center;color:#426b72;min-height:20px;margin:0 0 16px;font-size:13px}.time-row{align-items:center;gap:12px;margin:0 12px;display:flex}.time-track{background:#b1d3d7;border-radius:12px;flex:1;height:14px;overflow:hidden}#time-fill{background:linear-gradient(90deg,#ff9b89,#ff737d);border-radius:12px;width:100%;height:100%}#time-label{font-variant-numeric:tabular-nums;min-width:40px;font-size:14px}.game-actions{flex-direction:column;gap:9px;margin:23px 10px 0;display:flex}.primary{color:#fff;background:linear-gradient(#ff8d83,#ff656e);border:1px solid #ffada5;border-radius:32px;min-height:58px;font-size:21px;font-weight:800;box-shadow:0 3px #e65c68}.secondary{color:#08788a;background:#ffffff80;border:1px solid #96cec6;border-radius:24px;min-height:44px;font-size:13px;font-weight:650}.secondary:disabled{opacity:.45}#game-message{text-align:center;min-height:20px;font-size:13px}#shell-nav{margin-top:4px}.memory-grid[data-size="6"]{gap:4px;padding:9px}.memory-grid[data-size="6"] .memory-cell{border-radius:7px}@media (height<=750px){#app{padding-top:8px}.title-block{margin:4px 0}.brain{width:45px;height:50px;font-size:30px;line-height:42px}h1{font-size:27px}.level-label{margin:10px auto 13px;padding:6px}.memory-label{margin-bottom:10px}.memory-grid{width:100%;max-width:37dvh;max-height:37dvh;margin:auto}h2{margin-top:13px;font-size:17px}#phase-detail{margin-bottom:9px}.game-actions{margin-top:15px}.primary{min-height:49px;font-size:18px}#game-message{margin:8px 0}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.landing{text-align:center;padding:20px 0 6px}.landing-kicker{letter-spacing:1.4px;color:#087d88;font-size:10px;font-weight:850}.landing-art{place-items:center;height:190px;display:grid}.memory-hero{color:#ff8587;background:linear-gradient(135deg,#1bbab4,#037b95);border:7px solid #fff;border-radius:30px;place-items:center;width:134px;height:134px;font-size:49px;display:grid;position:relative;transform:rotate(-8deg);box-shadow:0 14px #157e8930,0 20px 40px #157e8930}.memory-hero i,.memory-hero b{color:#fff;font-size:29px;font-style:normal;position:absolute}.memory-hero i{top:4px;left:14px}.memory-hero b{bottom:3px;right:11px}.landing h2{color:#087e92;margin:0 0 17px;font-size:39px;font-weight:950;line-height:1.05}.landing h2 em{color:#ed6575;font-style:normal}.landing-description{color:#426b72;max-width:330px;margin:0 auto 22px;font-size:14px;line-height:1.65}.landing-progress{background:#fff9;border:1px solid #b5ded4;border-radius:20px;flex-direction:column;gap:8px;margin-bottom:19px;padding:16px;display:flex}.landing-progress strong{font-size:16px}.landing-progress span{color:#426b72;font-size:12px}.landing button{border-radius:17px;width:100%;min-height:51px;margin:9px 0;font-weight:800;display:block}.landing-primary{color:#fff;background:linear-gradient(#ff8d83,#f76575);border:1px solid #ffa59e;box-shadow:0 4px #d85264}.landing-secondary{color:#08788a;background:#fff9;border:1px solid #91cfc6}.landing-link{color:#14768a;background:0 0;border:0}.landing-note{color:#537f83;font-size:10px;line-height:1.6}.practice-dialog{max-width:460px}.practice-dialog h2{text-align:left}.practice-dialog label{margin:15px 0;display:block}.practice-memory{aspect-ratio:1;background:#e5f4f0;border-radius:18px;gap:5px;margin:18px 0;padding:10px;display:grid}.practice-memory button{color:#147482;background:#b2e2d8;border:1px solid #a8d6cd;border-radius:8px;min-width:0;min-height:0;margin:0;padding:0;font-size:22px}.practice-memory button.lit,.practice-memory button.selected{color:#fff;background:#ff8587;border-color:#d7586c}.practice-memory button:disabled{opacity:1}.practice-dialog>button{min-height:44px;margin:4px}.practice-dialog select{max-width:100%;min-height:44px}.practice-dialog p{font-size:13px;line-height:1.6}@media (height<=700px){.landing{padding-top:5px}.landing-art{height:130px}.memory-hero{width:103px;height:103px}.landing h2{font-size:31px}.landing-description{margin-bottom:13px;font-size:12px}.landing-progress{padding:12px}.landing button{min-height:47px}}.practice-dialog{color:#123d4d;background:#effbf7;border:2px solid #59b5b2;border-radius:24px;width:calc(100% - 30px);max-height:calc(100dvh - 50px);padding:22px;overflow:auto;box-shadow:0 20px 70px #154e5b55}.practice-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#103d4d88}.practice-dialog>button{color:#126e7c;width:100%;min-height:46px;font:inherit;background:#dcf1eb;border:1px solid #8dcac1;border-radius:13px;margin:9px 0;padding:10px;font-weight:750;display:block}.practice-dialog>#practice-check{color:#fff;background:#f96c7b;border-color:#ed6673;box-shadow:0 3px #cf4f63}.practice-dialog select{color:#1a6270;font:inherit;background:#fff;border:1px solid #8dcac1;border-radius:10px;margin-left:6px;padding:8px;font-size:13px}.practice-dialog h2{color:#087e92;margin-top:12px;font-size:23px}.practice-dialog .practice-memory{max-width:310px;margin:16px auto}.practice-dialog .landing-note{font-size:10px}.practice-dialog #practice-status{text-align:center;color:#146f7d;font-weight:750}.shell-nav{padding-bottom:max(20px,env(safe-area-inset-bottom));gap:7px;margin:12px 0 0;display:flex}.shell-nav button{min-height:48px;font:inherit;border:1px solid var(--accent,#79c8e8);background:var(--surface,#163349);color:var(--text,#fff);border-radius:12px;flex:1;padding:8px;font-size:12px}.shell-nav #shell-pause{flex:0 0 48px}.shell-message{color:var(--muted,#9ab6c7);text-align:center;min-height:18px;margin:0 0 10px;font-size:12px}dialog[id^=shell-]{background:var(--surface,#163349);color:var(--text,#fff);border:2px solid var(--accent,#79c8e8);border-radius:20px;width:calc(100% - 24px);max-width:440px;max-height:calc(100dvh - 48px);padding:22px;font-family:inherit;overflow:auto;box-shadow:0 15px 60px #0008}dialog[id^=shell-]::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05121cb8}dialog[id^=shell-] button,dialog[id^=shell-] select{width:100%;min-height:48px;font:inherit;border:1px solid var(--accent,#79c8e8);background:var(--surface,#163349);color:var(--text,#fff);border-radius:10px;margin:8px 0;padding:10px;display:block}dialog[id^=shell-] button:disabled{opacity:.45}dialog[id^=shell-] h2{margin-top:0}dialog[id^=shell-] p{line-height:1.5}dialog[id^=shell-] a{color:var(--accent,#79c8e8)}.shell-settings{gap:7px;display:flex}.shell-fine{opacity:.8;font-size:11px}.shell-collection-card{border:1px solid var(--accent,#79c8e8);border-radius:8px;margin:5px 0;padding:10px}#shell-result-reward{color:var(--accent,#79c8e8);font-size:23px;font-weight:800}button:focus-visible,select:focus-visible{outline:3px solid var(--accent,#79c8e8);outline-offset:2px}[hidden]{display:none!important}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
