.fv{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:28px;display:grid}.fv-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);max-height:calc(100vh - 92px);padding:16px;position:sticky;top:76px;overflow:auto}.fv-toggle{display:none}.seg{background:var(--bg);border-radius:10px;margin-bottom:10px;padding:3px;display:flex}.seg button{color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;padding:8px 6px;font-size:14px;font-weight:700}.seg button.on{color:var(--ink);background:#fff;box-shadow:0 1px 3px #2b1d161f}.pantry{align-items:center;gap:6px;margin:6px 2px 12px;font-size:14px;display:flex}.pantry input{accent-color:var(--red);width:16px;height:16px}.picked{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;margin-bottom:10px;padding:10px 0;display:flex}.pick{background:var(--red);color:#fff;border:0;border-radius:999px;padding:4px 11px;font-size:13px;font-weight:700}.clear{color:var(--muted);background:0 0;border:0;font-size:13px;text-decoration:underline}.grp{margin-top:12px}.grp h3{color:var(--red);margin:0 0 6px;font-size:13px}.ings{flex-wrap:wrap;gap:6px;display:flex}.ing{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:13px}.ing small{color:var(--muted)}.ing.sub{color:#5c4a3f}.ing.on{background:var(--ink);border-color:var(--ink);color:#fff}.ing.on small{color:#d9ccc2}.fold{color:var(--muted);background:0 0;border:0;padding:4px 0;font-size:13px;font-weight:700}.fold.big{text-align:left;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;margin:28px 0 12px;padding:12px 14px;font-size:16px;display:block}.fv-results h2{margin:26px 0 12px;font-size:20px}.fv-results h2:first-child{margin-top:0}.fv-results .count{color:var(--red);margin-left:4px}.fv-results .hint{margin:-4px 0 14px}.empty.small{text-align:left;padding:8px 0 4px}@media (max-width:860px){.fv{grid-template-columns:1fr;gap:16px}.fv-panel{max-height:none;padding:0;position:static;overflow:visible}.fv-toggle{width:100%;color:var(--ink);background:0 0;border:0;justify-content:space-between;padding:14px 16px;font-size:16px;font-weight:800;display:flex}.fv-body{padding:0 16px 16px;display:none}.fv-panel.open .fv-body{display:block}}
.hero{text-align:center;padding:56px 0 24px}.hero h1{margin:0 0 10px;font-size:36px}.hero h1 em{color:var(--red);font-style:normal}.hero p{margin:0 0 22px}.hero .searchbox{max-width:620px;margin:0 auto}.page-head{padding:28px 0 18px}.page-head h1{margin:0 0 6px;font-size:28px}.page-head .chip{margin:0 4px}.rd{grid-template-columns:minmax(0,440px) minmax(0,1fr);align-items:start;gap:40px;padding-top:28px;display:grid}.rd-cards{position:sticky;top:76px}.rd-head .kicker{color:var(--red);background:#fdeeea;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-block}.rd-head h1{margin:10px 0 8px;font-size:30px}.rd-head .sub{color:#4a3a30;margin:0 0 12px;font-size:17px}.rd-head .meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:14px;display:flex}.rd-head .meta a{color:var(--ink);font-weight:700}.rd section{margin-top:32px}.rd h2{margin:0 0 12px;font-size:20px}.viewer{position:relative}.viewer .track{scroll-snap-type:x mandatory;background:var(--soft);scrollbar-width:none;border-radius:12px;display:flex;overflow-x:auto}.viewer .track::-webkit-scrollbar{display:none}.viewer .track img{aspect-ratio:4/5;scroll-snap-align:start;flex:0 0 100%;width:100%;height:auto}.viewer .nav{width:40px;height:40px;color:var(--ink);background:#ffffffeb;border:0;border-radius:50%;font-size:22px;line-height:1;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #00000026}.viewer .nav:disabled{opacity:0;pointer-events:none}.viewer .prev{left:10px}.viewer .next{right:10px}.viewer .pos{color:#fff;background:#2b1d16b8;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;position:absolute;bottom:12px;right:12px}.ing-role{margin-bottom:14px}.ing-role h3{color:var(--red);margin:0 0 4px;font-size:14px}.ing-list{grid-template-columns:1fr 1fr;column-gap:24px;margin:0;padding:0;list-style:none;display:grid}.ing-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.ing-list a{font-weight:700;text-decoration:none}.ing-list a:hover{color:var(--red)}.ing-list span{color:var(--muted);text-align:right}.ing-note{color:var(--muted);margin:10px 0 0;font-size:14px}.steps{margin:0;padding:0;list-style:none}.steps li{border-bottom:1px solid var(--line);grid-template-columns:180px minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.steps li.noimg{grid-template-columns:1fr}.steps img{aspect-ratio:4/3;object-fit:cover;background:var(--soft);border-radius:10px;width:100%}.steps h3{margin:0 0 4px;font-size:17px}.steps h3 .n{background:var(--red);color:#fff;vertical-align:2px;border-radius:50%;place-items:center;width:26px;height:26px;margin-right:8px;font-size:13px;display:inline-grid}.steps p{margin:0}.steps .uses{color:var(--muted);margin-top:6px;font-size:13px}.tips{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tip{border-top:4px solid var(--red);background:#fff;border-radius:12px;padding:14px 16px}.tip h3{margin:0 0 4px;font-size:15px}.tip p{color:#4a3a30;margin:0;font-size:14px}.video{aspect-ratio:16/9;background:#000;border-radius:12px;position:relative;overflow:hidden}.video iframe{border:0;width:100%;height:100%;display:block}.source{color:var(--muted);margin-top:8px;font-size:14px}.prose{max-width:720px;padding-top:28px}.prose h1{font-size:28px}.prose h2{margin-top:28px;font-size:19px}@media (max-width:860px){.rd{grid-template-columns:1fr;gap:20px;padding-top:16px}.rd-cards{max-width:480px;position:static}.hero{padding:32px 0 12px}.hero h1{font-size:27px}.steps li{grid-template-columns:110px minmax(0,1fr);gap:12px}.ing-list,.tips{grid-template-columns:1fr}}
