@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1d3bc6cf8ffd57a1-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/86fbc9d8e118e1a5-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/643504413c165422-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a65324f02aa278dc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/1d3bc6cf8ffd57a1-s.woff2) format("woff2");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/86fbc9d8e118e1a5-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/643504413c165422-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Baloo\ 2;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a65324f02aa278dc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Baloo\ 2 Fallback;src:local("Arial");ascent-override:112.55%;descent-override:54.71%;line-gap-override:0.00%;size-adjust:95.78%}.__className_079b24{font-family:Baloo\ 2,Baloo\ 2 Fallback;font-style:normal}.__variable_079b24{--font-baloo:"Baloo 2","Baloo 2 Fallback"}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_37ef13{font-family:Inter,Inter Fallback;font-style:normal}.__variable_37ef13{--font-inter:"Inter","Inter Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_65c68c{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-weight:500;font-style:normal}.__variable_65c68c{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--ink:#10101a;--panel:#181824;--line:#2a2a3a;--paper:#f2efe9;--mist:#8d8da3;--spark:#ffb454}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--ink);color:var(--paper);font-family:var(--font-inter),system-ui,sans-serif;min-height:100%}body{display:flex;align-items:center;justify-content:center;padding:36px 16px}.stage{max-width:560px;width:100%;margin:0 auto;text-align:center}.eyebrow{font-family:var(--font-plex-mono),monospace;font-size:11px;letter-spacing:.18em;color:var(--spark);text-transform:uppercase;margin-bottom:10px}h1{font-family:var(--font-baloo),system-ui,sans-serif;font-weight:700;font-size:clamp(24px,5vw,34px);margin:0 0 10px;line-height:1.15}.sub{font-size:14px;color:var(--mist);max-width:400px;margin:0 auto 22px;line-height:1.55}.top-nav{display:inline-flex;flex-wrap:wrap;justify-content:center;border:1px solid var(--line);border-radius:99px;padding:3px;background:var(--panel);margin-bottom:26px}.top-nav button{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;padding:9px 18px;border-radius:99px;border:none;background:transparent;color:var(--mist);cursor:pointer;transition:background .2s ease,color .2s ease}.top-nav button.active{background:var(--spark);color:var(--ink)}.top-nav button:focus-visible{outline:2px solid var(--spark);outline-offset:2px}.mode-view h2{font-family:var(--font-baloo),system-ui,sans-serif;font-size:clamp(20px,4vw,26px);margin:0 0 8px}.mode-toggle{display:inline-flex;flex-wrap:wrap;justify-content:center;border:1px solid var(--line);border-radius:99px;padding:3px;background:var(--panel)}.mode-toggle button{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;padding:8px 20px;border-radius:99px;border:none;background:transparent;color:var(--mist);cursor:pointer;transition:background .2s ease,color .2s ease}.mode-toggle button.active{background:var(--spark);color:var(--ink)}.mode-toggle button:focus-visible{outline:2px solid var(--spark);outline-offset:2px}.mode-hint{font-family:var(--font-plex-mono),monospace;font-size:11px;color:var(--mist);margin:10px 0 20px;min-height:14px}.canvas-wrap{width:min(88vw,460px);aspect-ratio:1/1;margin:0 auto;overflow:auto;background:var(--ink);box-shadow:0 20px 60px -20px rgba(0,0,0,.6);transition:box-shadow .4s ease;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.canvas-wrap::-webkit-scrollbar{width:8px;height:8px}.canvas-wrap::-webkit-scrollbar-track{background:transparent}.canvas-wrap::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}.canvas-wrap::-webkit-scrollbar-thumb:hover{background:var(--mist)}body.done .canvas-wrap{box-shadow:0 0 0 3px var(--spark),0 20px 60px -20px rgba(0,0,0,.6)}canvas{width:100%;height:100%;display:block;touch-action:none;cursor:pointer}.hud{margin-top:22px;display:flex;align-items:center;gap:12px;max-width:460px;margin-left:auto;margin-right:auto}.progress-track{flex:1 1;height:6px;border-radius:99px;background:var(--line);overflow:hidden}.progress-fill{height:100%;width:0;background:var(--spark);border-radius:99px;transition:width .25s ease}.stat{font-family:var(--font-plex-mono),monospace;font-size:12px;color:var(--mist);min-width:96px;text-align:right}body.done .stat{color:var(--spark)}body.impossible .stat{color:var(--mist);font-style:italic}.timer-row{margin-top:12px;font-family:var(--font-plex-mono),monospace;font-size:11px;letter-spacing:.02em;color:var(--mist)}.timer-row .now{color:var(--paper);font-weight:500}.timer-row .sep{margin:0 6px;opacity:.5}.timer-row .best,body.done .timer-row .now{color:var(--spark)}.actions{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}button{font:inherit}button#reset{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:14px;color:var(--paper);background:var(--panel);border:1px solid var(--line);padding:11px 22px;border-radius:99px;cursor:pointer;transition:border-color .2s ease,color .2s ease}button#reset:hover{border-color:var(--spark);color:var(--spark)}button#reset:focus-visible{outline:2px solid var(--spark);outline-offset:2px}button.ghost{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:14px;color:var(--mist);background:transparent;border:1px dashed var(--line);padding:10px 18px;border-radius:99px;cursor:pointer;transition:border-color .2s ease,color .2s ease}button.ghost:hover{border-color:var(--spark);color:var(--spark)}button.ghost:focus-visible{outline:2px solid var(--spark);outline-offset:2px}button.icon{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--mist);font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:border-color .2s ease,color .2s ease}button.icon:hover:not(:disabled){border-color:var(--spark);color:var(--spark)}button.icon:focus-visible{outline:2px solid var(--spark);outline-offset:2px}button.icon:disabled{opacity:.35;cursor:default}.click-to-pop{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-inter),sans-serif;font-size:13px;color:var(--mist);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.click-to-pop input{accent-color:var(--spark);cursor:pointer}.save-message{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;color:var(--spark)}.save-message.error{color:#ff6b6b}.levels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:14px;gap:14px;max-width:520px;margin:0 auto}.level-card{font:inherit;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px;border-radius:16px;border:1px solid var(--line);background:var(--panel);cursor:pointer;transition:border-color .2s ease;position:relative}.level-card:hover:not(:disabled){border-color:var(--spark)}.level-card:disabled{cursor:default;opacity:.6}.level-thumb{width:100%;aspect-ratio:1/1;background-size:cover;background-position:50%;position:relative}.level-lock,.level-thumb{border-radius:12px;display:flex;align-items:center;justify-content:center}.level-lock{position:absolute;inset:0;font-size:28px;background:rgba(16,16,26,.55)}.level-name{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;color:var(--paper)}.level-stars{font-size:14px;color:var(--spark);letter-spacing:2px}.level-play-header{display:flex;align-items:center;gap:16px;justify-content:center;margin-bottom:14px;flex-wrap:wrap}.level-play-header h2{font-family:var(--font-baloo),system-ui,sans-serif;font-size:clamp(20px,4vw,26px);margin:0}.level-complete-banner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:10px 16px;border-radius:14px;border:1px solid var(--spark);background:rgba(255,180,84,.1);font-size:13px;color:var(--spark)}.level-complete-banner button{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;color:var(--paper);background:var(--panel);border:1px solid var(--line);padding:7px 14px;border-radius:99px;cursor:pointer}.level-complete-banner button.ghost{background:transparent;color:var(--mist);border:1px dashed var(--line)}.photo-card{padding:10px}.photo-card-open{font:inherit;border:none;background:none;padding:0;width:100%;cursor:pointer}.photo-delete{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:rgba(16,16,26,.75);color:var(--paper);cursor:pointer;font-size:12px;line-height:1}.photo-delete:hover{background:rgba(0,0,0,.9)}.add-photo-thumb{background:transparent;border:1px dashed var(--line);font-size:32px;color:var(--mist)}.photo-error{color:#ff6b6b;font-size:13px;margin:0 0 14px}.size-tier-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 0 14px}.size-tier-label{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;color:var(--mist);margin-right:2px}.size-dot{border-radius:50%;border:1px solid rgba(0,0,0,.25);cursor:pointer;padding:0;transition:box-shadow .15s ease,transform .15s ease}.size-dot:hover{transform:scale(1.08)}.size-dot.active{box-shadow:0 0 0 2px var(--spark)}.size-dot:focus-visible{outline:2px solid var(--spark);outline-offset:2px}.size-tier-reset{font-family:var(--font-inter),sans-serif;font-weight:600;font-size:13px;color:var(--mist);background:none;border:none;text-decoration:underline;cursor:pointer;padding:0;margin-left:4px}.size-tier-reset:hover{color:var(--spark)}.color-palette{display:grid;grid-template-columns:repeat(5,26px);grid-gap:6px;gap:6px;padding:10px;border-radius:14px;background:var(--panel);border:1px solid var(--line);margin:0 auto 16px;width:-moz-fit-content;width:fit-content}.color-palette .swatch{width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.25);cursor:pointer;padding:0}.color-palette .swatch-custom{width:26px;height:26px;padding:0;border:1px solid var(--line);border-radius:50%;background:none;cursor:pointer}.color-palette .palette-close{grid-column:1/-1;margin-top:2px;background:transparent;border:none;color:var(--mist);cursor:pointer;font-size:11px}