.cm-page{background:linear-gradient(145deg,#f1edff,#fff5eb 65%,#e8f5ee);min-height:100vh}.cm-page main{max-width:860px;margin:auto;padding:16px 18px 64px}.cm-header{display:flex;justify-content:space-between;font-size:14px}.cm-header a{color:#675584;font-weight:700;text-decoration:none}.cm-heading{text-align:center;margin:20px 0 16px}.cm-heading h1{font-size:clamp(30px,5vw,42px);letter-spacing:-1.5px;margin:0}.cm-heading p{font-size:15px;color:#71667d;max-width:490px;margin:7px auto}.cm-game{max-width:500px;margin:auto;padding:18px;background:#ffffffdb;border:1px solid #fff;border-radius:26px;box-shadow:0 12px 40px #69548612}.cm-game button{font:inherit;cursor:pointer;color:#514260;border:1px solid #dfd7ea;background:white;border-radius:12px;min-height:44px;padding:8px 12px;font-weight:700}.cm-game button:hover{background:#f7f1ff}.cm-game button:focus-visible,.cm-game summary:focus-visible{outline:3px solid #7955b4;outline-offset:3px}.cm-topbar,.cm-stats,.cm-actions{display:flex;align-items:center;gap:12px}.cm-topbar{justify-content:space-between}.cm-stats span{display:grid;color:#776780;font-size:11px;text-transform:uppercase;letter-spacing:.8px}.cm-stats strong{font-size:22px;line-height:1.3;color:#433552;letter-spacing:0}.cm-actions{gap:6px}.cm-actions button{font-size:12px;padding:7px 10px}.cm-goal{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding:9px 12px;background:linear-gradient(115deg,#f2eafb,#fff3e1);border-radius:15px;gap:8px}.cm-eyebrow{display:block;font-size:9px;font-weight:800;letter-spacing:1.3px;color:#80638d}.cm-goal strong{font-size:15px}.cm-next{display:flex;align-items:center;gap:6px;font-size:10px;color:#74617c}.cm-next>div{position:relative;width:42px;height:42px;background:#fff9;border-radius:11px}.cm-next svg{width:100%;height:100%}.cm-next b{position:absolute;right:0;bottom:-2px;background:white;border-radius:50%;width:16px;text-align:center}.cm-message{min-height:58px;display:flex;align-items:center;gap:5px}.cm-message p{font-size:13px;line-height:1.4;margin:8px 0;color:#645176;flex:1}.cm-message button{border:0;background:none;min-height:36px;font-size:11px;padding:4px;white-space:nowrap}.cm-garden{position:relative}.cm-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px;background:#e6dded;border-radius:20px;border:1px solid #dcd0e5;touch-action:none;user-select:none;-webkit-user-select:none}.cm-board .cm-cell{position:relative;aspect-ratio:1;min-width:0;min-height:0;padding:0;border:2px solid transparent;border-radius:15px;background:linear-gradient(145deg,#fff9,var(--coat));box-shadow:0 3px 0 #d3c5db;transition:border-color .1s}.cm-cell svg{width:100%;height:100%;display:block;pointer-events:none}.cm-board .cm-cell:hover{background:linear-gradient(145deg,#fff,var(--coat))}.cm-board .cm-cell:disabled{cursor:default;opacity:1}.cm-level{position:absolute;bottom:3px;right:4px;min-width:17px;padding:1px 3px;font-size:10px;font-weight:800;border-radius:6px;background:#ffffffe6;color:#5d4b6b;line-height:1.3}.cm-empty{color:#c5b8d0;font-size:28px}.cm-board .is-selected{border-color:#7653ae;box-shadow:0 0 0 2px #7653ae66}.cm-board .is-match{border-color:#4b997b}.cm-board .is-tip{border-color:#9877c7}.cm-board-note{display:flex;justify-content:space-between;font-size:10px;color:#796b83;margin:10px 2px 12px;gap:8px}.cm-board-note span:first-child{font-weight:800;color:#675178}.cm-collection{border-top:1px solid #ece5f0;padding-top:12px}.cm-collection summary{cursor:pointer;font-weight:800;font-size:14px;min-height:32px}.cm-collection summary span{float:right;background:#eee7f6;padding:2px 9px;border-radius:15px;font-size:12px}.cm-collection p{font-size:12px;color:#74677b}.cm-collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.cm-collection-cat{text-align:center;background:#f7f3fa;border-radius:12px;padding:5px 3px}.cm-collection-cat svg{width:100%;max-width:86px;display:block;margin:auto}.cm-collection-cat b{display:block;font-size:10px;line-height:1.3}.cm-collection-cat small{font-size:9px;color:#7c6e83}.cm-effects{position:absolute;inset:9px;pointer-events:none;overflow:visible}.cm-burst{position:absolute}.cm-burst b{position:absolute;white-space:nowrap;color:#66438f;font-size:22px;text-shadow:0 1px white;font-weight:900;animation:cm-score .7s ease-out both}.cm-burst i{position:absolute;width:7px;height:7px;background:#eeb955;border-radius:2px;animation:cm-spark .65s ease-out both}.cm-discovery{position:absolute;inset:14% 10%;background:#fffcf4f5;box-shadow:0 8px 30px #60457930;border:2px solid white;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;animation:cm-reveal .25s ease-out}.cm-discovery[hidden],.cm-result[hidden]{display:none}.cm-discovery>span{font-size:10px;font-weight:900;letter-spacing:1px;color:#8a6194}.cm-discovery svg{width:42%;max-height:145px}.cm-discovery strong{font-size:clamp(17px,4vw,24px)}.cm-discovery small{margin-top:5px;font-size:11px;color:#7b6789}.cm-result{padding:18px;text-align:center;margin-top:15px;background:#f3eafb;border-radius:18px}.cm-result h2{font-size:23px;margin:0 0 8px}.cm-result p{font-size:14px;line-height:1.7}.cm-game .cm-primary{background:#7957a4;color:white;border-color:#7957a4;padding:10px 22px}.cm-result a{display:block;font-size:13px;color:#6b498c;margin-top:12px}.cm-game dialog{max-width:360px;width:calc(100% - 30px);border:0;border-radius:20px;padding:24px;color:#473652}.cm-game dialog::backdrop{background:#30213c66}.cm-game dialog h2{margin-top:0}.cm-game dialog p{line-height:1.5}.cm-game dialog>div{display:flex;gap:8px}.cm-ghost{position:fixed;z-index:1000;pointer-events:none;width:90px;height:90px;transform:translate(-50%,-55%);filter:drop-shadow(0 8px 8px #51406733)}.cm-ghost svg{width:100%}.cm-pop{animation:cm-pop .3s ease-out}.cm-arrive{animation:cm-arrive .22s ease-out}.cm-guide{max-width:680px;margin:44px auto 0;font-size:15px;line-height:1.75}.cm-guide h2{font-size:23px;margin:28px 0 8px}.cm-guide p{margin:8px 0}.cm-guide a{color:#684496}.cm-guide details{border-bottom:1px solid #dfd5e7;padding:12px 0}.cm-guide summary{font-weight:700;cursor:pointer}.cm-more{display:flex;flex-wrap:wrap;gap:8px}.cm-more a{background:#fff9;padding:8px 14px;border:1px solid #e5dbea;border-radius:13px;text-decoration:none;font-weight:700;font-size:14px}@keyframes cm-pop{50%{transform:scale(1.12) rotate(-3deg)}}@keyframes cm-arrive{from{opacity:.3;transform:scale(.6)}}@keyframes cm-reveal{from{opacity:0;transform:scale(.88)}}@keyframes cm-score{from{transform:translate(-50%,-20px);opacity:1}to{transform:translate(-50%,-70px);opacity:0}}@keyframes cm-spark{from{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rot))}}@media(max-width:500px){.cm-page main{padding:12px 10px 45px}.cm-heading{margin:12px 0}.cm-heading p{font-size:12px;max-width:330px}.cm-game{padding:12px;border-radius:20px}.cm-board{gap:5px;padding:7px;border-radius:16px}.cm-board .cm-cell{border-radius:12px}.cm-goal{margin-top:9px}.cm-stats strong{font-size:20px}.cm-topbar{gap:6px}.cm-stats{gap:14px}.cm-message{min-height:54px}.cm-message p{font-size:12px}.cm-discovery{inset:10% 8%}.cm-guide{margin-top:30px}.cm-collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.cm-game *{animation:none!important;transition:none!important}.cm-burst{display:none}}
/* Scope footer wrapping to this game; keep shared pages unchanged. */
.cm-page #site-footer{position:static;max-width:100%;padding:0 10px 24px;line-height:2}.cm-page #site-footer a{display:inline-block}
