*{box-sizing:border-box} :root{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;color:#294942;background:#f8f5ec;font-synthesis:none}body{margin:0;background:radial-gradient(ellipse at 5% 10%,#e1eddf88,transparent 50%),radial-gradient(ellipse at 100% 75%,#f5e1b566,transparent 55%);min-height:100dvh}main{width:min(100% - 28px,480px);margin:auto;padding:24px 0 20px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.brand{display:flex;align-items:center;gap:10px}.brand-star{font-size:46px;color:#d89334;line-height:1}h1{font-size:27px;letter-spacing:1px;margin:0}header p{margin:5px 0 0;color:#708079;font-size:15px}button{font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible,summary:focus-visible{outline:3px solid #243fbc;outline-offset:3px}.sound{background:#fff9;border:1px solid #dce1d3;border-radius:24px;padding:12px;font-size:15px;color:#435c51}.scores{display:flex;justify-content:space-between;align-items:center;border-radius:20px;padding:18px 24px;background:#234e44;color:#fff;box-shadow:0 6px 0 #193e3610}.scores span{display:block;font-size:16px;color:#d8e8dc}.scores strong{font-size:42px;font-weight:750;line-height:1.2;display:block;font-variant-numeric:tabular-nums}.scores .best{text-align:right}.best strong{font-size:29px;color:#f7d792}.instruction{display:flex;justify-content:space-around;font-size:16px;font-weight:650;margin:20px 0 13px}.board-shell{background:#e6e7d9;border:1px solid #d4d8c9;border-radius:20px;padding:11px;box-shadow:0 9px 28px #2c4c3710}.board-top{display:flex;justify-content:space-between;font-size:13px;color:#66755e;padding:0 4px 9px}.board{display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(10,1fr);gap:4px;aspect-ratio:1;background:#d2dacb;border-radius:10px;padding:5px;overflow:hidden}.cell{min-width:0;border:0;border-radius:8px;background:#c5cebe66;display:grid;place-items:center;padding:0;position:relative}.cell.star{color:#fffbe8;font-size:clamp(19px,5.3vw,29px);text-shadow:0 2px 1px #0002;box-shadow:inset 0 2px 0 #fff5,inset 0 -3px 0 #0002;transition:filter .15s,transform .15s}.cell.star:active{transform:scale(.85)}.c0{background:#de6873}.c1{background:#469bce}.c2{background:#e6af3e}.c3{background:#7c9b53}.cell.hint{outline:3px solid #fff;outline-offset:-4px;filter:brightness(1.15);animation:pulse .65s ease-in-out infinite alternate}.cell.new{animation:fall .35s cubic-bezier(.2,.7,.3,1)}.cell.pop{animation:pop .18s forwards}.message{min-height:26px;font-size:17px;font-weight:600;text-align:center;margin:16px 0}.controls{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:8px}.controls button{background:#fffdf8;border:1px solid #d6dccd;color:#36564a;border-radius:13px;min-height:51px;font-weight:600;font-size:16px}.controls button:first-child{background:#e5ebd8}.controls button:disabled{opacity:.45;cursor:default}details{margin-top:20px;border-top:1px solid #dfe2d5;padding-top:14px;color:#68796b;font-size:15px;line-height:1.8}summary{cursor:pointer;font-size:17px}details p{margin:8px 0}footer{text-align:center;font-size:13px;letter-spacing:2px;color:#819078;margin:18px 0 0}dialog{width:min(90vw,370px);border:0;border-radius:24px;padding:28px;text-align:center;color:#294942;background:#fffcf4;box-shadow:0 20px 90px #0003}dialog::backdrop{background:#163a3266;backdrop-filter:blur(4px)}.modal-star{font-size:50px;color:#dfac42}dialog h2{font-size:25px;margin:10px 0}dialog p{font-size:18px;line-height:1.6}#modalActions{display:grid;gap:10px}#modalActions button{min-height:50px;border-radius:12px;border:1px solid #d5ddce;background:#ecf0e4;color:#345248;font-size:18px}#modalActions button:first-child{background:#285448;color:#fff;border:0}@keyframes fall{from{transform:translateY(-100px);opacity:.3}to{transform:translateY(0);opacity:1}}@keyframes pop{to{transform:scale(.1);opacity:0}}@keyframes pulse{to{filter:brightness(1.35)}}@media(min-width:700px){main{padding-top:32px}.board{max-height:444px;aspect-ratio:1;height:auto}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.c4{background:#a07ac2}.level-info{display:flex;justify-content:space-between;align-items:center;margin:17px 3px 8px;font-size:18px}.level-info strong{color:#285448}progress{display:block;width:100%;height:9px;border:0;border-radius:8px;overflow:hidden;background:#dde4d2}progress::-webkit-progress-bar{background:#dde4d2}progress::-webkit-progress-value{background:#799758;border-radius:8px}progress::-moz-progress-bar{background:#799758}.instruction{margin-top:15px}.cell{border-radius:6px}
