@font-face{font-family:Nunito;src:url('/assets/fonts/nunito-semibold.woff2') format('woff2');font-weight:400 700;font-display:swap}
@font-face{font-family:Nunito;src:url('/assets/fonts/nunito-black.woff2') format('woff2');font-weight:800 1000;font-display:swap}
:root{color-scheme:dark;--bg:#0c1526;--panel:#131f34;--panel-dark:#101b2f;--line:#29364c;--ink:#f5f5f0;--muted:#a5b0c4;--lime:#d2f568;--lilac:#c2b4ff;--blue:#9edcf3;--orange:#ffb58c;--radius:24px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Nunito,system-ui,sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:4px}img{max-width:100%;display:block}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:900;line-height:1.13}h1{font-size:clamp(2.5rem,4.3vw,3.65rem);letter-spacing:-.045em;margin-bottom:20px}h2{font-size:1.6rem;letter-spacing:-.025em}h3{font-size:1.3rem}p{color:var(--muted)}[hidden]{display:none!important}.lime{color:var(--lime)}.muted{color:var(--muted)}.eyebrow{font-size:.73rem;font-weight:900;letter-spacing:.14em;color:var(--lime);display:flex;align-items:center;gap:8px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--lime)}.site-header{max-width:1240px;margin:0 auto;padding:25px 40px 23px;display:flex;align-items:center;gap:32px;border-bottom:1px solid #ffffff0a}.brand{text-decoration:none;display:flex;flex-direction:column;width:195px;flex-shrink:0}.brand img{width:180px;height:49px}.brand span{font-size:11px;letter-spacing:.22em;color:var(--muted);padding-left:4px;margin-top:0}.top-nav{display:flex;gap:10px;margin:auto}.nav-link{background:transparent;padding:10px 17px;color:var(--muted);border-radius:12px;font-size:.92rem;min-height:44px}.nav-link:hover,.nav-link.active{color:var(--ink);background:#1d293d}.header-login{font-size:.9rem!important;min-width:112px;min-height:44px!important}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 23px;min-height:52px;border-radius:14px;font-weight:900;text-decoration:none;transition:background .15s,transform .15s;border:1px solid transparent}.button:hover:not(:disabled){transform:translateY(-2px)}.button-lime{background:var(--lime);color:#182124;box-shadow:0 4px 0 #91ab40}.button-lime:hover{background:#dffd85}.button-outline{border-color:#3c4960;background:transparent}.button-outline:hover{background:#202c41}.button-lilac{background:var(--lilac);color:#261a41}.text-link{background:none;color:var(--muted);text-decoration:underline;text-underline-offset:5px;font-size:.86rem;min-height:44px;padding:9px 0}.text-link:hover{color:var(--ink)}.button svg,.nav-link svg{width:21px;height:21px;flex-shrink:0}#content{max-width:1160px;margin:0 auto;padding:32px 20px 0;min-height:550px;outline:none}.welcome-hero{background:#111c31;border:1px solid #243149;border-radius:30px;display:grid;grid-template-columns:1.13fr 1fr;min-height:390px;overflow:hidden;position:relative}.hero-copy{padding:44px 0 38px 38px;position:relative;z-index:1}.hero-copy .eyebrow{margin-bottom:26px}.hero-description{font-size:1.02rem;line-height:1.65;margin-bottom:26px}.hero-copy .text-link{display:block;margin-top:10px}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden}.hero-art>img{width:108%;max-width:108%;height:auto;aspect-ratio:1;object-fit:contain}.art-sticker{position:absolute;right:31px;bottom:40px;transform:rotate(-7deg);background:#fff2c8;color:#403922;border-radius:12px;padding:9px 15px;font-size:.84rem;font-weight:900;box-shadow:0 5px 14px #0003}.art-sticker span{background:#d2f568;border-radius:50%;padding:1px 5px;margin-right:5px}.entry-section{margin:30px 0 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.section-heading h2{margin:0;font-size:1.25rem}.section-heading>span{font-size:.83rem;color:var(--muted)}.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.entry-card{text-align:left;border:1px solid var(--line);border-radius:22px;background:var(--panel);padding:23px;display:flex;gap:19px;align-items:center;transition:transform .15s,border-color .15s;min-height:145px}.entry-card:hover{transform:translateY(-3px);border-color:var(--lilac)}.entry-symbol{background:#292744;color:var(--lilac);width:66px;height:70px;display:grid;place-items:center;border-radius:20px;transform:rotate(-5deg);font-size:36px;flex-shrink:0}.adult-entry .entry-symbol{background:#24362d;color:var(--lime);transform:rotate(5deg)}.entry-text{display:flex;flex-direction:column;gap:7px}.entry-text .eyebrow{color:var(--lilac);font-size:.67rem}.adult-entry .eyebrow{color:var(--lime)}.entry-text strong{font-size:1.5rem;font-weight:900;letter-spacing:-.03em;line-height:1.1}.entry-text>span:last-child{color:var(--muted);font-size:.82rem}.entry-arrow{margin-left:auto;font-size:26px;color:var(--muted)}.little-steps{display:flex;justify-content:center;align-items:center;gap:26px;color:var(--muted);font-size:.8rem;padding:28px 0}.little-steps b{color:var(--lime);margin-right:7px;font-size:.73rem}.little-steps i{color:#647087;font-style:normal}.site-footer{max-width:1120px;padding:20px 0 24px;margin:0 auto;border-top:1px solid #ffffff0b;display:flex;justify-content:space-between;gap:15px;font-size:.73rem;color:#8995ab}
.screen-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px}.screen-top h1{font-size:2.55rem;margin:7px 0}.screen-top p{margin:0}.back-button{background:transparent;border:1px solid var(--line);border-radius:12px;width:45px;height:45px;display:grid;place-items:center;font-size:23px}.page-kicker{display:flex;align-items:center;gap:13px;margin-bottom:14px}.page-kicker .eyebrow{margin:0}.notice,.sample-banner{border:1px solid #716135;background:#29281f;border-radius:14px;padding:13px 18px;color:#e7dba9;font-size:.85rem;margin-bottom:22px}.sample-banner{display:flex;justify-content:space-between;align-items:center;gap:16px}.sample-banner button{padding:4px 10px;color:#fff2c8;min-height:36px;flex-shrink:0}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin:22px 0}.profile-card{border:1px solid var(--line);background:var(--panel);border-radius:24px;min-height:230px;padding:26px;text-align:center}.profile-card:hover{border-color:var(--lime);background:#1a2a3c}.avatar{display:grid;place-items:center;margin:0 auto 15px;width:90px;height:90px;background:#383252;border-radius:30px;font-size:40px}.profile-card:nth-child(2n) .avatar{background:#2f4036}.profile-card h2{margin:8px 0}.profile-card p{margin:0;font-size:.9rem}.template-card{display:flex;align-items:center;gap:20px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:24px;width:100%;margin:12px 0;min-height:96px}.template-card strong{display:block;font-size:1.2rem}.template-card small{display:block;color:var(--muted);margin-top:5px}.template-card>span:first-child{font-size:35px}
.chooser-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px;align-items:start}.category-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 14px;margin-bottom:12px}.category-tab{display:flex;align-items:center;gap:8px;border-radius:13px;border:1px solid var(--line);background:var(--panel);padding:11px 17px;white-space:nowrap;min-height:48px;color:var(--muted);font-size:.9rem}.category-tab.active{border-color:var(--lime);background:var(--lime);color:#172426;font-weight:900}.category-tab.done::after{content:'✓'}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.food-card{position:relative;display:flex;flex-direction:column;text-align:left;background:#162239;border:2px solid #29354b;border-radius:22px;padding:9px;min-width:0;overflow:hidden}.food-card:hover{border-color:#6e7b91}.food-art{display:grid;place-items:center;min-height:139px;background:#e9eddb;border-radius:15px;overflow:hidden}.food-art img{width:91px;height:91px;object-fit:contain;filter:drop-shadow(0 7px 0 #0000000d);padding:6px}.food-card:nth-child(3n+2) .food-art{background:#f4e0d6}.food-card:nth-child(3n+3) .food-art{background:#ddd9f1}.food-card strong{font-size:1.04rem;line-height:1.2;margin:13px 6px 4px}.food-card small{color:var(--muted);font-size:.75rem;margin:0 6px 7px}.food-card .selection-check{position:absolute;top:17px;right:17px;background:#fff;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;border:2px solid #18263840;color:transparent}.food-card.selected{border-color:var(--lime);background:#243528}.food-card.selected .selection-check{background:var(--lime);color:#182638;border-color:var(--lime)}.bag-summary{background:#152138;border:1px solid var(--line);border-radius:24px;padding:22px;position:sticky;top:22px}.summary-title{display:flex;align-items:center;gap:12px}.summary-title h2{font-size:1.25rem;margin:0}.summary-title span{font-size:26px}.bag-summary>p{font-size:.82rem;margin:12px 0}.bag-slot{border:1px dashed #425069;border-radius:12px;min-height:49px;display:flex;align-items:center;gap:10px;margin:9px 0;padding:10px 12px;color:#8c9ab0;font-size:.82rem}.bag-slot.filled{border:1px solid #43563c;color:#ecf5dc;background:#223529}.bag-slot img{width:29px;height:29px}.bag-summary .button{width:100%;padding:13px 10px;margin-top:16px;gap:9px}.progress-track{height:6px;border-radius:5px;background:#29364c;margin-top:16px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--lime);transition:width .2s}.chooser-actions{display:flex;justify-content:space-between;align-items:center;margin:22px 0 28px;gap:12px}.chooser-actions p{font-size:.85rem;margin:0}.complete-panel{max-width:640px;margin:20px auto;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:36px}.complete-panel .celebration{font-size:70px;margin:5px 0 20px}.complete-panel h1{font-size:2.7rem}.complete-panel .button{margin-top:12px}.picked-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:22px 0}.picked-row img{width:48px;height:48px}
.adult-nav{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:14px;margin:0 0 28px;overflow:auto}.adult-nav button{display:flex;gap:9px;align-items:center;white-space:nowrap}.adult-nav svg{width:18px;height:18px}.adult-columns{display:grid;grid-template-columns:1.7fr 1fr;gap:22px}.panel{padding:25px;border:1px solid var(--line);background:var(--panel);border-radius:24px}.panel h2{margin-bottom:12px}.panel p{margin-bottom:20px}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.stat{background:var(--panel);border:1px solid var(--line);padding:20px;border-radius:20px}.stat strong{display:block;font-size:2rem;font-weight:900;color:var(--lime)}.stat span{color:var(--muted);font-size:.85rem}.inventory-toolbar{display:flex;align-items:center;gap:16px;justify-content:space-between;margin-bottom:20px}.search-field{background:#172338;border:1px solid #39485f;border-radius:13px;padding:13px 16px;color:var(--ink);width:min(380px,100%);min-height:48px}.empty-state{text-align:center;border:1px dashed #42506a;border-radius:22px;padding:35px 24px;margin:18px 0}.empty-state .empty-icon{font-size:42px;display:block;margin-bottom:16px}.empty-state h2{font-size:1.4rem}.bag-list{display:grid;gap:16px}.bag-list-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:23px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.bag-list-card h3{margin:0 0 8px}.bag-list-card p{margin:0;font-size:.85rem}.status-pill{display:inline-block;border-radius:50px;background:#243e36;color:var(--lime);padding:5px 10px;font-size:.73rem}.inline-list{list-style:none;padding:0;margin:18px 0}.inline-list li{padding:10px 0;border-bottom:1px solid var(--line);color:var(--muted)}
.modal-overlay{position:fixed;inset:0;background:#050b16d9;z-index:30;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.modal-card{position:relative;background:#152137;border:1px solid #3b4960;border-radius:26px;width:100%;max-width:470px;padding:30px;box-shadow:0 20px 80px #0008;max-height:calc(100vh - 48px);overflow:auto}.modal-card h2{font-size:1.9rem;margin:14px 0 9px}.modal-card p{font-size:.92rem}.close-modal{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;background:#253248;font-size:23px}.modal-symbol{font-size:28px;color:var(--lime)}.form-grid{display:grid;gap:16px;margin-top:23px}.form-grid label{display:grid;gap:7px;font-size:.85rem;color:#d7deeb}.form-grid input,.form-grid select{width:100%;border:1px solid #48546b;background:#0e1a2d;color:var(--ink);border-radius:12px;min-height:48px;padding:12px 13px;min-width:0}.form-grid input::placeholder{color:#77859d}.form-grid .button{width:100%;margin-top:4px}.form-error{border-radius:10px;background:#452c34;color:#ffd6d6;padding:12px;margin:0;font-size:.85rem}.form-foot{margin:20px 0 0!important;text-align:center}.form-foot button{color:var(--lime)}.form-hint{font-size:.78rem;color:var(--muted);line-height:1.45}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);background:var(--lime);color:#182629;border:1px solid #e3fc9a;border-radius:14px;padding:14px 24px;z-index:50;box-shadow:0 8px 30px #0007}.offline-banner{background:#483d28;color:#fff0c5;padding:14px 20px;text-align:center;font-size:.9rem}.skip-link{position:fixed;top:-90px;left:15px;z-index:60;background:var(--lime);color:#182629;padding:15px}.skip-link:focus{top:10px}.loading{padding:45px;text-align:center;color:var(--muted)}
.photo-field>input{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0;overflow:hidden}.photo-picker{display:flex;align-items:center;gap:13px;border:1px dashed #5a6980;background:#0e1a2d;border-radius:15px;padding:10px;cursor:pointer}.photo-picker:hover{border-color:var(--lime)}.photo-preview{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:11px;background:#223049 center/cover no-repeat;color:var(--lime);font-size:28px}.photo-preview.has-photo{box-shadow:inset 0 0 0 2px #d2f568}.photo-picker strong,.photo-picker small{display:block}.photo-picker small{margin-top:3px;color:var(--muted);font-size:.72rem}
.edit-food{position:absolute;right:14px;bottom:12px;border:1px solid #536079;background:#0e192b;color:var(--lime);border-radius:9px;padding:6px 11px;font-size:.72rem;font-weight:900}.edit-food:hover{background:#233149}.food-card:has(.edit-food) small{padding-right:48px}
.food-art{width:100%;height:auto;min-height:0;aspect-ratio:1/1}
.food-art img.custom-photo{width:100%;height:100%;min-height:0;padding:0;object-fit:contain;object-position:center;background:#fff;filter:none}
.profile-actions{display:grid;gap:8px;margin-top:15px}.profile-actions .button{min-height:43px;padding:9px 12px}.profile-actions .text-link{min-height:36px;padding:5px}.pairing-code{margin:22px 0 14px;padding:18px;border:1px solid #53663f;border-radius:16px;background:#0c1728;color:var(--lime);font-size:clamp(2rem,10vw,3rem);font-weight:1000;letter-spacing:.12em;text-align:center}.paired-device .top-nav [data-action="welcome"],.paired-device .top-nav [data-action="adult"]{display:none}.paired-device .top-nav [data-action="start-chooser"]{flex:1}.paired-device .header-login{min-width:52px!important;width:52px;padding:8px}
.current-picks{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:15px;border:1px solid #475a3d;border-radius:18px;background:#17283a}.current-picks>span{font-size:29px}.current-picks>div{display:grid;flex:1}.current-picks small{color:var(--muted)}.current-picks .button{min-height:42px;padding:9px 13px}
@media(max-width:560px){.current-picks{align-items:flex-start;flex-wrap:wrap}.current-picks .button{width:100%}.paired-device .top-nav{justify-content:stretch}}
@media(min-width:1300px){#content{padding-top:38px}.welcome-hero{min-height:427px}.hero-copy{padding-top:48px}.hero-art>img{width:100%}}
@media(max-width:1000px){.site-header{padding:20px 25px}.brand{width:165px}.brand img{width:165px}.top-nav{gap:0}.nav-link{padding:10px 13px}.hero-copy{padding:30px 0 26px 28px}.hero-copy .eyebrow{font-size:.63rem;margin-bottom:20px}.welcome-hero{min-height:350px;grid-template-columns:1.15fr 1fr}h1{font-size:2.75rem}.hero-description{font-size:.92rem}.entry-card{padding:19px;gap:13px}.entry-symbol{width:52px;height:60px}.entry-text strong{font-size:1.27rem}.entry-text>span:last-child{font-size:.79rem}.site-footer{margin:0 25px}.chooser-layout{grid-template-columns:minmax(0,1fr) 245px;gap:18px}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.little-steps{gap:17px}}
@media(max-width:720px){.site-header{padding:17px 20px;gap:10px;flex-wrap:wrap}.brand{width:160px}.brand img{width:155px;height:43px}.brand span{font-size:10px}.header-login{margin-left:auto}.top-nav{order:3;width:100%;justify-content:space-around;margin-top:12px;padding:4px;background:#131f33;border:1px solid var(--line);border-radius:15px}.top-nav .nav-link{flex:1;font-size:.83rem;min-height:42px}#content{padding:20px 16px 0}.welcome-hero{grid-template-columns:1fr 1fr;min-height:340px}.hero-copy{padding:26px 0 24px 22px}.hero-copy h1{font-size:2.15rem;line-height:1.08}.hero-copy .eyebrow{font-size:.6rem;letter-spacing:.08em}.hero-description{font-size:.85rem;margin-bottom:20px}.hero-copy .button{font-size:.9rem;padding:12px 14px;gap:16px}.hero-art>img{max-width:125%;width:125%}.art-sticker{right:16px;bottom:53px;font-size:.7rem;padding:8px}.hero-copy .text-link{font-size:.75rem}.entry-section{margin-top:24px}.section-heading>span{display:none}.entry-grid{gap:13px}.entry-card{padding:18px 15px;min-height:158px;align-items:flex-start;position:relative;gap:12px;flex-direction:column}.entry-symbol{width:40px;height:40px;border-radius:13px;font-size:26px}.entry-text{gap:6px}.entry-arrow{position:absolute;right:17px;top:20px;font-size:23px}.entry-text .eyebrow{font-size:.61rem}.entry-text strong{font-size:1.24rem}.little-steps{font-size:.7rem;gap:12px;padding:22px 0}.little-steps b{display:block}.little-steps i{display:none}.site-footer{font-size:.65rem;margin:0 20px;padding:18px 0;gap:15px}.screen-top h1{font-size:2.1rem}.screen-top{align-items:flex-start}.screen-top p{font-size:.88rem}.chooser-layout{grid-template-columns:1fr}.bag-summary{position:static;margin-bottom:22px}.bag-summary .slots{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.bag-slot{margin:0;min-height:44px}.bag-summary .button{min-height:54px}.food-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.food-art{min-height:115px}.food-art img{width:83px;height:83px}.food-card strong{font-size:.95rem}.sample-banner{font-size:.78rem;padding:10px 14px}.adult-columns{grid-template-columns:1fr}.adult-nav .nav-link{padding:10px;font-size:.85rem}.inventory-toolbar{gap:12px}.inventory-toolbar .button{padding:12px;gap:8px;white-space:nowrap}.stat{padding:15px}.stats-row{gap:9px}.stat span{font-size:.75rem}}
@media(max-width:440px){.welcome-hero{display:flex;flex-direction:column}.hero-copy{padding:26px 24px 0}.hero-copy h1{font-size:2.65rem}.hero-copy .eyebrow{font-size:.65rem}.hero-description{font-size:.95rem}.hero-copy .button{font-size:.95rem;min-height:50px}.hero-copy .text-link{font-size:.78rem}.hero-art{height:220px;margin-top:-3px}.hero-art>img{width:290px;max-width:100%;height:290px;object-fit:contain}.art-sticker{bottom:27px;right:25px}.section-heading h2{font-size:1.08rem}.entry-grid{grid-template-columns:1fr}.entry-card{flex-direction:row;align-items:center;min-height:119px;padding:20px;gap:17px}.entry-symbol{width:48px;height:55px}.entry-text strong{font-size:1.25rem}.entry-arrow{position:static;margin-left:auto}.entry-text>span:last-child{font-size:.72rem;max-width:190px}.little-steps{font-size:.65rem;align-items:flex-start}.site-footer{display:block}.site-footer>span{display:block;margin:4px 0}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-art{min-height:125px}.screen-top{flex-wrap:wrap}.screen-top .button{min-height:44px;font-size:.85rem}.modal-overlay{padding:14px}.modal-card{padding:25px;max-height:calc(100vh - 28px)}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-card{min-height:196px;padding:18px 10px}.profile-card h2{font-size:1.25rem}.avatar{width:72px;height:72px}.profile-card p{font-size:.76rem}}
.hero-art>img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:contain}
.scroll-cue{display:none}
.steps-reel{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}
.step-panel{position:relative;overflow:hidden;min-height:260px;padding:26px;border:1px solid var(--line);border-radius:24px;background:#121f34}
.step-panel:nth-child(2){background:#182438}.step-panel:nth-child(3){background:#152537}
.step-number{position:absolute;right:12px;top:-28px;color:#ffffff08;font-size:10rem;font-weight:1000;line-height:1}
.step-icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:24px;border-radius:17px;background:#27372e;color:var(--lime);font-size:27px;transform:rotate(-5deg)}
.step-panel:nth-child(2) .step-icon{background:#302d4e;color:var(--lilac);transform:rotate(5deg)}
.step-panel h2{position:relative;font-size:1.7rem;margin:10px 0}.step-panel>p:last-of-type{position:relative;font-size:.86rem;margin:0;max-width:28rem}.reel-cue{display:none}
@media(max-width:560px){
  html,body{width:100%;max-width:100%;height:100%;overflow:hidden}
  body{height:100svh;display:flex;flex-direction:column;overscroll-behavior:none}
  .site-header{min-height:92px;flex:0 0 auto}
  #content{width:100%;max-width:100%;flex:1 1 auto;min-height:0;padding:10px;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}
  .welcome-hero{display:flex;flex-direction:column;height:100%;min-height:100%;width:100%;max-width:100%;overflow:hidden;padding-bottom:72px;scroll-snap-align:start;scroll-snap-stop:always}
  .welcome-hero::after{content:'';position:absolute;z-index:2;left:0;right:0;bottom:0;height:76px;background:linear-gradient(180deg,transparent 0%,#0d182b 42%,#0d182b 100%);pointer-events:none}
  .entry-grid{grid-template-columns:1fr}
  .hero-copy{padding:18px 15px 0}
  .hero-copy h1{font-size:clamp(1.95rem,10vw,2.4rem);max-width:100%;overflow-wrap:break-word;margin-bottom:14px}
  .hero-copy .eyebrow{font-size:.58rem}
  .hero-description{font-size:.84rem;margin-bottom:15px}
  .hero-copy .button{font-size:.9rem;min-height:48px}
  .hero-art{height:174px;min-height:174px;margin-top:-9px;margin-bottom:4px}
  .hero-art>img{width:235px;max-width:100%;height:235px;left:50%;right:auto;transform:translateX(-50%);object-fit:contain}
  .art-sticker{bottom:42px;right:12px;z-index:1}
  .scroll-cue{display:flex;position:absolute;z-index:4;left:50%;bottom:12px;transform:translateX(-50%);align-items:center;gap:9px;background:#101d31f2;border:1px solid #415038;color:var(--lime);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;min-height:44px;padding:7px 12px 7px 16px;border-radius:999px;box-shadow:0 7px 22px #050a13aa;white-space:nowrap}
  .scroll-cue b{display:grid;place-items:center;width:24px;height:24px;border:1px solid #d2f56888;border-radius:50%;font-size:15px;animation:scroll-bounce 1.25s ease-in-out infinite}
  .entry-section{scroll-margin-top:12px}
  .steps-reel{display:block;margin:10px 0 0}
  .step-panel{height:100%;min-height:100%;margin:0;padding:clamp(38px,8vh,78px) 28px 86px;border-radius:28px;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always;opacity:.35;transform:scale(.965);transition:opacity .35s ease,transform .35s ease}
  .step-panel:target,.step-panel.reel-active{opacity:1;transform:scale(1)}
  .step-number{top:22px;right:22px;font-size:15rem;color:#ffffff0a}
  .step-icon{width:72px;height:72px;border-radius:22px;font-size:36px;margin-bottom:34px}
  .step-panel .eyebrow{font-size:.68rem;margin-bottom:14px}
  .step-panel h2{font-size:clamp(2.5rem,13vw,3.7rem);line-height:1.02;margin:0 0 24px;letter-spacing:-.045em}
  .step-panel>p:last-of-type{font-size:1.05rem;line-height:1.65;max-width:22rem}
  .step-panel .button{align-self:flex-start;margin-top:28px}
  .reel-cue{display:flex;position:absolute;left:50%;bottom:24px;transform:translateX(-50%);align-items:center;gap:10px;background:transparent;color:var(--lime);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;min-height:48px}
  .reel-cue b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d2f56888;border-radius:50%;font-size:16px;animation:scroll-bounce 1.25s ease-in-out infinite}
  .entry-section{min-height:100%;padding-top:28px;scroll-snap-align:start;scroll-snap-stop:always}
  .site-footer{display:none}
  .site-header{padding:11px 14px 10px;gap:7px}
  .brand{width:132px}.brand img{width:132px;height:38px}.brand span{font-size:8px;letter-spacing:.18em}
  .header-login{min-width:98px!important;min-height:42px!important;padding:9px 13px;font-size:.78rem!important}
  .top-nav{margin-top:7px;border-radius:13px}.top-nav .nav-link{min-height:38px;padding:7px 5px;font-size:.76rem}
  .page-kicker{margin:2px 0 8px;gap:10px}.page-kicker .back-button{width:40px;height:40px}
  .page-kicker .eyebrow{font-size:.62rem;letter-spacing:.1em}
  .screen-top{margin-bottom:14px;gap:9px}.screen-top h1{font-size:clamp(1.8rem,9vw,2.2rem);margin:3px 0 5px}.screen-top p{font-size:.82rem}
  .status-pill{font-size:.68rem;padding:4px 9px}
  .chooser-layout,.chooser-layout>div,.category-tabs,.food-grid,.chooser-actions,.bag-summary,.bag-summary .slots{width:100%;max-width:100%;min-width:0}
  .category-rail{position:relative;width:100%;max-width:100%;margin:4px 0 10px}
  .category-tabs{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;padding:0 52px 5px 0;margin:0;scroll-snap-type:x proximity}
  .category-tabs::-webkit-scrollbar{display:none}
  .category-tab{min-height:43px;padding:9px 14px;scroll-snap-align:start}
  .category-more{position:absolute;z-index:3;right:0;top:0;display:grid;place-items:center;width:46px;height:43px;border-radius:13px;background:linear-gradient(90deg,#0c152600 0%,#0c1526 30%);color:var(--lime);font-size:25px;font-weight:900;pointer-events:none}
  .chooser-layout .section-heading{margin-bottom:9px}.chooser-layout .section-heading h2{font-size:1.08rem}
  .food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .empty-state{width:100%;max-width:100%;overflow:hidden;padding:22px 16px;margin:8px 0 12px}
  .empty-state p{overflow-wrap:anywhere}
  .chooser-layout .empty-state .empty-icon{font-size:30px;margin-bottom:8px}
  .chooser-layout .empty-state h2{font-size:1.16rem;margin-bottom:7px}
  .chooser-layout .empty-state p{font-size:.82rem;line-height:1.45;margin-bottom:0}
  .chooser-actions{flex-wrap:wrap;align-items:flex-start}
  .chooser-actions p{flex:1 1 170px;min-width:0}
  .chooser-actions .button{flex:0 0 auto;margin-left:auto}
  .bag-summary{overflow:hidden;padding:18px}
  .bag-summary .slots{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bag-slot{min-width:0;overflow:hidden}
  .bag-slot span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .screen-top{max-width:100%;min-width:0}
  .screen-top>div{min-width:0}
  .screen-top h1{overflow-wrap:anywhere}
}
@keyframes scroll-bounce{0%,100%{transform:translateY(-2px)}50%{transform:translateY(5px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.button:hover,.entry-card:hover{transform:none}}
