:root{color:#32302e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--cream:#f5e5df;--surface:#fffaf7;--white:#fff;--charcoal:#32302e;--muted:#32302ead;--paprika:#da7707;--paprika-dark:#9a4f05;--wine:#8a1920;--line:#32302e29;--shadow:0 24px 60px #602f142e;background:#f5e5df;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.app-shell{background:radial-gradient(circle at 50% -12%, #ffffffad, transparent 36%), var(--cream);place-items:center;min-height:100vh;padding:0;display:grid}.phone-frame{width:min(100vw,480px);min-height:100vh;padding:max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom));flex-direction:column;display:flex}.top-bar{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.brand-button,.nav-pills button,.mini-control,.icon-button{color:var(--charcoal);box-shadow:inset 0 0 0 1px var(--line);background:#ffffff9e;border:0}.brand-button{border-radius:16px;padding:10px 14px;font-size:1.04rem;font-weight:900}.nav-pills{background:#ffffff85;border-radius:18px;gap:6px;padding:5px;display:flex;box-shadow:inset 0 0 0 1px #32302e14}.nav-pills button{background:0 0;border-radius:14px;min-width:62px;padding:8px 10px;font-size:.9rem;font-weight:800}.nav-pills button.active{color:var(--white);background:var(--charcoal)}.landing-screen,.screen-stack,.decide-screen{flex-direction:column;flex:1;display:flex}.landing-screen{justify-content:space-between;padding:38px 0 8px}.eyebrow{color:var(--paprika-dark);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:900}h1,h2,p{margin-top:0}h1{letter-spacing:0;margin-bottom:10px;font-size:clamp(2.05rem,8vw,3.35rem);line-height:.96}.hero-line{color:var(--muted);font-size:1.28rem;font-weight:750}.access-card,.empty-card{box-shadow:var(--shadow);background:#ffffffbd;border-radius:28px;padding:18px}.access-card label{color:var(--muted);margin-bottom:8px;font-size:.86rem;font-weight:800;display:block}.access-card input{width:100%;height:56px;color:var(--charcoal);background:var(--white);box-shadow:inset 0 0 0 1px var(--line);border:0;border-radius:18px;outline:none;margin-bottom:12px;padding:0 16px;font-size:1.08rem;font-weight:750}.access-card input:focus{box-shadow:inset 0 0 0 2px var(--paprika)}.screen-stack{gap:18px;padding-top:26px}.mode-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mode-button{text-align:left;min-height:112px;color:var(--charcoal);background:#ffffffbd;border:0;border-radius:24px;padding:16px;box-shadow:inset 0 0 0 1px #32302e14}.mode-button span{margin-bottom:8px;font-size:1.3rem;font-weight:900;display:block}.mode-button small{color:var(--muted);font-size:.88rem;font-weight:750}.mode-button.selected{color:var(--white);background:var(--charcoal);box-shadow:0 16px 30px #32302e38}.mode-button.selected small{color:#ffffffb8}.mode-button:disabled{opacity:.58}.decide-screen{gap:12px;padding-top:16px}.decision-meta{justify-content:space-between;gap:10px;display:flex}.mini-control{border-radius:15px;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-weight:850;display:inline-flex}.meal-card{background:var(--white);min-height:0;box-shadow:var(--shadow);touch-action:pan-y;border-radius:30px;flex-direction:column;flex:1;display:flex;overflow:hidden}.meal-card img{object-fit:cover;background:#ead2c7;width:100%;height:min(48vh,430px);min-height:310px}.meal-card-body{flex-direction:column;flex:1;justify-content:space-between;gap:12px;padding:18px;display:flex}.meal-card h1{margin-bottom:0;font-size:clamp(2rem,8vw,2.85rem)}.time-chip{width:fit-content;color:var(--paprika-dark);background:#da77071a;border-radius:999px;align-items:center;gap:6px;padding:8px 10px;font-size:.88rem;font-weight:850;display:inline-flex}.tag-row{flex-wrap:wrap;gap:8px;display:flex}.tag-row span{color:#32302ebd;background:#f6eee9;border-radius:999px;padding:8px 10px;font-size:.84rem;font-weight:800}.decision-actions,.modal-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.decision-actions{padding-top:4px}.primary-action,.pass-action,.secondary-action{border:0;border-radius:20px;justify-content:center;align-items:center;gap:8px;min-height:56px;padding:0 14px;font-weight:950;display:inline-flex}.primary-action{color:var(--white);background:var(--paprika);box-shadow:0 16px 28px #da77073d}.pass-action,.secondary-action{color:var(--charcoal);box-shadow:inset 0 0 0 1px var(--line);background:#ffffffb3}.full-width{width:100%}.menu-header{align-items:center;gap:12px;display:flex}.icon-button{border-radius:16px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}.icon-button.danger{color:var(--wine)}.menu-list{gap:10px;padding-bottom:8px;display:grid;overflow:auto}.menu-item{background:#ffffffc2;border-radius:22px;grid-template-columns:64px 1fr 44px;align-items:center;gap:12px;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #32302e14}.menu-item img{object-fit:cover;border-radius:16px;width:64px;height:64px}.menu-item h2{margin-bottom:3px;font-size:1rem;line-height:1.1}.menu-item p,.empty-card p{color:var(--muted);margin-bottom:0;font-size:.9rem;font-weight:700}.empty-card{margin-top:22px}.empty-card h1{font-size:1.8rem}.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#241e1a38;place-items:end center;padding:18px;display:grid;position:fixed;inset:0}.glass-modal{width:min(100%,440px);color:var(--charcoal);background:linear-gradient(145deg,#ffffffbd,#fffaf780);border:1px solid #ffffff8f;border-radius:30px;padding:14px;box-shadow:0 26px 70px #291a1047}.glass-modal img{object-fit:cover;border-radius:22px;width:100%;height:150px}.glass-modal h2{margin:8px 0 4px;font-size:2rem}.glass-modal p:not(.eyebrow){color:var(--muted);font-weight:800}@media (width>=700px){.app-shell{padding:28px}.phone-frame{background:#f5e5dfb8;border-radius:38px;min-height:min(840px,100vh - 56px);box-shadow:0 34px 90px #602f1438}}@media (height<=720px){.meal-card img{height:38vh;min-height:230px}.meal-card h1{font-size:1.75rem}.meal-card-body{gap:8px}}
