:root{--c-bg:#f6f1e7;--c-surface:#fff;--c-surface-2:#efe9dc;--c-ink:#1f2420;--c-ink-2:#4c544e;--c-ink-3:#7a817c;--c-border:#ddd5c4;--c-brand:#2f6b3c;--c-brand-ink:#fff;--c-brand-soft:#dcebdc;--c-accent:#e0672f;--c-warn-bg:#fff3d6;--c-warn-ink:#7a5300;--c-danger:#b3261e;--c-danger-bg:#fbe3e1;--c-ok:#2f6b3c;--ring:0 0 0 3px #2f6b3c59;--radius:12px;--radius-sm:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--touch:44px;--shadow:0 1px 2px #0000000f, 0 4px 12px #0000000f;--font:system-ui, "Segoe UI", Roboto, sans-serif;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.6rem;--text-cook:1.6rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font:16px/1.5 var(--font);color:var(--c-ink);background:var(--c-bg);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--c-bg:#141714;--c-surface:#1d211e;--c-surface-2:#262b27;--c-ink:#ecefe9;--c-ink-2:#b9c0ba;--c-ink-3:#8a928c;--c-border:#343a35;--c-brand:#5fae6f;--c-brand-ink:#0d1a10;--c-brand-soft:#23382a;--c-warn-bg:#3a3017;--c-warn-ink:#f2d27a;--c-danger:#ff8a80;--c-danger-bg:#3d1d1b;--shadow:0 1px 2px #0006}}*,:before,:after{box-sizing:border-box}body{background:var(--c-bg);min-height:100dvh;margin:0}h1,h2,h3{margin:0 0 var(--space-3);line-height:1.2}h1{font-size:var(--text-xl)}h2{font-size:var(--text-lg)}a{color:var(--c-brand)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{box-shadow:var(--ring);outline:none}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch);padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-ink);cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--c-brand);border-color:var(--c-brand);color:var(--c-brand-ink)}.btn-danger{color:var(--c-danger)}.btn-ghost{background:0 0;border-color:#0000}.btn-sm{min-height:36px;padding:0 var(--space-3);font-size:var(--text-sm)}@media (pointer:coarse){.btn-sm{min-height:var(--touch)}}.input,.select,.textarea{width:100%;min-height:var(--touch);padding:var(--space-2) var(--space-3);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-surface)}.textarea{min-height:96px}.label{font-size:var(--text-sm);color:var(--c-ink-2);margin-bottom:var(--space-1);display:block}.field{margin-bottom:var(--space-4)}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow)}.stack>*+*{margin-top:var(--space-3)}.row{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.spread{gap:var(--space-2);justify-content:space-between;align-items:center;display:flex}.muted{color:var(--c-ink-3);font-size:var(--text-sm)}.chip{min-height:28px;padding:0 var(--space-3);background:var(--c-surface-2);font-size:var(--text-sm);border:1px solid #0000;border-radius:999px;align-items:center;display:inline-flex}button.chip{cursor:pointer}.chip[aria-pressed=true]{background:var(--c-brand-soft);border-color:var(--c-brand)}.badge-warn{background:var(--c-warn-bg);color:var(--c-warn-ink)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--c-warn-bg);color:var(--c-warn-ink)}.alert-error{background:var(--c-danger-bg);color:var(--c-danger)}.spinner{border:3px solid var(--c-border);border-top-color:var(--c-brand);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.low-confidence{outline:2px solid var(--c-accent);outline-offset:1px}.app{max-width:960px;padding:var(--space-4) var(--space-4) calc(72px + env(safe-area-inset-bottom));margin:0 auto}.topbar{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.nav{background:var(--c-surface);border-top:1px solid var(--c-border);padding-bottom:env(safe-area-inset-bottom);z-index:10;justify-content:space-around;display:flex;position:fixed;inset:auto 0 0}.nav a{min-height:56px;font-size:var(--text-sm);color:var(--c-ink-2);flex-direction:column;flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.nav a.active{color:var(--c-brand);font-weight:700}.grid-2{gap:var(--space-4);display:grid}@media (width>=800px){.grid-2{grid-template-columns:1fr 1fr}}.list{margin:0;padding:0;list-style:none}.list>li{padding:var(--space-3) 0;border-bottom:1px solid var(--c-border)}.center{text-align:center;place-items:center;min-height:50dvh;display:grid}img.card-image{border-radius:var(--radius-sm);border:1px solid var(--c-border);width:100%}.cook{font-size:1.1rem}.cook-title{font-size:var(--text-xl)}.cook-step{font-size:var(--text-cook);min-height:35dvh;margin:0;line-height:1.45}.cook-list li{font-size:1.15rem}.cook-make{font-size:var(--text-sm);margin-top:var(--space-1);display:block}.cook-timer{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.cook-nav{gap:var(--space-3);grid-template-columns:1fr 2fr;display:grid}.cook-nav .btn{min-height:56px;font-size:1.1rem}.cook-progress{gap:4px;display:flex}.cook-progress span{background:var(--c-border);border-radius:3px;flex:1;height:6px}.cook-progress span.on{background:var(--c-brand)}.cook-thumb{min-height:var(--touch);justify-content:center;min-width:64px;font-size:1.6rem}
