@charset "UTF-8";
:root{color-scheme:light;--ink:#263e43;--muted:#627574;--cream:#fcf6e9;--mint:#75d6b7;--line:#d8dfd3;--yellow:#ffd56b;--pink:#f499a4;font-family:"Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 38%,#ffe7c552,transparent 40%),var(--cream)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;font-weight:800;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #137e83;outline-offset:4px}button{transition:transform .16s,background .16s}button:active:not(:disabled){transform:translateY(2px)}a{color:inherit}.app{width:min(1100px,calc(100% - 64px));margin:auto}.topbar{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:900;letter-spacing:2px;text-decoration:none}.brand-dot{width:30px;height:30px;display:grid;place-items:center;background:var(--mint);border:2px solid var(--ink);border-radius:10px;font-size:24px;line-height:1;letter-spacing:0}.edition{font-size:10px;letter-spacing:1px;font-weight:500;margin-left:8px}.top-actions{display:flex;gap:8px}.icon-button{background:transparent;border:1.5px solid var(--line);border-radius:50%;width:36px;height:36px}.sound{border-radius:18px;width:91px;font-size:11px}.workspace{display:grid;grid-template-columns:1fr 466px;gap:55px;padding:32px 0 26px;align-items:center}.intro{position:relative;padding:12px 0}.eyebrow{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:1px}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:#36a38f}h1{font-size:41px;line-height:1.45;letter-spacing:-1.8px;margin:20px 0 14px;font-weight:900}h1>span{font-size:58px;letter-spacing:-3px}.tagline{font-size:14px;font-weight:700;line-height:1.9;letter-spacing:2px;margin:0}.hero-art{height:218px;position:relative;margin-top:-32px}.hero-slime{position:absolute}.hero-slime svg{width:100%;height:100%;overflow:visible}.mint{width:215px;height:190px;bottom:8px;left:90px;transform:rotate(-9deg)}.peach{width:139px;height:130px;right:0;bottom:5px;transform:rotate(10deg)}.hero-orbit{position:absolute;width:280px;height:116px;bottom:10px;left:75px;border-radius:50%;background:#c7e8d680;transform:rotate(-12deg);border:1px solid #accbb570}.spark{position:absolute;color:#d59e30;font-size:35px}.s1{left:48px;bottom:46px}.s2{right:10px;top:10px;font-size:44px}.s3{right:120px;top:18px;font-size:23px}.sticker{position:absolute;bottom:20px;left:80px;transform:rotate(-13deg);padding:5px 15px;background:#fffefa;border:1.5px solid var(--ink);border-radius:50%;font-weight:900;font-size:13px;box-shadow:2px 3px 0 #263e43}.lab-note{border-top:1px solid #bfcfc4;border-bottom:1px solid #bfcfc4;padding:17px 0;display:flex;align-items:center;gap:12px}.note-number{font-size:10px;writing-mode:vertical-rl;letter-spacing:2px}.lab-note p{font-size:11px;line-height:1.9;font-weight:700;flex:1;margin:0}.note-stamp{display:grid;place-items:center;width:58px;height:58px;border:1px dashed #879b8e;border-radius:50%;transform:rotate(12deg);font-size:10px;font-weight:700;text-align:center}.lab-nav{display:flex;gap:10px;margin-top:18px}.nav-button{background:#fffaf0;border:1px solid #bbcabd;border-radius:12px;padding:12px;font-size:12px;flex:1}.nav-button:hover{background:#e5eee3}.nav-button span{font-size:10px;background:#ddecde;border-radius:8px;padding:2px 5px;margin-left:3px}.save-note{font-size:9px;color:var(--muted);line-height:1.6;margin:12px 0 0}.machine{background:#fffdf6;border:2px solid var(--ink);border-radius:25px;padding:21px;box-shadow:7px 8px 0 #c8d9c9;min-width:0}.machine-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px}.machine-kicker{font-family:Arial,sans-serif;font-size:9px;font-weight:700;letter-spacing:2px;color:#597b73}h2{font-size:16px;line-height:1.4;margin:5px 0 0}.stage-stars{font-size:21px;letter-spacing:2px;color:#b58015;white-space:nowrap}.mission{display:flex;gap:8px;align-items:center;justify-content:space-between;background:#edf2e7;border:1px solid #d7dfcf;border-radius:15px;padding:10px 13px;margin-bottom:12px;min-height:78px}.small-label{display:block;font-size:10px;font-weight:700;color:#5b7369;margin-bottom:3px}.goals{display:flex;gap:10px}.goal{display:flex;align-items:center;gap:3px;position:relative}.goal svg{width:33px;height:33px}.goal strong{font-family:Arial,sans-serif;font-size:19px}.goal.done{opacity:.65}.goal.done strong{font-size:16px;color:#20806d}.moves{border-left:1px solid #cad9c3;padding-left:13px;display:flex;align-items:baseline;gap:3px;white-space:nowrap}.moves span{font-size:10px;font-weight:700}.moves strong{font-size:32px;font-family:Arial,sans-serif}.moves.low{color:#b94655}.board-wrap{position:relative}.board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;aspect-ratio:1;background:#d7e5db;border:1px solid #baccc2;border-radius:17px;padding:8px;touch-action:none;user-select:none;-webkit-user-select:none}.cell{width:100%;padding:0;min-width:0;border:0;border-radius:12px;background:#c6d8cf80;position:relative;aspect-ratio:1;display:grid;place-items:center;touch-action:none}.cell svg{width:95%;height:95%;pointer-events:none;filter:drop-shadow(0 3px 0 #58766a25)}.cell:hover:not(:disabled){background:#ffffff6b;transform:translateY(-2px)}.cell.hinted{background:#fffbea;outline:3px solid #f8bd3e;outline-offset:-2px;z-index:1}.cell.selected{background:#ffe09b;outline:2px dashed #a6770c;outline-offset:-2px}.cell.popping svg{animation:pop .26s both}.board.falling .cell svg{animation:land .25s ease-out}.cell:disabled{opacity:1}.burst{pointer-events:none;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:900;color:#fff;letter-spacing:1px;text-shadow:3px 3px 0 #294d43,-2px -2px 0 #294d43,2px -2px 0 #294d43,-2px 2px 0 #294d43;opacity:0}.burst.show{animation:burst .65s ease-out both}.message{min-height:37px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;font-weight:800;line-height:1.5;padding:6px 0}.tools{display:flex;gap:10px}.tool{display:flex;align-items:center;justify-content:center;gap:9px;border:1.5px solid var(--ink);border-radius:12px;padding:9px 8px;background:#fff7e7;flex:1;font-size:12px;box-shadow:0 3px 0 #d5d9cb}.tool small{display:block;font-size:8px;font-weight:500;margin-top:3px}.tool>span:first-child{font-size:26px}.rainbow{color:#bd739a;text-shadow:2px 1px 0 #80c9a0,-1px -1px 0 #f0c566}.tool b{display:inline-block;background:var(--ink);color:#fff;border-radius:50%;min-width:19px;height:19px;line-height:19px;font-size:11px}.bomb-button[aria-pressed=true]{background:#ffe3a8;box-shadow:0 0 0 3px #eab25466}.hint-button{background:#e9f1df;flex:.8}.machine-bottom{display:flex;justify-content:space-between;align-items:center;font-family:Arial,sans-serif;font-size:9px;letter-spacing:1px;padding-top:13px;color:#647f71}.machine-bottom b{color:var(--ink);font-size:12px}.text-button{background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;color:#647f71;font-size:10px;padding:4px}.footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:17px 0 20px;color:#77847c;font-size:9px;letter-spacing:1px}
dialog{width:min(500px,calc(100% - 28px));max-height:calc(100% - 32px);padding:28px;border:2px solid var(--ink);border-radius:25px;background:#fffaf0;color:var(--ink);box-shadow:7px 8px 0 #19372b20;text-align:center;overscroll-behavior:contain}dialog::backdrop{background:#1c393671;backdrop-filter:blur(5px)}dialog h2{font-size:24px;margin:8px 0 14px}dialog p{font-size:13px;line-height:1.9;margin:10px 0}.modal-kicker{font-family:Arial,sans-serif;font-size:10px;letter-spacing:3px;color:#5b8071}.modal-art{height:110px;margin:4px auto;width:130px}.modal-art svg{width:100%;height:100%}.modal-buttons{display:flex;flex-direction:column;gap:10px;margin-top:20px}.primary,.secondary{border:1.5px solid var(--ink);border-radius:12px;padding:13px 18px;font-size:14px}.primary{background:var(--mint);box-shadow:0 4px 0 #2e66574d}.secondary{background:#fff7e5}.close-button{float:right;border:1px solid #b9c8ba;border-radius:50%;background:transparent;width:32px;height:32px;font-size:20px;margin:-10px -8px 0 0}.instructions{list-style:none;margin:16px 0;padding:0;text-align:left;display:grid;gap:10px;counter-reset:steps}.instructions li{display:flex;gap:12px;align-items:center;border-bottom:1px solid #dce4d6;padding:10px 0;font-size:12px;line-height:1.8;counter-increment:steps}.instructions li:before{content:counter(steps);width:26px;height:26px;flex-shrink:0;display:grid;place-items:center;background:#e0ebd8;border-radius:50%;font-weight:900}.instructions b{color:#197b65}.map-grid,.collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:20px}.stage-card,.creature-card{border:1px solid #b3c8b8;border-radius:14px;background:#f0f3e4;padding:12px 4px;font-size:10px;min-width:0}.stage-card b{display:block;font-family:Arial,sans-serif;font-size:22px;margin-bottom:5px}.stage-card span{color:#a77812;font-size:16px;letter-spacing:2px}.stage-card.current{border:2px solid #378b79;background:#dff2d8}.creature-card svg{width:70px;max-width:100%;height:65px}.creature-card b{display:block;font-size:10px}.creature-card.locked svg{filter:grayscale(1);opacity:.25}.result-stars{font-size:39px;color:#d8a42c;letter-spacing:5px}.result-stats{display:flex;gap:20px;justify-content:center;font-size:11px;background:#edf2e5;border-radius:12px;padding:12px;margin:14px 0}.result-stats b{display:block;font-family:Arial,sans-serif;font-size:24px;margin-top:4px}.achievement{background:#fff0ca;border-radius:14px;padding:13px;font-size:12px;line-height:1.8}.tiny{font-size:10px!important;color:#647b6d}.collection-note{min-height:36px}.board.preview{pointer-events:none}.board.preview .cell{opacity:1}
@keyframes pop{50%{transform:scale(1.2)}100%{transform:scale(0);opacity:0}}@keyframes land{0%{transform:translateY(-12px) scale(.85)}65%{transform:scale(1.05,.92)}100%{transform:none}}@keyframes burst{0%{opacity:0;transform:scale(.6) rotate(-6deg)}25%,70%{opacity:1;transform:scale(1) rotate(-6deg)}100%{opacity:0;transform:translateY(-30px) rotate(-6deg)}}
@media(min-width:1000px) and (max-height:800px){.topbar{height:65px}.workspace{padding-top:22px;gap:70px;grid-template-columns:1fr 430px}.machine{padding:16px}.intro{padding:0}h1{margin-top:15px}.hero-art{height:180px}.mint{width:195px;height:175px;left:120px}.peach{width:120px;height:110px;right:14px}.lab-note{padding:10px 0}.lab-nav{margin-top:12px}.footer{padding-top:12px}.tagline{font-size:12px}.message{min-height:31px}.machine-heading{padding-bottom:10px}.mission{min-height:70px;margin-bottom:10px;padding:7px 12px}.tool{padding:7px 8px}}
@media(max-width:999px){.app{width:min(750px,calc(100% - 36px))}.workspace{grid-template-columns:1fr 410px;gap:25px}.edition{display:none}h1{font-size:27px;letter-spacing:-1px}h1>span{font-size:42px;letter-spacing:-2px}.eyebrow{font-size:9px}.tagline{font-size:12px;letter-spacing:0}.hero-art{height:205px;margin-top:0}.mint{left:0;width:165px;height:170px}.peach{right:-9px;width:100px;height:100px}.hero-orbit{width:210px;left:0}.sticker{left:5px}.s1{left:-5px;bottom:0}.s2{right:0}.s3{right:30px;top:25px}.lab-note{gap:8px}.note-number,.note-stamp{display:none}.lab-note p{font-size:10px}.lab-nav{flex-direction:column}.machine{padding:16px}.nav-button{padding:10px}.footer{font-size:8px}}
@media(max-width:700px){.app{width:min(460px,calc(100% - 24px))}.topbar{height:59px}.wordmark{font-size:12px;letter-spacing:1.5px}.brand-dot{width:25px;height:25px;font-size:20px;border-radius:8px}.sound{font-size:10px;width:82px}.icon-button{height:33px}.workspace{display:flex;flex-direction:column;gap:14px;padding:17px 0 21px}.intro{padding:0;width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:8px}.eyebrow,.tagline,.hero-art,.lab-note,.save-note{display:none}h1{font-size:16px;line-height:1.35;margin:0;letter-spacing:-.5px}h1>span{font-size:24px;letter-spacing:-1px}h1 br{display:none}h1>span:after{content:" ";display:block}.lab-nav{flex-direction:row;margin:0;gap:5px}.nav-button{flex:none;font-size:10px;padding:10px 7px;border-radius:10px}.nav-button span{font-size:9px;margin-left:0}.machine{width:100%;border-radius:20px;padding:14px;box-shadow:4px 5px 0 #c8d9c9}.machine-heading{padding-bottom:10px}.machine-kicker{font-size:8px}h2{font-size:15px}.stage-stars{font-size:19px}.mission{padding:7px 10px;min-height:69px;margin-bottom:10px}.goals{gap:6px}.goal svg{width:28px;height:28px}.goal strong{font-size:17px}.moves{padding-left:8px}.moves strong{font-size:29px}.board{padding:6px;gap:3px;border-radius:14px}.cell{border-radius:9px}.message{font-size:10px;min-height:34px}.tool{padding:7px 5px;gap:6px;font-size:11px}.tool small{font-size:8px}.machine-bottom{padding-top:11px}.footer{padding-top:13px;font-size:8px;letter-spacing:0}.footer span:last-child{display:none}dialog{padding:23px 20px}.modal-art{height:90px}.save-note.storage-warning{display:block;grid-column:1/-1;font-size:9px;margin-top:8px}}
@media(max-width:359px){.app{width:calc(100% - 16px)}.machine{padding:10px}.workspace{padding-top:12px}.nav-button{padding:9px 5px;font-size:9px}h1{font-size:14px}h1>span{font-size:22px}.goal svg{width:23px;height:23px}.goals{gap:5px}.tool small{font-size:7px}.tool>span:first-child{font-size:23px}.footer{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.burst.show{opacity:0}}
:root{line-height:1.5}.machine-kicker{display:block}.tool{line-height:1.3}.intro{max-width:500px}.burst{font-size:clamp(24px,3vw,36px)}
@media(min-width:1000px) and (max-height:800px){.topbar{height:55px}.workspace{grid-template-columns:1fr 360px;gap:80px;padding:16px 0}.machine{padding:14px}.machine-heading{padding-bottom:9px}.mission{min-height:65px}.goals{gap:7px}.goal svg{width:27px;height:27px}.goal strong{font-size:17px}.tools{gap:8px}.tool{font-size:11px}.machine-bottom{padding-top:10px}.intro{max-width:500px}.hero-art{height:170px}.mint{left:95px}.peach{right:10px}.footer{padding:10px 0}.lab-note{padding:8px 0}.note-stamp{width:48px;height:48px}}
