.site-shell{min-height:100dvh}.site-shell .app-side,.site-shell .app-frame{min-width:0;height:100dvh;min-height:0}.site-shell .app-content{min-width:0;min-height:0;padding-bottom:24px;scroll-padding-bottom:24px;overflow:hidden auto}.site-shell .app-header{padding-top:max(16px,env(safe-area-inset-top));flex-shrink:0}.site-shell .bottom-nav{height:auto;min-height:72px;padding:4px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));z-index:20;flex:none;grid-template-columns:repeat(5,minmax(0,1fr));position:relative}.site-shell .bottom-nav button{white-space:nowrap;gap:5px;min-width:0;min-height:60px;padding:8px 0}.site-shell .bottom-nav button span{font-size:11px;line-height:1.4}.site-shell .bottom-nav button svg{flex-shrink:0}.site-shell .bottom-nav:has(.hotdeal-nav){grid-template-columns:repeat(6,minmax(0,1fr))}.site-shell .bottom-nav .hotdeal-nav{white-space:nowrap;min-height:60px;padding:8px 0}.site-shell .bottom-nav .hotdeal-nav span{font-size:11px;line-height:1.4}.site-shell .bottom-nav .hotdeal-nav svg{flex-shrink:0}.home-steps{color:#6e805b;background:#f1f5e5;border-radius:16px;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;font-size:12px;display:flex}.home-steps strong{color:#405e36}.home-secondary,.today-record-summary,.planner-more-options,.planner-profile-summary{background:#fcfcf6;border:1px solid #e4e9d8;border-radius:16px;margin:12px 0;padding:12px 14px}.home-secondary>summary,.today-record-summary>summary,.planner-more-options>summary,.planner-profile-summary>summary{cursor:pointer;color:#708362;font-size:13px}.today-record-summary .today-metrics{margin-top:16px}.today-partial{background:#f4f7e9;border:1px solid #dce5cc;border-radius:14px;margin:10px 0;padding:12px}.today-partial>strong{margin-bottom:8px;font-size:13px;display:block}.today-partial>div{flex-wrap:wrap;gap:8px;display:flex}.today-partial button{color:#466538;background:#fff;border:1px solid #d6e1c8;border-radius:12px;padding:10px 12px}.today-left{color:#708060;margin:10px 0;font-size:12px;display:block}.cook-comparison-context{color:#75816a;margin:0!important;font-size:12px!important;line-height:1.7!important}@media (max-width:480px){.site-shell .app-content{padding-left:16px;padding-right:16px}.site-shell .bottom-nav{min-height:68px}.home-steps{justify-content:center;gap:6px;font-size:11px}.site-shell .app-frame{width:100%}.site-shell input,.site-shell select,.site-shell textarea{max-width:100%}}.contact-entry>span{color:#837466;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;margin-top:8px;font-size:12px;display:block}.planner-budget-hint{color:var(--primary);background:#f4f7e8;border:1px solid #e2e7ce;border-radius:16px;padding:14px}.planner-budget-hint>strong{font-size:13px}.planner-budget-hint p{margin:8px 0;font-size:12px;line-height:1.7}.planner-budget-hint>small{color:#788469;margin-top:9px;font-size:11px;display:block}.home-steps{color:var(--text-subtle);background:#f4f7ec;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0 0 18px;padding:12px 10px;font-size:11px;list-style:none;display:grid}.home-steps li{text-align:center;justify-items:center;gap:5px;line-height:1.35;display:grid;position:relative}.home-steps li:not(:last-child):after{content:"";background:#dfe6d3;border-radius:2px;height:2px;position:absolute;top:11px;left:calc(50% + 16px);right:calc(16px - 50%)}.home-steps li.is-done:not(:last-child):after{background:#8fb070}.home-steps b{width:24px;height:24px;color:var(--text-subtle);background:#fff;border:1.5px solid #d6decb;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.home-steps li.is-done b{color:#fff;background:#8fb070;border-color:#8fb070}.home-steps li.is-current b{color:#fff;background:#46603c;border-color:#46603c;box-shadow:0 0 0 4px #46603c22}.home-steps li.is-current span{color:#26321f;font-weight:800}.home-steps a{color:inherit;justify-items:center;gap:5px;text-decoration:none;display:grid}@media (max-width:480px){.home-steps{padding:10px 6px;font-size:11px}}
@media (prefers-reduced-motion:no-preference){.shopping-planner button,.shopping-planner .planner-exclusion-group label,.community-actions button{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .15s}.shopping-planner fieldset label:has(input[type=radio]){transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .15s}.shopping-planner button:enabled:active,.community-actions button:enabled:active{transform:scale(.97)}.shopping-planner .purchase-items>article{transition:border-color .18s,box-shadow .18s}.shopping-planner .today-menu,.shopping-planner .purchase-items>article,.shopping-planner .planner-result,.shopping-planner .planner-exclusions{animation:.22s ease-out kkini-appear}.shopping-planner [role=status],.community-message,.body-success{animation:.24s ease-out kkini-confirm}}.shopping-planner .purchase-items>article:has(.purchase-item-heading input:checked){border-color:#72967b;box-shadow:0 0 0 1px #72967b}@keyframes kkini-appear{0%{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes kkini-confirm{0%{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (max-width:910px){.site-shell .app-frame{height:auto;min-height:100dvh}.site-shell .app-content{flex:none;min-height:0;overflow:visible}.site-shell .bottom-nav{z-index:20;padding-bottom:env(safe-area-inset-bottom);box-sizing:content-box;position:sticky;bottom:0}.site-shell .planner-fab{bottom:calc(88px + env(safe-area-inset-bottom))}body .kakao-browser-notice{bottom:calc(84px + env(safe-area-inset-bottom))}}
body{word-break:keep-all;overflow-wrap:break-word}@media (hover:none) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{font-size:max(16px,1em)!important}.snack-log header button,.combo-dialog header button,.mp-close,.wpm-close,.wizard-close,.eo-close,.wg-close,.home-setup-dialog>header button,.mp-search button,.today-meals .eat-log-head button,.stepper button,.month-controls button{position:relative}.snack-log header button:after,.combo-dialog header button:after,.mp-close:after,.wpm-close:after,.wizard-close:after,.eo-close:after,.wg-close:after,.home-setup-dialog>header button:after,.mp-search button:after,.today-meals .eat-log-head button:after,.stepper button:after,.month-controls button:after,.install-prompt-close:after,.today-meals .photo-log-thumbs li>button:not(.photo-log-add):after{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.today-meals .eat-log-extras button,.pantry-selected-chips button{min-height:44px}}@media (max-width:910px){.site-shell .app-content{flex:1 0 auto}}.site-shell .auth-submit{background:var(--primary)}.site-shell .auth-switch button{color:#52654a}.site-shell .auth-switch button.active{color:#3f5a35}.site-shell .auth-explore,.site-shell .auth-explore-header{color:#55693f}html:has(dialog:modal){overflow:hidden}dialog:modal{overscroll-behavior:contain}@media (prefers-reduced-motion:no-preference){dialog:modal{transition:translate .2s}}.primary-button:not(:disabled){color:#fff;background:var(--primary)!important}.primary-button:not(:disabled):hover{background:var(--primary-strong)!important}
.kkini{--ink:var(--text);--muted:var(--text-subtle);--green:var(--primary);--deep:var(--text);--line:var(--border);--cream:var(--surface-soft)}.kkini body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--leading-label)}.kkini :is(h1,h2,h3){text-wrap:pretty}.kkini [lang=zh-TW]{--font-sans:system-ui,"PingFang TC","Microsoft JhengHei",sans-serif;font-family:var(--font-sans)}.kkini :where(button,input,select,textarea){font-family:inherit}.kkini :where(input,progress){accent-color:var(--primary)}.kkini :where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--focus);outline-offset:3px}.kkini :is(.guide-shell,.products-shell,.intro-page,.legal-page,.submission-shell,.tw-app,.admin-login-shell,.auth-stage){background:var(--surface);color:var(--text);font-family:var(--font-sans)}.kkini :is(.products-header,.guide-shell>header,.intro-nav,.legal-page>header,.tw-header){border-bottom:1px solid var(--border);padding-block:18px}.kkini :is(.guide-brand,.products-brand,.legal-brand,.tw-brand,.intro-logo){color:var(--primary);font-family:var(--font-sans);letter-spacing:-.045em;font-weight:750}.kkini :is(.products-shell,.guide-shell,.legal-page,.submission-shell) h1,.kkini .intro-hero h1,.kkini .fresh-shell.site-shell :is(h1,h2,h3){font-family:var(--font-sans);letter-spacing:-.025em;color:var(--text);font-weight:650}.kkini :is(.products-intro,.guide-list>a,.legal-page article,.intro-record-flow>div,.tw-panel,.tw-hero){background:var(--surface);color:var(--text);box-shadow:none;border-color:var(--border)}.kkini :is(.products-intro,.guide-list>a,.legal-page article){border-inline:0;border-radius:0}.kkini :is(.product-card,.deal-card,.selected-comparison,.product-detail-hero,.products-note,.product-facts){background:var(--surface);border-color:var(--border);border-radius:var(--radius-md);box-shadow:none}.kkini :is(.guide-kicker,.products-kicker,.legal-kicker,.intro-eyebrow,.product-price,.product-detail-price,.intro-hero h1 em){color:var(--primary)}.kkini :is(.guide-list h2,.product-card h2,.legal-page h2,.intro-record-flow strong,.products-intro h1,.intro-hero-copy h1){color:var(--text)}.kkini :is(.guide-lead,.guide-list p,.products-intro p,.intro-record-flow p,.legal-date,.legal-page article p){color:var(--text-muted)}.kkini :is(.products-header,.products-footer,.legal-page,.guide-shell) a:not([class]),.kkini .intro-record-flow a{color:var(--text);text-underline-offset:.2em}.kkini :is(.product-search button,.intro-start,.tw-primary){background:var(--primary);color:#fff;border:0}.kkini .intro-hero{background:var(--surface)}.kkini .intro-page .intro-logo{color:var(--primary);align-items:center;gap:7px;line-height:1;display:inline-flex}.kkini .intro-page .intro-start{border-radius:var(--radius-pill);background:var(--primary);color:#fff;box-shadow:none}.kkini .intro-page .intro-start:hover{background:var(--primary-strong);transform:none}.kkini .intro-hero{gap:clamp(24px,4vw,54px);margin-top:clamp(24px,4vw,56px)}.intro-meal-photo{aspect-ratio:1.35;object-fit:cover;border-radius:var(--radius-lg);width:100%;height:auto;display:block}.kkini .intro-record-flow{background:var(--surface);border:0;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;padding:0;display:grid}.kkini .intro-record-flow>div{border:0;border-top:1px solid var(--border);border-radius:0;padding:16px 0}.kkini .intro-record-flow a{padding:10px 0;text-decoration:underline;display:inline-block}.kkini .intro-hero-copy>p,.kkini .intro-page .intro-footer span{color:var(--text-subtle)}.kkini .intro-page :is(.intro-faq,.intro-footer){background:var(--surface-soft);color:var(--text)}.kkini .legal-page article{border:0}.kkini .legal-page :is(.legal-table,th,td){border-color:var(--border)}.kkini .legal-page th{background:var(--surface-soft);color:var(--text)}.kkini .fresh-shell.site-shell,.kkini .fresh-shell.site-shell :is(.app-side,.app-frame,.app-header,.app-content,.auth-stage,.auth-header,.bottom-nav){color:var(--text);background:var(--surface);border-color:var(--border)}.kkini .fresh-shell.site-shell .app-side{background:var(--surface-soft)}.kkini .fresh-shell.site-shell .app-frame{box-shadow:0 0 0 1px var(--border)}.kkini .fresh-shell.site-shell .promo-panel{color:var(--text);background:#f7f5f2}.kkini .fresh-shell.site-shell .promo-panel :is(h1,h2,strong,.brand){color:var(--text);font-family:var(--font-sans)}.kkini .fresh-shell.site-shell .promo-panel :is(p,small,.eyebrow,.promo-top>span,.promo-footer){color:var(--text-muted)}.kkini .fresh-shell.site-shell :is(.brand-dot,.promo-copy em,.page-intro h2 span,.bottom-nav .active,.auth-intro em){color:var(--primary)}.kkini .fresh-shell.site-shell :is(.primary-button,.auth-submit,.wizard-next){background:var(--primary);color:#fff;box-shadow:none}.kkini .fresh-shell.site-shell :is(.section-kicker,.week-label,.text-link,.brand){color:var(--text);font-family:var(--font-sans)}.kkini .fresh-shell.site-shell :is(.promo-companion,.planner-controls,.auth-card,.calendar-card,.meal-card){background:var(--surface);border-color:var(--border);box-shadow:none}.kkini .fresh-shell.site-shell :is(.promo-feature-icon,.avatar,.home-guide-entry,.planner-profile-summary){background:var(--surface-soft);color:var(--text)}.kkini .auth-stage :is(.brand,.auth-intro h2,.auth-card h2){font-family:var(--font-sans);color:var(--text)}.kkini .auth-stage :is(.auth-intro em,.brand-dot){color:var(--primary)}.kkini .auth-stage .auth-card{background:var(--surface);border-color:var(--border);box-shadow:none}.kkini .brand .brand-mark span{background:var(--brand-coral)}.kkini .brand .brand-mark span:nth-child(2n){background:var(--primary)}.kkini .site-shell.fresh-shell .tutorial-content :is(h1,h2,h3),.kkini .admin-login-shell .auth-intro h2{font-family:var(--font-sans);font-weight:650}.kkini .tutorial-content .tutorial-welcome{background:var(--surface);border-bottom:1px solid var(--border);border-radius:0;padding:20px 0}.kkini .tutorial-content .tutorial-step{background:var(--surface);border:0;border-bottom:1px solid var(--border);border-radius:0;padding-inline:0}.kkini .admin-login-shell .auth-submit{color:#fff;background:var(--primary)}.kkini .admin-shell{color:var(--text);background:var(--surface-soft);font-family:var(--font-sans)}.kkini .admin-shell :is(.admin-list,.admin-form,.admin-message){background:var(--surface);border-color:var(--border);box-shadow:none}.kkini .admin-shell :is(.admin-source-link,.admin-header>a,.admin-kicker){color:var(--text-muted)}.kkini .admin-shell :is(.admin-new-button,.admin-form button[type=submit]){background:var(--primary);color:#fff}.kkini .admin-shell .admin-list button.selected{background:var(--surface-soft);color:var(--text)}.kkini .products-shell .product-card{border:0;border-bottom:1px solid var(--border);border-radius:0;padding-inline:0}.kkini .products-shell .product-pick{min-height:44px}.kkini .products-shell .product-search{background:var(--surface-soft)}.kkini .products-shell .product-card-heading img{background:var(--surface-soft);border-radius:var(--radius-md)}.kkini .products-shell .product-image-placeholder{color:var(--text-subtle);background:var(--surface-soft)}.kkini :is(.guide-list,.products-intro,.legal-page article,.intro-record-flow,.intro-hero-copy,.tutorial-step,.tutorial-welcome,.submission-note) p{max-inline-size:var(--reading-width);color:var(--text-muted);font-size:var(--fs-md);line-height:var(--leading-prose);word-break:keep-all;overflow-wrap:anywhere}.kkini .guide-shell article section p{max-inline-size:var(--reading-width)}.kkini .products-shell .product-card h2{font-size:var(--fs-md);line-height:var(--leading-label)}.kkini .products-shell .product-card :is(p,small),.kkini .products-shell .product-pick{font-size:var(--fs-sm);line-height:var(--leading-label);color:var(--text-muted)}.kkini .fresh-shell .app-content :is(.page-intro,.home-guide-entry,.planner-heading) p{font-size:var(--fs-md);line-height:var(--leading-prose);color:var(--text-muted)}.kkini .fresh-shell.site-shell .bottom-nav a{font-size:var(--fs-xs)}@media (max-width:760px){.kkini .intro-hero h1{font-size:clamp(40px,11vw,62px)}.intro-meal-photo{aspect-ratio:1.7}.kkini .intro-record-flow{gap:0}}
