@font-face{font-family:Inter;src:url('/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--background:#0a0a0a;--foreground:#e1d8b7;--accent:#CA0000;--line:rgba(225,216,183,.09);--muted:#a9a9a9;--panel:#161616;--focus:#CA0000;font-family:'Helvetica Neue',Inter,system-ui,sans-serif;font-size:16px;background:#0a0a0a;color:var(--foreground)}
*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:4px}h1,h2,p,dl,dd,figure{margin:0}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.recipe-app{position:relative;width:100%;max-width:560px;min-height:100svh;margin:0 auto;background:var(--background);display:flex;flex-direction:column;padding-bottom:calc(45px + env(safe-area-inset-bottom,0px))}
.toolbar{height:calc(64px + env(safe-area-inset-top,0px));padding:calc(10px + env(safe-area-inset-top,0px)) 16px 8px 12px;display:flex;align-items:center;justify-content:space-between;flex:none;background:#000}
.menu-button{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:0 12px;border:0;background:none;opacity:.55;transition:opacity .2s}.menu-button:hover,.menu-button:focus-visible{opacity:1}.menu-button span{height:1.5px;background:#e1d8b7;border-radius:2px;display:block;width:20px}.menu-button:disabled{opacity:.2}
.voice-button{min-height:44px;position:relative;display:flex;align-items:center;gap:7px;padding:0 13px;border:0;border-radius:100px;background:none;font-size:.75rem;letter-spacing:.09em;font-weight:700;color:#e1d8b7}.voice-button::before{content:'';position:absolute;inset:6px 0;border:1px solid #454545;border-radius:100px;pointer-events:none}.voice-dot{height:7px;width:7px;flex:none;border-radius:50%;background:#777}.voice-button[data-state='listening'] .voice-dot{background:#5dcc8a;animation:mic-pulse 1.8s ease-in-out infinite}.voice-button[data-state='starting'] .voice-dot{background:var(--accent)}.voice-button:disabled{opacity:.45}
main{flex:1;display:flex;flex-direction:column;outline:none!important}article{display:flex;flex:1;flex-direction:column}.recipe-hero{position:relative;isolation:isolate;background:#000;padding:2px 8px 8px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;align-items:end;min-height:158px}.pizza-images{display:contents}.pizza-images figure{min-width:0;display:flex;flex-direction:column;align-items:center}.pizza-images figure:first-child{grid-column:1 / 9;grid-row:1 / 3;z-index:2}.pizza-images figure:last-child{grid-column:7 / 13;grid-row:2;z-index:1}.pizza-images figure:last-child .image-unavailable{width:100%;padding-left:33.333%;text-align:center}.pizza-images img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}.pizza-images .image-unavailable{width:100%;max-width:100%;min-height:0;aspect-ratio:1}.image-unavailable{display:grid;place-items:center;min-height:132px;width:132px;text-align:center;font-size:.875rem;color:var(--muted)}
.recipe-heading{grid-column:9 / 13;grid-row:1;align-self:start;min-width:0;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding:12px 2px 16px 8px;text-align:right}.eyebrow{color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.16em;margin-bottom:6px}.recipe-heading h1{width:100%;font-size:clamp(1.4rem,6.5vw,2.375rem);font-weight:300;line-height:1.08;letter-spacing:-.025em;text-transform:uppercase;overflow-wrap:normal;word-break:normal;hyphens:none}.title-word{display:inline-block;white-space:nowrap}.recipe-hero.title-wide .recipe-heading{grid-column:1 / 13}.recipe-hero.title-wide .pizza-images figure:first-child{grid-row:2}.current-size{flex:none;padding-bottom:3px;color:var(--accent);font-size:1rem;letter-spacing:.08em;font-weight:700}
#recipe-panel{flex:1;display:flex;flex-direction:column;outline-offset:-3px}.ingredients{display:flex;flex:1;flex-direction:column}.ingredient-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:28px;flex:1;border-top:1px solid var(--line);padding:3px 20px}.ingredient-row dt{font-size:.875rem;font-weight:500;line-height:1.25;letter-spacing:.015em;text-transform:uppercase;overflow-wrap:anywhere}.ingredient-row dd{display:flex;align-items:baseline;gap:5px;white-space:nowrap;animation:quantity-in .18s ease-out}.quantity{font-size:1.25rem;font-weight:300;font-variant-numeric:tabular-nums;line-height:1}.unit{color:var(--accent);font-size:.75rem;font-weight:500;min-width:16px}.missing-quantity{font-size:.875rem;color:var(--accent);white-space:normal;text-align:right;max-width:105px}.size-notice{color:var(--accent);margin:0 22px 14px;font-size:.875rem;line-height:1.5}
.voice-help{flex:none;margin:12px 22px 16px;padding:12px;background:var(--panel);border-radius:5px}.voice-help h2{color:var(--accent);font-size:.8125rem;letter-spacing:.09em;font-weight:700;margin-bottom:9px}.voice-help p{font-size:.875rem;line-height:1.45;text-wrap:pretty}.voice-help .voice-note{color:var(--muted);font-size:.875rem;margin-top:10px}
.size-tabs{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:10;width:100%;max-width:560px;display:grid;grid-template-columns:1fr 1fr;background:#000;border-top:1px solid #282828;padding-bottom:env(safe-area-inset-bottom,0px)}.size-tabs button{position:relative;min-height:44px;border:0;background:none;color:#999;letter-spacing:.07em;font-size:.875rem;font-weight:500;padding:10px 12px}.size-tabs button[aria-selected=true]{color:#e1d8b7}.size-tabs button[aria-selected=true]::before{content:'';position:absolute;top:-1px;height:2px;left:22%;right:22%;background:#CA0000}.size-tabs button[aria-disabled=true]{color:#656565}.size-tabs button:focus-visible{outline-offset:-6px}
dialog{position:fixed;inset:0 auto 0 0;margin:0;width:min(320px,86vw);height:100dvh;max-height:none;max-width:none;border:0;border-right:1px solid #292929;padding:0;color:#e1d8b7;background:#0a0a0a;overscroll-behavior:contain}dialog::backdrop{background:rgba(0,0,0,.67);backdrop-filter:blur(2px)}dialog[open]{display:flex;flex-direction:column;animation:drawer-in .2s ease-out}.drawer-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:calc(25px + env(safe-area-inset-top,0px)) 18px 12px 22px}.drawer-heading h2{font-size:1.5rem;font-weight:300}.close-button{background:none;border:0;font-size:2rem;font-weight:300;color:#999;width:44px;height:44px}.drawer-hint{padding:0 22px 24px;font-size:.875rem;color:var(--muted);line-height:1.4}#pizza-list{overflow:auto;flex:1;min-height:0}#pizza-list a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:53px;padding:15px 22px;border-top:1px solid var(--line);text-decoration:none;color:#e1d8b7;font-size:1rem}#pizza-list a:hover{background:#171717}#pizza-list a[aria-current=page]{color:var(--accent);background:#161616}#pizza-list a[aria-current=page]::after{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.menu-count{padding:18px 22px calc(18px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);color:#a0a0a0;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.feedback{position:fixed;z-index:30;bottom:calc(58px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%) translateY(10px);width:calc(100% - 44px);max-width:516px;padding:13px 16px;background:#CA0000;border:1px solid #CA0000;border-radius:5px;box-shadow:0 5px 24px #0008;font-size:.9375rem;line-height:1.45;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.feedback.visible{opacity:1;transform:translateX(-50%) translateY(0)}.load-state{padding:70px 26px;line-height:1.5}.load-state h1{font-size:2rem;font-weight:300;margin:8px 0 14px}.load-state p:not(.eyebrow){color:var(--muted)}.retry-button{margin-top:24px;background:#CA0000;border:1px solid #CA0000;border-radius:4px;min-height:48px;padding:10px 22px}.noscript{padding:24px;color:var(--accent)}
@media(min-width:600px){body{background:#111}.recipe-app{border-left:1px solid #242424;border-right:1px solid #242424}.recipe-hero{min-height:190px;padding-top:8px;padding-bottom:8px}.size-tabs{border-left:1px solid #242424;border-right:1px solid #242424}}
@media(max-height:720px){.toolbar{height:calc(52px + env(safe-area-inset-top,0px));padding:calc(4px + env(safe-area-inset-top,0px)) 16px 4px 12px}.recipe-hero{padding-top:0;padding-bottom:4px}.recipe-heading{gap:6px;padding-top:8px;padding-bottom:8px}.ingredient-row{min-height:26px;padding-top:2px;padding-bottom:2px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@keyframes mic-pulse{50%{box-shadow:0 0 0 4px #5dcc8a16}}@keyframes quantity-in{from{opacity:.25;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
