:root{color-scheme:light;--ink:#30243a;--muted:#706880;--orange:#f97516;--line:#ebe6ee;--lavender:#f0eafa;--paper:#fffcf8;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer;line-height:1.35}button:hover{border-color:#b0a0c5}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:600}a{color:#634397}h1,h2,h3,p{margin:0}h2{font-size:24px;line-height:1.2}h3{font-size:17px}p{line-height:1.5}small,.muted{color:var(--muted);font-size:14px;line-height:1.45}.sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.app{display:grid;grid-template-columns:200px minmax(0,1fr);grid-template-rows:80px auto minmax(0,1fr);height:100dvh;min-height:500px}.sidebar{grid-row:1/4;border-right:1px solid var(--line);padding:28px 14px;display:flex;flex-direction:column;background:#fff}.brand{font-size:38px;letter-spacing:-2px;color:var(--orange);font-style:italic;font-weight:800;text-decoration:none;text-align:center}.brand span{display:block;color:var(--ink);font-weight:400;font-style:normal;font-size:17px;letter-spacing:0}.side-nav{display:grid;gap:10px;margin-top:45px}.side-nav button,.side-bottom button{display:flex;gap:14px;align-items:center;background:transparent;border-color:transparent;text-align:left}.nav-icon{font-size:22px;width:26px}.side-nav .active{color:#c75306;background:#fff0e5;font-weight:600}.side-bottom{margin-top:auto;display:grid;gap:14px}.topbar{display:flex;align-items:center;gap:20px;padding:16px 24px;background:#fff;border-bottom:1px solid var(--line)}h1{font-size:24px}.week-chip{background:#f6f3f8;font-size:14px}.cart-top{margin-left:auto;white-space:nowrap}.cart-top span:empty{display:none}.cart-top span{border-radius:20px;padding:2px 6px;color:#c75306;background:#fff0e5}.notice{padding:6px 24px;background:#f8f5fa;color:#746782;font-size:12px}.workspace{display:flex;min-width:0;min-height:0}.chat{display:flex;flex:1;flex-direction:column;min-width:0;background:#fff}.messages{overflow:auto;padding:32px 28px;flex:1;display:flex;flex-direction:column;gap:22px;align-items:flex-start;scroll-behavior:smooth}.bubble{max-width:88%;padding:18px 20px;line-height:1.55;border-radius:18px;background:#f8f6f9;overflow-wrap:anywhere}.bubble.user{align-self:flex-end;background:var(--lavender)}.bubble .role{display:block;color:#c75306;font-weight:600;margin-bottom:8px}.chat-card{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:white;display:grid;gap:10px}.composer-area{padding:16px 22px 22px}.suggestions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.suggestions button{font-size:14px}#chat-form{display:flex;align-items:flex-end;border:1px solid var(--line);border-radius:22px;padding:8px;gap:8px;background:#fff}textarea{resize:vertical;min-height:44px;max-height:140px}#message{border:0;background:#f7f5f8;border-radius:16px;padding:12px;flex:1;width:0;resize:none;max-height:150px}#message:focus{outline:2px solid #b8a5d4;outline-offset:1px}.send{width:46px;font-size:24px;border-radius:50%}.detail{flex:0 0 45%;max-width:620px;border-left:1px solid var(--line);padding:24px;overflow:auto;min-width:0;background:var(--paper)}.detail[hidden]{display:none}.page-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:22px}.page-head .close{margin-left:auto;font-size:24px;border:0;background:transparent;padding:0;width:44px;flex-shrink:0}.sub{margin-top:6px}.stack{display:grid;gap:14px}.row{display:flex;align-items:center;gap:12px;min-width:0}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.card{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;min-width:0}.card p{margin-top:7px}.badge{display:inline-block;padding:4px 10px;border-radius:20px;background:var(--lavender);font-size:12px}.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:16px 0}.days button{padding:9px 0;min-width:0}.days .active,.segmented .active{background:var(--orange);color:#fff;border-color:var(--orange)}.segmented{display:flex;gap:6px;flex-wrap:wrap}.segmented button{flex:1}.meal{padding:0;overflow:hidden;display:flex;text-align:left;align-items:center;width:100%;background:white;gap:14px}.meal-text{padding:16px 14px 16px 0}.meal-text small{color:#c75306;display:block;margin-bottom:5px}.meal-text strong{display:block}.meal-text .muted{margin-top:8px;font-size:13px}.food{flex:0 0 104px;align-self:stretch;min-height:112px;background-image:url('../v5-static/01-chat-menu-recipe.png');background-repeat:no-repeat;background-size:923% auto;background-position:41.3% 34%;background-color:#fff0e5}.food.soup{background-position:41.3% 49%}.food.turkey{background-position:41.3% 64%}.recipe-photo{height:200px;border-radius:16px;background-image:url('../v5-static/01-chat-menu-recipe.png');background-size:369.25% auto;background-position:95.8% 21.5%;margin-bottom:20px}.actions{display:grid;gap:10px;margin-top:20px}.list-row{padding:16px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}.list-row:last-child{border-bottom:0}.nav-row{width:100%;text-align:left;display:flex;align-items:center;gap:14px;padding:17px}.nav-row:after{content:'›';margin-left:auto;font-size:24px}.nav-row small{display:block;margin-top:5px}.stepper{display:flex;align-items:center;gap:6px;flex-shrink:0}.stepper button{min-width:38px;padding:6px}.stepper span{min-width:22px;text-align:center}.service{background:var(--lavender)}.empty{padding:34px 18px;text-align:center;border:1px dashed #d5c9df;border-radius:16px;display:grid;gap:14px}.inline-input{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:white;margin-bottom:16px}.form-label{display:grid;gap:8px;margin:16px 0;font-size:15px}.form-label input,.form-label textarea,.form-label select{padding:12px;border:1px solid #d8cedf;border-radius:10px;width:100%;min-width:0;font-size:16px}.check{display:flex;gap:10px;align-items:center;padding:14px 0;line-height:1.5}.check input{accent-color:var(--orange);width:18px;height:18px;flex-shrink:0}.radio-card{margin:16px 0}.radio-card label{border-bottom:1px solid var(--line)}.radio-card label:last-child{border:0}.bottom-nav,.mobile-brand{display:none}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:12px;padding:12px 18px;max-width:90%;z-index:20;pointer-events:none;opacity:0;transition:opacity .12s}.toast.visible{opacity:1}dialog{width:min(460px,calc(100% - 24px));max-height:85dvh;border:1px solid var(--line);border-radius:20px;padding:24px;color:var(--ink);background:#fff}dialog::backdrop{background:#30243a55}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.dialog-head h2{font-size:21px}#edit-error{color:#a52622;margin:12px 0}#edit-form>.primary{width:100%}button.link{border:0;background:transparent;color:#644a88;text-decoration:underline}.preview-note{padding-top:14px}.history-items{margin-top:12px}.social-photo{height:160px;background:#fff0e5 url('../v5-static/04-family-stock-history-social.png') 95.5% 57% / 515% auto;border-radius:12px;margin:14px 0}.week-list{display:grid;gap:14px;margin-top:18px}.week-list h3{margin-bottom:8px}.danger{color:#a52622}.title-actions{margin-top:16px}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.preset-note{font-size:13px;margin:10px 0;color:var(--muted)}
@media(min-width:1500px){.detail{flex-basis:40%}.messages{padding:40px 60px}.composer-area{padding:20px 60px 30px}}
@media(max-width:1100px) and (min-width:761px){.app{grid-template-columns:84px minmax(0,1fr)}.brand{font-size:24px;letter-spacing:-1px}.brand span{font-size:12px}.side-nav button{display:grid;justify-items:center;text-align:center;padding:8px 2px;gap:4px;font-size:12px}.sidebar{padding:24px 6px}.side-bottom button{font-size:11px;padding:8px 3px;overflow-wrap:anywhere}.topbar{padding:14px 16px;gap:12px}h1{font-size:20px}.detail{flex-basis:49%;padding:18px}.messages{padding:22px 18px}.food{flex-basis:76px}.meal-text{padding:13px 8px 13px 0}.meal{gap:10px}.bubble{max-width:96%;padding:16px}.composer-area{padding:14px}.week-chip{font-size:12px}.notice{padding-left:16px}}
@media(max-width:760px){.app{display:flex;flex-direction:column;height:100dvh;min-height:0}.sidebar{display:none}.topbar{padding:12px 14px;gap:10px;flex-wrap:wrap;min-height:65px}.topbar h1{display:none}.mobile-brand{display:block;color:var(--orange);font-size:25px;font-weight:800;font-style:italic}.mobile-brand span{display:block;font-style:normal;font-size:11px;color:var(--ink);font-weight:400;text-align:center}.week-chip{font-size:12px;margin-left:auto;padding:8px}.cart-top{font-size:13px;padding:9px 10px;margin-left:0}.notice{padding:5px 14px;font-size:11px}.workspace{flex:1;overflow:hidden}.chat{width:100%}.detail{width:100%;max-width:none;flex:1;border:0;padding:20px 16px}.app.panel-open .chat{display:none}.messages{padding:22px 16px;gap:18px}.bubble{max-width:94%;padding:16px}.composer-area{padding:12px}.suggestions button{padding:8px 12px}.bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);padding:6px 8px max(6px,env(safe-area-inset-bottom));background:white;border-top:1px solid var(--line);flex-shrink:0}.bottom-nav button{border:0;background:transparent;display:grid;justify-items:center;gap:3px;padding:4px;font-size:12px}.bottom-nav .nav-icon{font-size:22px}.bottom-nav .active{color:#d95a06}.toast{bottom:84px}.food{flex-basis:108px}.page-head h2{font-size:24px}.recipe-photo{height:210px}.stepper{gap:2px}.stepper button{min-width:36px}.card{padding:16px}.list-row{flex-wrap:wrap}.list-row .grow{min-width:110px}.segmented button{padding:9px 10px;font-size:14px}}
@media(max-width:360px){.mobile-brand{font-size:22px}.week-chip{padding:7px;font-size:11px}.topbar{gap:6px;padding:10px}.cart-top{padding:7px;font-size:12px}.detail{padding:16px 12px}.food{flex-basis:85px}.meal-text strong{font-size:15px}.card{padding:13px}.recipe-photo{height:160px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.food{flex-basis:96px;height:96px;min-height:96px;align-self:center;background-size:1295.6% auto;background-position:40% 33.65%;border-radius:12px;margin:8px 0 8px 8px}.food.soup{background-position:40% 47.85%}.food.turkey{background-position:40% 61.72%}.nav-icon{display:inline-flex;align-items:center;justify-content:center}.nav-row[hidden]{display:none}
.meal-entry{display:grid;gap:0}.meal-entry>.link{min-height:28px;padding:4px 6px;text-align:right;font-size:13px}
@media(max-width:1100px) and (min-width:761px){.food{flex-basis:72px;height:72px;min-height:72px}}
@media(max-width:360px){.food{flex-basis:76px;height:76px;min-height:76px}}
