:root{--bg:#fbfaf7;--card:#fff;--ink:#1d2420;--muted:#4a544f;--line:#e3e0d8;--line2:#d8d4ca;--soft:#efede7;--accent:#275344;--heart:#8e3533;--font:Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--head:"Space Grotesk", Inter, system-ui, sans-serif;--logo:Fraunces, Georgia, serif;--nav-h:72px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--head);margin:0;line-height:1.12}[hidden]{display:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wrap{max-width:760px;margin:0 auto;padding:0 20px}main{padding-bottom:calc(var(--nav-h) + 32px)}:focus-visible{outline-offset:2px;outline:3px solid #7fb3a0}.top{justify-content:space-between;align-items:center;gap:12px;max-width:760px;margin:0 auto;padding:18px 20px 8px;display:flex}.logo{flex-direction:column;gap:2px;display:flex}.logo b{font-family:var(--logo);font-size:28px;font-style:italic;font-weight:500;line-height:1}.logo span{font-family:var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.top-actions{align-items:center;gap:8px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--card);border-radius:22px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-btn[aria-pressed=true]{background:var(--heart);border-color:var(--heart);color:#fff}.lang-switch{border:1px solid var(--line);background:var(--card);border-radius:22px;display:flex;overflow:hidden}.lang-switch a{min-width:40px;height:40px;color:var(--muted);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.lang-switch a[aria-current=true]{background:var(--ink);color:#fff}.search{background:var(--card);border:1px solid var(--line);border-radius:24px;align-items:center;gap:10px;height:48px;padding:0 16px;display:flex}.search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:16px}.section-head{justify-content:space-between;align-items:baseline;margin:24px 0 10px;display:flex}.section-head h2{font-size:19px}.section-head a{color:var(--accent);font-size:14px;font-weight:600}.tabs{background:var(--soft);border-radius:14px;gap:4px;padding:4px;display:flex}.tabs button{height:40px;color:var(--muted);background:0 0;border:none;border-radius:10px;flex:1;font-size:14px;font-weight:600}.tabs button[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #00000014}.chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{background:var(--card);border:1px solid var(--line2);border-radius:20px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.chip .dot{border:1px solid;border-radius:6px;width:12px;height:12px}.count{color:var(--muted);margin:12px 0 8px;font-size:13px}.strip{scroll-snap-type:x mandatory;gap:10px;margin:0 -20px;padding-bottom:4px;padding-left:20px;padding-right:20px;display:flex;overflow-x:auto}.strip a{border:1px solid var(--line);background:var(--card);scroll-snap-align:start;border-radius:18px;flex-direction:column;flex:0 0 140px;height:156px;display:flex;overflow:hidden}.strip a>div:first-child{font-family:var(--head);flex:1;padding:12px;font-size:15px;font-weight:600;line-height:1.2}.strip a>div:last-child{letter-spacing:.08em;text-transform:uppercase;align-items:flex-end;height:56px;padding:10px 12px;font-size:11px;font-weight:700;display:flex}.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden}.card[hidden]{display:none}.card .media{justify-content:center;align-items:center;height:200px;display:flex;position:relative}.card .media img{object-fit:cover;width:100%;height:100%}.badge{color:var(--muted);background:#ffffffe0;border-radius:8px;padding:4px 8px;font-size:11px;font-weight:600;position:absolute;bottom:10px;right:10px}.card .body{flex-direction:column;gap:6px;padding:14px 16px 12px;display:flex}.card .row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.card h3{font-size:19px}.meta{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.card p{color:#39423d;margin:0;font-size:14px;line-height:1.45}.likes{align-items:center;gap:10px;margin-top:2px;display:flex}.likes .bar{background:var(--soft);border-radius:3px;flex:1;height:6px;overflow:hidden}.likes .bar span{background:#c98e8c;width:0;height:6px;display:block}.likes .n{color:var(--heart);text-align:right;min-width:24px;font-size:12px;font-weight:700}.band{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;height:42px;padding:0 16px;font-size:11px;font-weight:700;display:flex}.band span+span{letter-spacing:0;text-transform:none;font-size:12px;font-weight:600}.card.soon{opacity:.75}.card.soon .media{height:120px}.nav{height:var(--nav-h);background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:20;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.nav a{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:500;display:flex}.nav a[aria-current=page]{color:var(--ink);font-weight:700}.r-head{background:var(--card);padding:12px 0 22px}.r-bar{justify-content:space-between;align-items:center;display:flex}.r-kicker{font-family:var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:16px;font-size:12px;font-weight:600;display:block}.r-title{letter-spacing:-.01em;margin-top:8px;font-size:clamp(32px,8vw,44px)}.r-lead{color:#39423d;margin:10px 0 0;font-size:17px}.r-photo{aspect-ratio:4/3;object-fit:cover;width:100%;max-height:460px}.r-fallback{aspect-ratio:16/9;justify-content:center;align-items:center;display:flex;position:relative}.r-garum{padding:18px 0 20px}.r-garum .name{align-items:center;gap:10px;font-weight:700;display:flex}.r-garum .re{width:34px;height:34px;font-family:var(--logo);background:#fff;border-radius:17px;justify-content:center;align-items:center;font-style:italic;display:inline-flex}.facts{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.facts div{background:#fff;border-radius:14px;flex-direction:column;padding:10px 12px;display:flex}.facts small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.facts b{font-family:var(--head);font-size:17px}.tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.tags span{background:#ffffffb3;border-radius:12px;padding:6px 10px;font-size:12px;font-weight:600}.r-sec{padding-top:28px}.r-sec h2{font-size:23px}.r-sec-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.stepper{border:1px solid var(--line);background:#fff;border-radius:24px;align-items:center;gap:4px;padding:2px;display:flex}.stepper button{background:0 0;border:none;border-radius:22px;width:44px;height:44px;font-size:22px}.stepper output{text-align:center;min-width:96px;font-size:14px;font-weight:600}.ings{border:1px solid var(--line);background:#fff;border-radius:18px;margin:0;padding:0;list-style:none;overflow:hidden}.ings li+li{border-top:1px solid var(--soft)}.ings button{text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 16px;font-size:15px;display:flex}.ings .box{border:2px solid #b9b4a8;border-radius:7px;flex:0 0 22px;height:22px}.ings button[aria-pressed=true] .box{background:var(--accent);border-color:var(--accent)}.ings button[aria-pressed=true] .txt{color:#8a918d;text-decoration:line-through}.shop-tag{border-radius:8px;margin-left:auto;padding:4px 8px;font-size:11px;font-weight:700}.btn{border:1px solid var(--ink);background:#fff;border-radius:24px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.btn.dark{background:var(--ink);color:#fff}.btn.full{width:100%;margin-top:12px}.steps{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.steps li{gap:14px;display:flex}.steps .num{height:32px;font-family:var(--head);border-radius:16px;flex:0 0 32px;justify-content:center;align-items:center;font-weight:700;display:flex}.steps p{margin:4px 0 0;font-size:16px;line-height:1.55}.timer-tag{border-radius:10px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.tipbox{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden}.tipbox>div{padding:16px 18px}.tipbox h3{align-items:center;gap:8px;margin-bottom:6px;font-size:16px;display:flex}.tipbox p{color:#39423d;margin:0;font-size:15px}.tipbox .health{background:#deeae6}.tipbox .health small{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}details.chef{border:1px solid var(--line2);background:#fff;border-radius:20px;margin-top:14px}details.chef summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:56px;padding:0 18px;font-weight:700;list-style:none;display:flex}details.chef summary::-webkit-details-marker{display:none}details.chef summary:after{content:"+";font-size:22px}details.chef[open] summary:after{content:"−"}details.chef p{color:#39423d;margin:0;padding:0 18px 18px;font-size:15px}.buy{border-radius:20px;align-items:center;gap:14px;padding:16px 18px;display:flex}.buy .re{width:52px;height:52px;font-family:var(--logo);background:#fff;border-radius:14px;flex:0 0 52px;justify-content:center;align-items:center;font-size:20px;font-style:italic;display:flex}.buy .txt{flex-direction:column;flex:1;display:flex}.buy .cta{background:var(--ink);color:#fff;border-radius:20px;align-items:center;height:40px;padding:0 14px;font-size:13px;font-weight:700;display:flex}.dl{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dl a{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;justify-content:space-between;min-height:92px;padding:12px;font-size:13px;font-weight:700;display:flex}.dl a span{color:var(--muted);font-weight:500}.cook{background:var(--bg);z-index:50;flex-direction:column;display:flex;position:fixed;inset:0}.cook[hidden]{display:none}.cook-top{justify-content:space-between;align-items:center;gap:10px;padding:14px 20px 8px;display:flex}.cook-top b{font-family:var(--head);text-align:center;flex:1;font-size:15px}.progress{background:#e7e3da;border-radius:3px;height:6px;margin:0 20px;overflow:hidden}.progress span{background:var(--accent);width:0;height:6px;transition:width .25s;display:block}.cook-body{flex-direction:column;flex:1;gap:12px;width:100%;max-width:640px;margin:0 auto;padding:18px 20px 0;display:flex;overflow-y:auto}.ghost{text-align:left;opacity:.5;background:0 0;border:none;gap:12px;padding:10px 4px;font-size:14px;display:flex}.ghost b{font-family:var(--head);color:var(--muted)}.step-card{border:1px solid var(--line);background:#fff;border-radius:26px;flex-direction:column;gap:16px;padding:24px 22px;display:flex;box-shadow:0 8px 24px #1d24200f}.step-card .k{font-family:var(--head);letter-spacing:.1em;text-transform:uppercase;font-size:14px;font-weight:700}.step-card p{margin:0;font-size:23px;font-weight:500;line-height:1.38}.step-ings{flex-wrap:wrap;gap:6px;display:flex}.step-ings span{border-radius:12px;padding:8px 12px;font-size:14px;font-weight:600}.timer-btn{border:1.5px solid var(--ink);background:#fff;border-radius:24px;align-self:flex-start;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-size:16px;font-weight:700;display:flex}.timer-btn.run{background:var(--heart);color:#fff;border-color:var(--heart)}.cook-foot{padding:12px 20px calc(20px + env(safe-area-inset-bottom));gap:10px;width:100%;max-width:640px;margin:0 auto;display:flex}.cook-foot .prev{border:1px solid var(--line2);background:#fff;border-radius:30px;justify-content:center;align-items:center;width:64px;height:60px;display:flex}.cook-foot .next{background:var(--ink);color:#fff;border:none;border-radius:30px;flex:1;height:60px;font-size:17px;font-weight:700}.people{flex-direction:column;flex:1;justify-content:center;gap:26px;width:100%;max-width:560px;margin:0 auto;padding:0 28px;display:flex}.people h2{font-size:32px}.people .big{border:1px solid var(--line);background:#fff;border-radius:28px;justify-content:space-between;align-items:center;padding:8px;display:flex}.people .big button{background:var(--soft);border:none;border-radius:32px;width:64px;height:64px;font-size:30px}.people .big output{font-family:var(--head);font-size:56px;font-weight:700}.quick{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.quick button{border:1px solid var(--line2);background:#fff;border-radius:16px;height:48px;font-size:14px;font-weight:600}.quick button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.done{border-radius:26px;flex-direction:column;align-items:flex-start;gap:12px;padding:22px;display:flex}.done h3{font-size:24px}.story{flex-direction:column;min-height:100svh;display:flex}.story .bars{gap:4px;padding:16px 16px 0;display:flex}.story .bars span{background:#1d24202e;border-radius:2px;flex:1;height:4px}.story .bars span.on{background:var(--ink)}.story .content{flex-direction:column;flex:1;justify-content:center;gap:18px;width:100%;max-width:640px;margin:0 auto;padding:0 28px;display:flex}.story .bignum{font-family:var(--head);letter-spacing:-.02em;font-size:64px;font-weight:700;line-height:1}.story h1{font-size:32px}.story p{color:#2d3430;margin:0;font-size:18px}.story .foot{flex-direction:column;gap:12px;width:100%;max-width:640px;margin:0 auto;padding:0 20px 28px;display:flex}.panel{border:1px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;gap:14px;padding:18px;display:flex}.panel label{flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.panel input,.panel select{border:1px solid var(--line2);height:48px;color:var(--ink);background:#fff;border-radius:14px;padding:0 14px;font-size:16px}.result{border-radius:20px;padding:20px}.result b{font-family:var(--head);font-size:44px;display:block}.list{margin:0;padding:0;list-style:none}.sheet{z-index:60;padding:12px 22px calc(22px + env(safe-area-inset-bottom));background:#fff;border-radius:26px 26px 0 0;flex-direction:column;gap:14px;max-width:640px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #00000026}.sheet[hidden]{display:none}.sheet .grip{background:var(--line2);border-radius:3px;align-self:center;width:40px;height:5px}.sheet .appicon{border:1px solid var(--line);border-radius:16px;flex:0 0 64px;height:64px;overflow:hidden}.sheet ol{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sheet ol li{background:#f4f2ec;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;font-size:15px;display:flex}.sheet ol li b{background:var(--ink);color:#fff;border-radius:13px;flex:0 0 26px;justify-content:center;align-items:center;height:26px;font-size:13px;display:flex}.cookie{bottom:calc(var(--nav-h) + 8px);border-radius:20px;left:12px;right:12px}.toast{left:50%;bottom:calc(var(--nav-h) + 16px);background:var(--ink);color:#fff;z-index:70;border-radius:14px;padding:10px 16px;font-size:14px;position:fixed;transform:translate(-50%)}.toast[hidden]{display:none}.choose{flex-direction:column;justify-content:center;gap:28px;max-width:480px;min-height:100svh;margin:0 auto;padding:32px 28px;display:flex}.choose .logo b{font-size:44px}.choose ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.choose a{border:1px solid var(--line2);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;min-height:60px;padding:0 20px;font-size:18px;font-weight:600;display:flex}.choose a.pref{background:var(--ink);color:#fff;border-color:var(--ink)}.choose .halfband{background:linear-gradient(90deg,#e7cece,#fee2b3,#b6d2c9,#cceaf0,#c4d4e1,#eec9b6,#fffac1);border-radius:5px;height:10px}@media (width>=900px){.r-layout{grid-template-columns:1fr 1fr;align-items:start;gap:32px;display:grid}}
