:root{--bg:#faf6f0;--surface:#fff;--surface-2:#f4ede3;--text:#2b2522;--muted:#7c726a;--border:#e7ddd0;--accent:#b4541f;--accent-ink:#fff;--danger:#b00020;--radius:14px;--radius-sm:9px;--shadow:0 1px 2px #2b25220f, 0 6px 18px #2b252212;--maxw:880px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#1c1916;--surface:#262120;--surface-2:#2f2926;--text:#f0e9e2;--muted:#a99e95;--border:#3a332f;--accent:#e2773f;--accent-ink:#1c1916;--shadow:0 1px 2px #0000004d, 0 6px 18px #00000059}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 .4em;line-height:1.2}img{max-width:100%;display:block}.app-header{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(8px);backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top);position:sticky;top:0}.app-header__inner{max-width:var(--maxw);align-items:center;gap:12px;margin:0 auto;padding:12px 16px;display:flex}.brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:8px;font-size:1.15rem;font-weight:800;display:flex}.brand:hover{text-decoration:none}.spacer{flex:1}main{max-width:var(--maxw);padding:20px 16px calc(40px + env(safe-area-inset-bottom));margin:0 auto}.btn{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:600;transition:transform 40ms,background .15s,opacity .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000;min-height:0;padding:8px 12px}.btn-ghost:hover{color:var(--text)}.btn-danger{border-color:color-mix(in srgb, var(--danger) 40%, var(--border));color:var(--danger);background:0 0}.btn-block{width:100%}label{margin-bottom:6px;font-size:.9rem;font-weight:600;display:block}input[type=text],input[type=url],input[type=password],input[type=number],textarea{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 12px}input:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 55%, transparent);outline-offset:1px;border-color:var(--accent)}textarea{resize:vertical;font-variant-numeric:tabular-nums;min-height:120px}.field{margin-bottom:16px}.field-row{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}.hint{color:var(--muted);margin-top:6px;font-size:.85rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.recipe-card{flex-direction:column;height:100%;display:flex}.recipe-card a{color:inherit}.recipe-card a:hover{text-decoration:none}.recipe-card__thumb{aspect-ratio:4/3;object-fit:cover;background:var(--surface-2);width:100%}.recipe-card__thumb--empty{justify-content:center;align-items:center;font-size:2rem;display:flex}.recipe-card__body{padding:12px 14px 14px}.recipe-card__title{margin:0 0 4px;font-weight:700}.meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:.85rem;display:flex}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--surface-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 11px;font-size:.82rem}.ingredients{margin:0;padding:0;list-style:none}.ingredients li{border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:9px 0;display:flex}.ingredients input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:none;margin-top:4px}.ingredients label{cursor:pointer;margin:0;font-weight:400}.ingredients input:checked+label{color:var(--muted);text-decoration:line-through}.steps{counter-reset:step;gap:14px;padding-left:0;list-style:none;display:grid}.steps li{counter-increment:step;grid-template-columns:32px 1fr;align-items:start;gap:12px;display:grid}.steps li:before{content:counter(step);background:var(--accent);width:32px;height:32px;color:var(--accent-ink);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.steps li.section{color:var(--accent);grid-template-columns:1fr;margin-top:6px;font-weight:700}.steps li.section:before{content:none}.page-head{align-items:center;gap:12px;margin-bottom:18px;display:flex}.page-head h1{margin:0;font-size:1.5rem}.stack{gap:16px;display:grid}.center-screen{justify-content:center;align-items:center;min-height:70vh;display:flex}.auth-card{text-align:center;width:100%;max-width:380px}.error{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--danger) 30%, var(--border));border-radius:var(--radius-sm);padding:10px 12px;font-size:.9rem}.empty{text-align:center;color:var(--muted);padding:48px 16px}.hero-img{object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);width:100%;max-height:360px}.muted{color:var(--muted)}@media (width<=540px){.field-row{grid-template-columns:1fr}}.app-nav.svelte-12qhfyh{gap:6px;margin-left:10px;display:flex}.app-nav.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--muted);border-radius:var(--radius-sm);padding:6px 8px;font-size:.92rem;font-weight:600}.app-nav.svelte-12qhfyh a:where(.svelte-12qhfyh):hover{color:var(--text);text-decoration:none}.list-link.svelte-12qhfyh{align-items:center;gap:6px;display:inline-flex}.badge.svelte-12qhfyh{background:var(--accent);color:var(--accent-ink);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.72rem;display:inline-flex}@media (width<=540px){.app-nav.svelte-12qhfyh{margin-left:2px}.app-nav.svelte-12qhfyh a:where(.svelte-12qhfyh){padding:6px 5px;font-size:.85rem}}
