:root {
  --navy:#102a43;
  --navy-2:#183f63;
  --blue:#1769ff;
  --sky:#e8f2ff;
  --gold:#f6b73c;
  --green:#1b8a5a;
  --ink:#13293d;
  --muted:#60758a;
  --line:#d7e3ef;
  --paper:#fff;
  --bg:#f3f7fb;
  --danger:#c63d42;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#13293d;
  background:#f3f7fb;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink)}
button,input,select,textarea{font:inherit}
button{touch-action:manipulation}
.chef-backdrop{position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 8% 10%,rgba(23,105,255,.14),transparent 34%),radial-gradient(circle at 90% 4%,rgba(246,183,60,.16),transparent 30%),linear-gradient(180deg,#eef6ff 0,#f8fbfe 55%,#edf4f9 100%)}
.auth-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,540px);gap:clamp(30px,6vw,92px);align-items:center;min-height:100vh;max-width:1220px;margin:auto;padding:40px 28px}
.auth-hero{display:grid;gap:16px;max-width:620px}.auth-hero h1{margin:0;font-size:clamp(3rem,7vw,6rem);line-height:.92;letter-spacing:-.06em;color:var(--navy)}.auth-hero p{max-width:560px;margin:0;color:#49677f;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65}
.chef-mark{display:grid;place-items:center;width:82px;height:82px;border-radius:26px;background:linear-gradient(145deg,var(--navy),#1769ff);color:#fff;box-shadow:0 20px 45px rgba(16,42,67,.25);font-weight:950;font-size:1.35rem}.chef-mark span{display:grid;place-items:center;width:54px;height:54px;border:2px solid rgba(255,255,255,.65);border-radius:18px}.chef-mark.small{width:48px;height:48px;border-radius:15px;font-size:.78rem;box-shadow:none}.chef-mark.small span{width:31px;height:31px;border-radius:10px}
.eyebrow{color:#1769ff;font-size:.75rem;font-weight:950;letter-spacing:.14em;text-transform:uppercase}.privacy-pill,.privacy-tag{width:max-content;max-width:100%;padding:9px 13px;border:1px solid #b8d7ca;border-radius:999px;background:#edf9f3;color:#16704a;font-size:.82rem;font-weight:850}
.auth-card,.surface{border:1px solid rgba(191,210,226,.9);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 22px 58px rgba(29,64,96,.13)}.auth-card{padding:10px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;padding:5px;border-radius:17px;background:#eaf1f8}.auth-tabs button{min-height:46px;border:0;border-radius:13px;background:transparent;color:#516a80;font-weight:900;cursor:pointer}.auth-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 7px 18px rgba(25,63,97,.11)}
.auth-form{display:grid;gap:16px;padding:26px}.auth-form h2,.section-head h1,.section-head h2{margin:3px 0;color:var(--navy);letter-spacing:-.025em}.auth-form p,.section-head p{margin:5px 0 0;color:var(--muted);line-height:1.5}.two-col,.profile-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
label{display:grid;gap:6px;color:#294b68;font-size:.84rem;font-weight:850}input,select,textarea{width:100%;border:1px solid #c9d9e7;border-radius:12px;background:#fff;color:var(--ink);padding:12px 13px;outline:none;transition:border .15s,box-shadow .15s}textarea{resize:vertical;line-height:1.5}input:focus,select:focus,textarea:focus{border-color:#5795eb;box-shadow:0 0 0 4px rgba(23,105,255,.11)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:10px 15px;border:1px solid transparent;border-radius:12px;font-weight:900;cursor:pointer;text-decoration:none}.btn.primary{background:linear-gradient(135deg,#1769ff,#0754d6);color:#fff;box-shadow:0 10px 22px rgba(23,105,255,.2)}.btn.gold{background:linear-gradient(135deg,#ffd16d,#f0aa22);color:#3f2c05}.btn.secondary{border-color:#bdd0e2;background:#f7fbff;color:var(--navy)}.btn.ghost{border-color:#cbdbe9;background:#fff;color:#294b68}.btn.danger{border-color:#f0c4c6;background:#fff4f4;color:#a72f34}.btn.wide{width:100%}.btn:disabled{cursor:wait;opacity:.58}
.message{padding:12px 14px;border:1px solid #cbdbe8;border-radius:12px;background:#f4f8fc;color:#294b68;line-height:1.45}.message.error{border-color:#edb7ba;background:#fff1f2;color:#9c2f35}.message.success{border-color:#b8ddcd;background:#effaf4;color:#126b46}.auth-card>.message{margin:0 26px 24px}
.app-shell{max-width:1500px;margin:auto;padding:18px 24px 60px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 2px 16px}.brand-button{display:flex;align-items:center;gap:11px;border:0;background:transparent;color:var(--navy);cursor:pointer;text-align:left}.brand-button strong,.brand-button small{display:block}.brand-button strong{font-size:1.1rem}.brand-button small{margin-top:2px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:10px}.code-pill{padding:8px 11px;border:1px solid #c8d9e7;border-radius:999px;background:#fff;color:#34546f;font-size:.78rem;font-weight:900}
.app-nav{position:sticky;top:8px;z-index:20;display:flex;gap:6px;width:max-content;max-width:100%;margin:0 auto 24px;padding:6px;border:1px solid #cbdce9;border-radius:17px;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(27,62,92,.12);backdrop-filter:blur(12px);overflow:auto}.app-nav button{display:flex;align-items:center;gap:7px;min-height:43px;padding:9px 16px;border:0;border-radius:12px;background:transparent;color:#587086;font-weight:900;white-space:nowrap;cursor:pointer}.app-nav button.active{background:var(--navy);color:#fff}.app-nav b{display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#e5eff8;color:#31536f;font-size:.72rem}.app-nav button.active b{background:#fff;color:var(--navy)}
.app-view{display:none}.app-view.active{display:block}.welcome-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(24px,5vw,54px);border-radius:28px;background:linear-gradient(125deg,#102a43,#144f7c 58%,#1769ff);color:#fff;box-shadow:0 24px 60px rgba(16,42,67,.25)}.welcome-panel h1{margin:5px 0;font-size:clamp(2rem,5vw,4rem);letter-spacing:-.045em}.welcome-panel p{max-width:700px;margin:0;color:#d8e8f6;font-size:1.02rem}.welcome-panel .eyebrow{color:#8fc0ff}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.quick-grid button{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;min-height:108px;padding:18px;border:1px solid #cfdfec;border-radius:20px;background:#fff;color:var(--navy);cursor:pointer;text-align:left;box-shadow:0 9px 25px rgba(27,63,94,.08)}.quick-grid button:hover{border-color:#82afe6;transform:translateY(-2px)}.quick-grid strong,.quick-grid small{grid-column:2}.quick-grid small{color:var(--muted);line-height:1.4}.quick-icon{grid-row:1/3;display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#eaf3ff;color:#1769ff;font-size:.68rem;font-weight:950}
.surface{padding:20px}.recent-surface{margin-top:18px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.section-head.compact{align-items:center;margin-bottom:10px}.section-head.sticky-head{position:sticky;top:78px;z-index:15;padding:12px 2px;background:rgba(243,247,251,.93);backdrop-filter:blur(8px)}.section-head h1{font-size:clamp(2rem,4vw,3.3rem)}.section-head h2{font-size:1.35rem}.text-button{border:0;background:transparent;color:#1769ff;font-weight:900;cursor:pointer}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:13px}.menu-grid.large{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.menu-card{display:grid;gap:12px;padding:17px;border:1px solid #d3e0eb;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbfe);box-shadow:0 8px 22px rgba(22,56,86,.07)}.menu-card h3{margin:0;color:var(--navy)}.menu-card p{margin:0;color:var(--muted);font-size:.88rem}.menu-meta{display:flex;flex-wrap:wrap;gap:6px}.menu-meta span{padding:5px 8px;border-radius:999px;background:#eaf2fa;color:#42617a;font-size:.73rem;font-weight:850}.menu-actions{display:flex;flex-wrap:wrap;gap:7px}.menu-actions .btn{min-height:36px;padding:7px 10px;font-size:.8rem}.empty-state{padding:30px;border:1px dashed #bfd1e1;border-radius:16px;background:#f8fbfd;color:var(--muted);text-align:center}
.source-panel{margin-bottom:16px}.source-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(300px,1.25fr);gap:14px;margin:14px 0}.file-drop{place-content:center;min-height:190px;padding:24px;border:2px dashed #9ebbd4;border-radius:17px;background:#f5faff;text-align:center;cursor:pointer}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop strong,.file-drop small{display:block}.file-drop strong{color:#155dba;font-size:1.02rem}.file-drop small{margin-top:5px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:9px}
.dish-list{display:grid;gap:14px}.dish-card{border:1px solid #ceddea;border-radius:18px;background:#fbfdff;overflow:hidden}.dish-head{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,.6fr) auto;gap:10px;align-items:end;padding:15px;background:#eef5fb}.dish-head .btn{min-height:40px}.ingredient-list{display:grid;gap:8px;padding:12px}.ingredient-row{display:grid;grid-template-columns:minmax(160px,1.5fr) repeat(4,minmax(85px,.65fr)) auto;gap:8px;align-items:end;padding:10px;border:1px solid #d9e5ef;border-radius:13px;background:#fff}.ingredient-row label{font-size:.72rem}.include-label{display:flex;align-items:center;justify-content:center;gap:5px;min-height:43px}.include-label input{width:18px}.row-actions{display:flex;justify-content:flex-end;padding:0 12px 12px}.editor-footer{position:sticky;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px;padding:13px 15px;border:1px solid #c8d9e8;border-radius:17px;background:rgba(255,255,255,.95);box-shadow:0 16px 35px rgba(24,58,88,.17);backdrop-filter:blur(10px)}.editor-footer strong,.editor-footer small{display:block}.editor-footer small{color:var(--muted)}
.requirements-layout{display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:16px}.menu-selector{position:sticky;top:86px;align-self:start}.menu-selector>div:not(.section-head){display:grid;gap:7px;margin-bottom:14px}.menu-select-row{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #d6e2ec;border-radius:12px;background:#fbfdff;color:#294b68;font-weight:850}.menu-select-row input{width:18px}.totals-list{display:grid;gap:8px}.total-row{display:grid;grid-template-columns:minmax(160px,1fr) repeat(2,minmax(105px,.45fr)) auto;gap:10px;align-items:center;padding:13px;border:1px solid #d7e3ed;border-radius:13px;background:#fbfdff}.total-row strong{color:var(--navy)}.total-row span{color:#47657d}.total-row label{display:flex;align-items:center;gap:6px}.total-row input{width:18px}.buyer-box{display:grid;grid-template-columns:minmax(180px,.6fr) auto;gap:12px;align-items:end;margin-top:16px;padding:16px;border:1px solid #ecd19a;border-radius:16px;background:#fff9eb}.buyer-box small{grid-column:1/-1;color:#6f5a2d}
.profile-card{display:grid;grid-template-columns:minmax(240px,.6fr) minmax(0,1.4fr);gap:22px}.recovery-card{display:grid;place-items:center;align-content:center;gap:9px;min-height:240px;padding:22px;border-radius:18px;background:linear-gradient(145deg,#102a43,#1769ff);color:#fff;text-align:center}.recovery-card span{color:#bcdcff}.recovery-card strong{font-size:1.45rem;letter-spacing:.08em}.profile-form{align-content:start}.profile-form button{grid-column:1/-1}
.toast{position:fixed;right:18px;bottom:18px;z-index:100;max-width:min(420px,calc(100vw - 36px));padding:13px 16px;border-radius:13px;background:#102a43;color:#fff;box-shadow:0 14px 36px rgba(10,32,52,.28);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#9d3035}.toast.success{background:#126b46}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr;max-width:680px}.auth-hero{padding-top:20px}.auth-hero h1{font-size:4rem}.quick-grid{grid-template-columns:1fr}.source-grid,.requirements-layout,.profile-card{grid-template-columns:1fr}.menu-selector{position:static}.ingredient-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ingredient-row label:first-child{grid-column:1/-1}.total-row{grid-template-columns:1fr 1fr}.total-row strong{grid-column:1/-1}}
@media(max-width:600px){.auth-shell{padding:22px 14px}.auth-hero h1{font-size:3.25rem}.auth-card{border-radius:20px}.auth-form{padding:20px 14px}.two-col,.profile-form{grid-template-columns:1fr}.app-shell{padding:10px 11px 90px}.app-header{align-items:flex-start}.header-actions{display:grid;justify-items:end}.code-pill{font-size:.67rem}.app-nav{position:fixed;inset:auto 8px 8px;width:auto;justify-content:space-around;margin:0;padding:5px;border-radius:16px}.app-nav button{display:grid;place-items:center;gap:1px;padding:7px 10px;font-size:.74rem}.welcome-panel{display:grid;padding:26px 20px}.welcome-panel h1{font-size:2.25rem}.section-head{align-items:flex-start}.section-head h1{font-size:2.1rem}.surface{padding:14px;border-radius:18px}.source-grid{grid-template-columns:1fr}.dish-head{grid-template-columns:1fr 1fr}.dish-head label:first-child{grid-column:1/-1}.dish-head .btn{grid-column:1/-1}.ingredient-row{grid-template-columns:1fr 1fr}.ingredient-row label:first-child{grid-column:1/-1}.editor-footer{bottom:73px}.buyer-box{grid-template-columns:1fr}.buyer-box small{grid-column:1}.total-row{grid-template-columns:1fr}.total-row strong{grid-column:1}.profile-form button{grid-column:1}.privacy-tag{width:auto}.menu-grid.large{grid-template-columns:1fr}}

/* Chef NuG green onboarding and mobile workspace */
:root{
  --navy:#075c3c;
  --navy-2:#08734a;
  --blue:#08734a;
  --sky:#e9f6ed;
  --gold:#b9ef56;
  --green:#08734a;
  --ink:#12251b;
  --muted:#65776d;
  --line:#d7e3da;
  --bg:#f4f8f2;
}
body{background:#eaf2eb}
.chef-backdrop{background:radial-gradient(circle at 50% 0,#dff2e4 0,#edf4ee 42%,#e6eee7 100%)}
.auth-shell{display:grid;grid-template-columns:1fr;align-content:start;gap:0;width:min(100%,590px);min-height:100vh;padding:22px;margin:auto}
.auth-hero{display:grid;justify-items:center;gap:10px;max-width:none;padding:16px 28px 20px;text-align:center}
.auth-hero .chef-logo{display:block;width:min(100%,320px);height:auto;aspect-ratio:1;border:1px solid #173344;border-radius:28px;object-fit:cover;background:#02050d;box-shadow:0 18px 42px rgba(4,35,48,.28)}
.auth-hero h1{margin:0;font-size:clamp(2rem,7vw,2.55rem);line-height:1.08;letter-spacing:-.045em;color:var(--ink)}
.auth-hero p{max-width:450px;font-size:.95rem;line-height:1.55;color:var(--muted)}
.setup-progress{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px}
.setup-progress span{width:42px;height:5px;border-radius:99px;background:#dce5dd}
.setup-progress span:first-child{width:68px;background:var(--forest,#075c3c)}
.auth-card{padding:9px;border-color:#dce7de;border-radius:28px;background:#fff;box-shadow:0 22px 50px rgba(36,77,52,.13)}
.auth-tabs{background:#edf4ef}.auth-tabs button{color:#607269}.auth-tabs button.active{color:#075c3c}
.auth-form{gap:14px;padding:24px 20px 26px}.auth-form h2{font-size:1.5rem;color:var(--ink)}
.auth-form label small{font-weight:550;line-height:1.4;color:var(--muted)}
.eyebrow{color:#075c3c}.privacy-note{padding:11px 13px;border:1px solid #cde1d3;border-radius:12px;background:#eff8f2;color:#4d6858;font-size:.77rem;line-height:1.45}
input,select,textarea{border-color:#cbdacf;background:#fbfdfb}input:focus,select:focus,textarea:focus{border-color:#22845e;box-shadow:0 0 0 4px rgba(22,131,91,.1)}
.btn.primary{background:linear-gradient(135deg,#075c3c,#08794f);box-shadow:0 10px 22px rgba(7,92,60,.2)}
.btn.gold{background:linear-gradient(135deg,#c9f66e,#a9e946);color:#102518}.btn.secondary{border-color:#c5d9cb;background:#f5faf6;color:#075c3c}.btn.ghost{border-color:#cfddd3;color:#365848}
.app-shell{width:min(100%,1180px);min-height:100vh;background:var(--bg)}
.app-header{padding:7px 4px 16px}.chef-mark.small{background:transparent;border-radius:15px}.brand-crop{position:relative;display:block;overflow:hidden;flex:0 0 48px;background:#02050d}.brand-crop img{position:absolute;left:-24px;top:-12px;width:96px;height:96px;max-width:none}.brand-button strong{color:#12251b}.code-pill{border-color:#cfe0d3;color:#35604b}
.app-nav{border-color:#cedfd2;background:rgba(255,255,255,.95)}.app-nav button.active{background:#075c3c}
.welcome-panel{position:relative;overflow:hidden;padding:30px;border-radius:25px;background:linear-gradient(125deg,#03452d,#08734a);box-shadow:0 18px 42px rgba(7,92,60,.2)}
.welcome-panel:after{content:"";position:absolute;width:200px;height:200px;right:-60px;top:-94px;border:42px solid rgba(255,255,255,.04);border-radius:50%}
.welcome-panel h1{max-width:650px;margin:5px 0 7px;font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}.welcome-panel p{color:#d8ebdf}.welcome-kicker{color:#fff;font-size:.95rem}.status-pill{position:relative;z-index:1;align-self:flex-start;padding:8px 12px;border-radius:999px;background:#e7f6ec;color:#087349;font-size:.72rem;font-weight:950}
.scan-menu-cta{display:flex;align-items:center;gap:15px;width:100%;margin:16px 0;padding:18px;border:0;border-radius:22px;background:linear-gradient(135deg,#bff264,#a9e946);color:#102518;text-align:left;box-shadow:0 13px 25px rgba(117,168,38,.16)}
.scan-menu-cta .scan-symbol{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:18px;background:#075c3c;color:#fff;font-size:2rem;font-weight:500}.scan-menu-cta strong,.scan-menu-cta small{display:block}.scan-menu-cta strong{font-size:1.2rem}.scan-menu-cta small{margin-top:3px;color:#3e672e}.scan-menu-cta b{margin-left:auto;font-size:1.35rem}
.quick-grid{grid-template-columns:repeat(3,1fr)}.quick-grid button{border-color:#d5e2d8}.quick-grid button:hover{border-color:#6daf89}.quick-icon{background:#e9f6ed;color:#075c3c}
.surface,.menu-card{border-color:#d4e1d7}.privacy-pill,.privacy-tag{border-color:#b8d7ca;background:#edf9f3;color:#16704a}.text-button{color:#08734a}
.recovery-card{background:linear-gradient(145deg,#03452d,#08734a)}.buyer-box{border-color:#d2e7ac;background:#f7fce9}
.redirect-card{display:grid;justify-items:center;gap:14px;width:min(calc(100% - 32px),520px);margin:10vh auto;padding:32px;border:1px solid #dce7de;border-radius:26px;background:#fff;text-align:center;box-shadow:0 22px 50px rgba(36,77,52,.13)}.redirect-card .chef-logo{width:92px;height:92px}.redirect-card h1{margin:0;color:#12251b;font-size:1.7rem}.redirect-card p{margin:0}

@media(max-width:600px){
  .auth-shell{padding:10px}.auth-hero{padding:22px 12px 17px}.auth-hero .chef-logo{width:min(100%,290px);height:auto}.auth-hero h1{font-size:1.85rem}.auth-card{border-radius:24px}.auth-form{padding:20px 14px 24px}
  .app-shell{padding:10px 11px 92px}.app-header{padding:2px 2px 13px}.brand-button small{font-size:.7rem}.header-actions .code-pill{display:none}.header-actions .btn{min-height:38px;padding:7px 10px;font-size:.75rem}
  .app-nav{inset:auto 8px 8px;border-color:#cedfd2}.app-nav button{min-width:68px}.welcome-panel{padding:25px 22px}.welcome-panel h1{font-size:1.75rem}.status-pill{position:absolute;right:18px;top:18px}.scan-menu-cta{padding:16px}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid button{min-height:130px;grid-template-columns:1fr}.quick-grid button:last-child{grid-column:1/-1;min-height:95px}.quick-grid strong,.quick-grid small{grid-column:1}.quick-icon{grid-row:auto;width:45px;height:45px}.recent-surface{margin-top:15px}
}

/* Teal Dr. NuG-style home and compact working views */
:root{--navy:#075f70;--navy-2:#087b8a;--blue:#087f9c;--sky:#e7f6f8;--gold:#55d8d1;--green:#087b8a;--ink:#102c35;--muted:#60767d;--line:#cfe0e3;--bg:#f2f8f8}
body{background:#e8f1f2}.chef-backdrop{background:radial-gradient(circle at 50% 0,#dff2f4 0,#edf5f5 42%,#e6eff0 100%)}
.eyebrow{color:#087f9c}.auth-tabs button.active,.auth-form h2{color:#075f70}.auth-tabs{background:#e8f2f3}.auth-card{border-color:#d4e4e6}.privacy-note{border-color:#c7e1e5;background:#edf8f9;color:#476a72}
input:focus,select:focus,textarea:focus{border-color:#238ca0;box-shadow:0 0 0 4px rgba(35,140,160,.11)}
.btn.primary{background:linear-gradient(135deg,#075f70,#087f91);box-shadow:0 10px 22px rgba(7,95,112,.2)}.btn.secondary{border-color:#bfd8dc;background:#f5fbfb;color:#075f70}.text-button{color:#087f9c}
.app-shell{background:#f2f8f8}.app-nav button.active{background:#075f70}.welcome-panel{background:linear-gradient(125deg,#064e62,#087b8a);box-shadow:0 18px 42px rgba(6,78,98,.2)}.status-pill{background:#e7f8f7;color:#08756f}
.scan-menu-cta{background:linear-gradient(135deg,#63ded8,#3cc8d2);box-shadow:0 13px 25px rgba(25,148,158,.17)}.scan-menu-cta .scan-symbol{background:#075f70}.scan-menu-cta small{color:#225a62}.scan-menu-cta em{display:block;margin-top:5px;color:#075f70;font-size:.72rem;font-style:normal;font-weight:900}
.recent-section{margin-top:18px;padding:4px 2px}.recent-section .section-head{align-items:center;margin-bottom:10px}.recent-section h2{margin:0;color:#102c35;font-size:1.18rem}.recent-menu-list{display:grid;gap:9px}.recent-menu-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #cfdee1;border-radius:17px;background:#fff;box-shadow:0 6px 16px rgba(16,65,75,.05)}.recent-menu-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e5f5f6;color:#087b8a;font-size:.62rem;font-weight:950}.recent-menu-copy{min-width:0}.recent-menu-copy strong,.recent-menu-copy small{display:block}.recent-menu-copy strong{color:#102c35}.recent-menu-copy small{margin-top:3px;color:#60767d;font-size:.75rem}.recent-menu-status{padding:6px 9px;border-radius:999px;background:#e9f2fb;color:#2664a2;font-size:.67rem;font-weight:900}.recent-menu-row .text-button{border:0;background:transparent;font-weight:900}
.recent-menu-list>.empty-state{padding:18px;border-style:solid;background:#fff;text-align:left}
.dish-card.collapsed .ingredient-list,.dish-card.collapsed .row-actions{display:none}.dish-card.collapsed{overflow:visible}.dish-head{grid-template-columns:auto minmax(240px,2fr) minmax(150px,.6fr) auto}.dish-toggle{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1px 7px;min-height:54px;padding:7px 10px;border:1px solid #bcd8dd;border-radius:12px;background:#fff;color:#075f70;text-align:left;font-weight:900}.dish-toggle span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e5f5f6;font-size:1.2rem}.dish-toggle b{font-size:.76rem}.dish-toggle small{color:#60767d;font-size:.65rem;font-weight:700}.dish-card.collapsed .dish-head{background:#f3f9fa}.dish-card.expanded{border-color:#82bdc7}
.totals-panel[hidden]{display:none!important}
.btn{min-height:44px}.btn:focus-visible,button:focus-visible{outline:3px solid #147d55;outline-offset:3px}.btn:disabled{background:#e2e8e5;color:#52625a;box-shadow:none;cursor:not-allowed;opacity:1}
@media(max-width:700px){.recent-menu-row{grid-template-columns:auto minmax(0,1fr) auto}.recent-menu-status{display:none}.dish-head{grid-template-columns:1fr 1fr}.dish-toggle{grid-column:1/-1}.recent-menu-row .text-button{padding:6px}}
#menuFilePreview{margin:12px 0;padding:12px;border:1px solid #c8ddda;border-radius:14px;background:#fff}
#menuFilePreviewImage{display:block;max-width:100%;max-height:240px;margin:auto;object-fit:contain;border-radius:8px}
#menuFilePreviewImage[hidden],#menuFilePreview[hidden]{display:none}
#menuFilePreviewCaption{margin-top:8px;font-size:.85rem;overflow-wrap:anywhere}
#localDraftStatus:empty{display:none}
.chef-connection{padding:7px 10px;border-radius:999px;background:#e7f5ef;color:#17674d;font-size:.75rem;font-weight:800}
[data-chef-connection][data-status="offline"]{background:#fff0dc;color:#854c00}
[data-chef-connection][data-status="checking"]{background:#edf1f4;color:#52616e}
.menu-record{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #cfdee1;border-radius:17px;background:#fff}
.menu-record-copy{min-width:0}.menu-record h3,.menu-record p{margin:0}.menu-record p{font-size:.78rem;color:var(--muted);margin:5px 0}
.menu-record-open{border:0;background:none;padding:0;text-align:left;font:inherit;color:var(--navy);cursor:pointer;overflow-wrap:anywhere}
.menu-record-open::after{content:"";position:absolute;inset:0;border-radius:17px}
.menu-record-open:focus-visible{outline:none}.menu-record-open:focus-visible::after{outline:3px solid #147d55;outline-offset:2px}
.menu-record-status{font-size:.72rem;font-weight:800;color:#246e62}
.menu-record-tools{display:flex;gap:4px;flex-shrink:0;position:relative;z-index:1}
.menu-icon-button{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:0;border-radius:10px;background:#eff7f6;color:#075f70;cursor:pointer}
.menu-icon-button.danger{color:#ab3037;background:#fff3f3}.menu-icon-button svg{width:22px;height:22px}
.menu-bottom-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.menu-bottom-actions .btn{width:100%;min-width:0;min-height:52px;margin:0;padding:12px;font-size:.92rem;white-space:normal}
#editorView:has(#menuReviewPanel:not([hidden])) #analyzeMenuBtn,#editorView:has(#menuReviewPanel:not([hidden])) #manualMenuBtn,#editorView:has(#menuReviewPanel[hidden]) #saveMenuBtn{display:none}
#editorView:has(#menuReviewPanel:not([hidden])) .menu-bottom-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.menu-summary{margin-top:16px}.menu-summary strong,.menu-summary small{display:block}.menu-summary small{color:var(--muted)}
@media(max-width:600px){.menu-bottom-actions,#editorView:has(#menuReviewPanel:not([hidden])) .menu-bottom-actions{grid-template-columns:1fr}}
