:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f8fb;--surface:#fff;--surface-soft:#f9fbfd;--sidebar:#062238;--sidebar-deep:#031829;--text:#0f1d31;--muted:#60708a;--subtle:#8a98ad;--border:#dfe6ef;--border-strong:#cfd9e6;--green:#1e8e49;--green-soft:#e9f7ed;--blue:#2563eb;--blue-soft:#eaf2ff;--coral:#ef5b4c;--coral-soft:#fff0ed;--orange:#f59e0b;--orange-soft:#fff7e8;--shadow:0 16px 42px #0f1d3114;--radius:8px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);min-width:320px;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer;border:0}.app-shell{background:var(--bg);grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.app-shell.navigation-closed{grid-template-columns:76px minmax(0,1fr)}.sidebar{color:#eff8f3;background:linear-gradient(180deg, #10374eb8, transparent 36%), linear-gradient(180deg, var(--sidebar), var(--sidebar-deep));flex-direction:column;gap:26px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.navigation-closed .sidebar{align-items:center;padding:18px 10px}.brand-row{align-items:center;gap:16px;display:flex}.sidebar-menu,.icon-button,.notification-button{border:1px solid var(--border);width:42px;height:42px;color:var(--text);background:var(--surface);border-radius:8px;place-items:center;display:inline-grid}.sidebar-menu{color:#eaf3f8;background:0 0;border-color:#ffffff29;flex:none}.brand-mark{letter-spacing:0;align-items:center;gap:8px;font-size:1.55rem;font-weight:780;display:inline-flex}.brand-mark svg{color:#8dcc52;fill:currentColor;stroke-width:1.8px}.navigation-closed .brand-mark{gap:0;display:none}.navigation-closed .brand-mark span,.navigation-closed .nav-list a,.navigation-closed .plan-status,.navigation-closed .help-link{font-size:0}.nav-list{gap:8px;display:grid}.nav-list a,.help-link{color:#ffffffd1;border-radius:8px;align-items:center;gap:12px;min-height:48px;font-size:.95rem;font-weight:650;display:flex}.nav-list a{padding:0 14px}.navigation-closed .nav-list a,.navigation-closed .help-link{justify-content:center;width:48px;padding:0}.navigation-closed .plan-status{display:none}.navigation-closed .help-link{margin-top:auto}.nav-list a.active{color:#fff;background:linear-gradient(135deg,#1b8f46,#2a9f56);box-shadow:0 10px 28px #19834357}.plan-status{border-top:1px solid #ffffff2e;border-bottom:1px solid #ffffff2e;gap:1px;margin-top:auto;padding:14px 6px 20px;display:grid}.plan-status span{color:#ffffffb3;font-size:.82rem}.plan-status strong{text-transform:capitalize;font-size:.95rem}.plan-status em{color:#8fe36b;font-size:.88rem;font-style:normal;font-weight:750}.help-link{padding:0 6px}.dashboard-shell{min-width:0;min-height:100vh}body:has(.initial-interview-page){overflow:hidden}.dashboard-shell:has(.initial-interview-page){grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.topbar{z-index:30;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:14px 22px;display:flex;position:sticky;top:0}.week-controls,.user-actions{align-items:center;gap:10px;display:flex}.arroki-launcher{background:linear-gradient(#fff,#edf8f1);border:1px solid #b7dcc2;border-radius:999px;place-items:center;width:46px;height:46px;display:inline-grid;position:relative;box-shadow:0 10px 24px #1e8e4924}.arroki-launcher img{object-fit:contain;width:40px;height:40px}.arroki-launcher.phase-replying,.arroki-launcher.phase-inKitchen{border-color:#86c897;box-shadow:0 0 0 4px #1e8e491a,0 10px 24px #1e8e4929}.arroki-launcher.phase-inKitchen{background:linear-gradient(#fffaf0,#edf8f1)}.arroki-launcher.phase-returned{border-color:#8bbff2;box-shadow:0 0 0 4px #1666c51a,0 10px 24px #1666c51f}.arroki-launcher.phase-failed{border-color:#efb579;box-shadow:0 0 0 4px #b453091a,0 10px 24px #b453091f}.arroki-launcher-status{opacity:0;background:#6d7b8f;border:2px solid #fff;border-radius:999px;width:13px;height:13px;position:absolute;bottom:-1px;right:-1px}.arroki-launcher.phase-replying .arroki-launcher-status,.arroki-launcher.phase-inKitchen .arroki-launcher-status,.arroki-launcher.phase-returned .arroki-launcher-status,.arroki-launcher.phase-failed .arroki-launcher-status{opacity:1}.arroki-launcher.phase-replying .arroki-launcher-status{background:var(--green);animation:1.2s ease-in-out infinite arroki-status-pulse}.arroki-launcher.phase-inKitchen .arroki-launcher-status{background:#c87907;animation:1s ease-in-out infinite arroki-status-pulse}.arroki-launcher.phase-returned .arroki-launcher-status{background:var(--blue)}.arroki-launcher.phase-failed .arroki-launcher-status{background:#b42318}.week-title{align-items:center;gap:10px;min-width:178px;padding:0 8px;display:flex}.week-title h1{letter-spacing:0;margin:0;font-size:1.45rem;font-weight:800;line-height:1.1}.week-title span{color:var(--muted);font-size:.82rem;font-weight:600;display:block}.today-button,.ghost-button,.primary-button,.outline-button,.secondary-blue-button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-size:.9rem;font-weight:750;display:inline-flex}.today-button,.ghost-button,.outline-button{border:1px solid var(--border);color:var(--text);background:var(--surface)}.today-button{padding:0 15px}.notification-button{background:0 0;border-color:#0000;position:relative}.notification-button span{background:var(--green);border:2px solid #fff;border-radius:99px;width:8px;height:8px;position:absolute;top:8px;right:9px}.dashboard-grid{grid-template-columns:minmax(700px,1fr) minmax(300px,340px);gap:22px;padding:22px;display:grid}.meal-plan-grid{padding:22px}.primary-column,.detail-column,.meal-plan-column{align-content:start;gap:18px;min-width:0;display:grid}.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.generation-panel{background:linear-gradient(#fbfffc,#f2fbf4);border-color:#98d2a4;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px;display:grid;position:relative;overflow:hidden}.generation-panel.compact{background:var(--surface);grid-template-columns:1fr;padding:16px}.generation-copy{align-items:center;gap:16px;min-width:0;display:flex}.generation-panel.compact .generation-copy{align-items:flex-start}.status-mark{color:#fff;background:linear-gradient(135deg, #37a65c, var(--green));border-radius:999px;flex:none;place-items:center;width:56px;height:56px;display:inline-grid;box-shadow:0 12px 22px #1e8e4947}.compact .status-mark{width:34px;height:34px}.generation-copy h2,.panel h2,.weekly-summary h2{letter-spacing:0;margin:0;font-size:1.08rem;font-weight:800;line-height:1.25}.generation-copy p,.generation-copy span,.section-heading p,.panel-kicker,.weekly-summary p{color:var(--muted);margin:3px 0 0;font-size:.88rem}.generation-copy span{display:block}.generation-actions{align-items:center;gap:12px;display:flex}.compact .generation-actions{flex-direction:column;align-items:stretch}.generation-steps{color:var(--muted);text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:2px;font-size:.72rem;font-weight:700;display:grid}.generation-steps span{justify-items:center;gap:5px;display:grid}.generation-steps svg{width:20px;height:20px;color:var(--green);background:var(--green-soft);border-radius:999px;padding:4px}.ghost-button,.primary-button{min-width:158px;padding:0 16px}.compact .ghost-button,.compact .primary-button{width:100%;min-width:0}.primary-button{color:#fff;background:linear-gradient(135deg, #17813f, var(--green))}.status-progress{background:#1e8e491f;border-radius:999px 999px 0 0;height:4px;position:absolute;bottom:0;left:18px;right:18px}.status-progress span{border-radius:inherit;background:var(--green);height:100%;display:block}.status-setup-required{background:#fffaf0;border-color:#f8c97e}.status-setup-required .status-mark,.status-error .status-mark{background:var(--orange);box-shadow:0 12px 22px #f59e0b3d}.status-empty .status-mark,.status-running .status-mark{background:var(--blue);box-shadow:0 12px 22px #2563eb3d}.schedule-panel{overflow:hidden}.today-panel{background:linear-gradient(135deg, #1e8e4914, transparent 44%), var(--surface);border-color:#cbe4d2;gap:16px;padding:18px;display:grid}.today-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.today-header h2{letter-spacing:0;margin:0;font-size:1.28rem;font-weight:850;line-height:1.2}.today-header p{color:var(--muted);margin:4px 0 0;font-size:.9rem;font-weight:650}.today-date-mark{color:#fff;background:linear-gradient(135deg, #238b4a, var(--green));border-radius:999px;flex:none;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 24px #1e8e4938}.today-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.today-summary>div{border:1px solid var(--border);background:#ffffffc2;border-radius:8px;align-content:center;gap:4px;min-height:88px;padding:12px;display:grid}.today-summary svg{color:var(--green)}.today-summary span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:760;overflow:hidden}.today-summary strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:850;line-height:1.2;overflow:hidden}.today-meals{gap:12px;display:grid}.today-meal-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:112px minmax(0,1fr);align-items:stretch;gap:16px;min-width:0;padding:12px;display:grid}.today-meal-row.empty{background:var(--surface-soft);grid-template-columns:70px minmax(0,1fr);align-items:center}.today-meal-row .meal-thumb{width:112px;height:92px}.today-meal-empty-mark{width:54px;height:54px;color:var(--green);background:#f8fafc;border:1px dashed #c8d2df;border-radius:8px;place-items:center;font-weight:850;display:grid}.today-meal-copy{align-content:center;min-width:0;display:grid}.today-meal-type{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:850}.today-meal-copy a{color:#13243a;max-width:100%;margin-top:3px;font-size:1rem;font-weight:850;line-height:1.2;display:inline-block}.today-meal-copy a:hover{color:var(--green)}.today-meal-row p,.today-empty p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.36}.today-meal-copy p{margin:5px 0 9px}.today-meal-meta{flex-wrap:wrap;gap:7px;display:flex}.today-meal-meta span{color:#116b36;background:var(--green-soft);border-radius:6px;align-items:center;min-height:24px;padding:0 8px;font-size:.74rem;font-weight:800;display:inline-flex}.today-empty{border:1px dashed var(--border-strong);background:var(--surface-soft);border-radius:8px;padding:12px}.section-heading,.panel-title-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading{padding:18px 18px 12px}.section-heading h2{text-transform:none}.view-toggle{border:1px solid var(--border);background:#fbfcfe;border-radius:8px;padding:3px;display:inline-flex}.view-toggle button{min-height:32px;color:var(--muted);background:0 0;border-radius:6px;padding:0 12px;font-size:.85rem;font-weight:750}.view-toggle .toggle-active{color:var(--green);background:var(--green-soft)}.schedule-table{border-top:1px solid var(--border);display:grid}.schedule-row{grid-template-columns:86px repeat(var(--meal-column-count,4), minmax(142px, 1fr));border-bottom:1px solid var(--border);min-height:116px;display:grid}.schedule-row:last-child{border-bottom:0}.schedule-header{color:#3e4b5f;background:var(--surface-soft);min-height:52px;font-size:.84rem;font-weight:800}.schedule-row>div{border-right:1px solid var(--border);min-width:0}.schedule-row>div:last-child{border-right:0}.schedule-header>div{align-items:center;padding:0 16px;display:flex}.day-cell{align-content:center;gap:3px;padding:14px 16px;display:grid}.day-cell strong{font-size:1rem}.day-cell span{color:var(--muted);font-size:.86rem}.schedule-meal{align-items:stretch;display:flex}.meal-cell{grid-template-columns:60px minmax(0,1fr);gap:10px;width:100%;padding:14px 12px;display:grid}.empty-meal-slot{width:100%;min-height:88px;color:var(--subtle);place-items:center;padding:14px 12px;font-size:.84rem;font-weight:750;display:grid}.empty-meal-slot span{background:#f8fafc;border:1px dashed #c8d2df;border-radius:8px;align-items:center;min-height:34px;padding:0 12px;display:inline-flex}.meal-thumb{background-color:var(--green-soft);background-repeat:no-repeat;background-size:300% 500%;border:1px solid #ffffffb8;border-radius:8px;width:58px;height:58px;box-shadow:0 8px 18px #0f1d311f}.meal-thumb-fallback{color:var(--green);background:linear-gradient(135deg, var(--green-soft), var(--blue-soft));place-items:center;font-weight:850;display:grid}.meal-copy{min-width:0}.meal-title{color:#13243a;max-width:100%;font-size:.86rem;font-weight:800;line-height:1.18;display:inline-block}.meal-title:hover{color:var(--green)}.meal-copy p{-webkit-line-clamp:2;min-height:30px;color:var(--muted);-webkit-box-orient:vertical;margin:4px 0 7px;font-size:.76rem;line-height:1.25;display:-webkit-box;overflow:hidden}.calorie-pill{color:#116b36;background:var(--green-soft);white-space:nowrap;border-radius:6px;align-items:center;min-height:24px;padding:0 8px;font-size:.74rem;font-weight:800;display:inline-flex}.weekly-summary{border-radius:var(--radius);background:linear-gradient(#f9fcff,#edf6ff);border:1px solid #bcd9ff;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.meal-plan-link{flex:none;padding:0 16px}.shopping-callout{align-items:center;gap:14px;min-width:0;display:flex}.shopping-icon{color:#fff;background:var(--blue);border-radius:999px;flex:none;place-items:center;width:54px;height:54px;display:grid;box-shadow:0 12px 24px #2563eb47}.macro-strip{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:10px 16px;font-size:.88rem;display:flex}.macro-strip strong{color:var(--text);font-weight:800}.detail-column .panel{box-shadow:0 8px 24px #0f1d310f}.panel-title-row{padding:0 0 12px}.panel-title-row a,.panel-title-row button{color:var(--blue);background:0 0;align-items:center;gap:5px;font-size:.84rem;font-weight:750;display:inline-flex}.training-panel,.grocery-panel,.assistant-panel{padding:16px}.training-note{background:var(--blue-soft);border:1px solid #d9e9ff;border-radius:8px;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:12px;display:grid}.training-icon{width:40px;height:40px;color:var(--blue);background:#fff;border-radius:999px;place-items:center;display:grid}.training-note h3,.grocery-category h3{margin:0;font-size:.92rem;font-weight:800;line-height:1.3}.training-note p{color:#40516a;margin:6px 0 0;font-size:.86rem;line-height:1.36}.training-time{font-weight:760;color:var(--blue)!important}.garmin-link-panel{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.garmin-link-heading{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;display:grid}.garmin-link-heading svg{color:var(--green)}.garmin-link-heading h3,.garmin-link-heading p,.garmin-link-details span,.garmin-link-message{margin:0}.garmin-link-heading h3{color:#13243a;font-size:.9rem;font-weight:830}.garmin-link-heading p,.garmin-link-details span,.garmin-link-message{color:var(--muted);font-size:.82rem;line-height:1.38}.garmin-link-details{gap:4px;display:grid}.garmin-actions{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.garmin-link-button{width:100%;margin-top:0}.garmin-link-button:disabled{cursor:wait;opacity:.72}.garmin-link-message.error{color:#a15c05}.outline-button{width:100%;margin-top:12px;padding:0 14px}.grocery-categories{border:1px solid var(--border);border-radius:8px;display:grid;overflow:hidden}.grocery-category{border-bottom:1px solid var(--border);grid-template-columns:36px minmax(0,1fr);gap:10px;padding:12px;display:grid}.grocery-category:last-child{border-bottom:0}.category-icon{border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.category-icon.green{color:var(--green);background:var(--green-soft)}.category-icon.coral{color:var(--coral);background:var(--coral-soft)}.category-icon.orange{color:#c87907;background:var(--orange-soft)}.category-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.category-heading span{color:var(--muted);font-size:.82rem;font-weight:700}.grocery-category ul{color:var(--muted);flex-wrap:wrap;gap:5px 10px;margin:7px 0 0;padding:0;font-size:.82rem;list-style:none;display:flex}.grocery-category li:before{content:"";background:var(--border-strong);vertical-align:middle;border-radius:50%;width:4px;height:4px;margin-right:6px;display:inline-block}.secondary-blue-button{color:#fff;background:var(--blue);width:100%;margin-top:12px;padding:0 14px}.assistant-title{align-items:center;gap:8px;display:inline-flex}.assistant-title svg{color:var(--green)}.assistant-panel .icon-button{width:32px;height:32px;color:var(--muted);background:0 0;border-color:#0000}.prompt-list{gap:8px;margin-top:12px;display:grid}.prompt-list button{border:1px solid var(--border);color:#41516a;background:var(--surface);text-align:left;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:0 10px;font-size:.83rem;font-weight:650;display:flex}.prompt-list button:hover{background:var(--green-soft);border-color:#bee0c5}.assistant-input{grid-template-columns:minmax(0,1fr) 40px;gap:8px;margin-top:14px;display:grid}.assistant-input input{border:1px solid var(--border);min-width:0;min-height:42px;color:var(--text);background:var(--surface);border-radius:8px;outline:none;padding:0 12px}.assistant-input input:focus{border-color:#9bd8aa;box-shadow:0 0 0 3px #1e8e491f}.assistant-input button{color:#fff;background:linear-gradient(135deg, #78ba7f, var(--green));border-radius:8px;place-items:center;display:grid}.assistant-disclaimer{color:var(--subtle);text-align:center;margin:10px 0 0;font-size:.75rem}.arroki-drawer-layer{z-index:60;pointer-events:none;position:fixed;inset:0}.arroki-drawer{--arroki-drawer-width:420px;width:min(var(--arroki-drawer-width), 100vw);border-left:1px solid var(--border-strong);background:var(--surface);pointer-events:auto;grid-template-rows:auto minmax(0,1fr) auto auto;height:100dvh;display:grid;position:absolute;top:0;right:0;box-shadow:-18px 0 46px #0f1d312e}.arroki-resize-handle{color:#6c7b91;cursor:ew-resize;background:0 0;place-items:center;width:28px;height:100%;display:grid;position:absolute;top:0;left:-14px}.arroki-resize-handle svg{background:#ffffffeb;border-radius:8px;box-shadow:0 8px 20px #0f1d3124}.arroki-drawer-header{border-bottom:1px solid var(--border);background:linear-gradient(#fbfffc,#fff);grid-template-columns:52px minmax(0,1fr) 42px;align-items:center;gap:12px;min-height:76px;padding:14px 16px;display:grid}.arroki-drawer.phase-inKitchen .arroki-drawer-header{background:linear-gradient(#fffaf0,#fff)}.arroki-drawer.phase-returned .arroki-drawer-header{background:linear-gradient(#f2f8ff,#fff)}.arroki-drawer.phase-failed .arroki-drawer-header{background:linear-gradient(#fff7ed,#fff)}.arroki-drawer-header img{object-fit:contain;width:50px;height:50px}.arroki-drawer-header h2,.arroki-empty-state h3{color:var(--text);letter-spacing:0;margin:0;font-size:1.08rem;font-weight:850;line-height:1.15}.arroki-drawer-header span{color:var(--muted);margin-top:2px;font-size:.82rem;font-weight:650;display:block}.arroki-thread{background:#f8fafc;flex-direction:column;gap:12px;min-height:0;padding:16px;display:flex;overflow-y:auto}.arroki-empty-state{text-align:center;align-content:center;justify-items:center;gap:12px;min-height:100%;display:grid}.arroki-empty-state img{object-fit:contain;width:104px;height:104px}.arroki-starter-prompts{gap:8px;width:min(100%,320px);display:grid}.arroki-starter-prompts button{border:1px solid var(--border);color:#34445d;background:var(--surface);text-align:left;border-radius:8px;min-height:40px;padding:8px 12px;font-size:.86rem;font-weight:700}.arroki-message{gap:6px;max-width:88%;display:grid}.arroki-message.user{align-self:end}.arroki-message.assistant{align-self:start}.arroki-message.pending{max-width:94%}.arroki-message-bubble{background:var(--surface);border-radius:8px;gap:8px;padding:11px 12px;display:grid;box-shadow:0 8px 22px #0f1d3114}.arroki-message.pending .arroki-message-bubble{background:linear-gradient(#fff,#f7fbf8);border:1px solid #dce8dc}.arroki-message.user .arroki-message-bubble{color:#fff;background:#1d7d4a}.arroki-work-card{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.arroki-work-visual{background:#edf8f1;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:relative}.arroki-work-card.kitchen .arroki-work-visual{background:#fff3dc}.arroki-work-card.returned .arroki-work-visual{background:#eaf4ff}.arroki-work-card.failed .arroki-work-visual{background:#fff0e1}.arroki-work-visual img{object-fit:contain;width:38px;height:38px}.arroki-work-copy{gap:4px;min-width:0;display:grid}.arroki-work-copy strong{color:#203149;font-size:.9rem;font-weight:840;line-height:1.25}.arroki-work-copy p{color:#516175;margin:0;font-size:.82rem;line-height:1.36}.arroki-typing-dots{align-items:center;gap:4px;height:12px;display:inline-flex}.arroki-typing-dots i{background:var(--green);border-radius:999px;width:5px;height:5px;animation:1.1s ease-in-out infinite arroki-typing-dot;display:block}.arroki-typing-dots i:nth-child(2){animation-delay:.15s}.arroki-typing-dots i:nth-child(3){animation-delay:.3s}.arroki-steam{opacity:0;border-left:2px solid #c879078c;border-radius:999px;width:6px;height:14px;position:absolute;top:-5px}.arroki-work-card.kitchen .arroki-steam{opacity:1;animation:1.5s ease-in-out infinite arroki-steam-rise}.arroki-steam.steam-one{left:13px}.arroki-steam.steam-two{animation-delay:.2s;left:20px}.arroki-steam.steam-three{animation-delay:.4s;left:27px}.arroki-plain-message{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.92rem}.arroki-message-markdown{overflow-wrap:anywhere;gap:8px;font-size:.92rem;display:grid}.arroki-message-markdown :where(p,ul,ol,h1,h2,h3){margin:0}.arroki-message-markdown :where(h1,h2,h3){letter-spacing:0;font-size:.95rem;font-weight:800;line-height:1.25}.arroki-message-markdown :where(ul,ol){gap:4px;padding-left:18px;display:grid}.arroki-message-markdown a{color:#1666c5;text-underline-offset:2px;font-weight:750;text-decoration:underline}.arroki-message-markdown code{background:#eef3f8;border-radius:5px;padding:1px 4px;font-size:.86em}.arroki-message-bubble span{color:var(--subtle);font-size:.72rem;font-weight:700}.arroki-message.user .arroki-message-bubble span{color:#ffffffbd}.arroki-source-list{flex-wrap:wrap;gap:6px;display:flex}.arroki-source-list span{color:#3f506a;background:#edf2f7;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:.72rem;font-weight:750;display:inline-flex}.arroki-chat-error{color:#b42318;margin:0;padding:8px 16px 0;font-size:.84rem;font-weight:700}.arroki-chat-input{border-top:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) 42px;gap:8px;padding:12px 16px 16px;display:grid}.arroki-chat-input textarea{resize:none;border:1px solid var(--border);min-width:0;min-height:44px;max-height:none;color:var(--text);background:var(--surface);border-radius:8px;outline:none;padding:10px 12px;line-height:1.4;overflow-y:hidden}.arroki-chat-input textarea:focus{border-color:#9bd8aa;box-shadow:0 0 0 3px #1e8e491f}.arroki-chat-input button{color:#fff;background:var(--green);border-radius:8px;align-self:end;place-items:center;height:42px;display:grid}.arroki-chat-input button:disabled{cursor:not-allowed;opacity:.55}.initial-interview-page{height:100%;min-height:0;padding:22px;overflow:hidden}.initial-interview-shell{width:min(980px,100%);height:100%;min-height:0;margin:0 auto}.initial-interview-shell.chat-mode{grid-template-rows:auto minmax(0,1fr) auto auto;gap:12px;display:grid}.initial-interview-shell.kitchen-mode{place-items:center;display:grid}.arroki-content-loading{place-items:center;min-height:calc(100dvh - 78px);padding:24px;display:grid}.arroki-content-loader{text-align:center;justify-items:center;gap:14px;width:min(620px,100%);animation:.36s both initial-kitchen-enter;display:grid}.arroki-content-loader-visual{width:min(260px,70vw)}.arroki-content-loader-copy{justify-items:center;gap:9px;display:grid}.arroki-content-loader-copy>span:first-child{color:var(--green);text-transform:uppercase;font-size:.76rem;font-weight:850}.arroki-content-loader-copy h2{color:var(--text);letter-spacing:0;margin:0;font-size:1.45rem;line-height:1.18}.arroki-content-loader-copy p{max-width:480px;color:var(--muted);margin:0;line-height:1.5}.initial-interview-kitchen{text-align:center;justify-items:center;gap:18px;width:min(760px,100%);animation:.36s both initial-kitchen-enter;display:grid}.initial-kitchen-visual{aspect-ratio:1;place-items:center;width:min(440px,78vw);display:grid;position:relative}.initial-kitchen-visual img{object-fit:contain;width:100%;height:100%;animation:2.8s ease-in-out infinite initial-kitchen-bob}.initial-kitchen-steam{z-index:2;opacity:0;border-left:3px solid #77502357;border-radius:999px;width:12px;height:40px;animation:1.8s ease-in-out infinite arroki-steam-rise;position:absolute;top:56%}.initial-kitchen-steam.steam-one{left:45%}.initial-kitchen-steam.steam-two{animation-delay:.22s;left:50%}.initial-kitchen-steam.steam-three{animation-delay:.44s;left:55%}.initial-kitchen-copy{justify-items:center;gap:10px;max-width:620px;display:grid}.initial-kitchen-copy>span:first-child{color:var(--green);text-transform:uppercase;font-size:.78rem;font-weight:850}.initial-kitchen-copy h1{letter-spacing:0;margin:0;font-size:2rem}.initial-kitchen-copy p{max-width:560px;color:var(--muted);margin:0;line-height:1.55}.initial-interview-header{grid-template-columns:68px minmax(0,1fr);align-items:center;gap:16px;margin-bottom:0;display:grid}.initial-interview-header img{object-fit:contain;width:68px;height:68px}.initial-interview-header span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:850}.initial-interview-header h1{letter-spacing:0;margin:4px 0 0;font-size:2rem}.initial-interview-thread{overscroll-behavior:contain;scroll-behavior:smooth;scrollbar-gutter:stable;align-content:start;gap:14px;min-height:0;padding:4px 4px 14px;display:grid;overflow-y:auto}.interview-scroll-anchor{min-height:1px}.initial-interview-response-dock{overscroll-behavior:contain;min-height:0;max-height:min(34dvh,320px);padding:0 4px;overflow-y:auto}.initial-interview-response-dock .interview-bubble{width:100%}.interview-message{grid-template-columns:40px minmax(0,1fr);align-items:flex-start;gap:12px;display:grid}.interview-message.user{grid-template-columns:minmax(0,1fr);justify-items:end;padding-left:52px}.interview-message.user .interview-bubble{width:fit-content;max-width:min(680px,100%);box-shadow:none;background:#eef8f2;border-color:#c4e4cf}.interview-message.active-turn .interview-bubble{border-color:#9bd8aa}.interview-message.response-status .interview-bubble{border-color:#c4e4cf}.interview-avatar{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--accent-strong);border-radius:50%;place-items:center;display:grid}.interview-bubble{border:1px solid var(--border);background:var(--surface);width:fit-content;max-width:min(780px,100%);box-shadow:var(--shadow-soft);border-radius:8px;gap:14px;padding:18px;display:grid}.interview-bubble h2{margin:0;font-size:1.08rem}.interview-bubble p{color:var(--muted);margin:0;line-height:1.5}.interview-bubble label{min-width:0;color:var(--ink);gap:8px;font-size:.86rem;font-weight:800;display:grid}.interview-bubble input,.interview-bubble select,.interview-bubble textarea{width:100%;min-width:0}.interview-control-panel{gap:14px;min-height:0;display:grid}.interview-quick-replies,.interview-turn-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.interview-quick-replies button{border:1px solid var(--border);min-height:38px;color:var(--ink);background:var(--surface-soft);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:.84rem;font-weight:800;display:inline-flex}.interview-quick-replies button:hover,.interview-quick-replies button[aria-pressed=true]{color:var(--green);background:var(--green-soft);border-color:#9bd8aa}.interview-turn-actions.split{justify-content:space-between}.interview-turn-actions .secondary-button{border:1px solid var(--border);min-height:40px;color:var(--ink);background:var(--surface-soft);border-radius:8px;align-items:center;gap:8px;padding:0 14px;font-weight:800;display:inline-flex}.allergy-review-panel{gap:12px;display:grid}.allergy-review-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) minmax(120px,.7fr) 42px;align-items:end;gap:10px;padding:12px;display:grid}.allergy-review-row label{color:var(--muted);gap:6px;font-size:.78rem;font-weight:800;display:grid}.allergy-remove-button{color:#b42318;align-self:end}.allergy-empty-review{border:1px solid var(--border);color:var(--ink);background:var(--surface-soft);border-radius:8px;margin:0;padding:12px;font-weight:800}.interview-composer{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) 42px;align-items:end;gap:8px;padding:12px 16px 16px;display:grid}.interview-composer textarea{border:1px solid var(--border);min-width:0;min-height:44px;max-height:none;color:var(--text);background:var(--surface);resize:none;border-radius:8px;outline:none;padding:10px 12px;line-height:1.4;overflow-y:hidden}.interview-composer textarea:focus{border-color:#9bd8aa;box-shadow:0 0 0 3px #1e8e491f}.interview-composer button{color:#fff;background:var(--green);border-radius:8px;align-self:end;place-items:center;width:42px;height:42px;display:grid}.interview-composer button:disabled{cursor:not-allowed;opacity:.55}.interview-error{margin:10px 0 0}.interview-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.interview-checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.initial-interview-work{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;align-items:center;gap:14px;padding:16px;display:flex}.initial-interview-work img{object-fit:contain;width:54px;height:54px}.initial-interview-work div{gap:8px;display:grid}@keyframes initial-kitchen-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes initial-kitchen-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes arroki-typing-dot{0%,80%,to{opacity:.42;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes arroki-steam-rise{0%{opacity:0;transform:translateY(5px)scaleY(.8)}35%{opacity:.9}to{opacity:0;transform:translateY(-7px)scaleY(1.1)}}@keyframes arroki-status-pulse{0%,to{transform:scale(.9)}50%{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.arroki-launcher-status,.arroki-typing-dots i,.arroki-work-card.kitchen .arroki-steam,.initial-interview-kitchen,.initial-kitchen-visual img,.initial-kitchen-steam{animation:none}}.empty-schedule{padding:18px}.empty-schedule p{color:var(--muted)}.empty-panel-text{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.recipe-topbar-context{align-items:center;gap:12px;min-width:0;display:flex}.recipe-topbar-title{min-width:0}.recipe-back-button{flex:none}.recipe-grid{grid-template-columns:minmax(640px,1fr) minmax(310px,360px);gap:22px;padding:22px;display:grid}.recipe-main-column,.recipe-detail-column{align-content:start;gap:18px;min-width:0;display:grid}.recipe-hero{grid-template-columns:minmax(210px,250px) minmax(0,1fr);gap:18px;padding:16px;display:grid;overflow:hidden}.recipe-photo{background-color:var(--green-soft);background-repeat:no-repeat;background-size:300% 500%;border:1px solid #ffffffb8;border-radius:8px;min-height:228px;box-shadow:0 14px 30px #0f1d3124}.recipe-hero-copy{align-content:center;gap:16px;min-width:0;display:grid}.recipe-title-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.recipe-title-row h2{color:#102038;letter-spacing:0;margin:0;font-size:2rem;font-weight:850;line-height:1.08}.recipe-hero-copy p{color:#52637c;max-width:680px;margin:0;font-size:.98rem;line-height:1.5}.recipe-save-button{flex:none;min-width:132px}.recipe-save-button.saved{background:linear-gradient(135deg, #2d9955, var(--green))}.recipe-save-error{color:#a15c05;margin:0;font-size:.84rem;font-weight:750}.recipe-stat-grid{grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:10px;display:grid}.recipe-stat-grid span{border:1px solid var(--border);min-height:72px;color:var(--muted);background:var(--surface-soft);border-radius:8px;align-content:center;justify-items:start;gap:4px;padding:10px 12px;font-size:.78rem;font-weight:700;display:grid}.recipe-stat-grid svg{color:var(--green)}.recipe-stat-grid strong{color:var(--text);font-size:.95rem;font-weight:850}.recipes-grid{grid-template-columns:minmax(0,1fr);gap:22px;padding:22px;display:grid}.recipes-main-column{align-content:start;gap:18px;min-width:0;display:grid}.recipes-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;display:grid}.recipes-hero h2{color:#102038;margin:0;font-size:1.9rem;font-weight:850;line-height:1.08}.recipes-hero p{max-width:720px;color:var(--muted);margin:8px 0 0;font-size:.94rem;line-height:1.45}.recipes-hero-stats{grid-template-columns:repeat(2,minmax(96px,1fr));gap:10px;display:grid}.recipes-hero-stats span{border:1px solid var(--border);min-height:78px;color:var(--muted);background:var(--surface-soft);border-radius:8px;align-content:center;gap:4px;padding:12px;font-size:.78rem;font-weight:750;display:grid}.recipes-hero-stats strong{color:var(--text);font-size:1.45rem;line-height:1}.recipes-section,.recipes-loading-state,.recipes-error-state{padding:16px}.recipes-error-state p,.recipes-loading-state p{color:var(--muted)}.recipes-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.recipes-card-grid.saved{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.recipe-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:12px;min-width:0;padding:14px;display:grid}.recipe-card.compact{min-height:132px}.recipe-card-icon{color:#126b36;background:var(--green-soft);border-radius:8px;place-items:center;width:46px;height:46px;display:grid}.recipe-card-icon.saved{color:var(--blue);background:var(--blue-soft)}.recipe-card-copy{gap:10px;min-width:0;display:grid}.recipe-card-title-row{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.recipe-card-kicker{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:.76rem;font-weight:800}.recipe-card h3{color:#13243a;margin:0;font-size:1rem;font-weight:850;line-height:1.2}.recipe-card p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.42}.recipe-schedule-list,.recipe-card-metrics{flex-wrap:wrap;gap:7px;display:flex}.recipe-schedule-list span,.recipe-card-metric{color:#126b36;background:var(--green-soft);border-radius:7px;align-items:center;min-height:26px;padding:0 8px;font-size:.75rem;font-weight:820;display:inline-flex}.recipe-card-metric{color:var(--blue);background:var(--blue-soft)}.recipes-empty-state{border:1px dashed var(--border);color:var(--muted);background:var(--surface-soft);border-radius:8px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:14px;display:grid}.recipes-empty-state svg{color:var(--green)}.recipes-empty-state strong{color:var(--text);font-size:.9rem}.recipes-empty-state p{margin:4px 0 0;font-size:.84rem}.recipe-panel,.recipe-side-panel{padding:16px}.recipe-side-panel{box-shadow:0 8px 24px #0f1d310f}.recipe-panel-meta{color:var(--muted);white-space:nowrap;font-size:.82rem;font-weight:750}.tool-inline-list{flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0 12px;display:flex}.tool-inline-label{min-height:28px;color:var(--blue);align-items:center;gap:6px;font-size:.78rem;font-weight:850;display:inline-flex}.tool-chip.compact{min-height:28px;padding:0 9px;font-size:.76rem}.ingredient-compact-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.ingredient-compact-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(72px,auto) minmax(0,1fr);align-items:baseline;gap:2px 10px;min-height:54px;padding:9px 10px;display:grid}.ingredient-compact-quantity{color:#126b36;white-space:nowrap;grid-row:span 2;font-size:.78rem;font-weight:850}.ingredient-compact-row strong{color:#13243a;min-width:0;font-size:.9rem;font-weight:850;line-height:1.25}.ingredient-compact-row>span:last-child{min-width:0;color:var(--muted);font-size:.78rem;line-height:1.35}.ingredients-layout{grid-template-columns:minmax(0,1fr) 230px;gap:16px;display:grid}.ingredient-list{border:1px solid var(--border);border-radius:8px;display:grid;overflow:hidden}.ingredient-row{border-bottom:1px solid var(--border);grid-template-columns:82px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:12px;display:grid}.ingredient-row:last-child{border-bottom:0}.ingredient-row svg{color:var(--green)}.ingredient-quantity{color:#136d39;background:var(--green-soft);border-radius:8px;align-content:center;justify-items:center;min-height:54px;display:grid}.ingredient-quantity strong{font-size:1rem;font-weight:850;line-height:1}.ingredient-quantity span{font-size:.72rem;font-weight:800}.ingredient-row h3,.tool-box-heading h3,.step-heading h3,.safety-status h3,.substitution-card h3,.storage-box h2,.storage-box h3{color:#13243a;margin:0;font-size:.92rem;font-weight:820;line-height:1.3}.ingredient-row p,.step-row p,.safety-status p,.safety-footnote,.substitution-card p,.storage-box p{color:var(--muted);margin:4px 0 0;font-size:.84rem;line-height:1.42}.tool-box{background:var(--blue-soft);border:1px solid #d9e9ff;border-radius:8px;align-content:start;gap:12px;padding:14px;display:grid}.tool-box-heading{align-items:center;gap:8px;display:flex}.tool-box-heading svg{color:var(--blue)}.tool-chip-list{flex-wrap:wrap;gap:8px;display:flex}.tool-chip{color:#244b83;background:#fff;border:1px solid #cfe1ff;border-radius:7px;align-items:center;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:760;display:inline-flex}.step-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.step-row{border-top:1px solid var(--border);grid-template-columns:42px minmax(0,1fr);gap:12px;padding:14px 0;display:grid}.step-row:first-child{border-top:0;padding-top:0}.step-row:last-child{padding-bottom:0}.step-number{color:#fff;background:var(--green);border-radius:999px;place-items:center;width:36px;height:36px;font-size:.9rem;font-weight:850;display:grid}.step-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.step-heading span{color:var(--blue);flex:none;font-size:.8rem;font-weight:800}.nutrition-facts-label{color:#050505;background:#fff;border:2px solid #050505;border-radius:3px;padding:8px 9px;font-family:Arial,Helvetica,sans-serif}.nutrition-facts-title-row{border-bottom:1px solid #050505;align-items:center;gap:7px;padding-bottom:2px;display:flex}.nutrition-facts-title-row svg{color:#050505}.nutrition-facts-title-row h2{color:#050505;letter-spacing:0;margin:0;font-size:1.72rem;font-weight:900;line-height:1}.nutrition-serving-row,.nutrition-calories-row,.nutrition-fact-row{border-top:1px solid #050505;justify-content:space-between;gap:10px;display:flex}.nutrition-serving-row{padding:3px 0;font-size:.82rem}.nutrition-thick-rule{background:#050505;height:8px}.nutrition-thick-rule.medium{height:5px}.nutrition-amount-row{padding-top:4px;font-size:.72rem;font-weight:800}.nutrition-calories-row{border-top:0;align-items:flex-end;padding-bottom:3px}.nutrition-calories-row span{font-size:1.1rem;font-weight:900}.nutrition-calories-row strong{font-size:2.18rem;font-weight:900;line-height:.92}.nutrition-dv-heading{text-align:right;border-top:4px solid #050505;padding-top:2px;font-size:.72rem;font-weight:900}.nutrition-fact-row{align-items:baseline;min-height:24px;padding:3px 0 2px;font-size:.78rem;line-height:1.2}.nutrition-fact-row.thick-rule{border-top-width:4px}.nutrition-fact-row.indented span:first-child{padding-left:14px}.nutrition-fact-row>strong:last-child{text-align:right;flex:none;font-size:.78rem}.nutrition-footnote{color:#050505;border-top:1px solid #050505;margin:6px 0 0;padding-top:5px;font-size:.66rem;line-height:1.25}.safety-panel{border-color:#bee0c5}.safety-status{background:var(--green-soft);border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;display:grid}.safety-status svg{color:var(--green)}.safety-footnote{font-weight:700}.substitution-list{gap:10px;display:grid}.substitution-card{border-top:1px solid var(--border);padding:11px 0}.substitution-card:first-child{border-top:0;padding-top:0}.substitution-card h3 span{color:var(--muted);font-weight:650}.substitution-card strong{color:#126b36;margin-top:6px;font-size:.8rem;line-height:1.35;display:block}.storage-box{background:var(--blue-soft);border:1px solid #d9e9ff;border-radius:8px;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px;display:grid}.storage-box svg{color:var(--blue)}.storage-box h2{font-size:.98rem}.storage-note-block{border-top:1px solid #cfe1ff;margin-top:10px;padding-top:10px}.storage-note-block:first-of-type{margin-top:8px}.auth-screen{background:linear-gradient(135deg, #1e8e4914, transparent 34%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{border:1px solid var(--border);background:var(--surface);width:min(100%,430px);box-shadow:var(--shadow);text-align:center;border-radius:8px;justify-items:center;gap:14px;padding:30px;display:grid}.auth-form-card{text-align:left;justify-items:stretch;width:min(100%,480px)}.auth-card h1{margin:0;font-size:1.55rem;line-height:1.15}.auth-card p{color:var(--muted);margin:0;font-size:.92rem}.auth-icon{width:54px;height:54px;color:var(--green);background:var(--green-soft);border-radius:999px;justify-self:center;place-items:center;display:grid}.auth-icon.warning{color:var(--orange);background:var(--orange-soft)}.auth-button{width:100%;margin-top:4px}.auth-form{gap:10px;display:grid}.auth-form label,.onboarding-form-grid label,.onboarding-label,.onboarding-allergy-row label{color:#3e4b5f;gap:5px;font-size:.8rem;font-weight:800;display:grid}.auth-form input,.onboarding-form-grid input,.onboarding-form-grid select,.onboarding-label textarea,.onboarding-allergy-row input,.onboarding-allergy-row select{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);background:var(--surface);font:inherit;border-radius:8px;outline:none;font-size:.88rem}.auth-form input,.onboarding-form-grid input,.onboarding-form-grid select,.onboarding-allergy-row input,.onboarding-allergy-row select{min-height:40px;padding:0 10px}.onboarding-label textarea{resize:vertical;padding:9px 10px}.auth-form input:focus,.onboarding-form-grid input:focus,.onboarding-form-grid select:focus,.onboarding-label textarea:focus,.onboarding-allergy-row input:focus,.onboarding-allergy-row select:focus{border-color:#9bd8aa;box-shadow:0 0 0 3px #1e8e491f}.auth-divider{color:var(--subtle);text-align:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;font-size:.78rem;font-weight:800;display:grid}.auth-divider:before,.auth-divider:after{background:var(--border);content:"";height:1px}.auth-mode-row,.auth-action-grid{gap:8px;display:grid}.auth-mode-row{grid-template-columns:1fr 1fr}.auth-action-grid{grid-template-columns:1fr}.text-button{min-height:34px;color:var(--blue);background:0 0;font-size:.84rem;font-weight:800}.auth-error,.auth-notice,.drawer-error{font-weight:750;color:#b42318!important}.auth-notice{color:#126b36!important}.onboarding-screen{background:linear-gradient(135deg, #1e8e4914, transparent 35%), var(--bg);min-height:100vh;padding:24px}.onboarding-shell{grid-template-columns:minmax(230px,300px) minmax(0,860px);gap:22px;width:min(100%,1180px);margin:0 auto;display:grid}.onboarding-rail,.onboarding-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.onboarding-rail{align-content:start;gap:24px;padding:22px;display:grid}.onboarding-brand{color:#102038}.onboarding-rail h1,.onboarding-copy h2{color:#102038;letter-spacing:0;margin:0}.onboarding-rail h1{font-size:1.5rem;line-height:1.12}.onboarding-rail p,.onboarding-copy span,.choice-card span,.review-grid span,.provider-app-card p,.provider-app-heading span,.review-list span{color:var(--muted);font-size:.88rem}.onboarding-steps{gap:10px;margin:0;padding:0;list-style:none;display:grid}.onboarding-steps li{min-height:38px;color:var(--muted);align-items:center;gap:9px;font-size:.88rem;font-weight:800;display:flex}.onboarding-steps span{background:var(--surface-soft);width:25px;height:25px;color:var(--muted);border-radius:999px;place-items:center;font-size:.75rem;display:inline-grid}.onboarding-steps li.active,.onboarding-steps li.complete{color:var(--green)}.onboarding-steps li.active span,.onboarding-steps li.complete span{color:#fff;background:var(--green)}.onboarding-signout{width:100%;min-width:0}.onboarding-card{align-content:start;gap:18px;min-height:620px;padding:24px;display:grid}.onboarding-step-panel,.onboarding-copy{gap:16px;display:grid}.onboarding-copy{gap:4px}.onboarding-copy h2{font-size:1.7rem;line-height:1.12}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.choice-grid.compact{max-width:680px}.choice-card{border:1px solid var(--border);min-height:158px;color:var(--text);background:var(--surface-soft);cursor:pointer;text-align:left;border-radius:8px;align-content:start;justify-items:start;gap:8px;padding:16px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.choice-card:hover{border-color:#9bd8aa;box-shadow:0 8px 22px #10203814}.choice-card svg{color:var(--green)}.choice-card strong,.review-grid strong,.review-list strong{color:#102038;font-weight:850}.choice-card.selected{background:var(--green-soft);border-color:#8ccf9b;box-shadow:0 10px 26px #1e8e491a}.allergy-choice-card{border-width:2px;min-height:148px}.choice-action{background:#1e8e4917;border-radius:999px;justify-content:center;align-items:center;min-height:28px;margin-top:auto;padding:0 10px;font-weight:850;display:inline-flex;color:var(--green)!important;font-size:.78rem!important}.choice-card.selected .choice-action{background:var(--green);color:#fff!important}.onboarding-section{gap:10px;display:grid}.provider-app-list{gap:12px;display:grid}.provider-app-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:14px;padding:16px;display:grid}.provider-app-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.provider-app-heading h3{color:#102038;margin:2px 0 0;font-size:1.08rem;line-height:1.25}.provider-app-heading svg{color:var(--green)}.provider-app-card p{margin:0}.section-heading-row{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.section-heading-row h3{color:#102038;margin:0;font-size:.96rem;line-height:1.25}.section-heading-row span{color:#126b36;background:var(--green-soft);border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 9px;font-size:.72rem;font-weight:850;display:inline-flex}.onboarding-form-grid{gap:12px}.onboarding-checkbox-grid{margin-top:2px}.onboarding-warning{color:#8b4b04;background:var(--orange-soft);border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:12px;font-size:.84rem;font-weight:760;display:grid}.onboarding-warning svg{color:var(--orange)}.onboarding-allergy-list{gap:10px;display:grid}.onboarding-allergy-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(130px,160px) minmax(150px,1fr) minmax(150px,1fr) 42px;align-items:end;gap:10px;padding:12px;display:grid}.add-row-button{width:fit-content;min-width:0}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.review-summary,.review-summary-section{gap:12px;display:grid}.review-grid div{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:4px;padding:14px;display:grid}.review-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.review-list li{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:4px;padding:14px;display:grid}.onboarding-actions{justify-content:space-between;gap:12px;margin-top:auto;padding-top:4px;display:flex}.onboarding-actions .primary-button,.onboarding-actions .outline-button{min-width:160px}.onboarding-actions button:disabled{cursor:not-allowed;opacity:.62}.onboarding-error{margin:0}.profile-topbar-title{min-width:0}.profile-grid{grid-template-columns:minmax(640px,1fr) minmax(310px,360px);gap:22px;padding:22px;display:grid}.profile-main-column,.profile-detail-column{align-content:start;gap:18px;min-width:0;display:grid}.profile-summary-panel{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:18px;display:grid}.profile-avatar{color:#fff;background:linear-gradient(135deg,#1b8f46,#2a9f56);border-radius:999px;place-items:center;width:76px;height:76px;font-size:1.65rem;font-weight:850;display:grid;overflow:hidden;box-shadow:0 16px 30px #1e8e493d}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-avatar-small{width:58px;height:58px;font-size:1.2rem}.profile-summary-copy{gap:16px;min-width:0;display:grid}.profile-title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-title-row h2{color:#102038;margin:0;font-size:1.8rem;font-weight:850;line-height:1.08}.profile-title-row p{max-width:680px;color:var(--muted);margin:6px 0 0;font-size:.94rem}.profile-status{text-transform:capitalize;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:.78rem;font-weight:820;display:inline-flex}.profile-status.ready{color:#126b36;background:var(--green-soft)}.profile-status.incomplete{color:#a15c05;background:var(--orange-soft)}.profile-summary-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-metric-grid{grid-template-columns:repeat(6,minmax(118px,1fr));gap:12px;display:grid}.profile-metric-tile{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-content:center;gap:6px;min-height:108px;padding:14px;display:grid;box-shadow:0 8px 24px #0f1d310d}.profile-metric-tile svg{color:var(--green)}.profile-metric-tile span{color:var(--muted);font-size:.78rem;font-weight:750}.profile-metric-tile strong{color:#102038;font-size:1.22rem;font-weight:850;line-height:1}.profile-panel,.profile-side-panel{padding:16px}.profile-side-panel{box-shadow:0 8px 24px #0f1d310f}.profile-target-bars,.profile-mini-list,.profile-record-list{gap:10px;display:grid}.profile-target-row{gap:7px;display:grid}.profile-target-row>div:first-child{color:var(--muted);justify-content:space-between;gap:10px;font-size:.84rem;display:flex}.profile-target-row strong{color:var(--text)}.profile-record-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.profile-record-row svg{color:var(--green)}.profile-record-row h3,.profile-mini-list strong{color:#13243a;margin:0;font-size:.92rem;font-weight:820}.profile-record-row p,.profile-mini-list p,.profile-empty-text,.garmin-summary p{color:var(--muted);margin:4px 0 0;font-size:.84rem;line-height:1.42}.record-status,.record-link{text-transform:capitalize;white-space:nowrap;border-radius:7px;align-items:center;min-height:28px;font-size:.76rem;font-weight:820;display:inline-flex}.record-status{color:#126b36;background:var(--green-soft);padding:0 9px}.record-status.needs-review,.record-status.failed{color:#a15c05;background:var(--orange-soft)}.record-link{color:var(--blue);background:var(--blue-soft);padding:0 10px}.profile-side-title{align-items:center;gap:8px;display:inline-flex}.profile-side-title svg{color:var(--green)}.garmin-summary{gap:8px;display:grid}.garmin-summary strong{color:#a15c05;font-size:.82rem}.profile-mini-list article{border-top:1px solid var(--border);padding:11px 0}.profile-mini-list article:first-child{border-top:0;padding-top:0}.profile-mini-list span{color:var(--blue);margin-top:3px;font-size:.78rem;font-weight:800;display:block}.allergy-side-panel{border-color:#bee0c5}.profile-warning-empty{color:#8b4b04;background:var(--orange-soft);border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:12px;font-size:.84rem;font-weight:750;display:grid}.profile-warning-empty svg{color:var(--orange)}.profile-tool-list{padding-top:2px}.profile-loading-state,.profile-error-state{padding:18px}.profile-error-state p,.profile-loading-state p{color:var(--muted)}.profile-drawer-backdrop{z-index:20;background:#03182957;justify-content:flex-end;display:flex;position:fixed;inset:0}.profile-drawer{border-left:1px solid var(--border);background:var(--surface);grid-template-rows:auto minmax(0,1fr) auto;width:min(100vw,520px);max-height:100vh;display:grid;box-shadow:-20px 0 40px #0f1d3129}.profile-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.profile-drawer-header h2,.form-section h3,.form-section h4{color:#102038;margin:0;font-size:1.08rem;font-weight:850;line-height:1.25}.form-section h4{font-size:.88rem}.profile-drawer-header p{color:var(--muted);margin:4px 0 0;font-size:.86rem}.profile-form{align-content:start;gap:14px;padding:16px 18px 18px;display:grid;overflow:auto}.form-section{border-bottom:1px solid var(--border);gap:11px;padding:0 0 14px;display:grid}.form-subsection,.profile-allergy-fields{gap:9px;display:grid}.form-section label{color:#3e4b5f;gap:5px;font-size:.8rem;font-weight:800;display:grid}.profile-photo-editor{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px;display:grid}.profile-photo-file{color:var(--muted);margin:0;font-size:.82rem}.form-section input,.form-section select,.form-section textarea{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);background:var(--surface);font:inherit;border-radius:8px;outline:none;font-size:.88rem}.form-section input,.form-section select{min-height:40px;padding:0 10px}.form-section textarea{resize:vertical;padding:9px 10px}.form-section input:focus,.form-section select:focus,.form-section textarea:focus{border-color:#9bd8aa;box-shadow:0 0 0 3px #1e8e491f}.form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.checkbox-grid.dense{gap:7px}.check-option{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;align-items:center;min-height:38px;padding:0 10px;color:#41516a!important;gap:8px!important;font-size:.82rem!important;font-weight:760!important;display:flex!important}.check-option input{width:16px;min-height:16px;accent-color:var(--green)}.drawer-choice-grid{gap:10px}.drawer-choice-grid .choice-card{min-height:128px;padding:12px}.drawer-choice-grid .choice-card strong{font-size:.9rem}.form-inline-check{width:fit-content}.form-warning{color:#8b4b04;background:var(--orange-soft);border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:10px;font-size:.8rem;font-weight:760;display:grid}.form-warning svg{color:var(--orange)}.profile-drawer-actions{border-top:1px solid var(--border);background:#fff;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px 18px;display:grid}.drawer-cancel,.drawer-save{width:100%;min-width:0;margin-top:0}.drawer-save:disabled{cursor:wait;opacity:.72}@media (width<=1180px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.app-shell.navigation-open{grid-template-columns:232px minmax(0,1fr)}.onboarding-shell{grid-template-columns:1fr}.onboarding-rail{gap:16px}.onboarding-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-steps li{justify-content:center}.sidebar{align-items:center;padding:18px 10px}.navigation-open .sidebar{align-items:stretch;padding:24px 16px}.brand-mark span,.nav-list a,.plan-status,.help-link{font-size:0}.brand-mark{gap:0}.navigation-open .brand-mark{gap:8px}.navigation-open .brand-mark span{font-size:1.55rem}.nav-list a,.help-link{justify-content:center;width:48px;padding:0}.navigation-open .nav-list a,.navigation-open .help-link{justify-content:flex-start;width:auto;padding:0 14px;font-size:.95rem}.navigation-open .help-link{padding:0 6px}.dashboard-grid,.recipe-grid,.profile-grid{grid-template-columns:1fr}.detail-column,.recipe-detail-column,.profile-detail-column{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1320px) and (width>=1181px){.dashboard-grid{grid-template-columns:1fr}.detail-column{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-grid,.profile-grid{grid-template-columns:1fr}.recipe-detail-column,.profile-detail-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.app-shell,.app-shell.navigation-open{display:block}.app-shell:has(.initial-interview-page){grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.app-shell:has(.initial-interview-page) .dashboard-shell{height:100%;min-height:0}.sidebar{flex-direction:row;justify-content:space-between;height:auto;padding:12px 14px;position:static}.navigation-open .sidebar{flex-direction:column;align-items:stretch;gap:14px;padding:12px 14px 14px}.navigation-open .brand-row{justify-content:space-between}.navigation-closed .brand-mark,.navigation-open .brand-mark{gap:8px;display:inline-flex}.brand-mark span,.navigation-closed .brand-mark span,.navigation-open .brand-mark span{font-size:1.35rem}.nav-list,.plan-status,.help-link{display:none}.navigation-open .nav-list,.navigation-open .plan-status{display:grid}.navigation-open .help-link{display:flex}.navigation-open .nav-list a,.navigation-open .help-link{justify-content:flex-start;width:100%;padding:0 14px;font-size:.95rem}.navigation-open .help-link{padding:0 6px}.topbar{flex-direction:column;align-items:stretch;padding:12px}.week-controls,.user-actions{justify-content:space-between}.arroki-drawer{width:100vw}.arroki-resize-handle{display:none}.dashboard-grid,.meal-plan-grid,.recipe-grid,.recipes-grid{padding:12px}.recipes-hero{grid-template-columns:1fr}.recipes-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{padding:12px}.recipe-hero,.ingredients-layout{grid-template-columns:1fr}.profile-summary-panel,.profile-title-row,.profile-summary-actions{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.profile-summary-actions .primary-button,.profile-summary-actions .ghost-button,.profile-summary-actions .outline-button{width:100%}.profile-metric-grid,.profile-detail-column,.form-grid-two,.form-grid-three,.checkbox-grid,.auth-mode-row,.choice-grid,.review-grid,.onboarding-form-grid,.onboarding-steps{grid-template-columns:1fr}.onboarding-screen{padding:12px}.onboarding-card,.onboarding-rail{padding:16px}.onboarding-copy h2{font-size:1.35rem}.onboarding-allergy-row{grid-template-columns:1fr}.onboarding-actions{flex-direction:column-reverse}.onboarding-actions .primary-button,.onboarding-actions .outline-button{width:100%}.profile-record-row{grid-template-columns:30px minmax(0,1fr)}.record-status,.record-link{grid-column:2;width:fit-content}.profile-drawer{width:100vw}.profile-drawer-actions{grid-template-columns:1fr}.recipe-photo{min-height:210px}.recipe-title-row{flex-direction:column}.recipe-save-button{width:100%}.recipe-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.generation-panel{grid-template-columns:1fr}.generation-actions,.weekly-summary,.macro-strip{justify-content:stretch}.generation-actions,.weekly-summary{flex-direction:column;align-items:stretch}.today-summary,.today-meal-row,.today-meal-row.empty{grid-template-columns:1fr}.today-meal-row .meal-thumb{width:100%;height:180px}.ghost-button,.primary-button{width:100%}.section-heading{flex-direction:column;align-items:flex-start}.schedule-row.schedule-header{display:none}.schedule-table{border-top:1px solid var(--border);background:var(--surface-soft);gap:10px;padding:12px}.schedule-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:1fr;min-height:0;display:grid;overflow:hidden}.schedule-row>div{border-right:0}.day-cell{border-bottom:1px solid var(--border);justify-content:space-between;display:flex}.schedule-meal{border-bottom:1px solid var(--border);display:block}.schedule-meal:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;padding:12px 12px 0;font-size:.76rem;font-weight:850;display:block}.detail-column,.recipe-detail-column{grid-template-columns:1fr}.initial-interview-page{height:100%;min-height:0;padding:12px}.initial-interview-header{grid-template-columns:52px minmax(0,1fr)}.initial-interview-header h1{font-size:1.55rem}.initial-interview-header img{width:52px;height:52px}.interview-message{grid-template-columns:1fr}.interview-avatar{display:none}.interview-message.user{padding-left:0}.interview-bubble,.interview-message.user .interview-bubble{width:100%}.interview-composer{grid-template-columns:1fr}.interview-composer button{justify-self:stretch;width:100%}.allergy-review-row{grid-template-columns:1fr}.allergy-remove-button{width:100%}}@media (width<=560px){.week-controls{grid-template-columns:42px 1fr 42px;display:grid}.today-button{grid-column:1/-1}.week-title{justify-content:center;min-width:0}.meal-thumb{width:56px;height:56px}.today-panel{padding:16px}.today-header{align-items:center}.today-meal-row .meal-thumb{height:156px}.recipe-topbar-context{grid-template-columns:42px minmax(0,1fr);display:grid}.recipe-back-button{width:42px;padding:0}.recipe-back-button span{display:none}.recipe-topbar-title{justify-content:flex-start;padding:0}.recipe-topbar-title h1,.recipe-topbar-title span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.recipe-topbar-title h1{font-size:1.05rem}.recipe-title-row h2{font-size:1.55rem}.recipe-stat-grid{grid-template-columns:1fr}.ingredient-row{grid-template-columns:70px minmax(0,1fr)}.ingredient-row svg{display:none}}
