:root{--bg: #FBF6EF;--surface: #FFFFFF;--surface-2: #F5EDE3;--ink: #2A1B12;--ink-2: #5E4A3C;--muted: #9A8574;--line: #EDE2D6;--primary: #FFC727;--primary-ink: #2A1B12;--primary-soft: #FFF1C2;--primary-deep: #8A5A00;--yolk: #FFB21A;--glow: 0 6px 18px rgba(214, 150, 0, .35);--green: #2F7D43;--green-soft: #E3F1E4;--danger: #C2412D;--radius: 20px;--radius-sm: 14px;--shadow: 0 1px 2px rgba(60, 35, 15, .05), 0 6px 20px rgba(60, 35, 15, .07);--shadow-lg: 0 10px 40px rgba(60, 35, 15, .16);--font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display: "Fraunces", Georgia, serif;--tabbar-h: 66px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--maxw: 560px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}body.noscroll{overflow:hidden}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}input{font:inherit;color:inherit}h1,h2,h3,h4,p{margin:0}img{display:block;max-width:100%}.muted{color:var(--muted)}.grow{flex:1;min-width:0}.row{display:flex;align-items:center}.row.gap{gap:10px}.row.wrap{flex-wrap:wrap}.ico{flex-shrink:0}.app{max-width:var(--maxw);margin:0 auto;min-height:100vh;position:relative;background:var(--bg)}@media (min-width: 600px){body{background:#efe5d9}.app{box-shadow:0 0 0 1px var(--line),var(--shadow-lg)}}.view{padding-bottom:calc(var(--tabbar-h) + var(--safe-b) + 24px);animation:fade .25s ease}.app--bare .view{padding-bottom:0}@keyframes viewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.screen{padding:calc(var(--safe-t) + 8px) 16px 8px}.screen--recipe,.screen--module{padding-top:0;padding-left:0;padding-right:0}.screen--recipe>.section,.screen--module .module-body{padding-left:16px;padding-right:16px}.tabbar{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:var(--maxw);z-index:40;display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);background:#fffcf8eb;backdrop-filter:saturate(1.6) blur(18px);-webkit-backdrop-filter:saturate(1.6) blur(18px);border-top:1px solid var(--line)}.tabbar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:600;color:var(--muted);transition:color .2s}.tabbar__item.on{color:var(--ink);font-weight:800}.tabbar__icon{position:relative;display:grid;place-items:center;width:52px;height:30px;border-radius:16px;transition:background .2s}.tabbar__item.on .tabbar__icon{background:var(--primary)}.tabbar__badge{position:absolute;top:-3px;right:4px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ink);color:#fff;font-size:10px;display:grid;place-items:center;border:2px solid #fff}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:8px;margin:calc(-1 * (var(--safe-t) + 8px)) -16px 8px;padding:calc(var(--safe-t) + 8px) 12px 8px;background:transparent;transition:background .2s,box-shadow .2s}.screen--recipe .topbar,.screen--module .topbar{margin:0;position:fixed;left:50%;transform:translate(-50%);width:100%;max-width:var(--maxw)}.topbar--scrolled{background:#fbf6eff0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line)}.topbar__title{flex:1;min-width:0;font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .2s}.topbar--scrolled .topbar__title,.topbar:not(.topbar--clear) .topbar__title{opacity:1}.topbar__right{display:flex;gap:8px}.iconbtn{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#ffffffeb;color:var(--ink);box-shadow:0 2px 10px #00000014;transition:transform .15s}.iconbtn:active{transform:scale(.92)}.iconbtn--soft{background:var(--surface-2);box-shadow:none}.iconbtn.is-fav,.rcard__fav.is-fav{color:#e0445e}.page-head{padding:12px 2px 14px}.page-head h1{font-family:var(--display);font-weight:700;font-size:32px;letter-spacing:-.5px;line-height:1.1}.page-head p{margin-top:6px;font-size:15px}.h2{font-size:19px;font-weight:800;margin:26px 2px 12px;letter-spacing:-.2px}.label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:16px 0 8px}.logo{display:inline-flex;align-items:center;gap:10px}.logo__name{font-size:15px;font-weight:800;letter-spacing:-.2px;color:var(--ink)}.logo-mark{display:inline-grid;place-items:center;flex-shrink:0}.logo-mark svg{display:block}.home-brand{display:flex;align-items:center;justify-content:space-between;padding:10px 2px 0}.brand-foot{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:28px}.brand-foot .foot-note{margin-top:4px}.onb__brand{display:flex;justify-content:center;margin-bottom:10px}.onb__mark{margin-bottom:26px;box-shadow:0 18px 44px #d6960059}.menu__item--locked{width:100%;text-align:left}.home-head{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 2px 18px}.home-head__hello{color:var(--ink-2);font-weight:600;font-size:15px}.home-head__title{font-family:var(--display);font-size:31px;line-height:1.08;letter-spacing:-.6px;margin-top:4px}.avatar{width:46px;height:46px;border-radius:50%;background:var(--primary);color:var(--ink);font-weight:800;font-size:18px;display:grid;place-items:center;box-shadow:var(--glow);flex-shrink:0}.avatar--lg{width:64px;height:64px;font-size:26px}.searchbar,.searchfield{display:flex;align-items:center;gap:10px;width:100%;height:52px;padding:0 16px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--muted);font-size:15px;text-align:left}.searchfield input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;color:var(--ink)}.searchfield input::placeholder{color:var(--muted)}.searchfield--soft{background:var(--surface-2);box-shadow:none;height:46px;margin-bottom:12px}.filterbtn{position:relative;width:36px;height:36px;margin-right:-8px;border-radius:12px;display:grid;place-items:center;color:var(--ink-2);background:var(--surface-2)}.filterbtn.on{background:var(--primary);color:var(--ink)}.filterbtn b{position:absolute;top:-5px;right:-5px;width:18px;height:18px;border-radius:50%;background:var(--ink);color:#fff;font-size:10px;display:grid;place-items:center}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 6px}.quick__item{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--ink-2)}.quick__icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;transition:transform .15s}.quick__item:active .quick__icon{transform:scale(.92)}.startcard{display:flex;align-items:center;gap:12px;margin-top:16px;padding:14px 16px;border-radius:var(--radius);background:linear-gradient(135deg,#2a1b12,#4a2e1c);color:#fff;cursor:pointer}.startcard__icon{width:44px;height:44px;border-radius:14px;background:var(--primary);display:grid;place-items:center;font-size:22px}.startcard__body{flex:1;display:flex;flex-direction:column;gap:3px}.startcard__body span{font-size:13px;opacity:.8}.startcard .progress{background:#ffffff2e;margin-top:6px}.banners{margin:18px -16px 0}.banners__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.banners__track::-webkit-scrollbar{display:none}.banners__item{flex:0 0 100%;scroll-snap-align:center;padding:0 16px;display:block}.banners__item .img{aspect-ratio:1440 / 369;border-radius:var(--radius-sm)}.dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.dots span{width:6px;height:6px;border-radius:3px;background:var(--line);transition:all .25s}.dots span.on{width:18px;background:var(--primary-deep)}.section{margin-top:26px}.section__head{display:flex;align-items:baseline;justify-content:space-between;margin:0 2px 12px}.section__head h2{font-size:19px;font-weight:800;letter-spacing:-.2px}.linkbtn{color:var(--primary-deep);font-weight:700;font-size:14px}.rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;margin:0 -16px;padding:2px 16px 10px;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start;flex-shrink:0}.img{position:relative;overflow:hidden;background:linear-gradient(110deg,#f0e6da 30%,#f7f0e8,#f0e6da 70%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.img--ok{animation:none;background:var(--surface-2)}.img img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s}.img--ok img{opacity:1}@keyframes shimmer{to{background-position:-200% 0}}.hero{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4 / 3.3;cursor:pointer;box-shadow:var(--shadow)}.hero .img{position:absolute;top:0;right:0;bottom:0;left:0}.hero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1e120a00 38%,#1e120a8c 62%,#1e120ae6)}.hero__body{position:absolute;left:18px;right:18px;bottom:18px;color:#fff}.hero__body h3{font-family:var(--display);font-size:27px;line-height:1.1;margin:10px 0 8px}.hero__meta{display:flex;gap:14px;font-size:14px;font-weight:700;color:var(--primary-soft)}.hero__meta span{display:inline-flex;align-items:center;gap:4px}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;font-size:12.5px;font-weight:700}.pill--glass{background:#ffffff38;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff}.pill--ice{background:#e4f0fa;color:#2a6597;margin-top:10px}.pill--lock{background:var(--ink);color:var(--primary);font-size:11px}.pill--brand{background:var(--primary);color:var(--ink);font-weight:800;font-size:11.5px;padding:4px 11px}.poster{position:relative;width:132px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:block}.poster .img{aspect-ratio:300 / 420}.poster__count{position:absolute;left:8px;bottom:8px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:700;background:#ffffffeb;color:var(--ink)}.poster__lock{position:absolute;inset:auto 8px 8px;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px;border-radius:12px;font-size:12px;font-weight:800;background:#1e120adb;color:var(--primary)}.poster__lockbadge{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:var(--ink);box-shadow:var(--glow)}.poster--locked{cursor:pointer;text-align:left}.poster--locked .img img{filter:saturate(.75) brightness(.92)}.poster--locked .img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1e120a0d 40%,#1e120a73)}.poster--locked:active{transform:scale(.97)}.poster{transition:transform .15s}.poster--soon{filter:grayscale(.3);opacity:.85}.rail--tracks .poster{width:150px}.grid--posters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.poster--grid{width:100%}.rcard{width:168px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden;cursor:pointer;transition:transform .15s}.rcard:active{transform:scale(.97)}.rcard--sm{width:142px}.grid .rcard{width:auto}.rcard__media{position:relative}.rcard__media .img{aspect-ratio:1 / 1}.rcard__fav{position:absolute;top:8px;right:8px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffffe6;color:var(--ink-2)}.rcard__fav .ico{width:18px;height:18px}.rcard__badge{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:10.5px;font-weight:800;background:var(--primary);color:var(--ink)}.rcard__body{padding:10px 12px 12px}.rcard__mod{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--primary-deep)!important}.rcard__title{font-size:14.5px;font-weight:700;line-height:1.25;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}.rcard__meta{display:flex;gap:8px;margin-top:7px;font-size:12px;color:#7a6656;font-weight:600}.rcard__meta{white-space:nowrap;overflow:hidden}.rcard__meta span{display:inline-flex;align-items:center;gap:3px}.rcard__meta .dot:before{content:"·";margin-right:8px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width: 520px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.rrow{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);cursor:pointer}.rrow__img{width:64px;height:64px;border-radius:12px;flex-shrink:0}.rrow__body{flex:1;min-width:0}.rrow__mod{font-size:11px;font-weight:800;text-transform:uppercase}.rrow__title{font-weight:700}.rrow__meta{font-size:13px;color:var(--muted)}.tools{display:grid;gap:10px}.tool{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow);text-align:left}.tool div{display:flex;flex-direction:column}.tool strong{font-size:15px}.tool span{font-size:13px;color:var(--muted)}.tool__ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex-shrink:0}.tool--menu .img{width:48px;height:67px;border-radius:10px;flex-shrink:0}.foot-note{text-align:center;font-size:12.5px;color:var(--muted);margin:30px 0 8px}.sticky-tools{position:sticky;top:0;z-index:20;margin:0 -16px;padding:calc(var(--safe-t) + 8px) 16px 10px;background:linear-gradient(var(--bg) 85%,rgba(251,246,239,0))}.chips{display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:0 16px 4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chips--wrap{flex-wrap:wrap;margin:0 0 12px;padding:0;overflow:visible}.chip{flex-shrink:0;height:36px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);font-size:13.5px;font-weight:600;color:var(--ink-2);white-space:nowrap;transition:all .15s}.chip--on{background:var(--ink);border-color:var(--ink);color:#fff}.seg{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface-2);margin:4px 0 14px}.seg button{flex:1;height:38px;border-radius:11px;font-weight:700;font-size:14px;color:var(--ink-2);transition:all .15s}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #00000014}.seg--wrap{flex-wrap:wrap}.seg--wrap button{flex:1 1 45%}.seg--sm{margin-top:14px}.seg--sm button{height:32px;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:50px;padding:0 18px;border-radius:15px;font-weight:700;font-size:15px;transition:transform .12s,opacity .15s,background .15s;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;pointer-events:none}.btn--primary{background:var(--primary);color:var(--primary-ink);box-shadow:var(--glow);font-weight:800}.btn--soft{background:var(--primary-soft);color:var(--primary-deep)}.btn--ghost{background:var(--surface-2);color:var(--ink-2)}.btn--outline{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.btn--light{background:#fff;color:var(--primary-deep);margin-top:14px}.btn--done{background:var(--green-soft);color:var(--green)}.btn--danger{color:var(--danger)}.btn--danger-solid{background:var(--danger);color:#fff}.btn--block{width:100%;margin-top:12px}.btn--lg{height:56px;font-size:16px}.mhero{position:relative;height:330px}.mhero .img{position:absolute;top:0;right:0;bottom:0;left:0}.mhero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000026,#0000 30%,#140a04d9)}.mhero__body{position:absolute;left:20px;right:20px;bottom:36px;color:#fff}.mhero__body h1{font-family:var(--display);font-size:36px;line-height:1.02;margin:10px 0 6px}.mhero__body p{opacity:.9;font-size:14.5px;font-weight:500}.mhero__count{display:inline-block;margin-top:10px;font-size:13px;font-weight:800;background:var(--primary);color:var(--ink);padding:4px 10px;border-radius:999px}.module-body{position:relative;margin-top:-22px;padding-top:22px;background:var(--bg);border-radius:24px 24px 0 0}.module-intro{font-size:15.5px;color:var(--ink-2);line-height:1.55;margin-bottom:18px}.msection{margin:26px 0 8px}.msection__title{font-size:21px;font-weight:800;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.msection__sub{color:var(--muted);font-size:14px;margin:4px 0 14px;font-weight:500}.card{background:var(--surface);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);margin-bottom:12px}.card h3{font-size:17px;font-weight:800}.card h4{font-size:15px;font-weight:800;margin-bottom:8px}.card--soft{background:var(--surface-2);box-shadow:none}.card--base{border:2px solid var(--primary-soft)}.base-grid{display:grid;gap:4px}.card--video .label{margin-top:0}.card--video-link{display:flex;align-items:center;gap:12px;margin-top:24px;cursor:pointer}.card--video-link .img{width:46px;height:64px;border-radius:10px;flex-shrink:0}.card--video-link div{flex:1;display:flex;flex-direction:column}.card--video-link span{font-size:13px;color:var(--muted)}.bullets{margin:0;padding-left:18px}.bullets li{margin:5px 0}.infogrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.infogrid div{display:flex;flex-direction:column;background:var(--surface);padding:12px;border-radius:14px}.infogrid strong{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--primary-deep)}.infogrid span{font-size:13.5px;color:var(--ink-2);margin-top:3px}.sauces{list-style:none;margin:0;padding:0}.sauces li{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed var(--line);font-size:14px}.sauces li:last-child{border:0}.rhero{position:relative}.rhero .img{aspect-ratio:1 / .92}.rsheet{position:relative;margin-top:-28px;background:var(--bg);border-radius:28px 28px 0 0;padding:22px 16px 8px}.rsheet__mod{color:var(--primary-deep);font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;text-align:left}.rsheet__title{font-family:var(--display);font-size:30px;line-height:1.08;letter-spacing:-.5px;margin-top:6px}.macros{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-template-columns:1.2fr;gap:8px;margin-top:16px}.macro{background:var(--surface);border-radius:16px;padding:12px 6px;text-align:center;box-shadow:var(--shadow)}.macro b{display:block;font-size:18px;font-weight:800}.macro span{font-size:11.5px;color:var(--muted);font-weight:600}.macro--kcal{background:var(--primary);color:var(--ink)}.macro--kcal span{color:#ffffffd9}.portion{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:14px;color:var(--ink-2);font-weight:600}.actions{display:flex;gap:10px;margin:18px 0 6px}.rsec{margin-top:28px}.rsec h2{font-size:21px;font-weight:800;letter-spacing:-.3px;margin-bottom:12px}.inggroup .label{margin-top:8px}.checklist{list-style:none;padding:0;margin:0;background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.checklist li{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-size:15px;transition:color .15s}.checklist li:last-child{border:0}.tick{width:22px;height:22px;border-radius:7px;border:2px solid #D8C8B8;display:grid;place-items:center;flex-shrink:0;color:transparent;transition:all .15s;margin-top:1px}.on>.tick,.on .tick{background:var(--green);border-color:var(--green);color:#fff}.checklist li.on{color:var(--muted);text-decoration:line-through}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:14px;padding:4px 0 16px;position:relative}.steps li:not(:last-child):before{content:"";position:absolute;left:15px;top:36px;bottom:0;width:2px;background:var(--line)}.steps__n{width:32px;height:32px;border-radius:50%;background:var(--primary-soft);color:var(--primary-deep);font-weight:800;display:grid;place-items:center;flex-shrink:0;font-size:14px}.steps p{padding-top:5px;font-size:15.5px;line-height:1.55}.tip{display:flex;gap:12px;padding:14px 16px;margin-top:12px;border-radius:16px;background:#fff6d9;color:#6b4e00;font-size:14.5px;line-height:1.5}.tip .ico{color:#d49a00;margin-top:1px}.conserv{display:grid;grid-template-columns:1fr 1fr;gap:10px}.conserv div{display:flex;flex-direction:column;gap:3px;padding:14px;border-radius:16px;background:#eaf3fb;color:#2a6597}.conserv div:last-child{background:var(--green-soft);color:var(--green)}.conserv span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;opacity:.8;margin-top:4px}.conserv b{font-size:14.5px;color:var(--ink)}.ntable{background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.ntable>div{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);font-size:15px}.ntable>div:last-child{border:0}.ntable__head{background:var(--ink);color:#fff;font-weight:700;font-size:13.5px!important}.yt{position:relative;aspect-ratio:16 / 9;border-radius:18px;overflow:hidden;background:#000;box-shadow:var(--shadow)}.yt iframe,.yt video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:#000}.yt__poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%}.yt__poster img{width:100%;height:100%;object-fit:cover;opacity:.9}.yt__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:50%;background:#fffffff2;color:var(--ink);display:grid;place-items:center;box-shadow:0 8px 30px #0000004d;padding-left:4px}.screen--recipe>.btn--block{margin:24px 16px 0;width:calc(100% - 32px)}.rsheet>.btn--block{margin-top:28px}.cook{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1e140e;color:#fff6ec;display:flex;flex-direction:column;padding:calc(var(--safe-t) + 10px) 20px calc(var(--safe-b) + 16px);max-width:var(--maxw);margin:0 auto}.cook__top{display:flex;align-items:center;gap:10px}.cook__top .iconbtn--soft{background:#ffffff1a;color:#fff}.cook__title{flex:1;text-align:center;font-weight:700;font-size:15px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cook__bar{height:4px;border-radius:2px;background:#ffffff1f;margin:16px 0 0;overflow:hidden}.cook__bar div{height:100%;background:var(--primary);transition:width .3s}.cook__body{flex:1;overflow-y:auto;padding:28px 0;animation:viewIn .3s ease both}.cook__kicker{color:var(--primary);font-weight:800;text-transform:uppercase;letter-spacing:1px;font-size:13px;margin-bottom:14px}.cook__step{font-family:var(--display);font-size:29px;line-height:1.3}.cook__ings{list-style:none;padding:0;margin:0 0 10px}.cook__ings li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:18px}.cook .label{color:#fff9}.cook__nav{display:flex;gap:10px}.cook__nav .btn--ghost{background:#ffffff1a;color:#fff}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:flex-end;justify-content:center}.sheet__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#140a0473;animation:fade .2s ease both}.sheet__panel{position:relative;width:100%;max-width:var(--maxw);max-height:88vh;display:flex;flex-direction:column;background:var(--bg);border-radius:26px 26px 0 0;animation:up .28s cubic-bezier(.2,.9,.3,1) both;padding-bottom:var(--safe-b)}.sheet__grab{width:40px;height:5px;border-radius:3px;background:var(--line);margin:8px auto 0}.sheet__head{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 6px 20px}.sheet__head h3{font-size:19px;font-weight:800}.sheet__body{padding:6px 20px 16px;overflow-y:auto}.sheet__foot{padding:12px 20px 16px;border-top:1px solid var(--line);background:var(--bg)}@keyframes up{0%{transform:translateY(100%)}to{transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.stepper{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);font-weight:600;font-size:14.5px}.stepper>div{display:flex;align-items:center;gap:12px}.stepper button,.mini-stepper button{width:36px;height:36px;border-radius:12px;background:var(--primary-soft);color:var(--primary-deep);display:grid;place-items:center}.stepper b{min-width:30px;text-align:center;font-size:17px}.prevcat ul{list-style:none;padding:0;margin:0;background:var(--surface);border-radius:14px}.prevcat li{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:14px}.prevcat li:last-child{border:0}.prevcat b{color:var(--ink-2);font-weight:600;white-space:nowrap}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + var(--safe-b) + 16px);transform:translate(-50%,20px);z-index:80;max-width:calc(100% - 32px);padding:12px 18px;border-radius:14px;background:var(--ink);color:#fff;font-weight:600;font-size:14px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:all .25s}.toast--on{opacity:1;transform:translate(-50%)}.toast--rich{display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;min-width:260px;border-radius:18px}.toast__ico{width:36px;height:36px;border-radius:12px;background:var(--primary);color:var(--ink);display:grid;place-items:center;flex-shrink:0}.toast__txt{display:flex;flex-direction:column;line-height:1.25}.toast__txt strong{font-size:14.5px;font-weight:800}.toast__txt span{font-size:13px;color:var(--primary);font-weight:700}.empty{text-align:center;padding:48px 20px}.empty__emoji{font-size:52px;margin-bottom:12px}.empty h3{font-size:19px;font-weight:800}.empty p{color:var(--muted);margin:8px auto 18px;max-width:300px}.goalcard{display:flex;align-items:center;gap:14px;width:100%;padding:18px;border-radius:22px;background:linear-gradient(135deg,var(--primary),var(--yolk));color:var(--ink);text-align:left;box-shadow:0 10px 28px #d696004d;margin:6px 0 12px}.goalcard div{display:flex;flex-direction:column}.goalcard small{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;opacity:.85}.goalcard strong{font-size:22px;font-weight:800}.goalcard span:not(.goalcard__icon){font-size:13.5px;opacity:.9}.goalcard--empty strong{font-size:17px}.goalcard__icon{width:50px;height:50px;border-radius:16px;background:#fff3;display:grid;place-items:center;flex-shrink:0}.kcalgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kcal{position:relative;display:flex;flex-direction:column;align-items:center;padding:16px 6px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.kcal b{font-size:20px;font-weight:800}.kcal span{font-size:11.5px;color:var(--muted);font-weight:600}.kcal em{position:absolute;top:-8px;font-style:normal;font-size:10px;font-weight:800;background:var(--ink);color:#fff;padding:2px 7px;border-radius:999px}.kcal--on{box-shadow:inset 0 0 0 2px var(--primary),var(--shadow)}.note{display:flex;gap:12px;margin-top:18px;font-size:14px;color:var(--ink-2)}.note .ico{color:var(--primary-deep)}.linkish{color:var(--primary-deep);font-weight:700;text-decoration:underline}.menuhead{padding:4px 2px 14px}.menuhead small{font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--primary-deep);font-size:12px}.menuhead h1{font-family:var(--display);font-size:40px;line-height:1}.menuhead h1 span{font-family:var(--font);font-size:16px;color:var(--muted);font-weight:600}.meals{animation:viewIn .25s ease both}.meal{margin-bottom:14px;background:var(--surface);border-radius:20px;box-shadow:var(--shadow);padding:14px 14px 6px}.meal__head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.meal__head h3{font-size:16px;font-weight:800}.meal__dot{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.meal ul{list-style:none;margin:0;padding:0}.meal li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.meal li:first-child{border-top:0}.meal li div{display:flex;flex-direction:column}.meal li strong{font-size:15px;font-weight:700}.meal li span{font-size:13px;color:var(--muted);line-height:1.4}.meal li.linked{cursor:pointer}.meal li.linked strong{color:var(--primary-deep)}.meal__img{width:48px;height:48px;border-radius:12px;flex-shrink:0}.faq{display:grid;gap:10px}.faq__item{background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.faq__item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px;font-weight:700;cursor:pointer}.faq__item summary::-webkit-details-marker{display:none}.faq__item summary .ico{transition:transform .2s;color:var(--muted)}.faq__item[open] summary .ico{transform:rotate(90deg)}.faq__body{padding:0 16px 16px;display:grid;gap:8px;font-size:14.5px;color:var(--ink-2)}.selos{display:grid;gap:8px}.selo{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px}.selo b{font-size:12px;text-transform:uppercase;letter-spacing:.5px}.selo--liberado{background:var(--green-soft)}.selo--liberado b{color:var(--green)}.selo--moderacao{background:#fff3d6}.selo--moderacao b{color:#a87400}.selo--evite{background:#fce4e0}.selo--evite b{color:var(--danger)}.doces{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.doces li{display:flex;flex-direction:column;padding:10px;border-radius:12px;background:var(--surface-2)}.doces small{display:block;color:var(--muted);font-size:12px}.doces b{color:var(--primary-deep);font-size:13px}.frutas{display:flex;flex-wrap:wrap;gap:6px}.frutas span{padding:6px 10px;border-radius:999px;background:var(--surface-2);font-size:13px}.form{display:grid;gap:16px}.field{display:flex;flex-direction:column;gap:8px}.field>span{font-size:13px;font-weight:700;color:var(--ink-2)}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px}.input{display:flex;align-items:center;height:52px;padding:0 14px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line);transition:box-shadow .15s}.input:focus-within{box-shadow:inset 0 0 0 2px var(--primary)}.input input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:17px;font-weight:600}.input em{font-style:normal;color:var(--muted);font-size:14px;font-weight:600}.input--lg{height:60px;margin-top:20px}.options{display:grid;gap:8px}.options--3{grid-template-columns:repeat(3,1fr)}.opt{display:flex;flex-direction:column;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line);text-align:left;transition:all .15s}.options--3 .opt{align-items:center;text-align:center;padding:12px 6px}.opt b{font-size:14.5px}.opt small{font-size:12px;color:var(--muted)}.opt.on{box-shadow:inset 0 0 0 2px var(--primary);background:var(--primary-soft)}.opt.on small{color:var(--primary-deep)}.hint{color:var(--muted);font-size:12.5px}.alert{padding:12px 14px;border-radius:14px;background:#fce4e0;color:var(--danger);font-weight:600;font-size:14px}.alert--warn{background:#fff3d6;color:#8a5e00;margin-top:12px}.results{margin-top:10px;animation:viewIn .3s ease both;scroll-margin-top:70px}.stat{flex:1;display:flex;flex-direction:column;padding:14px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.stat small{font-size:12px;font-weight:700;color:var(--muted)}.stat b{font-size:26px;font-weight:800}.stat span{font-size:12px;color:var(--muted)}.target{margin-top:12px;text-align:center;padding:22px;border-radius:22px;background:linear-gradient(135deg,var(--primary),var(--yolk));color:var(--ink);display:flex;flex-direction:column;align-items:center}.target__emoji{font-size:34px}.target small{font-weight:700;text-transform:uppercase;letter-spacing:.6px;opacity:.9;font-size:12.5px}.target b{font-family:var(--display);font-size:52px;line-height:1.05}.disclaimer{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}.listprog{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden;margin:-4px 2px 16px}.listprog div{height:100%;background:var(--green);transition:width .3s}.lgroup{margin-top:22px}.lgroup__title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:800;margin:0 2px 8px}.lgroup__title em{font-style:normal;margin-left:auto;font-size:12px;font-weight:700;color:var(--muted);background:var(--surface-2);padding:2px 8px;border-radius:999px}.litems{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.litems li{display:flex;align-items:center;border-bottom:1px solid var(--line)}.litems li:last-child{border:0}.lcheck{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:13px 4px 13px 14px;text-align:left}.ltext{flex:1;min-width:0;font-size:15px}.lqty{font-size:13px;font-weight:700;color:var(--ink-2);background:var(--surface-2);padding:3px 8px;border-radius:8px;white-space:nowrap}.litems li.on .ltext{text-decoration:line-through;color:var(--muted)}.litems li.on .lqty{opacity:.5}.lremove{width:44px;height:44px;display:grid;place-items:center;color:#c9b7a6}.listactions{margin-top:24px}.pick{list-style:none;margin:12px 0;padding:0;display:grid;gap:8px}.pick li{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 6px;border-radius:16px;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line);transition:all .15s}.pick li.on{box-shadow:inset 0 0 0 2px var(--primary);background:var(--primary-soft)}.pick__main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left}.pick__img{width:48px;height:48px;border-radius:12px;flex-shrink:0}.pick__title{font-weight:600;font-size:14.5px}.pick__add{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;color:var(--muted)}.mini-stepper{display:flex;align-items:center;gap:6px}.mini-stepper button{width:30px;height:30px;border-radius:10px;background:#fff}.mini-stepper b{font-size:14px;min-width:22px;text-align:center}.profile-card{display:flex;align-items:center;gap:14px;padding:16px 2px 18px}.profile-card h1{font-family:var(--display);font-size:26px;line-height:1.1}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.stats button{display:flex;flex-direction:column;align-items:center;padding:14px 6px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.stats b{font-size:22px;font-weight:800}.stats span{font-size:12px;color:var(--muted);font-weight:600}.menu{background:var(--surface);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.menu__item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}.menu__item:last-child{border:0}.menu__item>div{display:flex;flex-direction:column}.menu__item strong{font-size:15px;font-weight:700}.menu__item span:not(.pill){font-size:13px;color:var(--muted)}.menu__item .ico:last-child{color:var(--muted)}.menu__thumb{width:42px;height:58px;border-radius:10px;flex-shrink:0}.menu__ico{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex-shrink:0}.menu__item .progress{margin-top:6px}.progress{height:5px;border-radius:3px;background:var(--surface-2);overflow:hidden}.progress div{height:100%;background:var(--primary);border-radius:3px;transition:width .3s}.howto{padding-left:20px;display:grid;gap:10px;font-size:15px}.howto li .ico{vertical-align:middle}.lesson{margin:0 -16px}.lesson .yt{border-radius:0}.lesson__body{padding:16px;display:grid;gap:10px}.lesson__body h1{font-family:var(--display);font-size:25px;line-height:1.15}.lesson__body p{color:var(--ink-2)}.lesson__body .btn--block{margin-top:0}.pdfcard{margin:0 16px;padding:28px;border-radius:22px;background:var(--primary-soft);color:var(--primary-deep);display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.pdfcard strong{font-size:17px;color:var(--ink)}.pdfcard .btn{margin-top:10px}.lessons{margin-top:12px}.lessons__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.lessons__head h2{font-size:19px;font-weight:800}.lessons ol{list-style:none;padding:0;margin:14px 0 0;background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.lessons li{display:flex;align-items:center;gap:12px;padding:14px;border-bottom:1px solid var(--line);cursor:pointer;font-weight:600;font-size:14.5px}.lessons li:last-child{border:0}.lessons li.cur{background:var(--primary-soft)}.lessons li .ico{color:var(--muted)}.lessons__n{width:28px;height:28px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;font-size:13px;font-weight:800;flex-shrink:0}.lessons li.done .lessons__n{background:var(--green);color:#fff}.onb{min-height:100vh;max-width:var(--maxw);margin:0 auto;display:flex;flex-direction:column;padding:calc(var(--safe-t) + 16px) 24px calc(var(--safe-b) + 24px);background:radial-gradient(120% 60% at 50% 0%,#FFE9A8 0%,var(--bg) 62%)}.onb__skip{text-align:right;min-height:24px}.onb__slide{flex:1;display:flex;flex-direction:column;justify-content:center;animation:viewIn .35s ease both}.onb__emoji{font-size:76px;margin-bottom:20px}.onb__slide h1{font-family:var(--display);font-size:36px;line-height:1.08;letter-spacing:-.6px}.onb__slide p{font-size:17px;color:var(--ink-2);margin-top:14px;line-height:1.5}.onb__foot{display:grid;gap:18px}.dots--dark{justify-content:flex-start}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
