@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/bricolage-grotesque-latin-700-normal.gtcctNPv.woff2)format("woff2"),url(/_astro/bricolage-grotesque-latin-700-normal.DvJDmrLu.woff)format("woff")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/bricolage-grotesque-latin-800-normal.J50vIsBe.woff2)format("woff2"),url(/_astro/bricolage-grotesque-latin-800-normal.Br4b-5gk.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/atkinson-hyperlegible-latin-400-normal.BrHNak5F.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-400-normal.BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/atkinson-hyperlegible-latin-700-normal.GZI4o3u0.woff2)format("woff2"),url(/_astro/atkinson-hyperlegible-latin-700-normal.BK6Glc0m.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/jetbrains-mono-latin-700-normal.BYuf6tUa.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-700-normal.D3wTyLJW.woff)format("woff")}:root{--bg:#eceff3;--surface:#fff;--ink:#17202b;--muted:#5a6574;--line:#d2d8e0;--tile:#f4f6f9;--accent:#b8650a;--accent-soft:#f6e6d0;--shell:#ecd9b6;--egg-white:#fff;--yolk:#f6b21b;--yolk-edge:#e09400;--egg-line:#462d0a52;--browned:#c98a4b;--accent-ink:#fff;--herring:#b23a12;--ok:#2b7448;--shadow:#17202b38;--font-display:"Bricolage Grotesque", "Avenir Next", "Segoe UI", system-ui, sans-serif;--font-body:"Atkinson Hyperlegible", "Segoe UI", system-ui, sans-serif;--font-tile:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ease-spring:cubic-bezier(.25, 1.3, .5, 1);--ease-smooth:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#10141a;--surface:#19202a;--ink:#e6eaf0;--muted:#97a2b2;--line:#2b3441;--tile:#222b37;--accent:#f0a23b;--accent-soft:#3a2a14;--shell:#e4d6bd;--egg-white:#f4f1ea;--yolk:#f2ac17;--yolk-edge:#c98200;--egg-line:#00000059;--browned:#b27840;--accent-ink:#1a1206;--herring:#f2875a;--ok:#5dc38b;--shadow:#0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#10141a;--surface:#19202a;--ink:#e6eaf0;--muted:#97a2b2;--line:#2b3441;--tile:#222b37;--accent:#f0a23b;--accent-soft:#3a2a14;--accent-ink:#1a1206;--herring:#f2875a;--ok:#5dc38b;--shadow:#0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-body);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));padding-top:max(12px, env(safe-area-inset-top,0px));padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.45}main.game{flex-direction:column;gap:12px;max-width:520px;margin:0 auto;display:flex}button{font-family:var(--font-body);color:var(--ink);cursor:pointer;touch-action:manipulation;font-weight:700}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.top{align-items:center;gap:6px;display:flex}.brand{flex:1;min-width:0}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.top h1{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;margin:0;font-size:clamp(15px,4.4vw,22px);font-weight:800;line-height:1.15;overflow:hidden}.logo-egg{vertical-align:-2px;display:inline-flex}.logo-egg svg{display:block}.help-btn{border:1px solid var(--line);background:var(--surface);width:44px;min-height:44px;font-family:var(--font-display);color:var(--ink);border-radius:8px;flex:none;align-self:stretch;place-items:center;font-size:18px;font-weight:700;text-decoration:none;display:grid}.clock{font-family:var(--font-tile);font-variant-numeric:tabular-nums;background:var(--surface);border:1px solid var(--line);text-align:right;border-radius:8px;flex:none;min-width:64px;padding:4px 8px;font-size:19px}.clock small{font-family:var(--font-body);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;display:block}ol.ladder{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.row{background:var(--surface);border:1px solid var(--line);border-radius:12px}.row.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.row-bar{text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;width:100%;min-height:44px;padding:5px 10px;font-weight:400;display:flex}button.row-bar:hover{background:var(--tile)}.num{font-family:var(--font-display);background:var(--tile);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:15px;font-weight:800;display:grid}.row.locked .num{background:var(--tile);color:var(--ink)}.row.active .num{background:var(--ink);color:var(--surface)}.bar-text{min-width:0;font-family:var(--font-tile);flex-wrap:wrap;flex:1;column-gap:.16em;font-size:16px;display:flex}.bar-text span{display:inline-block}.row:not(.locked) .bar-text{color:var(--muted);column-gap:.32em}.bar-meta{color:var(--muted);flex:none;font-size:13px}.bar-meta.hint{color:var(--ink);font-weight:600}.row.sealed{background:0 0;border-style:dashed}.row.sealed .num{border:1px dashed var(--line);color:var(--muted);background:0 0}.edit{border:1px solid var(--line);background:0 0;border-radius:7px;flex:none;min-height:30px;padding:4px 12px;font-size:13px;position:relative}.cooked{flex:none;padding:0 8px;font-size:22px;line-height:1}.edit:after{content:"";position:absolute;inset:-7px -4px}.work{flex-direction:column;gap:10px;padding:2px 10px 12px;display:flex}.grid{grid-template-columns:repeat(var(--n), minmax(0, var(--tile-max,44px)));justify-content:start;gap:5px;display:grid}.slots{display:grid}.slots>.grid{grid-area:1/1}.slots .front{pointer-events:none}.slot,.tile{aspect-ratio:1/1.1;width:100%;font-family:var(--font-tile);color:var(--ink);-webkit-user-select:none;user-select:none;border-radius:7px;place-items:center;margin:0;padding:0;font-size:clamp(15px,4.6vw,22px);font-weight:700;display:grid}.back .slot{background:var(--bg);border:2px dashed var(--line);touch-action:none;transition:background .15s,border-color .15s}.back .slot.drop{border:2px solid var(--accent);background:var(--accent-soft)}.front .slot{pointer-events:auto;background:var(--surface);border:2px solid var(--ink);touch-action:none;grid-row:1}.tile{background:var(--tile);border:1px solid var(--line);touch-action:none;border-bottom-width:3px}.tile.used{opacity:.2}.tray.hinting .tile:not(.used){animation:hop 3.2s cubic-bezier(.3,0,.3,1) calc(1s + var(--k,0) * 70ms) infinite}@keyframes hop{0%,18%,to{translate:0}8%{translate:0 -8px}}.tile.hole{background:var(--accent-soft);border:2px dashed var(--accent)}.tile:not(.used):not(.hole):active,.front .slot:active{scale:.93}.controls{gap:6px;display:flex}.btn-main.enter.waiting{opacity:.4}.btn-main.enter{transition:opacity .15s}.controls button{border-radius:8px;min-height:44px;font-size:15px}.btn-ghost{border:1px solid var(--line);background:0 0;padding:0 14px}.btn-main{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);padding:0 18px}.btn-main:disabled,.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.controls .grow{margin-left:auto}.msg{color:var(--herring);margin:0;font-size:14px}.msg:empty{display:none}.drag-layer{z-index:50;pointer-events:none;position:fixed;inset:0}.ghost{position:absolute}.ghost-face{background:var(--surface);border:2px solid var(--accent);width:100%;height:100%;font-family:var(--font-tile);color:var(--ink);box-shadow:0 14px 28px var(--shadow), 0 3px 8px var(--shadow);will-change:transform;border-radius:8px;place-items:center;font-weight:700;display:grid}.final{background:var(--surface);border:2px solid var(--line);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.final.ready{border-color:var(--accent)}.final.ready.solved{border-color:var(--line)}.final-head{justify-content:space-between;align-items:baseline;gap:10px;min-height:28px;display:flex}.final h2{font-family:var(--font-display);margin:0;font-size:19px;font-weight:800}.final .note{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.final .note.bad{color:var(--herring);font-weight:700}.final.locked{background:0 0;border-style:dashed;padding:8px 12px}.final.locked .final-head{align-items:center;min-height:28px}.final.locked h2{color:var(--muted);font-size:17px}.lock{margin-left:auto;padding-right:4px;display:inline-flex}.final .lock{padding-right:1px}.solved-badge{background:var(--ok);color:var(--surface);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:14px;font-weight:700;display:inline-flex}.blanks{perspective:400px;flex-wrap:wrap;gap:6px 14px;display:flex;container-type:inline-size}.blank-group{flex-wrap:nowrap;gap:4px;display:flex}.blank{width:var(--cell);aspect-ratio:1;border-bottom:3px solid var(--ink);font-family:var(--font-tile);font-weight:700;font-size:calc(var(--cell) * .58);place-items:center;display:grid}.blanks{--cell:min(40px, calc((100cqw - (var(--longest) - 1) * 4px) / var(--longest)))}.blank.punct{color:var(--muted);border-bottom-color:#0000}.blank.revealed{color:var(--accent)}.blanks.wrong .blank:not(.punct){color:var(--herring);border-bottom-color:var(--herring)}.blanks.fading .blank span{opacity:0;transition:opacity .18s var(--ease-smooth), transform .18s var(--ease-smooth);transform:translateY(6px)}.blanks.solved .blank:not(.punct){background:var(--ok);color:var(--surface);border-bottom-color:var(--ok);border-radius:6px}.blank span{display:inline-block}.enum{color:var(--muted);font-size:13px}.kb{flex-direction:column;gap:5px;display:flex}.kb-row{justify-content:center;gap:4px;display:flex}.kb-row button{background:var(--tile);border:1px solid var(--line);min-width:0;max-width:44px;min-height:44px;font-family:var(--font-tile);border-radius:8px;flex:1 1 0;padding:0;font-size:16px}.kb-row button:active{scale:.92}.kb-row button.wide{max-width:none;font-family:var(--font-body);flex:2.2 1 0;font-size:18px}.hintbar{justify-content:flex-end;display:flex}.hintbar button{white-space:nowrap;border-radius:8px;min-height:44px;padding:0 14px;font-size:13px}.check-row{justify-content:space-between;align-items:center;gap:10px;min-height:44px;display:flex}.check-result{color:var(--muted);min-width:0;font-size:13px}.check-result.bad{color:var(--herring);font-weight:700}.check-result.good{color:var(--ok);font-weight:700}.check-row button{white-space:nowrap;border-radius:8px;min-height:44px;padding:0 14px;font-size:13px}.result{flex-direction:column;gap:12px;display:flex}.result>*,.final{scroll-margin-top:12px}.score{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.score-row{align-items:center;gap:12px;display:flex}.score-stats{flex-wrap:wrap;flex:1;align-items:center;gap:4px 10px;min-width:0;display:flex}.score .time{font-family:var(--font-tile);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1}.score-badges{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.score-badges:empty{display:none}.egg-badge{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:15px;font-weight:700;display:inline-flex}.breakdown{color:var(--muted);grid-template-columns:auto 1fr;gap:2px 8px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.breakdown li{display:contents}.breakdown b{font-family:var(--font-tile);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink)}.breakdown .bad,.breakdown .bad b{color:var(--herring);font-weight:700}.share-btn{border-radius:10px;flex:none;min-width:132px;min-height:48px;font-size:17px;font-weight:700}.bonus{background:var(--accent-soft);border-radius:12px;padding:12px 14px}.bonus h3{font-family:var(--font-display);margin:0;font-size:19px;font-weight:800}.bonus p{text-wrap:pretty;margin:6px 0 0;font-size:15px}.bonus .bonus-eggs{letter-spacing:3px;margin:0;font-size:19px}.bonus h3 .bonus-eggs{margin-left:4px}.bonus.done{text-align:center}.bonus.done .bonus-eggs{margin:0 0 2px;font-size:30px}.bonus .actions{margin-top:10px}.bonus .actions button{flex:1}.recap{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;margin:0;padding:12px 16px;list-style:none;display:flex}.recap li{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;padding-bottom:8px;display:flex}.recap li:last-child{border-bottom:0}.recap .mark{text-align:center;flex:none;width:24px}.recap .mark svg{vertical-align:-3px;display:inline-block}.recap .body{min-width:0}.recap .link{font-weight:700}.recap .note{color:var(--herring);font-size:14px;display:block}.recap .note.ok{color:var(--muted)}.share{font-family:var(--font-tile);background:var(--bg);white-space:pre-wrap;-webkit-user-select:all;user-select:all;border-radius:8px;margin:0;padding:10px 12px;font-size:14px}.actions{flex-wrap:wrap;gap:8px;display:flex}.actions button{border-radius:8px;min-height:44px;font-size:15px}.sheet-backdrop{z-index:60;padding:16px;padding-bottom:max(16px, env(safe-area-inset-bottom,0px));background:#0a0e1473;place-items:end center;display:grid;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:480px;box-shadow:0 20px 40px var(--shadow);border-radius:16px;flex-direction:column;gap:14px;padding:20px;display:flex}.sheet h2{font-family:var(--font-display);margin:0;font-size:22px;font-weight:800}.help-score{margin:12px 0 0;font-size:15px}.sheet ol{flex-direction:column;gap:8px;margin:0;padding-left:1.3em;display:flex}.sheet .actions button{flex:1}.sheet .actions button.btn-main{flex:2}.status-msg{text-align:center;color:var(--muted);padding:40px 0}.status-msg+.end-links{margin-top:-28px}.corrected-note{color:var(--muted);text-align:center;margin:0 0 6px;font-size:13px}.update-bar{z-index:30;left:50%;top:calc(env(safe-area-inset-top) + 8px);background:var(--surface);color:var(--ink);border:1px solid var(--accent);box-shadow:0 8px 24px var(--shadow);border-radius:12px;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 32px);padding:8px 8px 8px 14px;font-size:14px;display:flex;position:fixed;transform:translate(-50%)}.update-bar button{font:inherit;background:var(--accent);min-height:44px;color:var(--accent-ink);cursor:pointer;border:0;border-radius:9px;padding:0 14px;font-weight:700}@media (prefers-reduced-motion:reduce){.back .slot,.blanks.fading .blank span{transition:none}.tray.hinting .tile{animation:none}}@media (width>=700px){.work{--tile-max:56px}.slot,.tile{font-size:24px}}.end-links{flex-wrap:wrap;justify-content:center;gap:8px 20px;padding:4px 0 8px;display:flex}.end-links a{color:var(--accent);align-items:center;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.today-btn{border-radius:8px;flex:none;align-items:center;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.list-stats{color:var(--muted);gap:20px;margin:0;font-size:14px;display:flex}.list-stats b{color:var(--ink);font-family:var(--font-tile);margin-right:4px;font-size:18px}.puzzle-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.puzzle-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:6px;display:flex}.puzzle-row>a{min-width:0;min-height:52px;color:var(--ink);flex:1;align-items:center;gap:10px;padding:0 14px;text-decoration:none;display:flex}.puzzle-row.new{background:0 0}.pz-title{font-weight:700}.pz-status{font-family:var(--font-tile);white-space:nowrap;margin-left:auto;font-size:15px}.pz-status.playing{font-family:var(--font-body);color:var(--muted);font-size:14px}.pz-status.play{font-family:var(--font-body);color:var(--accent);font-weight:700}.list-note{color:var(--muted);text-align:center;margin:0;font-size:13px}.splash{text-align:center;--ink:#2a1703;--muted:#5a3608;--line:#c97d17;--accent:#6b3a06;--accent-ink:#fff4dc;--egg-shadow:#5a2d0047;max-width:520px;min-height:calc(100dvh - 32px);color:var(--ink);flex-direction:column;justify-content:center;align-items:center;margin:0 auto;padding:24px 0;display:flex}body:has(.splash){background:#f6a32a}.splash-egg{place-items:end center;height:112px;margin-bottom:20px;display:grid;position:relative}.splash-egg:after{content:"";background:var(--egg-shadow);z-index:-1;border-radius:50%;width:60px;height:10px;margin-left:-30px;position:absolute;bottom:-4px;left:50%}.splash h1{font-family:var(--font-display);text-wrap:balance;letter-spacing:-.025em;margin:0;font-size:clamp(34px,9.6vw,46px);font-weight:800;line-height:1}.splash-tag{color:var(--muted);margin:10px 0 0;font-size:17px}.splash-actions{flex-direction:column;width:min(100%,300px);margin-top:34px;display:flex}.splash-actions button{border-radius:999px;min-height:54px;font-size:18px}.splash-meta{flex-direction:column;gap:2px;margin-top:18px;display:flex}.splash-date{margin:0;font-size:15px;font-weight:700}.splash-result{color:var(--muted);margin:0;font-size:15px}.splash-result:empty{display:none}.splash-links{flex-wrap:wrap;justify-content:center;gap:0 22px;margin-top:10px;display:flex}.splash-links a,.splash-links button{font:inherit;color:var(--ink);cursor:pointer;text-underline-offset:3px;min-height:44px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--ink) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--ink) 35%, transparent);background:0 0;border:0;align-items:center;padding:0;font-size:15px;font-weight:600;display:inline-flex}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body:has(.splash){background:#2b1a05}:root:not([data-theme=light]) .splash{--ink:#fbe9c8;--muted:#d8b47a;--line:#6b4510;--accent:#f6a32a;--accent-ink:#2a1703;--egg-shadow:#00000080}}:root[data-theme=dark] body:has(.splash){background:#2b1a05}:root[data-theme=dark] .splash{--ink:#fbe9c8;--muted:#d8b47a;--line:#6b4510;--accent:#f6a32a;--accent-ink:#2a1703;--egg-shadow:#00000080}.lock svg{display:block}.row.sealed .lock,.final.locked .lock{font-size:0}.answer-crack{vertical-align:-2px;margin-left:8px;display:inline-block}.egg-badge svg{flex:none;margin:-4px 0 -4px -4px}.tap-egg{cursor:pointer;-webkit-tap-highlight-color:transparent;transform-origin:50% 85%}.tap-egg.idle svg{transform-origin:50% 85%;animation:5s ease-in-out 1.5s infinite egg-wobble}@keyframes egg-wobble{0%,84%,to{transform:rotate(0)}88%{transform:rotate(-8deg)}92%{transform:rotate(7deg)}96%{transform:rotate(-3deg)}}.hatch{place-items:end center;width:84px;height:101px;display:grid;position:relative}.hatch-shell{position:absolute;inset:0}.hatch-chick{font-size:80px;line-height:1;display:block}.blanks{position:relative}.shell-burst{left:calc(var(--cell) * var(--longest) / 2 + (var(--longest) - 1) * 2px);pointer-events:none;z-index:2;width:0;height:0;position:absolute;top:50%}.shell-burst svg{position:absolute;top:-6px;left:-7px}.empty-egg{margin-bottom:8px}.stir{animation:.35s ease-in-out whisk-stir}@keyframes whisk-stir{25%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}75%{transform:rotate(-6deg)}}@media (prefers-reduced-motion:reduce){.stir,.tap-egg.idle svg{animation:none}}.sheet .actions a.sheet-link{border-radius:8px;flex:2;place-items:center;min-height:44px;font-size:15px;font-weight:700;text-decoration:none;display:grid}.sheet p{margin:0}.about-email{text-align:center;color:var(--muted);-webkit-user-select:all;user-select:all;font-size:13px}.site-foot{text-align:center;color:var(--muted);margin-top:auto;padding-top:16px;font-size:12px}.site-foot button{font:inherit;color:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:12px 4px;text-decoration:underline}.splash .splash-egg{margin-top:auto}
