@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&display=swap";:root{font-family:Nunito,Trebuchet MS,system-ui,sans-serif;color:#17375e;background:#f5faff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}.app{--page: #f5faff;--panel: #f0f7ff;--panel-deep: #e7f2ff;--line: #c6d9ee;--text: #15355d;--muted: #6480a1;--accent: #198efe;--accent-deep: #126bd1;min-height:100vh;min-height:100dvh;color:var(--text);background:radial-gradient(circle at 50% -6%,#fff 0 220px,transparent 550px),linear-gradient(150deg,var(--page),#eaf6ff 75%,#f6fbff);padding-bottom:max(48px,env(safe-area-inset-bottom))}.app[data-theme=mint]{--page: #f1fcfa;--panel: #eaf9f5;--panel-deep: #d9f3ec;--line: #b7ddd3;--accent: #15a98e;--accent-deep: #078672}.app[data-theme=violet]{--page: #f8f5ff;--panel: #f2edff;--panel-deep: #e9dfff;--line: #d4c8ec;--accent: #8d58e8;--accent-deep: #7142cb}.game-shell{width:min(100% - 30px,480px);margin-inline:auto}.app-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:10px}.header-button{width:48px;height:48px;flex:0 0 48px;border:1px solid #e5edf7;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#f4faff);color:#17416f;box-shadow:0 5px 15px #7198bd2b,inset 0 1px 1px #fff;transition:transform .15s ease,box-shadow .15s ease}.header-button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #7198bd38}.header-button:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.brand{display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#103661;font-family:Arial Rounded MT Bold,Nunito,system-ui,sans-serif;font-size:clamp(19px,6vw,31px);font-weight:900;letter-spacing:-.075em;line-height:1;text-shadow:0 2px 1px #d3e0ed}.brand-small{font-size:18px}.logo-bubble{display:inline-block;width:.92em;height:.92em;margin:0 .025em;border-radius:50%;border:.06em solid #13a9fc;background:radial-gradient(circle at 29% 22%,#fff 0 8%,#e3faff 11%,transparent 25%),radial-gradient(circle at 68% 70%,#0871bd 0,#159cf2 42%,#4bd2ff 70%,#bdf4ff 90%);box-shadow:inset -.1em -.12em .15em #0879c188,inset .1em .08em .12em #fff9,0 .06em .14em #1a92d36b}.game-intro{text-align:center;margin-top:5px;margin-bottom:19px}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:900;color:#4e75a7}.game-intro h1{margin:1px 0 7px;font-size:clamp(25px,7vw,34px);line-height:1.2;letter-spacing:.13em;font-weight:900}.difficulty{display:inline-block;min-width:76px;padding:3px 14px 2px;border-radius:999px;text-transform:uppercase;font-size:12px;letter-spacing:.15em;font-weight:900;color:#af1c3c;border:1px solid #ffadc1;background:linear-gradient(#ffeaf0,#ffd4df);box-shadow:0 2px 7px #ffa8bc55}.difficulty-easy{color:#127b5e;border-color:#9be6cb;background:#dffaf0;box-shadow:0 2px 7px #8cdbb555}.difficulty-normal{color:#226dbc;border-color:#add4ff;background:#e2f1ff;box-shadow:0 2px 7px #8abbf155}.difficulty-expert{color:#733bbe;border-color:#d6b4ff;background:#f1dfff;box-shadow:0 2px 7px #c9a0ed55}.score-panel{height:72px;padding:10px 18px;display:grid;grid-template-columns:1.4fr 1fr;align-items:center;border-radius:19px;border:1px solid var(--line);background:linear-gradient(120deg,#edf6ffde,#eaf4ffab);box-shadow:inset 0 1px #fff,0 2px 5px #a7c8e12b;margin-bottom:14px}.tap-score{display:flex;align-items:baseline;justify-content:center;gap:7px;font-size:clamp(20px,5.6vw,29px);font-weight:900;letter-spacing:.015em}.tap-score strong:first-of-type{color:var(--accent);font-size:1.33em;line-height:1;text-shadow:0 2px 4px #73bbff73}.score-slash{color:#325985;margin-inline:1px}.score-detail{border-left:1px solid #a8c0db;display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center;line-height:1.15}.score-detail strong{font-size:clamp(13px,3.7vw,17px);letter-spacing:.04em}.score-detail span{color:#557399;font-size:clamp(12px,3.4vw,16px)}.board-frame{width:100%;padding:7px;border:3px solid #c4d5e8;border-radius:21px;background:linear-gradient(145deg,#f4faff,#e6f0fa);box-shadow:0 12px 22px #6f9db62d,inset 0 2px #fff}.board-grid{width:100%;display:grid;position:relative;gap:4px}.cell{min-width:0;padding:0;aspect-ratio:1;border-radius:12px;border:1px solid #bacce0;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#eff7ff,#e9f1f9 68%,#e2ecf6);box-shadow:inset 0 1px 2px #fff,inset 0 -1px 1px #b9cde096}button.cell{-webkit-tap-highlight-color:transparent}button.cell:not(:disabled):hover{background:#e4f3ff}button.cell:disabled{color:inherit;opacity:1}.cell-bubble:has(.color-blue){background:linear-gradient(135deg,#eaf4ff,#d9ebff)}.cell-bubble:has(.color-green){background:linear-gradient(135deg,#e8fbf5,#d7f3ed)}.cell-bubble:has(.color-pink){background:linear-gradient(135deg,#fff0f6,#fbe0eb)}.cell-bubble:has(.color-purple){background:linear-gradient(135deg,#f5efff,#ebe0ff)}.cell-bubble:has(.color-gold){background:linear-gradient(135deg,#fff8e9,#f7ecd1)}.cell-bubble:has(.color-ice){background:linear-gradient(135deg,#e6f6ff,#cdeaff)}.empty-dot{width:10%;height:10%;border-radius:50%;background:#b8c8d9}.bubble,.legend-bubble{display:grid;place-items:center;position:relative;border-radius:50%;flex-shrink:0;border:2px solid var(--rim);background:radial-gradient(circle at 32% 23%,#fff 0 7%,#ffffffbd 10%,transparent 28%),radial-gradient(circle at 70% 77%,var(--deep) 0,var(--main) 39%,var(--light) 78%,#f4ffff 100%);box-shadow:inset -.08em -.12em .22em var(--deep),inset .08em .1em .2em #fff9,0 4px 9px var(--shadow)}.bubble:after,.legend-bubble:after{content:"";position:absolute;width:36%;height:16%;top:14%;left:17%;border-radius:60% 60% 40% 40%;transform:rotate(-32deg);background:#fff;filter:blur(.7px);opacity:.92}.bubble.size-1{width:49%;height:49%}.bubble.size-2{width:72%;height:72%}.bubble.size-3{width:89%;height:89%}.color-blue{--rim: #0c8fff;--main: #0ca9ff;--deep: #0269c7;--light: #71e2ff;--shadow: #0094ff63}.color-green{--rim: #03b884;--main: #0cce8e;--deep: #009a67;--light: #87fdd2;--shadow: #00b57d63}.color-pink{--rim: #ff336c;--main: #ff4d79;--deep: #cc1d59;--light: #ffa0bb;--shadow: #f3457166}.color-purple{--rim: #a13fff;--main: #aa55f4;--deep: #7624cc;--light: #e4a3ff;--shadow: #a244eb63}.color-gold{--rim: #ffb512;--main: #ffce27;--deep: #cf8b00;--light: #fff28a;--shadow: #eeb00b66}.color-ice{--rim: #18aaf5;--main: #3db8f4;--deep: #147bbc;--light: #c8faff;--shadow: #08a0ec74}.snowflake{z-index:1;width:62%;height:62%;color:#fff;filter:drop-shadow(0 1px 2px #127cb1)}.bubble.hit{animation:bump .17s ease-out}.pop-cell:after{content:"";position:absolute;top:12%;right:12%;bottom:12%;left:12%;border:3px solid #fff9;border-radius:50%;animation:pop .25s ease-out forwards;pointer-events:none}@keyframes bump{50%{transform:scale(1.13)}}@keyframes pop{0%{transform:scale(.3);opacity:1}to{transform:scale(1.6);opacity:0}}.stone,.legend-stone{width:93%;height:93%;border-radius:10px;border:2px solid #263d58;background:linear-gradient(144deg,transparent 48%,#1a2e47 49%,#647b93 50%,transparent 52%),radial-gradient(circle at 34% 20%,#607790 0 2%,transparent 3%),radial-gradient(circle at 75% 78%,#263951 0 3%,transparent 4%),repeating-linear-gradient(122deg,#354d68 0,#354d68 3px,#415873 4px,#415873 7px,#2c435f 8px,#2c435f 10px);box-shadow:inset 0 2px 3px #9eb0c066,inset 0 -3px 5px #10213799,0 2px 4px #1d395866}.pulse-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.pulse-line{stroke:#ff4181;stroke-width:1.1;stroke-linecap:round;filter:drop-shadow(0 0 1.2px #ff497f) drop-shadow(0 0 2.5px #ff96b7);animation:pulse .23s ease-out both}.pulse-line.blocked{stroke:#75c7ff;filter:drop-shadow(0 0 1.3px #21aaff)}@keyframes pulse{0%{opacity:0;stroke-dasharray:0 100}to{opacity:1;stroke-dasharray:100 0}}.game-bottomline{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px}.chain-pill{display:inline-flex;align-items:center;gap:5px;color:#52759c;font-weight:800;font-size:13px}.chain-pill svg{color:#ff5d98}.chain-pill strong{color:var(--text);font-size:16px}.daily-note{display:inline-flex;align-items:center;gap:4px;color:#7d99b4;font-size:12px;font-weight:700}.game-tip{margin:12px 5px;text-align:center;color:#718eac;font-size:13px}.free-settings{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:13px}.free-settings label{color:#6280a1;font-size:10px;letter-spacing:.12em;font-weight:900}.free-settings select{display:block;width:100%;margin-top:3px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);font-size:15px;font-weight:800}.free-actions{display:flex;gap:9px;margin-top:8px}.secondary-button,.primary-button{border:0;border-radius:13px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:900}.secondary-button{flex:1;background:#fff;border:1px solid var(--line);color:var(--text);box-shadow:0 3px 8px #a3c6de35}.secondary-button:hover{background:var(--panel)}.primary-button{background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:#fff;padding:10px 22px;box-shadow:0 6px 13px #1687ed43}.primary-button:hover{filter:brightness(1.06)}.completion-card{margin-top:12px;padding:20px 16px;text-align:center;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#fff,var(--panel));box-shadow:0 8px 19px #80aeda2f}.completion-icon{font-size:34px}.completion-card h2{font-size:26px;margin:3px 0}.completion-card p{color:#5d7d9f;margin:2px 0 15px}.loading-panel{min-height:360px;border:2px solid var(--line);border-radius:20px;background:var(--panel);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#537699}.loading-panel strong{color:var(--text)}.loading-bubble{width:58px;height:58px;margin-bottom:14px;border-radius:50%;border:2px solid #078ef2;background:radial-gradient(circle at 25% 20%,#fff,#5cdaff 28%,#158ce8 75%);box-shadow:0 6px 15px #119df55c;animation:float 1.5s ease-in-out infinite}@keyframes float{50%{transform:translateY(-9px)}}.menu-backdrop{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;background:#12324c72;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.drawer{width:min(84vw,330px);height:100%;padding:25px 18px;background:linear-gradient(155deg,#fff,var(--panel));box-shadow:8px 0 24px #0b35566b}.drawer-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.icon-link{border:0;background:transparent;color:var(--text);width:35px;height:35px;display:grid;place-items:center}.drawer>button{width:100%;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text);display:flex;align-items:center;gap:13px;padding:13px 11px;font-size:16px;font-weight:800;text-align:left}.drawer>button svg:last-child{margin-left:auto;color:#94aec8}.drawer>button:hover{background:#e8f3ff;border-color:var(--line)}.drawer-themes{border-top:1px solid var(--line);margin-top:21px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;color:#5f7e9f;font-size:11px;font-weight:900;letter-spacing:.14em}.drawer-themes>div{display:flex;gap:10px}.theme-dot{width:31px;height:31px;border-radius:50%;border:2px solid white;display:grid;place-items:center;color:#fff;box-shadow:0 1px 5px #7195b480}.theme-dot.selected{outline:2px solid #365b83}.theme-sky{background:#2d9aff}.theme-mint{background:#23b999}.theme-violet{background:#985ce3}.drawer>p{margin-top:26px;color:#7b96af;font-size:12px}.content-screen{padding:10px 0 35px}.back-link{padding:6px 0;border:0;background:none;color:#4a78aa;display:flex;align-items:center;gap:6px;font-size:14px;font-weight:800;margin-bottom:25px}.content-screen>h1{margin:3px 0;font-size:34px;line-height:1.1}.content-lead{margin:6px 0 23px;color:#6482a1}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:118px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(150deg,#fff,var(--panel));box-shadow:0 5px 12px #9bbbd92d;padding:13px;display:flex;flex-direction:column}.stat-icon{color:var(--accent);height:23px}.stat-card strong{font-size:30px;line-height:1.05}.stat-card>span:last-child{color:#6785a4;font-size:13px;font-weight:700}.stats-list,.history-list{margin-top:24px;padding:17px;border:1px solid var(--line);border-radius:17px;background:#ffffffba}.stats-list h2,.history-list h2{margin:0 0 8px;font-size:18px}.stats-list>div,.history-list>div{padding:9px 0;border-bottom:1px solid #dfebf6;display:flex;justify-content:space-between;gap:12px;color:#607f9d}.stats-list>div:last-child,.history-list>div:last-child{border-bottom:0}.stats-list strong,.history-list strong{color:var(--text)}.legend-card{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:13px 7px;border:1px solid var(--line);border-radius:17px;background:#ffffffbd}.legend-card>div{min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.legend-card strong{font-size:12px}.legend-card>div>span:last-child{color:#6d87a3;font-size:10px;line-height:1.15}.legend-bubble{width:45px;height:45px;margin:0 0 5px}.legend-bubble.small{transform:scale(.64)}.legend-bubble.medium{transform:scale(.82)}.legend-bubble svg{width:29px;color:#fff;z-index:1}.legend-stone{width:42px;height:42px;margin:0 0 8px}.rule-card{margin:12px 0 23px;display:flex;align-items:center;gap:18px;padding:19px;border:1px solid #a8d2fc;border-radius:17px;background:linear-gradient(130deg,#e2f2ff,#eef8ff)}.pulse-demo{flex:0 0 105px;display:flex;flex-direction:column;align-items:center;color:#ff437b;line-height:1;font-size:30px;font-weight:900;text-shadow:0 2px 7px #ff678b77}.pulse-demo span:nth-child(2){white-space:nowrap}.pulse-demo b{border-radius:50%;padding:0 7px;background:#fa4377;color:#fff}.rule-card h2{font-size:16px;margin:0 0 4px}.rule-card p{margin:0;color:#45698f;font-size:13px;line-height:1.4}.content-screen>.primary-button{width:100%}.tutorial-screen{min-height:100dvh;padding:25px 0 35px;display:flex;flex-direction:column;align-items:center}.screen-topline{width:100%;display:flex;align-items:center;justify-content:space-between;color:#5c7c9e;font-size:12px;font-weight:900;letter-spacing:.18em}.tutorial-progress{width:100%;display:flex;gap:6px;margin:14px 0 30px}.tutorial-progress span{flex:1;height:5px;border-radius:10px;background:#dce9f6}.tutorial-progress .active{background:var(--accent)}.tutorial-art{width:100%;text-align:center;min-height:145px}.tutorial-art h2{font-size:29px;margin:3px 0 5px}.tutorial-art p{color:#6482a1;margin:0 auto;max-width:340px}.board-frame.compact{width:min(100%,330px);margin:5px auto 0}.board-frame.compact .board-grid{gap:5px}.tutorial-prompt{min-height:43px;margin:20px 0 10px;color:#5e7b9b;text-align:center;font-weight:800}.tutorial-prompt.success{color:#159d79}.tutorial-screen .primary-button{width:min(100%,330px)}.text-button{border:0;background:none;color:#7995b1;font-size:13px;font-weight:800;padding:12px;margin-top:5px}@media(max-width:370px){.game-shell{width:min(100% - 20px,480px)}.app-header{height:72px}.header-button{width:42px;height:42px;flex-basis:42px}.brand{font-size:19px}.cell{border-radius:9px}.board-grid{gap:3px}.score-panel{padding-inline:9px}.tap-score{gap:4px}.legend-bubble{width:38px;height:38px}.legend-stone{width:36px;height:36px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
