@font-face{font-family:Rubik;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Rubik-Regular.woff2)format("woff2")}@font-face{font-family:Rubik;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/Rubik-Medium.woff2)format("woff2")}@font-face{font-family:Rubik;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/Rubik-SemiBold.woff2)format("woff2")}@font-face{font-family:Rubik;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/Rubik-Bold.woff2)format("woff2")}@font-face{font-family:Rubik;font-weight:800;font-style:normal;font-display:swap;src:url(/fonts/Rubik-ExtraBold.woff2)format("woff2")}@font-face{font-family:Neucha;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Neucha-Regular.woff2)format("woff2")}:root{--night-bg:#0b1118;--night-panel:#1d2b3a;--night-well:#0f1a26;--night-text:#f2f6fa;--night-dim:#a9b8c7;--radio:#7fd1a3;--paper-top:#fff8ee;--paper-bottom:#fbefdd;--paper-edge:#e3d2b8;--ink:#2e2418;--ink-dim:#6f604f;--ink-link:#b5703a;--lamp:#f2b84b;--glow:#ffb457;--cta-top:#ff9a52;--cta-bottom:#f27a2e;--cta-edge:#d4631f;--quiet-top:#34495e;--quiet-bottom:#2a3b4d;--quiet-edge:#1e2c3b;--shadow:0 10px 24px #1a263347;--gutter:16px;--r-tag:12px;--r-tile:20px;--r-card:28px;--r-panel:36px}*,:before,:after{box-sizing:border-box}em,i,cite,address,dfn,var{font-style:normal}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--night-bg);min-height:100dvh;color:var(--night-text);flex-direction:column;margin:0;font-family:Rubik,system-ui,sans-serif;font-size:17px;font-weight:400;line-height:1.55;display:flex;overflow-x:hidden}body:before{content:"";z-index:-1;background:var(--night-bg) url(/img/sky.webp) center bottom / cover no-repeat;position:fixed;inset:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:3px}a:focus-visible,.btn:focus-visible{outline:3px solid var(--glow);outline-offset:3px;border-radius:8px}strong{font-weight:600}h1,h2,h3{margin:0;line-height:1.15}.top{width:100%;max-width:1080px;padding:max(16px, env(safe-area-inset-top)) max(var(--gutter), env(safe-area-inset-right)) 16px max(var(--gutter), env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.brand{align-items:center;gap:12px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.brand img{border-radius:var(--r-tag);width:40px;height:40px}.lang{min-height:44px;color:var(--night-text);background:#1d2b3ae6;border-radius:999px;align-items:center;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.lang:hover{background:var(--quiet-top)}.top-tools{align-items:center;gap:8px;display:flex}@media (width<=400px){.top{gap:10px}.brand{gap:10px;font-size:15px}.lang{padding:0 12px;font-size:14px}.top-tools{gap:6px}}@media (width<=359px){.is-home .brand span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.motion-toggle{width:44px;height:44px;color:var(--night-text);cursor:pointer;background:#1d2b3ae6;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.motion-toggle[hidden]{display:none}.motion-toggle:hover{background:var(--quiet-top)}.motion-toggle:focus-visible{outline:3px solid var(--glow);outline-offset:3px}.motion-toggle .i-play,.motion-toggle[aria-pressed=true] .i-pause{display:none}.motion-toggle[aria-pressed=true] .i-play{display:block}.still .hero-icon{animation-play-state:running,paused}.page{width:100%;max-width:760px;padding:8px max(var(--gutter), env(safe-area-inset-right)) 48px max(var(--gutter), env(safe-area-inset-left));flex:1;margin:0 auto}.foot{width:100%;padding:32px var(--gutter) max(32px, env(safe-area-inset-bottom));color:var(--night-dim);text-align:center;background:linear-gradient(#0b111800,#0b1118eb 40%);font-size:15px}.foot p{margin:8px 0 0}.foot strong{color:var(--night-text)}.foot .fine{font-size:13px}.foot-links{flex-wrap:wrap;justify-content:center;gap:8px 20px;margin-bottom:12px;display:flex}.foot-links a{color:var(--night-text);padding:6px 0;font-weight:500;text-decoration:none}.foot-links a:hover,.foot-links a[aria-current=page]{color:var(--glow)}.card{border-radius:var(--r-card);background:linear-gradient(var(--paper-top), var(--paper-bottom));color:var(--ink);box-shadow:var(--shadow);border-bottom:5px solid var(--paper-edge);margin:0 0 16px;padding:20px 20px 24px;position:relative}.card>:first-child{margin-top:0}.card>:last-child{margin-bottom:0}.card p,.card ul,.card ol{margin:0 0 14px}.card a{color:var(--ink-link);font-weight:500}.card h2,.paper-title{color:var(--ink);margin-bottom:12px;font-family:Neucha,Rubik,sans-serif;font-size:30px;font-weight:400;line-height:1.1}.card h3{margin:22px 0 8px;font-size:18px;font-weight:700}.dim{color:var(--ink-dim)}mark.todo{color:#5a3a00;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#ffe08a;border-radius:6px;padding:0 5px;font-weight:600}.btn{border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:56px;padding:0 28px;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex}.btn-cta{background:linear-gradient(var(--cta-top), var(--cta-bottom));color:#fff;border-bottom:5px solid var(--cta-edge);box-shadow:0 8px 18px #f27a2e66}.btn-cta:active{border-bottom-width:0;transform:translateY(5px)}.btn-soon{background:linear-gradient(var(--quiet-top), var(--quiet-bottom));color:var(--night-text);border-bottom:5px solid var(--quiet-edge);cursor:default}.btn img{width:22px;height:22px}.hero{text-align:center;padding:24px 0 32px}.hero-icon{width:128px;height:128px;box-shadow:0 0 0 1px #ffffff14, 0 14px 40px #f2b84b2e, var(--shadow);border-radius:30px;margin:0 auto 20px}.hero h1{color:var(--paper-top);text-shadow:0 3px 6px #00000073;font-family:Neucha,Rubik,sans-serif;font-size:clamp(48px,13vw,76px);font-weight:400}.hero .genre{color:var(--lamp);letter-spacing:.08em;text-transform:uppercase;margin:6px 0 0;font-size:15px;font-weight:600}.hero .tagline{max-width:34ch;color:var(--night-text);text-shadow:0 2px 4px #00000080;margin:16px auto 24px;font-size:19px;font-weight:500}.hero .first-story{color:var(--night-dim);margin:16px 0 0;font-size:15px}.intro{gap:20px;display:grid}.intro .cover{border-radius:var(--r-tile);width:100%;max-width:240px;margin:0 auto}.intro .lead{font-size:19px;font-weight:500}.features{gap:12px;margin:0;padding:0;list-style:none;display:grid}.features li{border-radius:var(--r-tile);box-shadow:0 2px 0 var(--paper-edge);background:#fff;padding:14px 16px}.features b{margin-bottom:2px;font-weight:700;display:block}.shelf{grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 16px;display:grid}.shelf figure{margin:0}.shelf img{border-radius:var(--r-tag);width:100%}.shelf figcaption{color:var(--ink-dim);text-align:center;margin-top:8px;font-size:13px;line-height:1.3}.shelf figure:first-child figcaption{color:var(--ink);font-weight:600}.facts{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.facts li{background:var(--paper-edge);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:600}.doc-head{padding:16px 0 24px}.doc-head h1{color:var(--paper-top);text-shadow:0 3px 6px #00000073;font-family:Neucha,Rubik,sans-serif;font-size:clamp(38px,10vw,56px);font-weight:400}.doc-head p{color:var(--night-dim);margin:10px 0 0}.doc{font-size:16px;line-height:1.6}.doc ol.sections{counter-reset:s;padding-left:0;list-style:none}.doc ol.sections>li{counter-increment:s;margin:0 0 18px}.doc ol.sections>li>h3:before{content:counter(s) ". ";color:var(--ink-dim)}.doc ol.sections>li>h3{margin-top:0}.doc ul{padding-left:22px}.doc li{margin-bottom:6px}.doc .meta{border-radius:var(--r-tile);box-shadow:0 2px 0 var(--paper-edge);background:#fff;margin-bottom:20px;padding:12px 16px}.doc .meta p{margin:0 0 4px}.qa h3{margin-top:18px}.licenses h2{margin:28px 0 12px}.licenses h2:first-of-type{margin-top:8px}.licenses pre{border-radius:var(--r-tile);box-shadow:0 2px 0 var(--paper-edge);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;margin:10px 0 0;padding:12px 14px;font:13px/1.5 Rubik,system-ui,sans-serif}.notfound{text-align:center;padding:48px 0 24px}.notfound h1{color:var(--paper-top);font-family:Neucha,Rubik,sans-serif;font-size:64px;font-weight:400}.notfound p{color:var(--night-dim);margin:12px 0 28px}.notfound .row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}:root{--out-back:cubic-bezier(.34, 1.56, .64, 1);--out-cubic:cubic-bezier(.33, 1, .68, 1)}body.is-home:before{background-image:none}.is-home .top,.is-home .page,.is-home .foot{z-index:1;position:relative}.scene{z-index:0;background:var(--night-bg) url(/img/scene/p/flat.svg) center bottom / cover no-repeat;pointer-events:none;position:fixed;inset:0}@media (aspect-ratio>=1){.scene{background:linear-gradient(#05080f,#0b1626 60%,#1a2e45)}}.is-home .hero{min-height:calc(100svh - 88px);padding-top:2vh}@media (width<=639px){.is-home .hero-icon{border-radius:24px;width:96px;height:96px;margin-bottom:14px}}@media (aspect-ratio>=1) and (width>=800px){.is-home .hero{text-align:left;flex-direction:column;align-items:flex-start;width:min(1032px,100vw - 48px);padding-top:4vh;display:flex;position:relative;left:50%;translate:-50%}.is-home .hero>*{max-width:460px}.is-home .hero-icon{margin:0 0 20px}.is-home .hero .tagline{margin-left:0}}.scene-canvas{opacity:0;width:100%;height:100%;transition:opacity .9s linear;position:absolute;inset:0}.scene-canvas.on{opacity:1}.scene:after{content:"";background:radial-gradient(130% 100% at 50% 40%,#05080f00 62%,#05080f66 100%);position:absolute;inset:0}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes window-glow{0%,to{box-shadow:0 0 0 1px #ffffff14, 0 14px 40px #f2b84b29, var(--shadow)}50%{box-shadow:0 0 0 1px #ffffff1a, 0 14px 56px #f2b84b57, var(--shadow)}}.hero-icon{animation:pop-in .5s var(--out-back) both, window-glow 6s ease-in-out .6s infinite}.hero h1{animation:rise-in .45s var(--out-cubic) .12s both}.hero .genre{animation:rise-in .45s var(--out-cubic) .2s both}.hero .tagline{animation:rise-in .45s var(--out-cubic) .28s both}.hero .btn{animation:rise-in .45s var(--out-cubic) .36s both}.hero .first-story{animation:rise-in .45s var(--out-cubic) .44s both}@media (prefers-reduced-motion:no-preference){.reveal-ready .reveal:not(.in){opacity:0;transform:translateY(24px)}.reveal-ready .reveal{transition:opacity .45s var(--out-cubic), transform .45s var(--out-cubic)}}@media (hover:hover){.features li{transition:transform .2s var(--out-cubic), box-shadow .2s var(--out-cubic)}.features li:hover{box-shadow:0 6px 0 var(--paper-edge), 0 10px 18px #2e24181f;transform:translateY(-3px)}.shelf img{transition:transform .25s var(--out-back)}.shelf figure:hover img{transform:translateY(-4px)rotate(-1.5deg)}.btn-cta{transition:transform .15s var(--out-cubic), filter .15s}.btn-cta:hover{filter:brightness(1.06);transform:translateY(-1px)}}.kitchen .k-guest{border-radius:var(--r-tile);width:100%;box-shadow:0 2px 0 var(--paper-edge);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;grid-template-columns:64px 1fr;grid-template-areas:"face talk""face order";align-items:center;gap:4px 14px;margin:6px 0 16px;padding:12px 14px;display:grid}.k-guest>img{background:var(--paper-bottom);border-radius:50%;grid-area:face;width:64px;height:64px}.k-talk{flex-direction:column;grid-area:talk;display:flex}.k-name{color:var(--ink-dim);font-size:13px;font-weight:600}.k-say{font-size:15px;line-height:1.4}.k-order{background:var(--paper-top);box-shadow:inset 0 0 0 2px var(--lamp);border-radius:999px;grid-area:order;justify-self:start;align-items:center;gap:6px;padding:2px 12px 2px 4px;font-size:14px;font-weight:600;display:inline-flex}.k-order img{width:28px;height:28px}.k-guest.thanks .k-order{opacity:0;transition:opacity .2s, transform .2s var(--out-cubic);transform:scale(.6)}.k-guest.leave{opacity:0;transition:opacity .26s ease-in,transform .26s ease-in;transform:translate(-16px)}.k-guest.arrive{animation:rise-in .35s var(--out-cubic) both}.k-guest:focus-visible{outline:3px solid var(--glow);outline-offset:3px}.k-board{border-radius:var(--r-card);background:var(--paper-edge);grid-template-columns:repeat(3,1fr);gap:10px;max-width:340px;margin:0 auto 16px;padding:12px;display:grid}.k-cell{aspect-ratio:1;border-radius:var(--r-tile);cursor:default;touch-action:manipulation;background:#ffffff8c;border:0;place-items:center;padding:8px;display:grid;position:relative;box-shadow:inset 0 2px #2e24180f}.k-cell.has{cursor:grab;touch-action:none;background:#fff;box-shadow:0 3px #d6c3a5}.k-cell img{pointer-events:none;user-select:none;width:100%;height:auto}.k-cell.picked{box-shadow:0 0 0 3px var(--glow), 0 3px 0 #d6c3a5;transform:translateY(-2px)}.k-cell.lifted img{opacity:.35}.k-cell:focus-visible{outline:3px solid var(--glow);outline-offset:2px}@keyframes cell-pop{0%{transform:scale(.4)}to{transform:none}}@keyframes cell-merge{0%{transform:scale(.8)}55%{transform:scale(1.18)}to{transform:none}}@keyframes cell-flash{0%{box-shadow:0 0 #ffb457cc,0 3px #d6c3a5}to{box-shadow:0 0 0 14px #ffb45700,0 3px #d6c3a5}}@keyframes shake{0%,to{transform:none}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.k-cell.pop img{animation:cell-pop .3s var(--out-back)}.k-cell.merge{animation:.4s ease-out cell-flash}.k-cell.merge img{animation:cell-merge .3s var(--out-cubic)}.shake{animation:.3s ease-out shake}.k-ghost{z-index:10;pointer-events:none;filter:drop-shadow(0 8px 10px #0000004d);width:72px;height:72px;position:fixed;top:0;left:0}.k-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;display:flex}.k-bucket img{width:28px;height:28px}.k-served{color:var(--ink-dim);font-weight:700}.kitchen .k-status{text-align:center;min-height:1.5em;margin:12px 0 4px;font-size:15px;font-weight:500}.kitchen .k-note{text-align:center;color:var(--ink-dim);margin:0;font-size:13px}@media (width>=640px){:root{--gutter:24px}.card{padding:24px 28px 28px}.intro{grid-template-columns:200px 1fr;align-items:start}.intro .cover{max-width:none}.features{grid-template-columns:1fr 1fr}.features li.wide{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}a.btn-soon{cursor:pointer}
