html:root{color-scheme:dark;--ink:#f7efe7;--muted:#b9aaa0;--paper:#15110f;--surface:#211a17;--line:#4b3c34;--accent:#ee7859;--accent-dark:#cb583c;--gold:#e6ae50;--shadow:0 18px 50px rgba(0,0,0,.28)}
html[data-theme="light"]{color-scheme:light;--ink:#241b18;--muted:#6d625d;--paper:#fffdf9;--surface:#f6f1ea;--line:#ded5ca;--accent:#b64128;--accent-dark:#84301f;--gold:#d69c3d;--shadow:0 18px 50px rgba(55,35,24,.09)}
html:root body{background:radial-gradient(circle at 100% 0,rgba(214,156,61,.09),transparent 26rem),var(--paper)}html:root .site-header{background:rgba(21,17,15,.94)}html:root .panel,html:root .recipe-card,html:root .ingredients,html:root .directions,html:root .notes,html:root input,html:root textarea,html:root select,html:root .button,html:root .scale{background-color:#1d1714;color:var(--ink)}html:root .card-placeholder{background:linear-gradient(145deg,#a66e2f,#8f3825)}html:root .notice{background:#182b1a;border-color:#335d37;color:#bde0bc}html:root .error{background:#351a17;border-color:#713a31;color:#ffc2b5}html:root .empty,html:root .stats div{background:var(--surface)}html:root .button.primary{background:var(--accent);border-color:var(--accent);color:#15110f}html:root .scale button.active{background:#f7efe7;color:#241b18}
html[data-theme="light"] body{background:radial-gradient(circle at 100% 0,rgba(214,156,61,.11),transparent 26rem),var(--paper)}html[data-theme="light"] .site-header{background:rgba(255,253,249,.94)}html[data-theme="light"] .panel,html[data-theme="light"] .recipe-card,html[data-theme="light"] .ingredients,html[data-theme="light"] .directions,html[data-theme="light"] .notes,html[data-theme="light"] input,html[data-theme="light"] textarea,html[data-theme="light"] select,html[data-theme="light"] .button,html[data-theme="light"] .scale{background-color:#fff;color:var(--ink)}html[data-theme="light"] .button.primary{background:var(--accent);color:#fff}
.nav-link{position:relative;padding:10px 2px}.nav-link.is-active{color:var(--accent)}.nav-link.is-active::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:3px;border-radius:999px;background:var(--accent)}.nav-icon{display:none;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-favorites{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%}.nav-favorites .nav-icon{display:block}.nav-favorites .nav-label{display:none}.nav-favorites.is-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent)}.nav-favorites.is-active .nav-icon{fill:currentColor}.nav-favorites.is-active::after{display:none}.theme-toggle{width:44px;height:44px;padding:0;border-radius:50%;font-size:1.1rem}.danger{border-color:#a74436!important;color:#ffb5a8!important}.danger:hover{background:#431d18!important}dialog.delete-dialog{width:min(520px,calc(100% - 28px));padding:0;border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.45)}dialog.delete-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}.delete-dialog form{padding:28px;display:grid;gap:18px}.delete-dialog h2{margin-bottom:0}.delete-actions{display:flex;justify-content:flex-end;gap:10px}.form-grid label:has(select[name="visibility"]){display:none}
.owner-actions{display:flex;justify-content:flex-end;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.owner-tools{display:flex;justify-content:flex-end;margin:-20px 0 28px}
.form-grid label:has(select[name="visibility"]){display:grid}
@media(max-width:880px){html:root .site-header nav>a.nav-link{display:block}.site-header nav{gap:10px}}
html:root .cook-controls{position:fixed;right:clamp(20px,5vw,72px);bottom:clamp(20px,5vw,56px);z-index:110;margin:0;justify-content:flex-end}.cook-controls .button{min-width:138px}.cook-step{padding-bottom:130px}
@media(max-width:580px){html:root .cook-controls{left:20px;right:20px;bottom:18px}.cook-controls .button{min-width:0}.cook-step{padding-bottom:120px}}
.scale-wrap{display:grid;justify-items:end;gap:7px}.scale-help{max-width:220px;text-align:right;color:var(--muted);font-size:.78rem;line-height:1.25}.mobile-ingredients-button{display:none}
.ingredients .section-heading{display:block}.ingredients .scale-wrap{justify-items:start;margin-top:12px}.ingredients .scale-help{text-align:left;max-width:none}
@media(max-width:880px){html:root .cook-layout aside{display:block;position:fixed;inset:72px 0 0;z-index:106;overflow:auto;transform:translateX(-102%);transition:transform .22s ease;box-shadow:18px 0 50px rgba(0,0,0,.34)}html:root .cooking-mode.ingredients-open aside{transform:translateX(0)}.mobile-ingredients-button{display:inline-flex}.cooking-mode.ingredients-open .cook-controls{display:none}}
@media(max-width:580px){.scale-wrap{justify-items:start}.scale-help{text-align:left;max-width:280px}.cook-bar{padding-left:14px;padding-right:14px}.cook-bar strong{font-size:1rem}.mobile-ingredients-button{margin-left:auto}.cook-bar [data-cooking-exit]{margin-left:0}}
.search{grid-template-columns:minmax(0,1fr) auto auto}.search select{width:auto;min-width:145px;border-radius:999px;padding-left:16px;padding-right:34px}
@media(max-width:580px){.search{grid-template-columns:1fr 1fr}.search input{grid-column:1/-1}.search select{width:100%;min-width:0}}
.cook-controls .button.done-state,.cook-controls .button.done-state:hover{cursor:default;transform:none;box-shadow:none;background:#28221e;color:#bfb4ad;border-color:#514740;opacity:1}
.personal-filter{display:flex;justify-content:flex-end;margin:-18px 0 26px}.personal-filter label{display:flex;align-items:center;gap:14px;max-width:520px;padding:12px 15px;border:1px solid var(--line);border-radius:16px;background:var(--surface);cursor:pointer}.personal-filter label>span{display:grid}.personal-filter strong{font-size:.94rem}.personal-filter small{color:var(--muted);line-height:1.3}.personal-filter input[type="checkbox"]{position:absolute;opacity:0;pointer-events:none}.personal-filter i{position:relative;flex:0 0 50px;width:50px;height:28px;border-radius:999px;background:#5c5049;transition:.18s ease}.personal-filter i::after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.18s ease}.personal-filter input:checked+i{background:var(--accent)}.personal-filter input:checked+i::after{transform:translateX(22px)}.personal-filter input:focus-visible+i{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}
@media(max-width:580px){.personal-filter{justify-content:stretch;margin-top:-10px}.personal-filter label{max-width:none;width:100%}}
.site-header{display:grid;grid-template-columns:auto minmax(300px,620px) auto;align-items:center}.site-header>nav{justify-self:end}.header-search{width:100%;margin:0;grid-template-columns:minmax(150px,1fr) auto auto}.header-search input{min-width:0}.header-search select{min-width:130px}.browse-head{grid-template-columns:1fr;margin-bottom:28px}
.personal-filter{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 28px;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--surface) 78%,var(--accent) 22%))}.personal-copy{display:grid;gap:2px}.personal-copy .eyebrow{margin:0}.personal-copy strong{font-family:Georgia,serif;font-size:1.18rem}.personal-copy small{color:var(--muted)}.personal-options{display:flex;flex:0 0 auto;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}.personal-options button{border:0;border-radius:999px;padding:9px 14px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.personal-options button.active{background:var(--accent);color:#15110f;box-shadow:0 3px 10px rgba(0,0,0,.18)}
@media(max-width:1050px){.site-header{grid-template-columns:auto 1fr}.site-header>nav{grid-column:2;grid-row:1}.header-search{grid-column:1/-1;grid-row:2;max-width:none}.personal-filter{align-items:flex-start;flex-direction:column}.personal-options{width:100%}.personal-options button{flex:1}}
@media(max-width:580px){.header-search{grid-template-columns:1fr 1fr}.header-search input{grid-column:1/-1}.header-search select{width:100%;min-width:0}.personal-filter{padding:15px;margin-top:0}.personal-options button{padding:9px 8px;font-size:.86rem}}
.personal-copy{gap:5px}.personal-copy .eyebrow,.personal-copy strong,.personal-copy small{display:block}.personal-options button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent}.personal-options button.active{border-color:color-mix(in srgb,var(--accent) 70%,white 30%);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 24%,transparent),0 3px 10px rgba(0,0,0,.2)}.personal-options button.active::before{content:"✓";font-size:1rem;font-weight:900}
.header-toggle{width:44px;height:44px;padding:0;border-radius:50%;font-size:1.2rem}.site-header,.site-header .brand-mark,.header-search{transition:min-height .2s ease,padding .2s ease,width .2s ease,height .2s ease,opacity .15s ease}html[data-header="collapsed"] .site-header{grid-template-columns:auto 1fr;min-height:54px;padding-top:6px;padding-bottom:6px}html[data-header="collapsed"] .header-search{display:none}html[data-header="collapsed"] .site-header>nav{grid-column:2;grid-row:1;justify-self:end}html[data-header="collapsed"] .brand-mark{width:34px;height:34px;font-size:1.08rem}html[data-header="collapsed"] .theme-toggle,html[data-header="collapsed"] .header-toggle{width:38px;height:38px;min-height:38px}html[data-header="collapsed"] .site-main{padding-top:34px}
.favorite-form{display:inline-flex}.favorite-button{width:46px;height:46px;min-height:46px;padding:0;border-radius:50%}.favorite-button svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease,fill .15s ease}.favorite-button.is-favorite{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.favorite-button.is-favorite svg{fill:currentColor}.favorite-button:active svg{transform:scale(.86)}.favorite-button:disabled{cursor:wait;opacity:.6}
.new-recipe-short{display:none}@media(max-width:580px){html[data-header="collapsed"] .site-header{padding-left:12px;padding-right:12px}html[data-header="collapsed"] .site-header nav{gap:5px}.header-toggle{flex:0 0 auto}.site-header nav{gap:5px}.nav-library{display:inline-flex!important;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%}.nav-library .nav-icon{display:block;width:20px;height:20px}.nav-library .nav-label,.new-recipe-full{display:none}.new-recipe-short{display:inline}.new-recipe-link{min-height:36px;padding:6px 11px}.theme-toggle,.header-toggle{width:38px;height:38px;min-height:38px}.nav-library.is-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent)}.nav-library.is-active::after{display:none}.recipe-actions .favorite-form{width:auto;justify-self:start}.recipe-actions .favorite-button{width:46px}}@media(max-width:380px){.site-header{grid-template-columns:1fr}.site-header>.brand{display:none}.site-header>nav,html[data-header="collapsed"] .site-header>nav{grid-column:1;justify-self:center}}
