@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#fbf6ec)var(--lightningcss-dark,#17120d);--surface:var(--lightningcss-light,#fffdf8)var(--lightningcss-dark,#211a13);--surface-2:var(--lightningcss-light,#f4ebdc)var(--lightningcss-dark,#2c231a);--border:var(--lightningcss-light,#e3d6c2)var(--lightningcss-dark,#43362a);--control:var(--lightningcss-light,#8a7560)var(--lightningcss-dark,#8f7b64);--text:var(--lightningcss-light,#2b2016)var(--lightningcss-dark,#f5eadb);--text-muted:var(--lightningcss-light,#6a5847)var(--lightningcss-dark,#c4b29c);--accent:var(--lightningcss-light,#b3361a)var(--lightningcss-dark,#ff8a5c);--accent-hover:var(--lightningcss-light,#962b13)var(--lightningcss-dark,#ffa27d);--accent-ink:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1a0e07);--focus:var(--lightningcss-light,#2457c5)var(--lightningcss-dark,#8ab4ff);--crumb:var(--lightningcss-light,#f2d7a2)var(--lightningcss-dark,#e8c98f);--crumb-inner:var(--lightningcss-light,#e6c48a)var(--lightningcss-dark,#cfae72);--crumb-speck:var(--lightningcss-light,#c99a5b)var(--lightningcss-dark,#b88a50);--crust:var(--lightningcss-light,#8a5424)var(--lightningcss-dark,#6e421b);--filling:var(--lightningcss-light,#d64933)var(--lightningcss-dark,#ff6a4d);--bar-track:var(--lightningcss-light,#eadfcc)var(--lightningcss-dark,#3a2f24);--bar:var(--lightningcss-light,#8a7560)var(--lightningcss-dark,#a8957e);--danger:var(--lightningcss-light,#b42318)var(--lightningcss-dark,#ff8a80);--success:var(--lightningcss-light,#2e7338)var(--lightningcss-dark,#7fd08a);--warn-bg:var(--lightningcss-light,#fcefc7)var(--lightningcss-dark,#3a2c0a);--warn-text:var(--lightningcss-light,#6b4700)var(--lightningcss-dark,#f7d57a);--ink-on-crumb:#2b2016;--glow-crumb:var(--lightningcss-light,#f2d7a247)var(--lightningcss-dark,#e8c98f0f);--glow-filling:var(--lightningcss-light,#d6493312)var(--lightningcss-dark,#ff6a4d0a);--bar-winner:var(--accent);--open-face:color-mix(in srgb, var(--control) 5%, transparent);--open-face-inner:color-mix(in srgb, var(--control) 9%, transparent);--shadow-card:0 1px 0 var(--border), 0 12px 32px -14px var(--lightningcss-light,#2b201638)var(--lightningcss-dark,#000000a6);--shadow-stamp:0 2px 0 var(--lightningcss-light,#2b201614)var(--lightningcss-dark,#0006);--font-display:"Fraunces Variable", ui-serif, Georgia, "Times New Roman", serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--step--1:.875rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.375rem;--step-3:clamp(2rem, 1.3rem + 3.4vw, 3.25rem);--step-4:clamp(2.25rem, 1.4rem + 5vw, 3.75rem);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--gutter:16px;--content-max:640px;--wide-max:960px;--radius-s:6px;--radius-m:12px;--radius-l:20px;--radius-pill:999px;--dur-fast:.12s;--dur-med:.24s;--dur-slow:.6s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--tap:44px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:var(--space-4)}body{min-height:100vh;font-family:var(--font-body);font-size:var(--step-0);color:var(--text);background:var(--bg);background-image:radial-gradient(circle at 12% -10%, var(--glow-crumb), transparent 42%), radial-gradient(circle at 100% 0%, var(--glow-filling), transparent 38%);background-repeat:no-repeat;margin:0;line-height:1.55}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--accent-hover);text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button,input{font:inherit}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--space-2);left:var(--space-2);z-index:100;padding:var(--space-3) var(--space-4);color:var(--accent-ink);background:var(--accent);border-radius:var(--radius-s);font-weight:700;position:absolute;translate:0 -200%}.skip-link:focus{color:var(--accent-ink);translate:0}.container{width:min(100% - 2 * var(--gutter), var(--content-max));margin-inline:auto}.container--wide{width:min(100% - 2 * var(--gutter), var(--wide-max))}.eyebrow{align-items:center;gap:var(--space-2);font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0;font-weight:700;display:flex}.pill{letter-spacing:.08em;border-radius:var(--radius-pill);padding:1px 8px;font-size:.75rem}.pill--warn{color:var(--warn-text);background:var(--warn-bg)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);min-width:var(--tap);padding:0 var(--space-4);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-fast), border-color var(--dur-fast), translate 80ms;border:1.5px solid #0000;font-weight:650;line-height:1.1;text-decoration:none;display:inline-flex}.button svg{flex:none;width:20px;height:20px}.button:active:not(:disabled){translate:0 1px}.button:disabled{cursor:not-allowed;opacity:.7}.button--primary{color:var(--accent-ink);background:var(--accent)}.button--primary:hover:not(:disabled){color:var(--accent-ink);background:var(--accent-hover)}.button--secondary{color:var(--text);background:var(--surface);border-color:var(--control)}.button--secondary:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.button--ghost{color:var(--accent);background:0 0}.button--ghost:hover:not(:disabled){color:var(--accent-hover);background:var(--surface-2)}.icon-button{width:var(--tap);height:var(--tap);color:var(--text);border:1.5px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.icon-button:hover{background:var(--surface-2);border-color:var(--control)}.food-chip{min-height:var(--tap);padding:0 var(--space-4);color:var(--text);white-space:nowrap;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-pill);transition:background-color var(--dur-fast), border-color var(--dur-fast);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.food-chip:hover{color:var(--text);background:var(--surface-2);border-color:var(--control);text-decoration:none}.toast{left:50%;bottom:max(var(--space-5), env(safe-area-inset-bottom));z-index:50;padding:var(--space-3) var(--space-5);color:var(--bg);background:var(--text);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);animation:toast-in .2s var(--ease-out) both;font-weight:600;position:fixed;translate:-50%}@keyframes toast-in{0%{opacity:0;translate:-50% 8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.toast{animation:none}}.site-header__inner{align-items:center;gap:var(--space-4);min-height:64px;display:flex}.wordmark{align-items:center;gap:var(--space-2);min-height:var(--tap);font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin-right:auto;font-size:1.1875rem;font-weight:700;text-decoration:none;display:inline-flex}.wordmark:hover{color:var(--text);text-decoration:none}.site-nav{gap:var(--space-1);display:none}.site-nav a{min-height:var(--tap);padding:0 var(--space-3);color:var(--text-muted);white-space:nowrap;border-radius:var(--radius-pill);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.site-nav a:hover{color:var(--text);background:var(--surface-2)}@media (min-width:520px){.site-nav{display:flex}}@media (min-width:520px) and (max-width:679px){.site-header__inner{padding-block:var(--space-2) var(--space-1);flex-wrap:wrap;row-gap:0}.site-nav{margin-inline:calc(var(--space-3) * -1);flex-basis:100%;order:1}}.mock-banner{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--gutter);color:var(--warn-text);background:var(--warn-bg);border-bottom:1px solid color-mix(in srgb, var(--warn-text) 25%, transparent);display:flex}.mock-banner p{max-width:var(--wide-max);font-size:var(--step--1);flex:1;margin:0 auto}.mock-banner a{color:inherit;font-weight:700}.mock-banner__close{color:inherit;border-color:color-mix(in srgb, var(--warn-text) 35%, transparent);flex:none}.mock-banner__close:hover{background:color-mix(in srgb, var(--warn-text) 10%, transparent);border-color:currentColor}.hero{--hero-cube:78px;gap:var(--space-3);padding-block:var(--space-5) var(--space-5);display:grid}.hero__top{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.hero__text{gap:var(--space-3);display:grid}.hero__art{border-radius:var(--radius-l);place-items:center;display:grid;position:relative}.hero__art .stamp{bottom:4%;right:0}.hero__art .stamp__main{border-width:2px;font-size:.8125rem}.hero__art:is(:hover,:focus-visible){--ry-turn:20deg}@media (min-width:560px){.hero{--hero-cube:120px;padding-block:var(--space-7) var(--space-6)}.hero__art{margin-right:calc(var(--space-3) * -1)}.hero__art .stamp{right:-2px}.hero__art .stamp__main{border-width:3px;font-size:1.125rem}}.hero__title{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-family:var(--font-display);font-size:var(--step-3);letter-spacing:-.025em;font-variation-settings:"SOFT" 100;margin:0;font-weight:750;line-height:1.02}.hero__sub{max-width:34ch;font-size:var(--step-1);color:var(--text-muted);margin:0}.hero[data-compact]{padding-block:var(--space-4) var(--space-4)}.hero[data-compact] .hero__title{font-size:1.5rem}.food-form{gap:var(--space-2);display:grid}.food-form__label{font-weight:700}.food-form__row{gap:var(--space-2);flex-wrap:wrap;display:flex}.food-form__input{min-width:0;min-height:56px;padding:0 var(--space-4);color:var(--text);background:var(--surface);border:1.5px solid var(--control);border-radius:var(--radius-m);flex:220px;font-size:1.125rem;box-shadow:inset 0 1px 2px #0000000f}.food-form__input::placeholder{color:var(--text-muted);opacity:1}.food-form__input[aria-invalid=true]{border-color:var(--danger)}.food-form__submit{min-height:56px;padding:0 var(--space-5);border-radius:var(--radius-m);flex:none;font-size:1.0625rem}@media (max-width:399px){.food-form__submit{flex:100%}}.food-form__hint{font-size:var(--step--1);color:var(--text-muted);margin:0}.food-form__error{color:var(--danger);margin:0;font-weight:600}.food-form__try{align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.food-form__try-label{font-size:var(--step--1);color:var(--text-muted);font-weight:700}.food-form__chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.food-chip--surprise{color:var(--accent);cursor:pointer;border-style:dashed;border-color:var(--control);font-weight:600}.food-chip--surprise svg{width:18px;height:18px}.hero[data-compact] .food-form__try{display:none}.ruling-slot{scroll-margin-top:var(--space-4)}@media (min-width:900px){.ruling-slot{width:min(100% - 2 * var(--gutter), var(--wide-max))}}.ruling-slot:empty{display:none}.section-head{gap:var(--space-2);margin-bottom:var(--space-5);display:grid}.section-head h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(1.75rem,1.3rem + 2vw,2.5rem);font-weight:750;line-height:1.1}.section-head p{max-width:60ch;color:var(--text-muted);margin:0}.legend{gap:var(--space-2) var(--space-5);margin:var(--space-2) 0 0;font-size:var(--step--1);flex-wrap:wrap;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:var(--space-2);display:inline-flex}.legend__swatch{border-radius:3px;width:22px;height:22px}.legend__swatch--starch{background:radial-gradient(circle at 30% 40%, var(--crumb-speck) 0 1px, transparent 1.6px) 0 0 / 8px 8px, var(--crumb);box-shadow:inset 0 0 0 2.5px var(--crust)}.legend__swatch--open{background:var(--open-face);outline:1.5px dashed var(--control);outline-offset:-1.5px}.gallery{--card-cube:72px;padding-block:var(--space-8) var(--space-6);content-visibility:auto;contain-intrinsic-size:auto 2700px}.gallery__grid{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.cube-card{gap:var(--space-3);padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);grid-template-columns:auto 1fr;align-content:start;align-items:start;display:grid}.cube-card__cube{margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0}.cube-card:is(:hover,:focus-within){--ry-turn:20deg}.cube-card__body{gap:var(--space-1);min-width:0;display:grid}.cube-card__title{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--step-2);margin:0;font-weight:700;display:flex}.cube-card__num{width:28px;height:28px;font-family:var(--font-body);color:var(--accent-ink);background:var(--accent);border-radius:50%;place-items:center;font-size:.875rem;font-weight:700;display:grid}.cube-card__summary{margin:0}.cube-card__family{font-size:var(--step--1);color:var(--text-muted);margin:0}.cube-card__examples{margin:var(--space-2) 0 0;flex-wrap:wrap;gap:6px;padding:0;list-style:none;display:flex}.cube-card__examples .food-chip{padding:0 var(--space-3);font-size:var(--step--1)}@media (min-width:640px){.gallery{--card-cube:104px;contain-intrinsic-size:auto 2250px}.gallery__grid{grid-template-columns:repeat(2,1fr)}.cube-card{text-align:center;padding:var(--space-4);grid-template-columns:1fr;justify-items:center}.cube-card__title,.cube-card__examples{justify-content:center}}@media (min-width:900px){.gallery{contain-intrinsic-size:auto 1500px}.gallery__grid{grid-template-columns:repeat(3,1fr)}}.about{padding-block:var(--space-7) var(--space-8)}:is(.about__grid,.jev__grid){gap:var(--space-5);display:grid}:is(.about,.jev) article{gap:var(--space-2);display:grid}:is(.about,.jev) h3{font-family:var(--font-display);font-size:var(--step-2);margin:0}:is(.about,.jev) article :is(p,ul){margin:0}:is(.about,.jev) article>ul{gap:var(--space-1);padding-left:1.2em;display:grid}.jev{padding-block:var(--space-7) 0}.jev__stats{gap:var(--space-3);margin:0 0 var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.jev__stats li{align-content:start;gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);display:grid;container-type:inline-size}.jev__stats strong{font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;font-size:clamp(1rem,16cqi,2rem);font-weight:750;line-height:1.1}.jev__stats li:first-child strong{color:var(--accent)}.jev__stats span{font-size:var(--step--1);color:var(--text-muted);line-height:1.35}.jev__kinds{gap:var(--space-2);margin:0;display:grid}.jev__kinds div{padding-left:var(--space-3);border-left:3px solid var(--crust)}.jev__kinds dt{font-weight:700}.jev__kinds dd{margin:0}.receipt{padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--step--1);background:var(--surface);border:1.5px dashed var(--control);border-radius:var(--radius-s);margin:0;display:grid}.receipt div{align-items:baseline;gap:0 var(--space-3);border-top:1px dotted var(--border);flex-wrap:wrap;padding-block:6px;display:flex}.receipt div:first-child{border-top:0}.receipt dt{flex:1 1 0}.receipt dd{text-align:right;font-variant-numeric:tabular-nums;margin:0 0 0 auto}.receipt .receipt__total{border-top:1.5px dashed var(--control);font-weight:700}.jev__fine{font-size:var(--step--1);color:var(--text-muted)}.jev__table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.jev__table caption{padding-bottom:var(--space-2);text-align:left;font-weight:700}.jev__table :is(th,td){padding:var(--space-2);text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}.jev__table thead th{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem}.jev__table tbody th{font-weight:600}.jev__table td{font-variant-numeric:tabular-nums}.jev__table .jev__lead>*{background:var(--surface-2);font-weight:800}.jev__of{color:var(--text-muted);white-space:nowrap;font-weight:400}#about-mock{padding:var(--space-4);background:var(--warn-bg);color:var(--warn-text);border-radius:var(--radius-m);scroll-margin-top:var(--space-6)}#about-mock :any-link{color:inherit}.site-footer{padding-block:var(--space-6) var(--space-7);font-size:var(--step--1);color:var(--text-muted);background:var(--surface-2);border-top:1px solid var(--border)}.site-footer p{margin:0 0 var(--space-2)}.site-footer__credit{max-width:70ch;color:var(--text)}.site-footer__author{max-width:70ch}.site-footer__meta{align-items:center;gap:0 var(--space-4);flex-wrap:wrap;display:flex}.site-footer__meta a{min-height:var(--tap);align-items:center;display:inline-flex}.crash{gap:var(--space-3);padding-block:var(--space-8);justify-items:start;display:grid}.crash h1{font-family:var(--font-display);margin:0}.cube-stage{--cube:clamp(140px, 44vw, 220px);--half:calc(var(--cube) / 2);--crust-width:max(2px, calc(var(--cube) / 48));--crumb-face:var(--crumb);--crumb-face-inner:var(--crumb-inner);width:calc(var(--cube) * 1.75);height:calc(var(--cube) * 1.65);perspective:calc(var(--cube) * 4.2);perspective-origin:50% 40%;place-items:center;display:grid;position:relative}.cube-stage[data-tinted]{--crumb-face:color-mix(in oklab, var(--starch) 28%, var(--crumb));--crumb-face-inner:color-mix(in oklab, var(--crumb-face) 78%, var(--crust))}.cube-wrap,.cube,.core,.face,.slab,.skin{transform-style:preserve-3d}.cube-wrap{width:var(--cube);height:var(--cube)}.cube{width:100%;height:100%;transform:rotateX(var(--rx)) rotateY(calc(var(--ry) + var(--ry-turn,0deg)));transition:transform .3s var(--ease-out);position:relative}.face,.slab,.skin{position:absolute;inset:0}.face--front{--shade:.03;transform:translateZ(var(--half))}.face--back{--shade:.1;transform:rotateY(180deg) translateZ(var(--half))}.face--left{--shade:.07;transform:rotateY(-90deg) translateZ(var(--half))}.face--right{--shade:.12;transform:rotateY(90deg) translateZ(var(--half))}.face--top{--shade:0;transform:rotateX(90deg) translateZ(var(--half))}.face--bottom{--shade:.15;transform:rotateX(-90deg) translateZ(var(--half))}.slab{inset:3%;transform:rotateX(90deg)}.out,.in{backface-visibility:hidden;border-radius:3px;display:block;position:absolute;inset:0}.in{transform:rotateY(180deg)}.is-starch .out,.is-starch .in{background-color:var(--crumb-face);background-image:linear-gradient(rgb(40 20 0/var(--shade,.05)), rgb(40 20 0/var(--shade,.05))), radial-gradient(circle at 30% 40%, var(--crumb-speck) 0 1.2px, transparent 1.8px), radial-gradient(circle at 70% 25%, var(--crumb-speck) 0 .8px, transparent 1.4px), radial-gradient(circle at 55% 75%, color-mix(in srgb, var(--crumb-speck) 70%, transparent) 0 1.1px, transparent 1.8px);background-size:auto,11px 11px,14px 14px,17px 17px}.is-starch .out{box-shadow:inset 0 0 0 var(--crust-width) var(--crust), inset 0 0 0 calc(var(--crust-width) * 2.2) color-mix(in srgb, var(--crust) 35%, transparent), inset 0 0 calc(var(--cube) / 7) color-mix(in srgb, var(--crust) 30%, transparent)}.is-starch .in{background-color:var(--crumb-face-inner);box-shadow:inset 0 0 0 var(--crust-width) color-mix(in srgb, var(--crust) 70%, transparent), inset 0 0 calc(var(--cube) / 8) #00000038}.is-open .out,.is-open .in{background:var(--open-face);outline:1.5px dashed var(--control);outline-offset:-1.5px;border-radius:1px}.is-open .in{background:var(--open-face-inner)}.core{--core:calc(var(--cube) * .42);--half:calc(var(--core) / 2);top:calc(50% - var(--half));left:calc(50% - var(--half));width:var(--core);height:var(--core);position:absolute}.cube-stage[data-muted] .skin{opacity:.6}.cube-stage[data-phase=loading] .out,.cube-stage[data-phase=loading] .in{outline:1.5px dashed var(--control);background:0 0;animation:1.2s ease-in-out infinite alternate wire-pulse}@keyframes wire-pulse{0%{opacity:1}to{opacity:.5}}.cube-stage[data-phase=reveal] .is-starch .out,.cube-stage[data-phase=reveal] .is-starch .in{animation:bake .22s var(--ease-out) both;animation-delay:calc(.25s + var(--order,0) * 70ms)}.cube-stage[data-phase=reveal] .is-starch>.skin{animation:bake-scale .22s var(--ease-out) both;animation-delay:calc(.25s + var(--order,0) * 70ms)}@keyframes bake{0%{opacity:0}}@keyframes bake-scale{0%{scale:.92}}.cube-stage[data-phase=reveal][data-category=toast] .face--bottom>.skin{animation:rise-into-place .32s var(--ease-out) .25s both}@keyframes rise-into-place{0%{translate:0 0 calc(var(--cube) * .12)}}.cube-stage[data-phase=reveal][data-category=sandwich] .face--top>.skin{animation:drop-lid .36s var(--ease-spring) .46s both}@keyframes drop-lid{0%{translate:0 0 calc(var(--cube) * .18)}}.cube-stage[data-phase=reveal][data-category=taco] :is(.face--left,.face--right)>.skin,.cube-stage[data-phase=reveal][data-category=quiche] :is(.face--left,.face--right,.face--front,.face--back)>.skin{transform-origin:50% 100%;animation:wall-up .36s var(--ease-out) both;animation-delay:calc(.25s + var(--order,0) * 70ms)}@keyframes wall-up{0%{scale:1 0}}.cube-stage[data-phase=reveal][data-category=sushi] .face--bottom{--order:0}.cube-stage[data-phase=reveal][data-category=sushi] .face--right{--order:1.3}.cube-stage[data-phase=reveal][data-category=sushi] .face--top{--order:2.6}.cube-stage[data-phase=reveal][data-category=sushi] .face--left{--order:3.9}.cube-stage[data-phase=reveal][data-category=calzone] .cube-wrap{animation:crimp .38s var(--ease-spring) .72s both}@keyframes crimp{0%{scale:1.06}}.cube-stage[data-phase=reveal][data-category=cake] .face--bottom>.skin{animation:drop-layer-up .3s var(--ease-out) .25s both}.cube-stage[data-phase=reveal][data-category=cake] .slab>.skin{animation:drop-layer .3s var(--ease-out) .37s both}.cube-stage[data-phase=reveal][data-category=cake] .face--top>.skin{animation:drop-layer .3s var(--ease-out) .49s both}@keyframes drop-layer{0%{translate:0 0 calc(var(--cube) * .2);opacity:0}}@keyframes drop-layer-up{0%{translate:0 0 calc(var(--cube) * -.2);opacity:0}}.cube-stage[data-phase=reveal][data-category=nachos] .core{animation:core-drop .42s var(--ease-spring) .3s both}@keyframes core-drop{0%{translate:0 calc(var(--cube) * -.6);opacity:0}}.cube-stage[data-phase=reveal][data-category=salad] .cube-wrap{animation:.52s ease-in-out .38s both wobble}@keyframes wobble{0%,to{scale:1}25%{scale:1.06 .94}50%{scale:.96 1.04}75%{scale:1.02 .98}}@media (prefers-reduced-motion:reduce){.cube,.cube-stage *,.cube-stage[data-phase] *{transition:none!important;animation:none!important}.cube-stage[data-phase=reveal]{animation:.15s ease-out both fade-in}}@keyframes fade-in{0%{opacity:0}}.ruling{gap:var(--space-4);min-height:880px;padding:var(--space-5) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);flex-direction:column;display:flex;position:relative}.ruling[data-status=error],.ruling[data-kind=declined],.ruling[data-kind=nonsense]{min-height:0}.ruling__lead,.ruling__body{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}@media (min-width:560px){.ruling{padding:var(--space-6)}}@media (min-width:900px){.ruling[data-layout=split]{align-items:start;column-gap:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:620px;display:grid}.ruling[data-layout=split] .ruling__lead{top:var(--space-4);position:sticky}.ruling[data-layout=split] .ruling__stage{border-radius:var(--radius-m);margin-inline:0}}.ruling__heading{gap:var(--space-1);font-family:var(--font-display);overflow-wrap:anywhere;flex-direction:column;margin:0;font-weight:700;line-height:1.05;display:flex}.ruling__heading:focus{outline:none}.ruling__heading:focus-visible{outline:3px solid var(--focus);outline-offset:6px;border-radius:var(--radius-s)}.ruling__food{font-size:var(--step-4);letter-spacing:-.02em;font-variation-settings:"SOFT" 50}.ruling__verdict{font-size:var(--step-2);color:var(--accent);font-weight:600;line-height:1.2}.ruling__verdict--solo{color:var(--text);font-size:clamp(1.75rem,1.2rem + 2.6vw,2.5rem)}.ruling__stage{margin-inline:calc(var(--space-4) * -1);padding-block:var(--space-2);background:radial-gradient(ellipse 60% 18% at 50% 88%, #0000001a, transparent 70%), radial-gradient(circle at 50% 45%, var(--surface-2), transparent 68%);place-items:center;display:grid;position:relative}.ruling__status,.ruling__slow{text-align:center;color:var(--text-muted);margin:0}.ruling__status{font-family:var(--font-display);font-size:var(--step-1);font-style:italic}.ruling__confidence{font-family:var(--font-display);font-size:var(--step-2);margin:0;line-height:1.3}.ruling__reveal-late{gap:var(--space-3);flex-direction:column;display:flex}.stamp{right:max(4%, var(--space-3));font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;pointer-events:none;justify-items:end;font-weight:800;line-height:1;display:grid;position:absolute;bottom:12%}.stamp__main,.stamp__ghost{color:var(--accent);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:var(--radius-s);box-shadow:inset 0 0 0 2px var(--surface), inset 0 0 0 3.5px currentColor, var(--shadow-stamp);white-space:nowrap;border:3px solid;grid-area:1/1;justify-items:center;gap:2px;padding:.35em .55em .3em;font-size:clamp(1.15rem,.8rem + 2.4vw,1.9rem);display:grid;rotate:-6deg}.stamp__ghost{opacity:.6;color:var(--text-muted);translate:-18px -34px;rotate:4deg}.stamp__main{position:relative}.stamp__kicker{letter-spacing:.2em;font-size:.45em}.stamp__sim{margin-top:var(--space-2);font-family:var(--font-body);letter-spacing:.14em;color:var(--warn-text);background:var(--warn-bg);border-radius:var(--radius-s);justify-self:center;padding:2px 6px;font-size:.6875rem;font-weight:700;rotate:-6deg}.stamp--question .stamp__main{box-shadow:var(--shadow-stamp);border-style:dashed}.stamp--baffled .stamp__main,.stamp--uncubeable .stamp__main{color:var(--text-muted);box-shadow:var(--shadow-stamp);border-style:dashed}.hero__art[data-intro] .stamp__main{animation:slam .28s var(--ease-out) .75s both}.odds{gap:var(--space-2);flex-direction:column;display:flex}.odds__title{margin:0 0 var(--space-1);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.odds__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.odds__row{column-gap:var(--space-3);grid-template-columns:26px 1fr auto;grid-template-areas:"num name pct""num bar bar";align-items:center;row-gap:3px;min-height:36px;display:grid}.odds__num{font-variant-numeric:tabular-nums;width:26px;height:26px;color:var(--text-muted);border:1.5px solid var(--control);border-radius:50%;grid-area:num;place-items:center;font-size:.8125rem;font-weight:700;display:grid}.odds__name{grid-area:name}.odds__canon{margin-left:var(--space-2);letter-spacing:.06em;text-transform:uppercase;color:var(--success);border-radius:var(--radius-pill);border:1px solid;padding:1px 6px;font-size:.75rem;font-weight:700}.odds__pct{font-variant-numeric:tabular-nums;text-align:right;color:var(--text-muted);grid-area:pct}.odds__bar{background:var(--bar-track);border-radius:4px;grid-area:bar;height:8px;overflow:hidden}.odds__fill{width:max(2px, calc(var(--p) * 100%));background:var(--bar);transform-origin:0;border-radius:4px;height:100%;display:block}.odds__fill[data-empty]{width:0}.is-winner .odds__name,.is-winner .odds__pct{color:var(--text);font-weight:650}.is-winner .odds__num{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.is-winner .odds__fill{background:var(--bar-winner)}.odds--skeleton .odds__row{min-height:36px;display:block}.skeleton-line{background:var(--bar-track);border-radius:7px;width:100%;height:14px;animation:1.2s ease-in-out infinite alternate skeleton;display:block}.odds--skeleton .odds__title{width:55%}@keyframes skeleton{to{opacity:.45}}.official{margin:0}.official__tag{margin-right:var(--space-2);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-pill);border:1.5px solid;padding:1px 8px;font-size:.75rem;font-weight:800;display:inline-block}.official--agrees .official__tag{color:var(--success)}.official--dissents .official__tag{color:var(--accent)}.tags{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.tag{font-size:var(--step--1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.tag__swatch{border:1.5px solid var(--crust);border-radius:3px;width:12px;height:12px}.notes{gap:var(--space-1);color:var(--text-muted);font-size:var(--step--1);margin:0;padding-left:1.1em;display:grid}.declined{justify-items:center;gap:var(--space-4);padding-block:var(--space-6);text-align:center;display:grid}.declined p{font-family:var(--font-display);font-size:var(--step-2);margin:0}.declined__box svg{width:88px;height:88px;color:var(--control);stroke-width:1.1px}.error-panel{justify-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;background:var(--surface-2);border-radius:var(--radius-m);display:grid}.error-panel__icon svg{width:48px;height:48px;color:var(--accent)}.error-panel__title{font-family:var(--font-display);font-size:var(--step-2);margin:0}.error-panel__body{max-width:36ch;color:var(--text-muted);margin:0}.share{gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--border);display:grid}.share__buttons{gap:var(--space-2);flex-wrap:wrap;display:flex}.share__fallback{gap:var(--space-1);font-size:var(--step--1);color:var(--text-muted);display:grid}.share__fallback input{min-height:var(--tap);padding:0 var(--space-3);font:inherit;color:var(--text);background:var(--surface-2);border:1.5px solid var(--control);border-radius:var(--radius-s)}.nerd summary{align-items:center;gap:var(--space-2);min-height:var(--tap);cursor:pointer;font-weight:600;list-style:none;display:flex}.nerd summary::-webkit-details-marker{display:none}.nerd summary:before{content:"";width:.45em;height:.45em;transition:rotate var(--dur-fast);border-bottom:2px solid;border-right:2px solid;rotate:-45deg}.nerd[open] summary:before{rotate:45deg}.nerd__table{width:100%;font-family:var(--font-mono);border-collapse:collapse;font-size:.8125rem}.nerd__table th,.nerd__table td{text-align:left;vertical-align:top;border-bottom:1px dotted var(--border);overflow-wrap:anywhere;padding:3px 0}.nerd__table th{width:45%;padding-right:var(--space-3);color:var(--text-muted);white-space:pre;font-weight:500}.ruling[data-reveal] .ruling__verdict{animation:rise .24s var(--ease-out) .7s both}.ruling[data-reveal] .stamp__main{animation:slam .28s var(--ease-out) .75s both}.ruling[data-reveal] .stamp__ghost{animation:ghost-in .26s var(--ease-out) 1s both}.ruling[data-reveal] .stamp__sim{animation:rise .2s var(--ease-out) .98s both}.ruling[data-reveal] .odds__fill{animation:grow .48s var(--ease-out) both;animation-delay:calc(.85s + var(--i) * 35ms)}.ruling[data-reveal] .ruling__reveal-late{animation:rise .22s var(--ease-out) .95s both}@keyframes slam{0%{opacity:0;rotate:-12deg;scale:1.6}60%{opacity:1;rotate:-5deg;scale:.94}to{rotate:-6deg;scale:1}}@keyframes ghost-in{0%{opacity:0;translate:0}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes rise{0%{opacity:0;translate:0 8px}}@media (prefers-reduced-motion:reduce){.ruling *,.ruling[data-reveal] *{animation:none!important}.ruling[data-reveal]{animation:.15s ease-out both fade-in}}
