:root{color-scheme:dark;font-family:'DM Sans',sans-serif;color:#f4f3fc;background:#111026;--muted:#aaa8c3;--lime:#c1ff72}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 72% 45%,#25204a 0,transparent 55%),#111026;min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--lime);outline-offset:5px}.app{max-width:1280px;margin:auto;padding:34px 60px 24px}header{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Outfit,sans-serif;display:flex;align-items:center;font-size:23px;font-weight:800;color:#fff;text-decoration:none;letter-spacing:-.8px}.brand>span:last-child{color:var(--lime)}.brand-mark{display:inline-grid;place-items:center;margin-right:12px;color:var(--lime);font-size:32px}.edition{font-size:12px;letter-spacing:2.7px;color:#77738f}.icon-button{display:flex;align-items:center;gap:10px;background:#ffffff07;border:1px solid #ffffff18;border-radius:30px;color:#c8c5dd;padding:10px 16px;font-size:19px}.icon-button span{font-size:14px}.game-layout{display:grid;grid-template-columns:1fr 1.18fr;align-items:center;gap:60px;min-height:730px;padding:46px 0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.5px;color:var(--lime);display:flex;align-items:center;gap:12px}.eyebrow span{width:25px;height:2px;background:var(--lime)}h1{font-family:Outfit,sans-serif;font-size:clamp(48px,5.5vw,76px);line-height:1.05;letter-spacing:-3px;margin:25px 0}h1 em{font-style:normal;color:var(--lime)}.description{font-size:18px;line-height:1.75;color:var(--muted)}.description strong{color:#fff}.how{display:grid;grid-template-columns:28px 1fr;gap:16px 14px;margin:36px 0;max-width:340px}.how p{margin:0;line-height:1.5;font-size:14px;color:#b8b5cc}.step{font-family:Outfit,sans-serif;color:#77718f;font-size:14px;padding-top:2px}.mode{display:flex;gap:15px;align-items:center;border-top:1px solid #ffffff13;padding-top:24px;max-width:340px}.mode>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #baff7330;border-radius:12px;color:var(--lime);font-size:28px}.mode strong{font-size:14px;font-weight:500}.mode p{font-size:13px;color:#86819e;margin:5px 0 0}.play{min-width:0;max-width:540px;width:100%;justify-self:center}.stats{display:grid;grid-template-columns:1.2fr 1fr 1fr;padding:0 16px 22px}.stats>div{border-left:1px solid #ffffff16;padding-left:28px}.stats>div:first-child{border:0;padding:0}.stats span{display:block;color:#9a95b5;font-size:11px;letter-spacing:1.7px;font-weight:700;white-space:nowrap}.stats strong{font-family:Outfit,sans-serif;display:block;font-size:32px;font-weight:500;line-height:1.3;padding-top:5px}.stats>div:first-child strong{color:var(--lime)}.board-wrap{position:relative;border:1px solid #ffffff20;border-radius:24px;padding:15px;background:linear-gradient(145deg,#34304d,#1d1a30);box-shadow:0 30px 80px #05040f66,inset 0 1px #ffffff10}.board{display:grid;grid-template-columns:repeat(var(--columns,8),1fr);gap:7px;padding:8px;background:#100f23;border:1px solid #00000040;border-radius:15px;touch-action:none}.cell{position:relative;aspect-ratio:1;border:0;border-radius:9px;padding:0;background:#ffffff04;perspective:350px;min-width:0;touch-action:none}.stone{position:absolute;inset:6% 9% 14% 6%;border-radius:7px;transform:rotateX(12deg) rotateY(-10deg);background:linear-gradient(145deg,var(--light),var(--color) 45%,var(--dark));box-shadow:3px 5px 0 var(--dark),4px 7px 6px #0008,inset 1px 2px 1px #ffffff8c,inset -2px -3px 1px #0003;transition:transform .18s,filter .18s;display:grid;place-items:center}.stone:before{content:'';position:absolute;inset:4px;border:1px solid #ffffff26;border-radius:4px}.symbol{font-family:Outfit,sans-serif;font-size:clamp(12px,2vw,21px);font-weight:700;color:#ffffff70;text-shadow:0 1px 2px #0004;pointer-events:none}.cell:hover .stone{filter:brightness(1.13);transform:translateY(-2px) rotateX(12deg) rotateY(-10deg)}.cell.selected .stone{outline:3px solid #fff;outline-offset:2px;transform:translateY(-4px) scale(1.05);filter:brightness(1.16)}.cell.hinted .stone{animation:hint .7s ease-in-out infinite alternate}.cell.pop .stone{animation:pop .4s forwards}.cell.drop .stone{animation:drop .35s cubic-bezier(.2,.7,.4,1) both}.cell.swap .stone{transform:translate(var(--sx),var(--sy)) rotateX(12deg) rotateY(-10deg)}.cell:focus-visible{outline-offset:1px;z-index:2}.particles{position:absolute;inset:0;pointer-events:none;overflow:visible}.particle{position:absolute;width:7px;height:7px;border-radius:2px;background:var(--color);box-shadow:0 0 12px var(--color);animation:burst .65s ease-out forwards}.combo{position:absolute;top:40%;left:0;right:0;text-align:center;font-family:Outfit,sans-serif;color:white;font-size:46px;font-weight:800;text-shadow:0 3px 0 #6b368b,0 0 35px #ed8aff;pointer-events:none;opacity:0;z-index:4}.combo.show{animation:combo .9s both}#status{font-size:14px;text-align:center;line-height:1.5;color:#b8b3cf;min-height:42px;margin:21px 0 8px}.actions{display:flex;justify-content:center;gap:12px}.button{border-radius:12px;padding:13px 20px;border:1px solid #ffffff1c;background:#363047;color:#fff;font-weight:500;font-size:14px;transition:background .2s}.button:hover{background:#48415e}.button.secondary{background:transparent;color:#c9c3df}.button span{color:var(--lime);margin-right:5px;font-size:18px}button:disabled{opacity:.5;cursor:wait}.controls{font-size:12px;text-align:center;color:#77718e;line-height:1.6;margin:18px 0 0}.controls span{padding:0 5px}footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #ffffff10;padding-top:22px;color:#736e8a;font-size:12px}footer>span:first-child{letter-spacing:1.7px;font-size:10px}.palette{display:flex;gap:6px}.palette i{width:8px;height:8px;border-radius:2px;background:#beff75}.palette i:nth-child(2){background:#ff6997}.palette i:nth-child(3){background:#8579ff}.palette i:nth-child(4){background:#ffcc61}.palette i:nth-child(5){background:#5adfe8}@keyframes hint{to{filter:brightness(1.5);transform:translateY(-4px)}}@keyframes pop{30%{transform:scale(1.2);filter:brightness(2.5)}100%{transform:scale(.1) rotate(45deg);opacity:0}}@keyframes drop{from{transform:translateY(var(--dy)) rotateX(12deg) rotateY(-10deg);opacity:.3}}@keyframes burst{to{transform:translate(var(--dx),var(--dy)) rotate(230deg) scale(.1);opacity:0}}@keyframes combo{0%{opacity:0;transform:scale(.5)}25%,65%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-30px) scale(1.08)}}@media(min-width:1450px){.game-layout{min-height:calc(100vh - 160px)}}@media(max-width:1000px){.app{padding:25px 30px}.game-layout{gap:32px}.edition{display:none}h1{font-size:58px}.board{gap:5px;padding:6px}.board-wrap{padding:12px}.stats>div{padding-left:15px}}@media(max-width:740px){.app{padding:18px 16px}.brand{font-size:20px}.icon-button{padding:9px 12px}.icon-button span{font-size:12px}.game-layout{grid-template-columns:1fr;gap:25px;min-height:0;padding:28px 0}.intro{display:none}.play{max-width:480px}.stats{padding-bottom:16px}.stats strong{font-size:28px}.board-wrap{border-radius:20px;padding:10px}.board{gap:5px;padding:6px}.stone{border-radius:5px;box-shadow:2px 4px 0 var(--dark),3px 5px 5px #0008,inset 1px 2px 1px #ffffff8c,inset -2px -3px 1px #0003}.stone:before{inset:3px;border-radius:3px}.symbol{font-size:16px}.controls{max-width:270px;margin:15px auto 0}footer>span:last-child{display:none}footer{padding-top:18px}.combo{font-size:38px}}@media(prefers-reduced-motion:reduce){*,*:before{animation-duration:.01ms!important;transition-duration:.01ms!important}.particles{display:none}} 

.level-menu{background:transparent;border:1px solid #ffffff20;border-radius:24px;padding:10px 18px;color:var(--lime);font-size:14px}.level-menu:hover{background:#ffffff08}.level-heading{display:flex;justify-content:space-between;align-items:center;margin:0 4px 18px;gap:12px}.level-heading>div>span{font-size:11px;letter-spacing:1.8px;color:var(--lime);font-weight:700}.level-heading h2{font-family:Outfit,sans-serif;font-size:26px;font-weight:600;letter-spacing:-.5px;margin:6px 0 0}.level-heading>span{font-size:12px;color:#aaa3c1;border:1px solid #ffffff16;border-radius:20px;padding:7px 12px;white-space:nowrap}.goal{background:#ffffff05;border:1px solid #ffffff12;border-radius:12px;padding:13px 15px;margin-bottom:19px}.goal>div{display:flex;justify-content:space-between;gap:10px;font-size:14px}.goal strong{color:var(--lime);font-size:13px;white-space:nowrap}.goal progress{display:block;width:100%;height:6px;margin-top:12px;appearance:none;border:0;border-radius:10px;background:#ffffff10;overflow:hidden}.goal progress::-webkit-progress-bar{background:#ffffff10;border-radius:10px}.goal progress::-webkit-progress-value{background:linear-gradient(90deg,#8ade55,#ceff89);border-radius:10px;transition:width .3s}.goal progress::-moz-progress-bar{background:var(--lime);border-radius:10px}#save-note{margin:12px 0 0;font-size:11px}#save-note+.controls{margin-top:6px}.game-layout{min-height:800px}dialog{color:#f4f3fc;background:linear-gradient(145deg,#302847,#1b1730);border:1px solid #ffffff24;border-radius:24px;padding:32px;box-shadow:0 30px 100px #0008;max-width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto}dialog::backdrop{background:#090718b8;backdrop-filter:blur(7px)}#result-dialog{text-align:center;width:420px}.result-mark{font-size:64px;color:var(--lime);text-shadow:0 0 35px #b4ff7350}#result-dialog .eyebrow{justify-content:center;margin:14px 0}dialog h2{font:600 30px/1.15 Outfit,sans-serif;letter-spacing:-.7px;margin:10px 0 14px}#result-copy{font-size:16px;color:#bcb5ce;line-height:1.6}.result-summary{padding:14px;margin:22px 0;border-top:1px solid #ffffff15;border-bottom:1px solid #ffffff15;color:#e2dcf5;font-size:14px}.button.primary{background:var(--lime);color:#15210f;border:0;width:100%;padding:16px}.button.primary:hover{background:#d8ffa5}.text-button{background:none;border:0;color:#b1a7c7;padding:16px 12px;font-size:14px}.text-button:hover{color:white}.dialog-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.dialog-heading .eyebrow{margin:0;font-size:11px}.dialog-heading .icon-button{font-size:24px;padding:3px 13px}.level-help{font-size:14px;color:#afa5c5;line-height:1.5}.level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:22px 0}.level-tile{position:relative;aspect-ratio:1;border:1px solid #ffffff15;border-radius:12px;background:#ffffff06;color:#eae4f6;font:500 21px Outfit,sans-serif}.level-tile small{display:block;font:10px 'DM Sans',sans-serif;color:var(--lime);margin-top:3px}.level-tile.completed{background:#a9f06b12;border-color:#a9f06b35}.level-tile.current{border:2px solid var(--lime)}.level-tile:disabled{opacity:.28;cursor:default}.level-tile:hover:not(:disabled){background:#ffffff15}@media(max-width:740px){.game-layout{min-height:0;padding:25px 0}.level-menu{font-size:12px;padding:9px 12px}.level-heading{margin-bottom:14px}.level-heading h2{font-size:23px}.goal{margin-bottom:15px;padding:12px}.stats{padding-bottom:14px}.stats strong{font-size:26px}.brand-mark{margin-right:6px}.icon-button span{display:none}dialog{padding:24px}.level-grid{gap:7px}.level-tile{border-radius:10px}header{gap:10px}}@media(min-width:1450px){.game-layout{min-height:calc(100vh - 160px)}}

.board-wrap.beginning .board{gap:9px;padding:10px}.beginning .stone{inset:4% 6% 10% 4%;border-radius:9px;box-shadow:4px 6px 0 var(--dark),5px 9px 9px #0009,inset 2px 3px 2px #ffffffa0,inset -2px -3px 1px #0003}.beginning .symbol{font-size:25px}.board-wrap.impact{animation:board-impact .48s ease-out}.shockwave{position:absolute;left:50%;top:45%;width:35%;aspect-ratio:1;border:4px solid var(--wave-color);border-radius:50%;box-shadow:0 0 30px var(--wave-color),inset 0 0 25px var(--wave-color);transform:translate(-50%,-50%);animation:shockwave .65s ease-out forwards}.combo.show{font-size:clamp(26px,3.8vw,43px);letter-spacing:-1px;animation:combo-boost .9s both}.cell.pop .stone{animation:pop-boost .44s ease-out forwards}@keyframes pop-boost{0%{transform:scale(1)}24%{transform:scale(1.24) translateY(-5px);filter:brightness(2.1);box-shadow:0 0 25px var(--light),0 0 45px var(--color)}55%{transform:scale(1.05);filter:brightness(2.7)}100%{transform:scale(.05) rotate(65deg);opacity:0}}@keyframes board-impact{12%{transform:scale(1.012);box-shadow:0 0 var(--impact-glow,40px) #c6a3ff60,0 30px 80px #05040f66}40%{transform:scale(.995)}100%{transform:scale(1)}}@keyframes shockwave{0%{opacity:.75;transform:translate(-50%,-50%) scale(.25)}100%{opacity:0;transform:translate(-50%,-50%) scale(3.4);border-width:1px}}@keyframes combo-boost{0%{opacity:0;transform:scale(.45) rotate(-5deg)}25%{opacity:1;transform:scale(var(--combo-scale,1)) rotate(1deg)}60%{opacity:1;transform:scale(var(--combo-scale,1))}100%{opacity:0;transform:translateY(-40px) scale(1.1)}}@media(max-width:740px){.board-wrap.beginning .board{gap:7px;padding:7px}.beginning .symbol{font-size:22px}.beginning .stone{border-radius:7px;box-shadow:3px 5px 0 var(--dark),4px 7px 7px #0009,inset 1px 2px 1px #ffffffa0,inset -2px -3px 1px #0003}.combo.show{font-size:clamp(24px,7vw,34px)}}@media(prefers-reduced-motion:reduce){.board-wrap.impact{animation:none}.combo.show,.cell.pop .stone{animation-duration:.01ms!important}.shockwave{display:none}}

.particles{overflow:hidden;border-radius:22px}.icon-button[aria-pressed="true"]{color:var(--lime);border-color:#c1ff7250;background:#c1ff7208}

.chapter-nav{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:9px;align-items:center;margin-top:20px}.chapter-nav select,.chapter-nav button{background:#ffffff08;border:1px solid #ffffff20;border-radius:10px;color:#eee7fa;height:42px;font:500 14px 'DM Sans',sans-serif}.chapter-nav select{width:100%;padding:0 10px;cursor:pointer}.chapter-nav option{background:#211b33;color:#eee7fa}.chapter-nav button{font-size:27px;line-height:1}.chapter-nav button:disabled{cursor:default;opacity:.25}.chapter-nav button:hover:not(:disabled){background:#ffffff15}.chapter-nav select:focus-visible{outline:3px solid var(--lime);outline-offset:3px}#chapter-summary{margin:13px 0 0;font-size:13px}#levels-dialog .level-grid{margin-top:14px}.level-tile{font-size:20px}

[hidden]{display:none!important}.level-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:180px}.level-badges span{font-size:12px;border:1px solid #ffffff18;border-radius:18px;padding:6px 9px;white-space:nowrap;color:#aaa3c1}#pace{color:var(--lime);border-color:#c1ff7230}.mechanic-tip{font-size:13px;line-height:1.5;color:#aaa4bf;margin:-7px 3px 17px}.flow-win{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;padding:22px;margin:0;border:0;border-radius:23px;background:linear-gradient(145deg,#211c36e8,#100e24f2);backdrop-filter:blur(4px);animation:flow-arrive .35s ease-out both}.flow-win[hidden]{display:none}.flow-win>div{width:min(100%,350px);min-width:0;text-align:center}.flow-star{display:block;color:var(--lime);font-size:52px;line-height:1;text-shadow:0 0 28px #c1ff7280;margin-bottom:16px}.flow-win strong{display:block;font:700 clamp(25px,4vw,34px) Outfit,sans-serif;color:var(--lime);line-height:1.15;text-shadow:0 0 22px #c1ff7240}.flow-win p{font-size:15px;line-height:1.5;color:#ded8ef;margin:12px 0 22px}.flow-win .button{display:block;width:100%;min-height:48px;background:var(--lime);color:#1d2914;padding:12px 18px;font-weight:700}.flow-win .text-button{padding:10px;margin-top:6px}@keyframes flow-arrive{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.flow-win{animation:none}}#retry-help{width:100%;margin-top:10px;font-size:14px;color:var(--lime)}.cell.iced{background:linear-gradient(135deg,#9beaff55,#dafbff22);outline:1px solid #a0eaff90;box-shadow:inset 0 0 10px #c3f7ff30}.cell.iced:after{content:'❄';position:absolute;right:0;bottom:-1px;font-size:14px;color:#e2fcff;pointer-events:none;filter:drop-shadow(0 0 4px #72ddff)}.power-row .stone,.power-column .stone{outline:2px solid #fff9;outline-offset:-3px}.power-row .stone:after,.power-column .stone:after{content:'';position:absolute;inset:40% 0;border-top:2px solid #fff9;border-bottom:2px solid #fff7;pointer-events:none}.power-column .stone:after{inset:0 40%;border:0;border-left:2px solid #fff9;border-right:2px solid #fff7}.power-bomb .stone{background:conic-gradient(#ff88b8,#ffdf85,#beff75,#67edf0,#a789ff,#ff88b8);outline:2px solid #fff;outline-offset:-3px}.cell[class*='power-'] .symbol{color:white;z-index:1;text-shadow:0 0 8px #fff8;font-size:24px}.blast-beam{position:absolute;pointer-events:none;background:#fff;box-shadow:0 0 14px #fff,0 0 30px #b7ff79;animation:beam .45s ease-out forwards}.blast-beam.row{left:2%;width:96%;height:5px;transform:translateY(-50%)}.blast-beam.column{top:2%;height:96%;width:5px;transform:translateX(-50%)}@keyframes beam{0%{opacity:0}20%{opacity:1}100%{opacity:0}}.early-success{border-color:#b9ff7440}.early-success.impact{animation-duration:.55s}@media(max-width:740px){.level-badges{max-width:140px}.level-badges span{font-size:11px;padding:5px 7px}.mechanic-tip{font-size:12px;margin-bottom:14px}.level-heading{gap:8px}.flow-win{padding:12px}.flow-win>div{min-width:140px}}

/* Compact play header and optional fullscreen game view. */
.header-tools{display:flex;align-items:center;gap:8px}.header-tools .icon-button{height:40px;justify-content:center}.help-button{width:40px;padding:0;font:600 18px Outfit,sans-serif}.header-tools .level-menu{height:40px;padding:8px 15px}.game-layout{min-height:0;padding:34px 0}.play-hud{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(0,1.8fr);gap:18px;align-items:center;margin:0 4px 17px}.play-hud .level-heading{display:block;margin:0;min-width:0}.play-hud .level-heading>span{display:block;font-size:12px;letter-spacing:1.3px;color:var(--lime);font-weight:700;white-space:nowrap}.play-hud .level-heading h2{font:400 14px/1.35 'DM Sans',sans-serif;letter-spacing:0;color:#a39bb8;margin:5px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.play-hud .goal{background:none;border:0;border-radius:0;margin:0;padding:0;min-width:0}.play-hud .goal>div{font-size:14px;gap:10px;line-height:1.35}.play-hud .goal strong{font-size:14px}.play-hud .goal progress{height:5px;margin-top:9px}.stats{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 9px 0}.stats>div{display:flex;align-items:baseline;gap:8px;border:0;padding:0}.stats span{font-size:11px;letter-spacing:.9px}.stats strong{font-size:20px;line-height:1.1;padding:0}#status{min-height:35px;margin:17px 0 9px}#help-dialog{width:480px}.help-rules{padding-left:20px;color:#c4bdd6;font-size:16px;line-height:1.65}.help-rules li{margin:12px 0}#help-dialog .level-badges{justify-content:flex-start;max-width:none;margin:12px 0 18px}#help-dialog .mechanic-tip{font-size:15px;line-height:1.6;margin:0 0 20px;color:#d8f8ae}#help-dialog .controls{font-size:13px;text-align:left;max-width:none;line-height:1.5;margin:15px 0}.game-focus .intro,.game-focus footer{display:none}.game-focus .app{max-width:100%;min-height:100dvh;padding:14px 22px 18px}.game-focus header{max-width:1000px;margin:0 auto}.game-focus .game-layout{display:flex;justify-content:center;padding:19px 0 0;min-height:0}.game-focus .play{width:min(100%,clamp(280px,calc(100dvh - 285px),720px));max-width:720px}.game-focus .board-wrap{box-shadow:0 16px 55px #05040f66}.game-focus .flow-win{margin-top:12px}.game-focus #status{margin-top:13px}.game-focus .actions .button{padding:10px 18px}.game-focus .play-hud{margin-bottom:14px}
@media(max-width:740px){.app{padding:16px 14px}.header-tools{gap:6px}.header-tools .icon-button,.header-tools .level-menu{height:36px}.header-tools .icon-button{width:36px;padding:0}.header-tools .level-menu{padding:7px 12px;font-size:13px}.header-tools .icon-button span{display:none}.game-layout{padding:24px 0}.play-hud{gap:12px;grid-template-columns:minmax(88px,.65fr) minmax(0,1.7fr);margin-bottom:14px}.play-hud .level-heading>span{font-size:11px;letter-spacing:.8px}.play-hud .level-heading h2{font-size:13px}.play-hud .goal>div,.play-hud .goal strong{font-size:13px}.stats{padding:14px 3px 0;gap:8px}.stats>div{gap:5px}.stats span{font-size:10px;letter-spacing:.5px}.stats strong{font-size:18px}.game-focus .app{padding:12px 12px 16px}.game-focus .game-layout{padding-top:20px}}
@media(max-width:380px){.brand{font-size:17px}.brand-mark{font-size:26px;margin-right:5px}.header-tools{gap:5px}.header-tools .icon-button{width:32px;height:34px}.header-tools .level-menu{height:34px;padding:6px 9px;font-size:12px}.stats>div{gap:4px}.stats span{font-size:10px;letter-spacing:0}.stats strong{font-size:17px}.play-hud{gap:10px}.play-hud .goal>div{flex-wrap:wrap;gap:2px 8px}.play-hud .goal strong{margin-left:auto}}

/* Level entrance uses the same glow and pop language as matches. */
.play-hud .level-heading>span#level-label{display:inline-block;font:800 23px/1.1 Outfit,sans-serif;letter-spacing:.2px;color:#d5ff99;padding:8px 10px;border:1px solid #c1ff7255;border-radius:10px;background:linear-gradient(135deg,#b4ff7317,#b4ff7305);text-shadow:0 0 15px #c1ff7245;box-shadow:inset 0 1px #d4ff9b15,0 0 18px #b3ff7310}.play-hud .level-heading h2{margin-top:7px}#level-label.level-pop{animation:level-badge-pop 1.15s ease-out}.level-splash{position:absolute;z-index:5;left:5%;right:5%;top:32%;display:flex;flex-direction:column;align-items:center;gap:7px;pointer-events:none;opacity:0;padding:18px 14px;border-radius:22px;background:radial-gradient(ellipse,#171128f5 10%,#171128cc 60%,#17112800 100%);text-align:center;transform-origin:center}.level-splash:before{content:'';position:absolute;width:110px;height:110px;top:50%;left:50%;border:3px solid #c5ff7a;border-radius:50%;box-shadow:0 0 25px #bdff78, inset 0 0 22px #c6ff7830;opacity:0;transform:translate(-50%,-50%);z-index:-1}.splash-kicker{font-size:11px;font-weight:700;letter-spacing:2px;color:#dbccf7}.level-splash strong{font:800 clamp(36px,6vw,64px)/1.08 Outfit,sans-serif;letter-spacing:-1px;color:#d6ff9e;text-shadow:0 3px 0 #3c6432,0 0 25px #b7ff7980,0 0 45px #a082ff70}.level-splash>span:last-child{font-size:16px;line-height:1.4;color:#f2ecff}.level-splash.show{animation:level-entrance 1.2s both}.level-splash.show:before{animation:level-ring 1.05s ease-out both}@keyframes level-entrance{0%{opacity:0;transform:scale(.45) rotate(-4deg)}22%{opacity:1;transform:scale(1.08) rotate(1deg)}35%,70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-25px) scale(1.06)}}@keyframes level-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}20%{opacity:.85}100%{opacity:0;transform:translate(-50%,-50%) scale(3.3)}}@keyframes level-badge-pop{0%{transform:scale(.85);box-shadow:0 0 0 #c1ff7200}25%{transform:scale(1.1);color:#fff;box-shadow:0 0 24px #baff7350;text-shadow:0 0 18px #c1ff7290}70%,100%{transform:scale(1)}}@media(max-width:740px){.play-hud .level-heading>span#level-label{font-size:19px;padding:7px 8px;border-radius:9px}.level-splash{top:31%;padding:16px 10px}.level-splash strong{font-size:clamp(34px,11vw,52px)}.splash-kicker{font-size:10px;letter-spacing:1.2px}.level-splash>span:last-child{font-size:14px}}@media(max-width:380px){.play-hud .level-heading>span#level-label{font-size:17px;padding:7px}}@media(prefers-reduced-motion:reduce){#level-label.level-pop{animation:none}.level-splash.show{animation:none;opacity:1;transform:none}.level-splash.show:before{animation:none;opacity:0}}

.play-hud{grid-template-columns:minmax(118px,.75fr) minmax(0,1.75fr)}@media(max-width:740px){.play-hud{grid-template-columns:minmax(108px,.8fr) minmax(0,1.65fr)}}@media(max-width:380px){.play-hud{grid-template-columns:minmax(100px,.8fr) minmax(0,1.65fr)}}

:root{--chapter-background:#111026;--chapter-halo:#352257;--chapter-frame:#36304d;--chapter-accent:#c1ff72}body{background:radial-gradient(ellipse at 72% 45%,var(--chapter-halo) 0,transparent 58%),var(--chapter-background);transition:background-color .6s}.board-wrap{background:linear-gradient(145deg,var(--chapter-frame),var(--chapter-background));border-color:color-mix(in srgb,var(--chapter-accent) 30%,transparent)}dialog{background:linear-gradient(145deg,var(--chapter-frame),var(--chapter-background))}.chapter-world{font:600 18px/1.4 Outfit,sans-serif;color:var(--chapter-accent);margin:4px 0 12px}.splash-kicker{color:var(--chapter-accent)}.level-splash strong{text-shadow:0 3px 0 #3c6432,0 0 25px #b7ff7980,0 0 45px var(--chapter-accent)}.chapter-nav select{border-color:color-mix(in srgb,var(--preview-accent,var(--chapter-accent)) 40%,transparent)}#chapter-summary{color:var(--preview-accent,var(--chapter-accent))}.chain-target .stone{outline:3px solid #fff;outline-offset:1px;filter:brightness(1.25);box-shadow:0 0 16px var(--light),3px 5px 0 var(--dark)}.chain-landed .stone{animation:chain-arrival .3s ease-out both}.chain-link{position:absolute;background:#fff;box-shadow:0 0 8px #fff,0 0 18px var(--chapter-accent);z-index:2;pointer-events:none}.chain-link.row{height:3px;transform:translateY(-50%)}.chain-link.column{width:3px;transform:translateX(-50%)}.cascade-note{position:absolute;z-index:5;bottom:18px;left:50%;transform:translateX(-50%);padding:8px 12px;border:1px solid #ffffff50;border-radius:20px;background:#130f27e8;color:#fff;font-size:13px;text-align:center;white-space:nowrap;pointer-events:none}.power-converting .stone{animation:power-charge .28s ease-out both}@keyframes chain-arrival{0%{transform:scale(.92);filter:brightness(1.1)}60%{transform:scale(1.06);filter:brightness(1.6)}100%{transform:scale(1);filter:brightness(1.25)}}@keyframes power-charge{50%{transform:scale(1.17);filter:brightness(2);box-shadow:0 0 26px #fff}100%{transform:scale(1)}}@media(max-width:380px){.cascade-note{font-size:12px;padding:7px 10px;bottom:13px}}@media(prefers-reduced-motion:reduce){.chain-landed .stone,.power-converting .stone{animation:none}body{transition:none}}

.support-break{position:absolute;inset:0;z-index:7;display:flex;align-items:center;justify-content:center;padding:18px;border-radius:23px;background:linear-gradient(145deg,#211c36ed,#100e24f5);backdrop-filter:blur(5px);animation:support-arrive .45s ease-out both}.support-break[hidden]{display:none}.support-card{width:min(100%,350px);text-align:center}.support-star{display:block;color:var(--lime);font-size:42px;line-height:1;text-shadow:0 0 28px #c1ff7270}.support-card h3{font-family:Outfit,sans-serif;font-size:clamp(23px,4vw,32px);margin:12px 0 20px;line-height:1.1}.support-link{display:block;color:#fff;background:#ffffff0b;border:1px solid #ffffff30;border-radius:14px;padding:15px 18px;font-size:16px;font-weight:600;line-height:1.45;text-decoration:none;transition:background .2s,border-color .2s}.support-link:hover{background:#ffffff18;border-color:var(--lime)}.support-card .button{width:100%;margin-top:14px;min-height:46px}.support-link:focus-visible,.support-card .button:focus-visible{outline-offset:3px}@keyframes support-arrive{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.support-break{animation:none}}

.support-link-wrap{position:relative;isolation:isolate}.support-celebration{position:absolute;inset:0;pointer-events:none;z-index:2}.support-confetti{position:absolute;left:var(--x);top:var(--y);font-family:Arial,sans-serif;font-size:22px;line-height:1;opacity:0;will-change:transform,opacity;animation:support-flight 2.85s cubic-bezier(.2,.65,.3,1) var(--delay) both;filter:drop-shadow(0 0 7px currentColor)}.support-confetti.heart{color:#ff8fb9}.support-confetti.spark{color:#ffe89a}.support-break:not([hidden]) .support-link{animation:support-link-glow 3s ease-out both}@keyframes support-flight{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(0deg)}18%{opacity:1;transform:translate(calc(-50% + var(--fly-x)*.25),calc(-50% + var(--fly-y)*.25)) scale(1.12) rotate(calc(var(--spin)*.25))}55%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--fly-x)),calc(-50% + var(--fly-y))) scale(.65) rotate(var(--spin))}}@keyframes support-link-glow{0%{transform:scale(.98);box-shadow:0 0 0 #ff8fb900}25%{transform:scale(1.035);border-color:#ffb0ce;box-shadow:0 0 25px #ff8fb94d}60%{transform:scale(1);box-shadow:0 0 18px #ffe89a22}100%{transform:scale(1);box-shadow:0 0 0 #ff8fb900}}@media(prefers-reduced-motion:reduce){.support-confetti{display:none;animation:none}.support-break:not([hidden]) .support-link{animation:none}}

.intro-support{max-width:360px;margin:0 0 25px;background:linear-gradient(135deg,#ff8fb918,#ffffff08);border-color:#ff8fb944;text-align:center;box-shadow:0 8px 25px #05040f20}.intro-support:hover{background:linear-gradient(135deg,#ff8fb928,#ffffff12);border-color:#ffb0ce}

.intro-headline{font-family:Outfit,sans-serif;font-size:clamp(48px,5.5vw,76px);font-weight:700;line-height:1.05;letter-spacing:-3px;margin:25px 0}.intro-headline em{font-style:normal;color:var(--lime)}.game-guide{max-width:920px;margin:40px auto 60px;padding-top:45px;border-top:1px solid #ffffff20;font-size:17px;line-height:1.8;color:#c9c6db;overflow-wrap:break-word}.game-guide .guide-kicker{font-size:11px;letter-spacing:2px;color:var(--lime);font-weight:700}.game-guide h1{font-family:Outfit,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-1px;margin:16px 0 25px;color:#fff}.game-guide h2{font-family:Outfit,sans-serif;font-size:clamp(25px,3vw,32px);line-height:1.3;letter-spacing:-.4px;color:#fff;margin:42px 0 18px}.game-guide h3{font-size:20px;color:#eeeaff;line-height:1.45;margin:28px 0 12px}.game-guide p{margin:0 0 19px}.game-guide .guide-lead{font-size:19px;color:#e8e4f4}.game-guide strong{color:#fff}.game-guide ul{padding-left:24px;margin:15px 0 24px}.game-guide li{margin:9px 0}.game-guide a{color:var(--lime);text-underline-offset:4px}.game-guide section{scroll-margin-top:25px}.guide-toc{border:1px solid #ffffff20;border-radius:16px;background:#ffffff04;padding:22px 25px;margin:28px 0 35px}.guide-toc ul{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.guide-faq details{border:1px solid #ffffff18;border-radius:12px;margin:12px 0;background:#ffffff03}.guide-faq summary{cursor:pointer;padding:16px 18px;color:var(--lime)}.guide-faq summary h3{display:inline;font-size:18px;margin:0}.guide-faq details p{padding:0 18px 18px;margin:0}.guide-back{display:inline-block;padding:10px 0}.game-guide .guide-outro{margin-top:32px}.game-guide figure{margin:28px 0}.game-guide img{display:block;width:auto;height:auto;max-width:100%;border-radius:16px;margin:auto}.game-guide figcaption{font-size:14px;color:var(--muted);text-align:center;margin-top:10px}.game-focus .game-guide{display:none}@media(max-width:600px){.game-guide{font-size:16px;margin-top:25px;padding-top:30px}.game-guide .guide-lead{font-size:17px}.guide-toc{padding:18px}.guide-toc ul{display:block}.game-guide h2{margin-top:32px}}

.language-control{display:flex;align-items:center;gap:6px;border:1px solid #ffffff24;border-radius:22px;padding:8px 10px;color:#ded8f2;background:#ffffff07}.language-control select{font:inherit;font-size:13px;max-width:120px;min-height:25px;background:transparent;color:inherit;border:0;cursor:pointer}.language-control option{background:#211d35;color:#fff}.language-control select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.header-tools{flex-wrap:wrap;justify-content:flex-end}@media(max-width:600px){header{align-items:flex-start;gap:12px}.header-tools{gap:7px}.language-control{padding:5px 7px}.language-control select{font-size:12px;max-width:90px}.play-hud .goal{min-width:0}.stats span{font-size:10px;letter-spacing:.4px}.actions .button{font-size:13px;padding-left:10px;padding-right:10px}.stats strong{font-size:26px}.flow-win strong{overflow-wrap:normal}.icon-button span{font-size:12px}}

.stats span{white-space:normal;line-height:1.35;min-height:2.7em;overflow-wrap:anywhere}

.stats{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);align-items:start}.stats>div{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:4px}#score{font-size:clamp(30px,5vw,40px);line-height:1.1;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums;letter-spacing:0;min-width:0;width:100%}
