:root{--bg: #f8f7f2;--card: #ffffff;--line: #e7e5dd;--line-strong: #d9d6cb;--text: #1d2a22;--muted: #7b817a;--brand: #2d5f44;--brand-dark: #1e4430;--brand-soft: #edf4e8;--topbar: #183d2b;--lime: #d8f0a4;--lime-text: #cfe9a0;--up: #d0533f;--down: #3a7cb8;--lv0: #f0efe9;--lv1: #e1efd6;--lv2: #bcdcaa;--lv3: #6fa77f;--lv4: #2d5f44;--radius: 18px;--shadow: 0 1px 2px rgba(29, 42, 34, .04), 0 8px 24px rgba(29, 42, 34, .05);font-family:Pretendard,-apple-system,Malgun Gothic,sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.container{max-width:1200px;margin:0 auto;padding:0 24px}.app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;width:100%;padding-top:44px;padding-bottom:72px;display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-content:start}.muted{color:var(--muted);font-size:14px}.accent{color:var(--brand)}.topbar{background:var(--topbar);color:#e6efe8;font-size:12px;display:flex;align-items:center;height:34px;overflow:hidden;letter-spacing:.01em}.topbar-label{flex:none;display:flex;align-items:center;gap:8px;height:100%;padding:0 16px 0 24px;background:#12301f;position:relative;z-index:1;box-shadow:8px 0 12px -4px #12301f}.topbar-accent{color:var(--lime-text);font-weight:700;letter-spacing:.06em}.topbar-sub{color:#b9cbbf}.topbar-static{flex:1;text-align:center}.ticker{flex:1;min-width:0;overflow:hidden;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 48px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 48px),transparent 100%)}.ticker-track{display:flex;width:max-content;height:100%;animation:ticker var(--duration, 40s) linear infinite}.ticker:hover .ticker-track,.ticker:focus-within .ticker-track{animation-play-state:paused}.ticker-group{display:flex;list-style:none;margin:0;padding:0}.ticker-group li{display:flex;align-items:center}.ticker-group li:after{content:"·";color:#557a63;margin:0 4px}.ticker-group a{display:flex;align-items:center;gap:6px;padding:0 14px;white-space:nowrap;height:34px}.ticker-group a:hover .t-name{text-decoration:underline}.t-name{font-weight:700;color:#fff}.t-kind{color:#a9bdb0}.t-price{color:#e6efe8}.t-price small{color:#8fa898;font-size:11px;margin-left:1px}.t-change{font-weight:700;font-size:11px}.t-change.up{color:#ff9e8a}.t-change.down{color:#8fc6ff}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.ticker{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.ticker-track{animation:none}.ticker-group[aria-hidden]{display:none}}.site-header{background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;height:88px;gap:24px}.logo{display:flex;align-items:center;gap:12px}.logo-mark{width:40px;height:40px;border-radius:12px;background:var(--brand);color:var(--lime);display:grid;place-items:center;flex:none}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-text strong{font-size:19px;font-weight:800;letter-spacing:-.02em}.logo-text small{font-size:10px;letter-spacing:.28em;color:var(--muted);margin-top:3px}.main-nav{display:flex;gap:32px;align-self:stretch}.main-nav a{display:flex;align-items:center;font-weight:600;font-size:15px;color:#3b4740;border-bottom:3px solid transparent;padding-top:3px;white-space:nowrap}.main-nav a:hover{color:var(--brand)}.main-nav a.active{color:var(--brand);border-bottom-color:var(--brand)}.fav-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);border-radius:999px;padding:10px 16px;font-size:13px;background:#fff;white-space:nowrap}.fav-pill:hover{border-color:var(--brand);color:var(--brand)}.fav-count{min-width:20px;height:20px;border-radius:999px;background:var(--lime);color:var(--brand-dark);font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 6px}.site-footer{border-top:1px solid var(--line);background:#fff;padding:28px 0;font-size:13px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.footer-inner .logo-text strong{font-size:15px;color:var(--text)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.card-head h2{font-size:20px}.card-head h2 small{font-size:14px;font-weight:400;color:var(--muted)}.page-title{font-size:30px;font-weight:800;letter-spacing:-.03em}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.card{min-width:0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.section-head h2{font-size:26px;font-weight:800;letter-spacing:-.03em;margin-bottom:6px}.more-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#4b564f;white-space:nowrap}.more-link:hover{color:var(--brand)}.status{padding:36px 16px;text-align:center;color:var(--muted)}.status.error{color:var(--up);background:#fdf1ee;border-radius:12px;padding:12px 16px;text-align:left}.btn{display:inline-block;background:var(--brand);color:#fff;border:0;border-radius:10px;padding:11px 20px;font-weight:600;cursor:pointer}.btn:hover{background:var(--brand-dark)}.btn:disabled{opacity:.6;cursor:default}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--line-strong)}.link-btn{background:none;border:0;color:var(--brand);cursor:pointer;padding:8px 0;font-weight:600;font-size:14px}.link-btn:disabled{color:var(--muted);cursor:default}.up{color:var(--up)}.down{color:var(--down)}.chip{display:inline-block;border:1px solid var(--line-strong);border-radius:6px;font-size:11px;padding:2px 7px;color:#4b564f;font-weight:500}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs button{border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:7px 16px;cursor:pointer;color:#4b564f;font-size:14px}.tabs button:hover{border-color:var(--brand)}.tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.tabs.compact{margin:0}.heart{border:0;background:none;color:#b6bab3;cursor:pointer;padding:2px;display:grid;place-items:center}.heart:hover,.heart.on{color:var(--up)}.search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line-strong);border-radius:14px;padding:6px 6px 6px 16px;color:#4b564f}.search-box:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #2d5f4414}.search-box input{flex:1;width:0;min-width:0;border:0;outline:0;padding:8px 0;background:transparent;font-size:15px}.search-box button{flex:none;border:0;background:var(--brand);color:#fff;border-radius:10px;padding:10px 18px;font-weight:600;cursor:pointer}.search-box svg{flex:none}.search-box button:hover{background:var(--brand-dark)}.search-box.large{max-width:440px;padding:8px 8px 8px 18px}.search-box.large input{font-size:15px;padding:10px 0}.search-box.large button{padding:11px 20px}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}.eyebrow{font-size:13px;font-weight:600;color:var(--brand-dark);display:flex;align-items:center;gap:8px;margin-bottom:18px}.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand)}.hero h1{font-size:clamp(34px,4.4vw,50px);line-height:1.22;font-weight:800;letter-spacing:-.045em;margin-bottom:22px}.highlight{color:var(--brand);background:linear-gradient(transparent 72%,var(--lime) 72%,var(--lime) 92%,transparent 92%);padding:0 2px}.hero-desc{color:#5d665f;line-height:1.75;margin-bottom:28px;font-size:15px}.popular{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:14px;font-size:12px;color:var(--muted)}.popular button{border:0;background:none;padding:0;color:#5d665f;cursor:pointer;font-size:12px}.popular button:hover{color:var(--brand);text-decoration:underline}.hero-visual{position:relative;aspect-ratio:1.67 / 1;border-radius:24px;overflow:hidden;background:radial-gradient(120% 90% at 85% 30%,#f3ead9,#ece2cf 45%,#e3d6bf);box-shadow:var(--shadow)}.hero-visual img{width:100%;height:100%;object-fit:cover;display:block}.hero-scene{position:absolute;top:0;right:0;bottom:0;left:0}.hero-scene span{position:absolute;left:var(--x);top:var(--y);font-size:calc(var(--s) * 1rem);line-height:1;transform:translate(-50%);filter:drop-shadow(0 10px 14px rgba(70,50,20,.18))}.hero-visual-copy{position:absolute;left:26px;top:28px}.hero-visual-copy small{display:block;font-size:10px;letter-spacing:.26em;color:#6b6255;margin-bottom:14px}.hero-visual-copy p{font-size:19px;font-weight:700;line-height:1.55;color:#3b3a33;letter-spacing:-.02em}.hero-badge{position:absolute;right:18px;bottom:18px;display:flex;gap:12px;align-items:center;background:#fffffff0;border-radius:14px;padding:12px 16px;box-shadow:0 6px 20px #281e0a1f}.badge-icon{width:34px;height:34px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.hero-badge strong{display:block;font-size:13px}.hero-badge small{font-size:11px;color:var(--muted)}.date-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;flex-wrap:wrap;margin-bottom:-8px}.date-main{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600}.dot{width:6px;height:6px;border-radius:50%;background:var(--brand);display:inline-block}.date-strip .muted{font-size:12px}.highlight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.hl-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 20px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;transition:transform .15s,box-shadow .15s}.hl-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #1d2a220d,0 14px 32px #1d2a2214}.hl-top{display:flex;justify-content:space-between;align-items:center}.hl-tag{background:var(--brand-soft);color:var(--brand-dark);font-size:11px;font-weight:600;border-radius:6px;padding:4px 8px}.hl-body{display:flex;flex-direction:column;gap:14px}.hl-name{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;min-height:64px}.hl-name h3{font-size:18px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.hl-name p{font-size:11px;color:var(--muted)}.hl-emoji{font-size:42px;line-height:1;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.hl-price{display:flex;justify-content:space-between;align-items:baseline}.hl-price strong{font-size:26px;font-weight:800;letter-spacing:-.03em}.hl-price small{font-size:14px;font-weight:600;margin-left:3px}.hl-change{color:var(--down);font-size:12px;font-weight:700}.hl-foot{display:flex;justify-content:space-between;align-items:flex-end;font-size:10px;color:var(--muted)}.sparkline{color:#7fae8c}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.korea-map{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,auto);gap:8px}.tile{aspect-ratio:1 / .82;border:2px solid transparent;border-radius:12px;background:var(--lv0);cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;color:var(--text);transition:transform .1s}.tile:hover:not(:disabled){transform:translateY(-2px)}.tile:disabled{cursor:default;color:var(--muted)}.tile.selected{border-color:var(--text)}.tile.lv1{background:var(--lv1)}.tile.lv2{background:var(--lv2)}.tile.lv3{background:var(--lv3);color:#fff}.tile.lv4{background:var(--lv4);color:#fff}.tile-name{font-weight:800;font-size:15px}.tile-item{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-pct{font-size:13px;font-weight:700}.tile-empty{font-size:10px;text-align:center}.map-legend{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);flex-wrap:wrap;padding-left:8px}.map-legend i{display:inline-block;width:14px;height:14px;border-radius:4px;margin-left:6px}.map-legend i.lv1{background:var(--lv1)}.map-legend i.lv2{background:var(--lv2)}.map-legend i.lv3{background:var(--lv3)}.map-legend i.lv4{background:var(--lv4)}.panel-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;flex-wrap:wrap}.panel-head h3{font-size:22px;font-weight:800}.cheap-list{list-style:none;margin:0;padding:0}.cheap-list li{border-bottom:1px solid var(--line)}.cheap-list a{display:grid;grid-template-columns:36px 1fr auto auto;grid-template-areas:"emo name price pct" "emo meta avg pct";column-gap:12px;padding:12px 4px;align-items:center;border-radius:10px}.cheap-list a:hover{background:var(--bg)}.cheap-emoji{grid-area:emo;font-size:26px;text-align:center}.cheap-list .name{grid-area:name;font-weight:700}.cheap-list .name em{font-style:normal;font-weight:400;color:var(--muted);font-size:13px}.cheap-list .meta{grid-area:meta;font-size:12px;color:var(--muted)}.cheap-list .price{grid-area:price;font-weight:700;text-align:right}.cheap-list .avg{grid-area:avg;font-size:11px;color:var(--muted);text-align:right;text-decoration:line-through}.cheap-list .pct{grid-area:pct;background:var(--brand);color:#fff;border-radius:8px;padding:5px 9px;font-weight:700;font-size:13px}.table-wrap{overflow-x:auto}.price-table{width:100%;border-collapse:collapse;font-size:14px}.price-table th,.price-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.price-table th{background:var(--bg);font-weight:600;color:var(--muted);font-size:13px}.price-table tbody tr:hover{background:#fbfbf8}.price-table .num{text-align:right}.price-table .strong{font-weight:700}.price-table a{color:var(--brand);font-weight:600}.muted-cell{color:var(--muted)}.table-more{display:block;margin:12px auto 0}.today-body.fixed{min-height:668px}.chart-body{min-height:440px}.prices-main{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.nutrition-card .card-head h2 small{margin-left:6px}.nutri-main{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 18px}.nutri-main div{background:var(--bg);border-radius:12px;padding:12px 6px;text-align:center}.nutri-main dt{font-size:12px;color:var(--muted)}.nutri-main dd{margin:3px 0 0;font-size:18px;font-weight:800;letter-spacing:-.02em}.nutri-main small{font-size:11px;font-weight:500;color:var(--muted);margin-left:1px}.nutri-highlights{margin-bottom:8px}.nutri-highlights .muted{font-size:12px;margin-bottom:8px}.nutri-highlights ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.nutri-highlights li{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:14px}.nutri-highlights .bar{position:absolute;inset:0 auto 0 0;width:var(--pct);background:var(--brand-soft);z-index:0}.nutri-highlights li>*:not(.bar){position:relative;z-index:1}.nutri-highlights strong{flex:1}.nutri-highlights span:not(.bar){color:var(--muted);font-size:13px}.nutri-highlights em{font-style:normal;font-size:11px;font-weight:700;border-radius:6px;padding:2px 7px;background:#fff;color:var(--brand);border:1px solid var(--brand-soft)}.nutri-highlights li.rich em{background:var(--brand);color:#fff;border-color:var(--brand)}.nutri-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin-top:8px}.is-loading{opacity:.5;transition:opacity .15s;pointer-events:none}.change{font-size:11px;margin-left:4px;font-weight:600}.change.up{color:var(--up)}.change.down{color:var(--down)}.prices-page{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.prices-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.item-picker{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;position:sticky;top:108px}.item-picker .search-box{padding-left:12px}.item-picker .search-box button{padding:9px 14px}.item-results{list-style:none;margin:0;padding:0;max-height:540px;overflow-y:auto}.item-results button{width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:9px 12px;cursor:pointer;display:flex;flex-direction:column}.item-results button:hover{background:var(--bg)}.item-results button.active{background:var(--brand-soft);color:var(--brand-dark)}.item-results small{color:var(--muted);font-size:12px}.chart-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.chart-controls select{border:1px solid var(--line-strong);border-radius:10px;padding:8px 12px;background:#fff}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.stats div{background:var(--bg);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}.stats span{font-size:12px;color:var(--muted)}.stats strong{font-size:22px;font-weight:800;letter-spacing:-.02em}.stats small{font-size:11px;color:var(--muted)}.fav-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.fav-item{display:flex;align-items:center;gap:14px;padding:16px 18px}.fav-item a{flex:1;display:flex;flex-direction:column;gap:2px}.fav-item small{color:var(--muted);font-size:12px}.fav-emoji{font-size:32px}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.recipe-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.recipe-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}.recipe-card:hover{transform:translateY(-2px);box-shadow:0 2px 4px #1d2a220d,0 14px 32px #1d2a2214}.recipe-card a{display:flex;flex-direction:column;height:100%}.recipe-thumb{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:var(--lv0)}.recipe-thumb.empty,.recipe-hero-img.empty,.step-img.empty{display:grid;place-items:center;font-size:48px;background:linear-gradient(135deg,#f3ead9,#e7dcc6)}.recipe-card-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px}.recipe-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.user-tag{font-size:11px;color:#8a5a1f;background:#fbf0dd;border-radius:6px;padding:3px 7px;font-weight:600}.recipe-card h3{font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.35}.recipe-card p{color:var(--muted);font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cheap-ings{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.cheap-ings li{font-size:12px;background:var(--brand-soft);color:var(--brand-dark);border-radius:999px;padding:3px 9px}.cheap-ings span{color:var(--down);font-weight:700}.tabs button small{color:inherit;opacity:.6;margin-left:2px}.month-tabs{display:flex;gap:4px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px}.month-tabs button{flex:none;border:1px solid transparent;background:none;border-radius:999px;padding:6px 12px;font-size:13px;color:var(--muted);cursor:pointer}.month-tabs button:hover{color:var(--brand)}.month-tabs button.now{border-color:var(--line-strong);color:var(--text)}.month-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.seasonal-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.seasonal-card{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 10px 14px;text-align:center;box-shadow:var(--shadow);height:100%;transition:transform .15s,border-color .15s}.seasonal-card:hover{transform:translateY(-2px);border-color:var(--brand)}.seasonal-emoji{font-size:40px;line-height:1.2;margin-bottom:2px}.seasonal-img{width:64px;height:64px;object-fit:cover;border-radius:50%;margin-bottom:2px}.seasonal-card strong{font-size:15px}.seasonal-price{font-size:13px;font-weight:700}.seasonal-price small{font-weight:400;color:var(--muted);font-size:11px}.seasonal-price.none{font-weight:400;color:var(--muted);font-size:12px}.seasonal-recipes{font-size:12px;color:var(--brand);margin-top:2px}.seasonal-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.seasonal-chips .muted{font-size:12px;margin-right:4px}.seasonal-chips button{border:1px dashed var(--line-strong);background:#fff;border-radius:999px;padding:5px 12px;font-size:13px;cursor:pointer}.seasonal-chips button:hover{border-color:var(--brand);color:var(--brand)}.seasonal-chips button.active{border-style:solid;border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark);font-weight:600}.active-filter{display:flex;align-items:center;gap:10px;background:var(--brand-soft);border-radius:12px;padding:10px 14px;font-size:14px}.active-filter strong{color:var(--brand-dark)}.result-count{margin-bottom:12px}.source-note{font-size:12px;text-align:center}.pagination{display:flex;gap:6px;justify-content:center;align-items:center;margin-top:28px}.pagination button{border:1px solid var(--line-strong);background:#fff;border-radius:8px;min-width:36px;height:36px;cursor:pointer}.pagination button:disabled{opacity:.4;cursor:default}.pagination button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.pagination .ellipsis{color:var(--muted);padding:0 2px}.recipe-detail{display:grid;gap:22px}.recipe-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:center}.recipe-hero-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:24px;box-shadow:var(--shadow);background:var(--lv0)}.recipe-hero-body{display:flex;flex-direction:column;gap:12px}.recipe-hero h1{font-size:clamp(26px,3.4vw,36px);font-weight:800;letter-spacing:-.035em;line-height:1.25}.recipe-hero .summary{font-size:15px;color:#4b564f;line-height:1.7}.nutrition{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:6px 0 0}.nutrition div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 8px;text-align:center}.nutrition dt{font-size:11px;color:var(--muted)}.nutrition dd{margin:2px 0 0;font-weight:800;font-size:17px}.nutrition small{font-size:11px;font-weight:500;margin-left:1px;color:var(--muted)}.recipe-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:20px;align-items:start}.recipe-columns h2{font-size:20px;font-weight:800;margin-bottom:8px}.ingredient-list{list-style:none;margin:10px 0 0;padding:0}.ingredient-list li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line)}.ing-name{display:flex;flex-direction:column;gap:2px;font-weight:600}.ing-name small{font-weight:400;color:var(--muted);font-size:12px}.linked-ing{color:var(--brand)}.linked-ing:hover{text-decoration:underline}.ing-price{font-weight:700;font-size:14px;white-space:nowrap}.ing-price small{font-weight:400;color:var(--muted);font-size:11px}.price-note{font-size:11px;margin-top:10px}.step-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:18px}.step-list li{display:grid;grid-template-columns:32px minmax(0,1fr) 180px;gap:14px;align-items:start}.step-no{width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;font-weight:700;font-size:13px;display:grid;place-items:center}.step-list p{line-height:1.75;padding-top:2px}.step-img{width:180px;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px;background:var(--lv0)}.step-img.empty{font-size:28px}.recipe-tip{margin-top:22px;background:var(--brand-soft);border-radius:14px;padding:14px 16px}.recipe-tip strong{font-size:13px;color:var(--brand-dark)}.recipe-tip p{font-size:14px;line-height:1.7;margin-top:4px}.recipe-foot{display:flex;justify-content:flex-end;font-size:12px}.steps{white-space:pre-wrap;line-height:1.8}.actions{display:flex;justify-content:flex-end;gap:8px}.recipe-form{display:grid;gap:18px;max-width:840px}.recipe-form label{display:grid;gap:6px;font-weight:600;font-size:14px}.recipe-form input,.recipe-form textarea,.recipe-form select{border:1px solid var(--line-strong);border-radius:10px;padding:10px 12px;font-weight:400;background:#fff;min-width:0}.recipe-form input:focus,.recipe-form textarea:focus{outline:0;border-color:var(--brand)}.recipe-form fieldset{border:1px solid var(--line);border-radius:14px;padding:14px 18px;display:grid;gap:10px}.recipe-form legend{font-weight:600;padding:0 6px}.ingredient-row{display:grid;grid-template-columns:1.2fr 1fr 1.2fr auto;gap:8px;align-items:center}.linked{font-size:14px;color:var(--brand-dark);display:flex;gap:8px;align-items:center}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:1080px){.main-nav{gap:20px}.highlight-grid,.recipe-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.header-inner{height:auto;flex-wrap:wrap;padding-top:14px;padding-bottom:0;gap:10px 16px}.main-nav{order:3;width:100%;overflow-x:auto;gap:22px;height:46px}.hero{grid-template-columns:minmax(0,1fr);gap:32px}.search-box.large{max-width:none}.map-layout,.prices-layout,.recipe-hero,.recipe-columns{grid-template-columns:minmax(0,1fr)}.step-list li{grid-template-columns:32px minmax(0,1fr)}.step-img{grid-column:2;width:100%;max-width:320px}.item-results{max-height:260px}.item-picker{position:static}.nutri-main{grid-template-columns:repeat(4,minmax(0,1fr))}.nutri-details{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.container{padding:0 16px}.main{padding-top:28px;gap:32px}.topbar-label{padding:0 10px 0 16px}.topbar-sub{display:none}.logo-text strong{font-size:16px}.logo-text small{display:none}.fav-pill{padding:8px 12px}.highlight-grid{grid-template-columns:1fr}.recipe-grid,.recipe-grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recipe-card-body{padding:10px 12px 14px}.recipe-card h3{font-size:15px}.nutrition{grid-template-columns:repeat(3,minmax(0,1fr))}.section-head{flex-direction:column;align-items:flex-start}.tile-item{display:none}.stats,.ingredient-row,.form-row{grid-template-columns:1fr}.card{padding:18px}.hero-visual-copy p{font-size:16px}.hero-badge{left:14px;right:14px;bottom:14px}}
