:root{--bg: #f4ede1;--bg-2: #f9f6ef;--text: #1f1a12;--text-strong: #0f0c07;--muted: #6b5c49;--panel: rgba(255, 252, 246, .7);--border: #d8c5a7;--shadow: rgba(93, 67, 31, .18) 0 10px 30px;--sans: "Manrope", "Segoe UI", sans-serif;--mono: "JetBrains Mono", Consolas, monospace}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);color:var(--text);background:radial-gradient(circle at 20% 10%,rgba(255,233,182,.8),transparent 35%),radial-gradient(circle at 85% 80%,rgba(255,203,149,.8),transparent 40%),linear-gradient(140deg,var(--bg),var(--bg-2));min-height:100svh}h1,h2,h3,p{margin:0}h1{margin-bottom:.5rem;color:var(--text-strong);line-height:1.15}.shell{height:100svh;display:flex;overflow:hidden}.sidebar{width:220px;flex-shrink:0;height:100svh;display:flex;flex-direction:column;background:#fff9;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1.5rem 1rem;gap:1.5rem}.sidebarBrand{padding:0 .5rem}.sidebarNav{display:flex;flex-direction:column;gap:.25rem}.sidebarFooter{margin-top:auto;display:grid;gap:.55rem;padding:0 .5rem}.sidebarUser{margin:0;font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}.logoutButton{border:1px solid var(--border);border-radius:.6rem;background:#fff8ec;color:var(--text-strong);padding:.5rem .7rem;font:inherit;cursor:pointer}.logoutButton:hover{background:#f6ebd8}.navLink{display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;border-radius:.6rem;text-decoration:none;color:var(--text-strong);font-weight:500;transition:background .12s}.navLink:hover{background:#0000000d}.navLink--active{background:#f0be5c;color:#2f2518}.navLink--active:hover{background:#eab147}.navIcon{font-size:1rem;line-height:1}.navLabel{font-size:.92rem}.main{flex:1;overflow:hidden;display:flex;flex-direction:column}.page{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:2rem 2rem 0}.pageHeader{flex-shrink:0;margin-bottom:1.25rem}.pageHeader h1{margin:0 0 .25rem}.pageContent{flex:1;overflow-y:auto;padding-bottom:2rem}.pageContent--form{overflow-y:visible;flex:unset}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin:0;color:var(--muted)}.subtitle{margin-top:0;margin-bottom:0;color:var(--muted)}.formPanel{border:1px solid var(--border);border-radius:.85rem;background:var(--panel);padding:1rem;margin-bottom:1rem}.formPanel h2{margin-top:0;margin-bottom:.8rem}.recipeForm{display:grid;gap:.7rem}.recipeForm label{display:grid;gap:.35rem;color:var(--text-strong)}.recipeForm input,.recipeForm textarea,.recipeForm select{width:100%;border:1px solid var(--border);border-radius:.6rem;background:#fff;color:var(--text-strong);font:inherit;padding:.55rem .65rem}.recipeForm input:focus,.recipeForm textarea:focus,.recipeForm select:focus{outline:2px solid #f2c66d;outline-offset:1px}.recipeForm select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8a714e 50%),linear-gradient(135deg,#8a714e 50%,transparent 50%);background-position:calc(100% - 1rem) calc(50% + 1px),calc(100% - .7rem) calc(50% + 1px);background-size:.3rem .3rem,.3rem .3rem;background-repeat:no-repeat;padding-right:2rem}.formRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.recipeForm button{justify-self:start;border:1px solid var(--border);border-radius:.6rem;background:#f0be5c;color:#2f2518;padding:.55rem .8rem;font:inherit;font-weight:600;cursor:pointer}.recipeForm button:hover:not(:disabled){background:#eab147}.recipeForm button:disabled{opacity:.55;cursor:not-allowed}.listHeader{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.9rem}.listHeader h2{margin:0}.listHeader p{margin:0;color:var(--muted)}.recipeFiltersBar{position:sticky;top:0;z-index:3;margin:0 0 .8rem;padding:.75rem .8rem;border:1px solid var(--border);border-radius:.75rem;background:color-mix(in srgb,var(--bg-2) 88%,#fff 12%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.filterContainer{display:grid;gap:.35rem;width:min(360px,100%)}.filterLabel{font-size:.9rem;color:var(--text-strong)}.filterSelect{width:100%;border:1px solid var(--border);border-radius:.6rem;background-color:#fff;color:var(--text-strong);font:inherit;padding:.55rem 2rem .55rem .65rem;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8a714e 50%),linear-gradient(135deg,#8a714e 50%,transparent 50%);background-position:calc(100% - 1rem) calc(50% + 1px),calc(100% - .7rem) calc(50% + 1px);background-size:.3rem .3rem,.3rem .3rem;background-repeat:no-repeat}.filterSelect:focus{outline:2px solid #f2c66d;outline-offset:1px}.statusMessage{border:1px solid var(--border);border-radius:.75rem;background:var(--panel);padding:.95rem}.emptyState{border:1px dashed var(--border);border-radius:.9rem;background:var(--panel);padding:1.2rem}.emptyState h2{margin-bottom:.5rem}.recipeGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}.recipeCard{border:1px solid var(--border);border-radius:.85rem;background:var(--panel);padding:1rem}.recipeLabelBadge{display:inline-flex;align-items:center;margin-bottom:.45rem;border:1px solid #d8b579;border-radius:999px;padding:.2rem .55rem;background:#fff2d9;color:#6f4f1e;font-size:.75rem;font-weight:700;letter-spacing:.02em}.recipeCard h3{margin-bottom:.45rem}.recipeCard p{margin-bottom:.8rem;color:var(--muted)}.recipeLink{display:inline-block;margin-bottom:.8rem;color:var(--text-strong);text-decoration:none;border-bottom:1px solid currentColor;font-weight:600}.recipeLink:hover{opacity:.8}.recipeMeta{display:grid;gap:.45rem;margin:0}.recipeMeta div{display:flex;justify-content:space-between;gap:1rem}.recipeMeta dt{color:var(--muted)}.recipeMeta dd{margin:0;font-family:var(--mono);color:var(--text-strong)}.recipeActions{margin-top:.9rem;display:flex;gap:.65rem}.recipeActionLink,.recipeActionButton{border:1px solid var(--border);border-radius:.6rem;background:#fff8ec;color:var(--text-strong);padding:.45rem .75rem;font:inherit;text-decoration:none;cursor:pointer}.recipeActionLink:hover,.recipeActionButton:hover{background:#f6ebd8}.pagination{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.pagination button{border:1px solid var(--border);border-radius:.6rem;background:#fff8ec;color:var(--text-strong);padding:.5rem .8rem;font:inherit;cursor:pointer}.pagination button:hover:not(:disabled){background:#f6ebd8}.pagination button:disabled{opacity:.45;cursor:not-allowed}.error{color:#b42318}.authPage{min-height:100svh;display:grid;place-items:center;padding:1.5rem}.authCard{width:min(460px,100%);border:1px solid var(--border);border-radius:1rem;background:var(--panel);box-shadow:var(--shadow);padding:1.4rem;display:grid;gap:.9rem}.authButton{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;border:1px solid var(--border);border-radius:.7rem;background:#f0be5c;color:#2f2518;font-weight:700;padding:.7rem .9rem}.authButton:hover{background:#eab147}@media(max-width:640px){.shell{flex-direction:column;height:auto;min-height:100svh}.sidebar{width:100%;height:auto;border-right:0;border-bottom:1px solid var(--border)}.main{overflow:visible}.page{padding:1rem}.card{padding:1.1rem}.formRow{grid-template-columns:1fr}.listHeader{flex-direction:column;align-items:flex-start}.recipeFiltersBar{top:0;padding:.65rem}.filterContainer{width:100%}.recipeGrid{grid-template-columns:1fr}}
