:root{color-scheme:light;--bg: #f7f4ed;--paper: #fffdf8;--ink: #1d2522;--muted: #62706b;--line: #ddd5c5;--accent: #0f766e;--accent-dark: #0c5f58;--rose: #b54555;--gold: #bb7a1b;--green-soft: #dff1e8;--rose-soft: #f5dfe3;--shadow: 0 18px 40px rgba(39, 46, 43, .12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html{height:100%}body{margin:0;min-height:100vh;background:linear-gradient(120deg,rgba(15,118,110,.08),transparent 34%),radial-gradient(circle at top right,rgba(187,122,27,.13),transparent 30%),var(--bg);color:var(--ink)}button,input,select{font:inherit}textarea{width:100%;border:1px solid #cfc7b8;border-radius:8px;background:#fff;color:var(--ink);padding:10px 11px;font:inherit;outline-color:var(--accent)}.form-error{grid-column:1 / -1;padding:10px 12px;border:1px solid var(--rose);border-radius:8px;background:var(--rose-soft);color:#7b2634;font-weight:800}button{border:0;cursor:pointer}.app-shell{width:min(1440px,100%);margin:0 auto;padding:24px}.topbar{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.eyebrow{margin:0 0 5px;color:var(--accent-dark);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.9}h2{margin-bottom:6px;font-size:1.25rem}h3{margin-bottom:8px;font-size:1.05rem}.quick-stats{display:grid;grid-template-columns:repeat(3,minmax(78px,1fr));gap:8px}.quick-stats div{min-width:78px;padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:#fffdf8b8;text-align:right}.quick-stats span{display:block;font-size:1.35rem;font-weight:900}.quick-stats small{color:var(--muted);font-weight:700}.network-status{margin-bottom:18px;padding:11px 13px;border:1px solid rgba(187,122,27,.36);border-radius:8px;background:#fff4db;color:#79510d;font-size:.9rem;font-weight:800}.qa-panel{display:grid;grid-template-columns:minmax(130px,.22fr) 1fr;gap:12px;align-items:center;margin-bottom:18px;padding:12px;border:1px dashed rgba(181,69,85,.45);border-radius:8px;background:#fff9ec}.qa-panel h2{margin-bottom:0}.qa-actions{display:flex;flex-wrap:wrap;gap:8px}.qa-actions button{min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);padding:0 12px;font-weight:900}.qa-status{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.86rem;font-weight:800}.workspace{display:grid;grid-template-columns:minmax(320px,410px) 1fr;gap:18px;align-items:stretch}.inventory-panel,.main-panel{border:1px solid var(--line);border-radius:8px;background:#fffdf8db;box-shadow:var(--shadow)}.inventory-panel{position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);min-height:0;overflow:auto;overscroll-behavior:contain}.panel-heading{order:0;display:flex;align-items:start;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.panel-heading p{margin-bottom:0;color:var(--muted);line-height:1.35}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:1.25rem;font-weight:900}.item-form{order:4;flex:0 0 auto;display:grid;grid-template-columns:1fr .84fr;gap:11px;padding:18px;border-top:1px solid var(--line)}.item-form label:first-child{grid-column:1 / -1}.advanced-fields{grid-column:1 / -1;border:1px solid #eadfcd;border-radius:8px;background:#fff9ec;padding:9px 10px}.advanced-fields summary{cursor:pointer;color:var(--accent-dark);font-size:.82rem;font-weight:900}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:10px}.inline-check{display:flex;align-items:center;gap:8px}.inline-check input{width:18px;min-height:18px}.inline-check span{margin:0}label span{display:block;margin-bottom:6px;color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase}input,select{width:100%;min-height:42px;border:1px solid #cfc7b8;border-radius:8px;background:#fff;color:var(--ink);padding:0 11px;outline-color:var(--accent)}.item-form button,.suggestion-band button,.dialog-actions button{min-height:42px;border-radius:8px;background:var(--accent);color:#fff;font-weight:900}.item-form button{grid-column:1 / -1}.filters{order:2;flex:0 0 auto;display:flex;gap:7px;overflow-x:auto;padding:10px 18px 14px;border-bottom:1px solid var(--line)}.inventory-search{order:1;flex:0 0 auto;padding:14px 18px 0}.inventory-search input{min-height:38px}.filter{flex:0 0 auto;min-height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:0 13px;font-size:.86rem;font-weight:800}.filter.active{border-color:var(--accent);background:var(--green-soft);color:var(--accent-dark)}.inventory-list{order:3;flex:0 0 auto;min-height:140px;max-height:300px;overflow:auto;overscroll-behavior:contain;padding:9px}.inventory-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:11px 10px;border-radius:8px}.inventory-item+.inventory-item{border-top:1px solid #eee7dc}.inventory-item strong{display:block;margin-bottom:3px}.meta{color:var(--muted);font-size:.85rem}.inventory-actions{display:grid;grid-template-columns:auto 34px;gap:4px;align-items:center}.quantity-control{display:grid;grid-template-columns:32px 58px 32px;gap:4px;align-items:center}.quantity-control button{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--paper);font-weight:900}.quantity-control input{min-height:32px;padding:0 5px;text-align:center}.trash-button{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(181,69,85,.28);border-radius:8px;background:#fff;color:var(--rose)}.trash-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;pointer-events:none}.trash-button:hover{background:var(--rose-soft)}.main-panel{min-height:690px;padding:18px}.maker-strip{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:16px;align-items:end;margin-bottom:16px}.folder-strip{display:grid;grid-template-columns:minmax(180px,.35fr) 1fr;gap:12px;align-items:end;margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.folder-form{display:grid;grid-template-columns:1fr 118px;gap:8px;align-items:end}.folder-form button{min-height:42px;border-radius:8px;background:var(--ink);color:#fff;font-weight:900}.toggle{display:flex;gap:9px;align-items:center;min-height:42px;color:var(--muted);font-weight:800}.toggle input{width:18px;min-height:18px;accent-color:var(--accent)}.toggle span{margin:0;font-size:.92rem;text-transform:none}.suggestion-band{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:18px;border:1px solid rgba(15,118,110,.25);border-radius:8px;background:linear-gradient(135deg,#e7f4ed,#fff9ec)}.suggestion-band p:last-child{margin-bottom:0;color:var(--muted)}.suggestion-band button{min-width:132px;padding:0 18px}.suggestion-actions{display:grid;grid-template-columns:auto auto;gap:8px}.suggestion-actions button:first-child{background:var(--ink)}.near-panel{display:grid;grid-template-columns:minmax(150px,.34fr) 1fr;gap:12px;align-items:start;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.near-panel h2{margin-bottom:0}.near-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.near-card{min-height:86px;border:1px solid #eadfcd;border-radius:8px;background:#fff9ec;padding:10px}.near-card.priority{border-color:#0f766e59;background:var(--green-soft)}.near-card strong{display:block;margin-bottom:4px}.house-panel{margin-bottom:18px;border:1px solid rgba(15,118,110,.28);border-radius:8px;background:#f3fbf7;overflow:hidden}.house-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid rgba(15,118,110,.18)}.house-head h2{margin-bottom:0}.house-head-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.house-head button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 14px;font-weight:900}.house-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;padding:12px}.house-card{display:flex;flex-direction:column;min-height:250px;border:1px solid rgba(15,118,110,.22);border-radius:8px;background:var(--paper);padding:14px}.house-card h3,.recipe-card h3,.near-card strong{overflow-wrap:anywhere}.house-card .ingredients{margin-bottom:12px}.verify-badge{margin:9px 0 4px;border-radius:8px;padding:7px 9px;background:#f2efe7;color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.3}.role-badges{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 0}.role-badges span{border:1px solid #eadfcd;border-radius:999px;background:#fff9ec;color:var(--muted);padding:3px 7px;font-size:.68rem;font-weight:900}.verify-badge.verified{background:var(--green-soft);color:var(--accent-dark)}.verify-badge.unverified,.verify-badge.error{background:#fff9ec;color:#7a5a1d}.engine-readout{display:grid;gap:2px;margin:8px 0 2px;border-left:3px solid var(--accent);padding-left:9px}.why-line,.variant-note{overflow-wrap:anywhere}.engine-readout strong{color:var(--ink);font-size:.9rem}.engine-readout span,.why-line{color:var(--muted);font-size:.8rem;line-height:1.35}.why-line{margin:0 0 12px}.variant-note{margin:0 0 10px;border:1px solid #eadfcd;border-radius:8px;background:#fff9ec;color:#7a5a1d;padding:8px 10px;font-size:.82rem;font-weight:800;line-height:1.35}.house-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:auto}.house-actions button{min-height:36px;border-radius:8px;font-weight:900}.house-actions button:first-child{background:var(--accent);color:#fff}.house-actions button:last-child{border:1px solid var(--line);background:#fff;color:var(--ink)}.house-actions button:nth-child(2){border:1px solid rgba(181,69,85,.28);background:#fff;color:var(--rose)}.discover-panel{margin-bottom:18px;border:1px solid var(--line);border-radius:8px;background:#fffbf2;overflow:hidden}.discover-head{display:grid;grid-template-columns:minmax(170px,.58fr) minmax(240px,1fr);gap:16px;align-items:end;padding:16px;border-bottom:1px solid var(--line)}.discover-head h2{margin-bottom:0}.discover-search{display:grid;grid-template-columns:1fr 112px;gap:8px}.discover-search button{min-height:42px;border-radius:8px;background:var(--ink);color:#fff;font-weight:900}.discover-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;padding:12px}.discover-card{display:grid;grid-template-columns:78px 1fr;gap:12px;min-height:128px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.discover-thumb{width:78px;height:108px;border-radius:8px;background:linear-gradient(135deg,#e6c65a,#159a82);object-fit:cover}.discover-body{display:flex;flex-direction:column;min-width:0}.discover-body h3{margin-bottom:3px}.discover-body p{display:-webkit-box;overflow:hidden;margin-bottom:10px;color:var(--muted);font-size:.86rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.discover-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}.discover-actions button{min-height:34px;border-radius:8px;font-size:.84rem;font-weight:900}.discover-actions button:first-child{background:var(--accent);color:#fff}.discover-actions button:last-child{border:1px solid var(--line);background:#fff;color:var(--ink)}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.recipe-card{display:flex;flex-direction:column;min-height:252px;border:1px solid var(--line);border-radius:8px;background:var(--paper);overflow:hidden}.recipe-card.ready{border-color:#0f766e6b}.recipe-card.missing{border-color:#b5455540}.recipe-cover{height:74px;background:linear-gradient(90deg,#1d2522c2,#1d252238),var(--cover)}.recipe-body{display:flex;flex:1;flex-direction:column;padding:14px}.recipe-top{display:flex;justify-content:space-between;gap:12px}.badge{align-self:start;border-radius:999px;padding:5px 9px;background:var(--green-soft);color:var(--accent-dark);font-size:.72rem;font-weight:900;white-space:nowrap}.badge.warn{background:var(--rose-soft);color:var(--rose)}.ingredients{margin:8px 0 14px;padding:0;list-style:none;color:var(--muted);font-size:.9rem;line-height:1.55}.recipe-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:auto}.recipe-actions button{min-height:38px;border-radius:8px;font-weight:900}.recipe-actions button:first-child{background:var(--accent);color:#fff}.recipe-actions button:last-child{border:1px solid var(--line);background:#fff;color:var(--ink)}.recipe-rating-static,.rating-row{display:flex;gap:3px;margin:7px 0 2px;color:var(--gold);font-weight:900}.rating-row button{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--gold);font-size:1rem;font-weight:900}.secondary-button{width:max-content;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 12px;font-weight:900}.recipe-edit-form{display:grid;gap:12px}.recipe-edit-form textarea{width:100%;min-height:120px;border:1px solid #cfc7b8;border-radius:8px;background:#fff;color:var(--ink);padding:10px 11px;font:inherit;line-height:1.4;resize:vertical;outline-color:var(--accent)}.recipe-edit-form button{min-height:42px;border-radius:8px;background:var(--accent);color:#fff;font-weight:900}button:disabled{cursor:not-allowed;opacity:.48}dialog{width:min(560px,calc(100% - 28px));border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}dialog::backdrop{background:#1d25226b}.dialog-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:12px}.dialog-body-grid{display:grid;gap:14px}.prep-list,.method-list{margin:0;padding-left:20px;color:var(--muted);line-height:1.55}.dialog-actions{margin-top:18px}.dialog-actions button{width:100%}.dialog-actions.split{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dialog-actions.split button:last-child{border:1px solid var(--line);background:#fff;color:var(--ink)}.age-dialog p{color:var(--muted);line-height:1.5}.empty-state{padding:28px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);text-align:center}.empty-state.compact{grid-column:1 / -1;padding:18px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 4px 4px;color:var(--muted);font-size:.9rem;font-weight:700}.site-footer nav{display:flex;flex-wrap:wrap;gap:12px}.site-footer a,.legal-page a{color:var(--accent-dark);font-weight:900}.legal-page{width:min(880px,100%);margin:0 auto;padding:28px 22px 48px}.legal-page header{margin-bottom:26px}.legal-page h1{margin-bottom:12px}.legal-page section{padding:22px 0;border-top:1px solid var(--line)}.legal-page p,.legal-page li{color:var(--muted);line-height:1.62}.legal-page ul{padding-left:22px}@media(max-width:920px){html,body{height:auto}.app-shell{min-height:100vh;padding:16px}.topbar,.workspace,.qa-panel,.maker-strip,.folder-strip,.folder-form,.discover-head,.house-head,.near-panel,.suggestion-band{grid-template-columns:1fr}.topbar,.site-footer,.suggestion-band{align-items:stretch}.inventory-panel{position:static;max-height:none}.filters{order:2}.inventory-list{order:3}.item-form{order:4;border-top:1px solid var(--line);border-bottom:0}.inventory-search{order:1}.inventory-list{max-height:360px;min-height:220px}.main-panel{min-height:0}.suggestion-actions{grid-template-columns:1fr}.site-footer{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.quick-stats{grid-template-columns:repeat(3,1fr)}.quick-stats div{min-width:0;padding:9px 8px}.quick-stats span{font-size:1.1rem}.item-form{grid-template-columns:1fr 1fr;gap:8px;padding:12px 14px}.panel-heading{padding:14px}.panel-heading p{display:none}label span{margin-bottom:4px;font-size:.68rem}input,select{min-height:36px}.item-form button{min-height:38px}.filters{padding:8px 14px 10px}.inventory-search{padding:10px 14px 0}.filter{min-height:30px;padding:0 10px;font-size:.8rem}.quantity-control{grid-template-columns:30px 52px 30px}.inventory-item{grid-template-columns:1fr}.inventory-actions{grid-template-columns:auto 34px;justify-content:start}.recipe-actions,.house-actions,.dialog-actions.split{grid-template-columns:1fr}.qa-actions{display:grid;grid-template-columns:1fr}.discover-search,.discover-card,.discover-actions{grid-template-columns:1fr}.discover-thumb{width:100%;height:150px}}
