html,body,#root{height:100%;overflow:hidden}:root{--dm-red: #c92736;--dm-red-strong: #a61f2b;--dm-red-soft: #f3e6df;--dm-button-surface: #fcf8f3;--dm-button-surface-strong: #f6eee8;--dm-ink: #1f1a18;--dm-subtle: #6f5853;--dm-surface: #ffffff;--dm-surface-muted: #f7f1eb;--dm-border: #d5c0ba;--dm-page: #fff7f4;--dm-radius: 18px;--dm-shadow: 0 8px 22px rgba(86, 45, 43, .08);--app-topbar-offset: 0px;--account-screen-bg: none;color-scheme:light;font-family:IBM Plex Sans,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--dm-page);color:var(--dm-ink);overflow:hidden}button,input,select,textarea{font:inherit}button{border:1px solid var(--dm-red);border-radius:999px;padding:.72rem 1rem;margin-top:5px;margin-bottom:5px;background:var(--dm-button-surface);color:var(--dm-red);cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}button:disabled{opacity:.55}button.ghost{background:var(--dm-button-surface);color:var(--dm-red-strong)}input,select,textarea{width:100%;border:1px solid var(--dm-border);border-radius:14px;padding:.82rem .95rem;background:#fff;color:var(--dm-ink);margin-top:5px;margin-bottom:5px}textarea{resize:vertical}.app-shell{height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto minmax(0,1fr);background:var(--dm-page);overflow:hidden}.app-topbar{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding:.85rem 1rem;background:var(--dm-red);color:#fff;box-shadow:0 2px 12px #562d2b29}.app-topbar-heading{flex:1 1 auto;min-width:0;align-items:center;color:#fff}.app-topbar-copy{min-width:0}.app-topbar-brand{display:none;font-size:1.1rem;font-weight:600;color:#fff}.app-topbar-copy h3{color:#fff}.app-topbar-copy .section-subtitle{color:#ffffffd1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-topbar-status{flex-wrap:nowrap;align-items:center}.topbar-logout{background:#ffffff1f;color:#fff;border-color:#ffffff38}.app-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.app-breadcrumbs{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.45rem 1rem;background:#ffffffeb;border-bottom:1px solid rgba(111,88,83,.14);box-shadow:0 1px #ffffffd9 inset}.app-promo-banner{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding:.8rem 1rem;background:linear-gradient(180deg,#f7e9df,#fffaf7);border-bottom:1px solid rgba(201,39,54,.14)}.app-promo-copy{display:grid;gap:.2rem;min-width:0}.app-promo-copy strong,.app-promo-copy p{margin:0}.app-promo-copy p{color:var(--dm-subtle)}.app-promo-actions{display:flex;gap:.5rem;flex:0 0 auto}.daily-tip-banner{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding:.65rem 1rem;background:#fff;border-bottom:1px solid rgba(111,88,83,.14)}.daily-tip-copy{display:flex;align-items:center;gap:.75rem;min-width:0}.daily-tip-copy>.material-symbol-icon{flex:0 0 auto;color:var(--dm-red)}.daily-tip-copy strong,.daily-tip-copy p{margin:0}.daily-tip-copy p{color:var(--dm-subtle)}.daily-tip-dismiss{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:2.4rem;min-height:2.4rem;padding:0}.app-breadcrumb-nav{display:flex;align-items:center;gap:.3rem;flex:0 0 auto}.breadcrumb-arrow{display:inline-flex;align-items:center;justify-content:center;width:2rem;min-width:2rem;height:2rem;min-height:2rem;margin:0;padding:0;background:#fff;color:var(--dm-red-strong);border:1px solid rgba(111,88,83,.16);border-radius:8px;box-shadow:0 1px 2px #562d2b0f;font-size:1.3rem;font-weight:600;line-height:1}.breadcrumb-arrow:not(:disabled):hover{background:var(--dm-red);border-color:var(--dm-red);color:#fff;box-shadow:0 4px 10px #a61f2b2e}.breadcrumb-arrow:disabled{cursor:default;opacity:.42;box-shadow:none}.breadcrumb-list{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem;min-width:0;min-height:2rem;margin:0;padding:.18rem;list-style:none;background:#fff;border:1px solid rgba(111,88,83,.14);border-radius:8px;box-shadow:0 1px 3px #562d2b0f}.breadcrumb-item{display:inline-flex;align-items:center;gap:.25rem;min-width:0;color:var(--dm-subtle);font-size:.82rem;line-height:1.25}.breadcrumb-separator{color:#6f585373;font-size:1rem;line-height:1}.breadcrumb-link,.breadcrumb-current{display:block;min-width:0;max-width:min(34ch,100%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25;border-radius:7px;padding:.34rem .55rem}.breadcrumb-link{margin:0;border:1px solid transparent;background:transparent;color:var(--dm-subtle);font-weight:600}.breadcrumb-link:hover{background:#c9273614;color:var(--dm-red-strong)}.breadcrumb-link:focus-visible,.breadcrumb-arrow:focus-visible{outline:2px solid rgba(201,39,54,.38);outline-offset:2px}.breadcrumb-current{font-weight:600;color:var(--dm-red-strong);background:#c927361a}.topbar-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:3rem;min-height:3rem;padding:0 .85rem;border-radius:999px;background:#ffffff1f;color:#fff;border-color:#ffffff38;box-shadow:none;line-height:1;text-align:center}.topbar-home{flex:0 0 auto}.topbar-icon:active:not(:disabled){background:#fff3}.material-symbol-icon{display:inline-block;flex:0 0 auto;background-color:currentColor;mask-image:var(--icon-url);mask-position:center;mask-repeat:no-repeat;mask-size:contain;-webkit-mask-image:var(--icon-url);-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain}.content{grid-column:1;grid-row:5;min-height:0;overflow:hidden;padding:.75rem}.content-surface{display:flex;flex-direction:column;align-items:center;gap:1rem;height:100%;min-height:0;width:100%;max-width:none;margin:0;padding:0 .75rem;background:transparent;overflow:hidden}.content-grid{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:1rem;overflow:hidden}.content-main{min-height:0;overflow:hidden;display:flex;flex-direction:column}.section-heading,.panel-heading,.friend-row,.tab-row,.tag-row,.editor-grid,.site-browser-actions,.section-inline-actions,.quick-actions-row,.view-mode-row,.sort-row,.meal-type-toggles{display:flex;gap:.65rem;flex-wrap:wrap}.view-mode-row{justify-content:center}.sort-row,.tag-row{justify-content:center;gap:2px}.sort-row{margin-top:5px}.section-heading,.panel-heading,.friend-row{align-items:center;justify-content:space-between}.section-heading-centered{justify-content:center}.section-heading h3,.panel-heading h3{margin:0;font-size:1.3rem;font-weight:600}.friend-recipes-heading{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.friend-recipes-heading h3{min-width:0}.friend-recipes-back-button{justify-self:center}.friend-recipes-import-button{justify-self:end}.view-mode-row button{display:inline-flex;align-items:center;justify-content:center;min-width:2.8rem;min-height:2.8rem;padding:0;line-height:1}.view-mode-row button.active,.settings-button-stack>button.active,.button-tag.active{background:var(--dm-red);border-color:var(--dm-red);color:#fff}.button-tag{margin:0!important}.view-mode-row .material-symbol-icon{display:block}.recipe-detail-heading{align-items:flex-start}.recipe-detail-heading h2{margin:0;flex:1 1 auto;min-width:0}.recipe-detail-heading .ghost{margin-top:0;margin-left:auto}.section-subtitle,.panel-heading p,.placeholder,.friend-row p,.compact p,.auth-help{margin:0;color:var(--dm-subtle)}.status-chip,.panel-kicker,.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:.78rem}.status-chip{padding:.38rem .72rem;background:var(--dm-surface-muted);color:var(--dm-red-strong)}.panel-kicker{padding:0;color:var(--dm-subtle);text-transform:uppercase;letter-spacing:.08em}.panel{background:var(--dm-surface);border:1px solid var(--dm-border);border-radius:16px;box-shadow:none;padding:1rem}.message-toast{position:fixed;left:50%;bottom:1rem;z-index:60;width:min(calc(100vw - 2rem),28rem);padding:.9rem 1rem;border:1px solid var(--dm-border);border-radius:16px;background:var(--dm-surface);box-shadow:0 10px 28px #1f1a1829;transform:translate(-50%);animation:toast-rise .18s ease-out}@keyframes toast-rise{0%{opacity:0;transform:translate(-50%) translateY(.6rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes button-loading-spin{to{transform:rotate(360deg)}}.auth-submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.button-loading-icon{width:1rem;height:1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:999px;animation:button-loading-spin .75s linear infinite;flex:0 0 auto}.planner-layout,.recipes-layout,.friends-layout,.friends-columns,.account-layout{display:grid;gap:1rem;flex:1 1 auto;min-height:0;overflow:hidden}.planner-layout,.recipes-layout{grid-template-columns:1fr}.planner-layout>*,.recipes-layout>*,.planner-main,.friends-columns>*,.friends-layout>*,.account-layout>*{min-height:0;overflow:auto}.planner-main{display:grid;gap:1rem}.planner-sidebar-panel,.library-panel{display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;max-width:650px;min-height:0;justify-self:center;overflow-x:hidden;overflow-y:auto}.meal-editor-panel,.recipe-editor-panel,.import-site-browser-main{width:100%;max-width:650px;justify-self:center}.modal-card.site-browser-modal .import-site-browser-main{max-width:none;justify-self:stretch}.context-panel{width:100%;max-width:400px}.friends-layout{grid-template-rows:auto minmax(0,1fr)}.friends-columns{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.account-layout{width:100%}.field-stack{display:grid;gap:.35rem}.field-stack span{color:var(--dm-subtle);font-size:.86rem}.recipe-search-field{margin-top:.2rem}.recipe-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:center;margin-top:.2rem}.recipe-search-row .recipe-search-field{margin-top:0}.recipe-search-tags-toggle{white-space:nowrap}.recipe-browser-toolbar{display:grid;grid-template-columns:auto auto auto;align-items:center;justify-content:center;column-gap:.25rem;margin-bottom:.2rem;padding:.65rem;border:1px solid rgba(111,88,83,.12);border-radius:16px;background:#ffffffb8}.recipe-browser-toolbar .view-mode-row{grid-column:2}.recipe-toolbar-trigger{display:inline-flex;align-items:center;justify-content:flex-start;gap:.35rem;min-width:0;min-height:0;padding:.55rem .01rem;border:1px solid transparent;border-radius:999px;background:#fff;box-shadow:none;color:var(--dm-red-strong);font-weight:700;cursor:pointer}.recipe-filter-trigger{grid-column:1}.recipe-order-trigger{grid-column:3}.recipe-toolbar-trigger[aria-expanded=true] .material-symbol-icon{transform:rotate(180deg)}.recipe-filter-controls,.recipe-order-controls{display:none;gap:.65rem;padding:.55rem;border:1px solid rgba(111,88,83,.12);border-radius:16px;background:#ffffffb8}.recipe-filter-controls.open,.recipe-order-controls.open{display:grid;margin:.25rem 0 .2rem}.meal-form,.recipe-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.field-wide,.form-actions{grid-column:1 / -1}.recipe-browser-list,.recipe-browser-grid,.recipe-browser-book{display:grid;gap:.75rem}.recipe-browser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-browser-section{display:grid;gap:.65rem}.recipe-browser-section-title{color:var(--dm-red-strong);padding:.75rem .9rem;border-radius:14px;background:var(--dm-surface-muted);text-transform:uppercase}.recipe-browser-card{display:grid;gap:.3rem;width:100%;padding:.95rem;border:1px solid var(--dm-border);border-radius:14px;background:#fff;color:var(--dm-ink);text-align:left}.recipe-browser-card.selected{background:var(--dm-red-soft);border-color:var(--dm-red)}.recipe-browser-card-top{display:flex;justify-content:space-between;gap:.8rem}.recipe-browser-card-top em{font-style:normal;color:var(--dm-subtle);font-size:.8rem}.calendar-list,.calendar-month{display:grid;gap:.75rem}.calendar-month-header,.calendar-weekdays,.calendar-month-grid{display:grid;gap:.45rem}.calendar-month-header{grid-template-columns:auto 1fr auto;align-items:center;padding-bottom:.35rem}.calendar-month-header strong{text-align:center;text-transform:capitalize}.calendar-month-nav{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;min-width:2.35rem;height:2.35rem;min-height:2.35rem;margin:0;padding:0;border-color:#6f585329;background:#fff;color:var(--dm-red-strong);font-size:1.45rem}.calendar-weekdays,.calendar-month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays span{text-align:center;color:var(--dm-subtle);font-size:.78rem;text-transform:uppercase}.calendar-empty{min-height:4.5rem}.calendar-day{display:grid;justify-items:start;gap:.25rem;position:relative;width:100%;padding:.8rem;margin:0;border-color:#6f58531a;border-radius:14px;background:#fff;color:var(--dm-red-strong);box-shadow:none}.calendar-day.selected{background:var(--dm-red);color:#fff;box-shadow:0 10px 24px #a61f2b2e}.calendar-day.selected span,.calendar-day.selected strong{color:#fff}.calendar-day-month.selected .calendar-day-number{color:var(--dm-ink)}.calendar-day-count{align-items:center;display:inline-flex;justify-content:center;position:absolute;top:50%;left:50%;min-width:2rem;height:2rem;padding-inline:.55rem;border-radius:999px;background:var(--dm-surface-muted);color:var(--dm-red-strong);font-size:.95rem;font-weight:700;text-align:center;transform:translate(-50%,-50%)}.calendar-day.selected .calendar-day-count{background:#fff3}.planner-day-card{gap:.75rem;text-align:left}.planner-day-header,.planner-day-meals{display:grid;gap:.4rem;width:100%}.planner-day-header{grid-template-columns:1fr auto;align-items:center}.planner-day-header span,.planner-day-meals span{color:inherit;font-size:.88rem;opacity:.8}.planner-day-meals strong{display:block;margin-bottom:.1rem}.calendar-toggle{display:flex;align-items:center;gap:.55rem;color:var(--dm-subtle);font-size:.95rem;white-space:nowrap}.calendar-controls-row{display:flex;align-items:center;justify-content:center;gap:1rem;padding-top:.2rem}.calendar-switch{display:inline-flex;align-items:center;width:2.8rem;height:1.2rem;padding:.16rem;border-color:#e6d9d4;border-radius:999px;background:#e6d9d4;box-shadow:inset 0 0 0 1px #0000000f}.calendar-switch span{display:block;width:1.22rem;height:1.22rem;border:1px solid var(--dm-red);border-radius:999px;background:#f6ece8;transform:translate(0);transition:transform .14s ease}.calendar-switch.month span{transform:translate(1.08rem)}.calendar-day-month{min-height:4.5rem}.meal-row,.friend-card{padding:.75rem .9rem;border-radius:14px;background:var(--dm-surface-muted)}.site-picker-grid{display:grid;gap:.65rem}.site-picker-trigger,.site-option{justify-content:center}.today-button{width:fit-content;min-width:7rem;padding-inline:1.4rem;justify-self:center;align-self:center}.planner-screen .today-button{margin-top:0;flex:0 0 auto}.mode-button{min-width:3rem;min-height:2.6rem;padding:0 .8rem}.sort-toggle{background:transparent;color:var(--dm-ink);box-shadow:none;padding:.2rem .1rem}.sort-toggle.active{background:transparent;color:var(--dm-red-strong);font-weight:600}.search-input{min-height:3.2rem}.meal-checkbox{display:inline-flex;align-items:center;gap:.5rem;color:var(--dm-ink)}.meal-checkbox input{width:1.2rem;height:1.2rem}.recipe-tag-row button{background:#fff;color:var(--dm-subtle);border:1px solid var(--dm-border)}.recipe-tag-row button.active{background:var(--dm-red-soft);color:var(--dm-red-strong);border-color:var(--dm-red-soft)}.site-browser-frameWrap{min-height:0;height:100%;width:100%;min-width:0;border:1px solid var(--dm-border);border-radius:14px;overflow:hidden;background:#fff;position:relative;z-index:1;pointer-events:auto;overscroll-behavior:contain}.import-site-browser-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.85rem;height:100%;width:100%;min-height:0;min-width:0;overflow:hidden}.import-site-browser-main.has-status{grid-template-rows:auto auto minmax(0,1fr) auto}.import-site-browser-main.fullscreen,.site-browser-frameWrap.fullscreen{height:100%;min-height:0}.site-browser-frame{display:block;width:100%;height:100%;border:0;pointer-events:auto;overscroll-behavior:contain}.site-browser-status{margin:0;padding:.8rem .9rem;border:1px solid var(--dm-border);border-radius:14px;background:var(--dm-surface-muted);color:var(--dm-red-strong);font-size:.95rem}.site-import-advanced{gap:.75rem}.expandable-field-toggle.site-import-advanced-toggle{justify-content:flex-start;border:0;box-shadow:none}.site-browser-fullscreen-button{display:inline-flex;align-items:center;gap:.45rem}.site-browser-placeholder{display:grid;place-items:center;height:100%;padding:1rem;color:var(--dm-subtle);text-align:center}@media(max-width:900px){.modal-card.site-browser-modal{width:calc(100vw - 2rem)}}.password-field{position:relative;display:block}.password-field input{padding-right:3.4rem}.password-toggle{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);width:2.6rem;height:2.6rem;padding:0;border:0;border-radius:999px;background:transparent;color:var(--dm-red-strong)}.password-toggle .material-symbol-icon{width:1.15rem;height:1.15rem}.auth-switch,.inline-link{padding:0;border:0;border-radius:0;background:transparent;color:var(--dm-red-strong);text-decoration:underline;box-shadow:none}.auth-switch{border-radius:999px;padding:.18rem .45rem}.inline-link-no-underline{color:#1d5fbf;text-decoration:none}.badge{min-width:1.5rem;height:1.5rem;padding:0 .4rem;background:#111;color:#fff}.account-strip{display:flex;align-items:center;justify-content:center;min-height:0;padding:.45rem .7rem}.account-strip p{width:100%;margin:0;display:flex;justify-content:center}.account-strip .inline-link{text-align:center}.account-summary{display:flex;align-items:center;gap:.7rem;width:100%;padding:0;background:transparent;color:var(--dm-ink);text-align:left}.account-avatar{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:999px;background:var(--dm-red);color:#fff;font-weight:700;overflow:hidden;flex:0 0 auto}.account-avatar img{width:100%;height:100%;object-fit:cover}.drawer-backdrop{position:fixed;top:var(--app-topbar-offset);right:0;bottom:0;left:0;background:#1f1a1847;opacity:0;pointer-events:none;transition:opacity .14s ease;z-index:45}.drawer-backdrop.open{opacity:1;pointer-events:auto}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#1f1a1852;z-index:40;overscroll-behavior:contain}.modal-backdrop.site-browser-backdrop{z-index:80}.modal-backdrop.site-browser-backdrop.fullscreen{padding:0}.modal-card{width:min(100%,28rem);max-height:calc(100dvh - 2rem);display:grid;gap:.75rem;padding:1rem;background:#fff;border-radius:18px;box-shadow:0 18px 38px #1f1a182e}.modal-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem}.modal-header-side,.modal-header-center,.modal-header-action{display:flex;align-items:center;min-width:0;min-height:0}.modal-header-side{justify-content:flex-start}.modal-header-center{justify-content:center;text-align:center}.modal-header-action{justify-content:flex-end}.modal-card.site-browser-modal{width:min(50vw,60rem);max-width:calc(100vw - 2rem);height:calc(100dvh - 2rem);max-height:calc(100dvh - 2rem);grid-template-rows:auto minmax(0,1fr);overflow:hidden;overscroll-behavior:contain}.modal-card.site-browser-modal.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;max-width:none;height:auto;max-height:none;border-radius:0}.modal-card.site-browser-modal.fullscreen .import-site-browser-main,.modal-card.site-browser-modal.fullscreen .site-browser-frameWrap{height:100%;width:100%;min-height:0;min-width:0}.modal-card.site-picker-modal{max-height:80dvh;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.modal-card.select-recipes-modal{grid-template-rows:auto auto auto minmax(0,1fr) auto;overflow:hidden}.site-picker-list{display:grid;gap:.75rem;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem}.modal-card h3{margin:0 0 .25rem}.modal-header h3{margin:0;min-width:0;text-align:center}.modal-header-button{margin:0;white-space:nowrap}.modal-option{justify-content:flex-start;border-radius:14px}.modal-option-black{background:#111;color:#fff}.modal-cancel{background:transparent;color:var(--dm-red-strong);box-shadow:none;justify-self:end}.tour-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none}.tour-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#1f1a1880}.tour-target-ring{position:absolute;border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 4px #c927367a,0 12px 30px #1f1a183d}.tour-arrow{position:absolute;width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:24px solid #fff;filter:drop-shadow(0 4px 8px rgba(31,26,24,.18))}.tour-bubble{position:absolute;display:grid;gap:.75rem;max-width:calc(100vw - 2rem);padding:1rem;background:#fff;border-radius:14px;box-shadow:0 18px 44px #1f1a183d;pointer-events:auto}.tour-bubble-page-step:before{content:"";position:absolute;left:50%;top:-24px;width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:24px solid #fff;filter:drop-shadow(0 4px 8px rgba(31,26,24,.18));transform:translate(-50%) rotate(180deg)}.tour-bubble.tour-bubble-page-step{overflow:visible!important}.tour-bubble-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.tour-bubble-header span{color:var(--dm-muted);font-size:.82rem;font-weight:700;text-transform:uppercase}.tour-bubble h3,.tour-bubble p{margin:0}.tour-bubble p{color:var(--dm-muted);line-height:1.45}.tour-close-button{padding:.35rem .5rem;color:var(--dm-red-strong)}.tour-actions{display:flex;justify-content:space-between;gap:.75rem}.tour-actions button{min-width:6.5rem}.sidebar{grid-column:2;position:relative;top:auto;right:auto;width:auto;display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;margin:0;padding:1rem;gap:1rem;background:#fff;box-shadow:-12px 0 30px #1f1a1829;transform:none;transition:none;z-index:10;overflow-x:hidden;overflow-y:auto}.sidebar.open{transform:none}.nav{display:grid;gap:.55rem}.nav button{display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;color:var(--dm-ink);border-radius:12px;box-shadow:none;text-align:left;transition:background-color .14s ease}.nav button.active{background:var(--dm-red-soft);color:var(--dm-red-strong)}@media(min-width:1201px){.planner-layout,.planner-layout.editor-open,.recipes-layout{grid-template-columns:minmax(320px,400px) minmax(0,1fr);align-items:start}}@media(max-width:1200px){.planner-layout,.planner-layout.editor-open,.recipes-layout{grid-template-columns:1fr}.context-panel{display:none}}@media(max-width:900px){.app-shell,.content-grid{grid-template-columns:1fr}.content{padding:.6rem}.content-surface{padding:0}.panel{padding:.5rem}.menu-trigger{display:inline-flex}.sidebar{grid-column:auto;position:fixed;top:0;right:0;width:min(22rem,86vw);height:100dvh;margin:0;transform:translate(100%);transition:transform .16s ease;z-index:30}.sidebar.open{transform:translate(0)}.planner-layout,.recipes-layout,.meal-form,.recipe-form,.recipe-browser-grid,.friends-columns{grid-template-columns:1fr}.with-left-sidebar{grid-template-columns:1fr;height:auto}.left-sidebar{position:static;overflow:visible;padding-right:0}.main-pane{overflow:visible;padding-right:0}.section-heading,.panel-heading{align-items:start;flex-direction:column}.friend-recipes-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%}.friend-recipes-heading h3{grid-column:1 / -1}.friend-recipes-back-button{justify-self:start}.friend-recipes-import-button{justify-self:end}.recipe-edit-heading{align-items:center;flex-direction:row}.app-topbar{gap:.65rem}.app-topbar-heading{align-items:center;flex-direction:row;justify-content:flex-start}.app-topbar-copy{display:none}.app-topbar-brand{display:block}.app-breadcrumbs{display:none}.app-promo-banner{align-items:flex-start;flex-direction:column}.daily-tip-banner{align-items:flex-start}.app-promo-actions{width:100%}.app-promo-actions button{flex:1 1 0}.breadcrumb-list{align-items:center;row-gap:.2rem}.topbar-logout{display:none}.planner-sidebar-panel .panel-heading{flex-direction:row;align-items:center}.planner-layout>*,.recipes-layout>*,.planner-main,.friends-columns>*,.friends-layout>*,.account-layout>*{overflow:visible}}@media(min-width:901px){.menu-trigger{display:none}}.screen{display:grid;gap:1rem;width:100%;height:100%;min-height:0;overflow:hidden;padding-right:0}.with-left-sidebar{grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);align-items:start;height:100%;min-height:0}.left-sidebar,.main-pane{min-height:0;max-height:100%;height:100%}.left-sidebar{overflow:auto;padding-right:.25rem}.main-pane{display:grid;gap:1rem;overflow:auto;padding-right:.25rem;align-content:stretch;grid-auto-rows:minmax(0,1fr)}.main-pane>.panel{height:100%;min-height:100%}.app-topbar-titleWrap{display:flex;flex:1 1 auto;align-items:center;gap:.75rem;min-width:0}.app-topbar-titleCopy{min-width:0}.app-topbar-brandMark{display:grid;justify-items:center;gap:.05rem;min-width:0;color:#fff;line-height:1;text-align:center}.app-topbar-brandMark span{font-size:.78rem;font-weight:600;opacity:.82}.app-topbar-brandMark strong{font-size:1.6rem;font-weight:800}.app-topbar-titleWrap h1,.app-topbar-titleWrap p,.topbar-account-link{margin:0}.app-topbar-titleWrap h1{font-size:1.15rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-topbar-titleWrap p{color:#ffffffd1;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-account-link{display:block;max-width:100%;padding:0;border:0;border-radius:0;background:transparent;color:#ffffffd1;box-shadow:none;font-size:.9rem;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-account-link:hover:not(:disabled){background:transparent;color:#fff;text-decoration:underline}.badge-floating{position:absolute;top:-.2rem;right:-.2rem}@media(max-width:700px){.app-topbar{grid-template-columns:minmax(0,1fr) auto}.app-topbar-brandMark{display:none}}@media(hover:hover)and (pointer:fine){button:hover:not(:disabled){background:var(--dm-button-surface-strong);color:var(--dm-red)}.settings-button-stack>button.active:hover:not(:disabled){background:var(--dm-red-strong);border-color:var(--dm-red-strong);color:#fff}.nav button:hover,.drawer-link:hover{background:#f0f0f0;color:var(--dm-red)}}@media(max-width:440px){.app-topbar{gap:.5rem;padding:.75rem}.app-topbar-titleWrap{gap:.5rem}.app-topbar-titleWrap h1{font-size:1rem}.app-topbar-brandMark span{font-size:.68rem}.app-topbar-brandMark strong{font-size:1.25rem}.app-topbar-actions{gap:.35rem}.topbar-icon{min-width:2.5rem;min-height:2.5rem;padding:0 .65rem}}.right-drawer{position:fixed;top:var(--app-topbar-offset);right:0;z-index:50;display:grid;align-content:start;gap:.25rem;width:min(22rem,86vw);height:calc(100dvh - var(--app-topbar-offset));padding:1rem;background:#fff;box-shadow:-12px 0 28px #1f1a1829;overflow-y:auto}@media(min-width:1201px){.content-surface.drawer-open{padding-right:calc(min(22rem,86vw) + 1.5rem)}.drawer-backdrop.open{opacity:0;pointer-events:none}}.drawer-link{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-radius:14px;background:transparent;color:var(--dm-ink);box-shadow:none;transition:background-color .14s ease}.sidebar-panel{display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0}.sidebar-panel-title{margin:0;text-align:center}.sidebar-panel-kicker{margin:0 0 .85rem;text-align:center}.sidebar-panel-browser{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.sidebar-panel-browser .view-mode-row button,.sidebar-panel-browser>.recipe-search-field,.sidebar-panel-browser>.recipe-search-row,.sidebar-panel-browser>.inline-text-button{margin-top:0;margin-bottom:0}.planner-calendar-panel{display:flex;flex-direction:column;gap:.85rem;height:100%;max-height:100%;min-height:0;padding:1rem;border:1px solid rgba(111,88,83,.14);background:linear-gradient(135deg,#c927360f,#ffffffeb 44%,#fff);box-shadow:0 14px 34px #562d2b14}.calendar-panel-header,.recipe-library-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0;flex-wrap:wrap}.calendar-panel-header h2,.recipe-library-header h2{margin:0}.calendar-panel-header .panel-kicker,.recipe-library-header .panel-kicker{margin-bottom:0;font-size:1rem}.calendar-mode-segmented,.view-mode-row{display:inline-flex;align-items:center;gap:.25rem;flex-wrap:nowrap;padding:.25rem;border:1px solid rgba(111,88,83,.16);border-radius:999px;background:var(--dm-surface-muted)}.calendar-mode-segmented button,.view-mode-row button{display:inline-flex;align-items:center;justify-content:center;min-height:2.25rem;margin:0;padding:.45rem .8rem;border:0;border-radius:999px;background:transparent;color:var(--dm-subtle);box-shadow:none}.calendar-mode-segmented button.active,.view-mode-row button.active{background:#fff;color:var(--dm-red-strong);box-shadow:0 6px 16px #562d2b1a}.planner-calendar-panel-compact{height:100%;max-height:100%;min-height:0;overflow:hidden}.planner-calendar-panel-compact .planner-week-list{min-height:0}.planner-calendar-panel-compact .today-button{position:static}.planner-calendar-panel-compact .day-card{gap:.55rem;padding:.75rem}.planner-calendar-panel-compact .day-card-header,.planner-calendar-panel-compact .day-card-entry{font-size:.92rem}.recipe-browser-results{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.recipe-browser-results-scroll{overflow:auto}.recipe-browser-results>.recipe-list,.recipe-browser-results>.recipe-grid{flex:1 1 auto;min-height:0;overflow:auto;align-content:start;align-items:start;grid-auto-rows:max-content}.planner-screen,.day-screen,.recipe-screen,.recipe-detail-screen,.recipe-edit-screen,.shopping-list-screen,.stats-screen,.settings-screen,.ingredients-screen,.friends-screen,.account-screen,.info-screen{max-width:78rem}.recipe-screen .main-pane{overflow:hidden}.recipe-browser-main-panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:1rem;border:1px solid rgba(111,88,83,.14);background:linear-gradient(135deg,#c927360d,#fffffff0 42%,#fff);box-shadow:0 14px 34px #562d2b14}.planner-header{margin-bottom:0}.planner-screen.with-left-sidebar{align-items:stretch}.planner-screen .main-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden;align-content:normal}.planner-screen .planner-calendar-panel{flex:1 1 auto}.planner-week-list{display:grid;gap:.85rem;flex:1 1 auto;min-height:0;max-height:none;overflow:auto;padding-right:.15rem}.day-card{display:grid;gap:.8rem;width:100%;margin:0;padding:1rem;border:1px solid rgba(111,88,83,.14);border-radius:16px;text-align:left;background:#ffffffe6;color:var(--dm-ink);box-shadow:0 10px 24px #562d2b0f}.day-card span,.day-card strong{color:var(--dm-ink)}.day-card.selected{border-color:#c927366b;background:#fff;box-shadow:0 14px 32px #a61f2b29}.day-card.today:not(.selected){border-color:#c9273638;box-shadow:0 6px 16px #c927361f}.day-card-entry,.meal-entry-row,.inline-actions,.split-grid,.modal-actions{display:flex;flex-direction:column;gap:.75rem}.day-card-header{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;padding-bottom:.7rem;border-bottom:1px solid rgba(111,88,83,.12)}.day-card-header strong{font-size:1.08rem}.day-card-header span{color:var(--dm-subtle);font-size:.9rem}.day-card-entry,.meal-entry-row{align-items:flex-start;justify-content:space-between}.meal-entry-row strong{font-weight:700}.day-card-section{display:grid;gap:.35rem;padding:.75rem;border-radius:14px;background:var(--dm-surface-muted)}.day-card-section>strong{color:var(--dm-red-strong);font-size:.82rem;letter-spacing:0;text-transform:uppercase}.day-card-section .placeholder{margin:0;color:var(--dm-subtle)}.day-card-entry{padding:.55rem 0;border-top:1px solid rgba(111,88,83,.12)}.day-card-entry:first-of-type{border-top:0}.action-share{background:#4fc3f7;color:#fff}.month-panel{display:grid;gap:.85rem;flex:1 1 auto;min-height:0;margin:0;padding:1rem;border:1px solid rgba(111,88,83,.12);border-radius:16px;background:#ffffffc7;box-shadow:none}.calendar-day-month.today{border-color:#a61f2b57;background:#fff4f0}.meal-section-panel,.recipe-detail-screen .panel,.recipe-edit-screen .panel,.shopping-list-screen .panel,.stats-screen .panel,.settings-screen .panel,.ingredients-screen .panel,.friends-screen .panel,.account-screen .panel,.info-screen .panel{display:grid;gap:.85rem}.day-editor-panel{width:min(100%,37.5rem);margin-block:auto}.day-editor-header,.day-editor-sections{display:grid;gap:.85rem}.day-editor-header{gap:0;justify-items:center;text-align:center;margin-bottom:5px}.day-editor-sections>.meal-section-panel{padding:.95rem;background:var(--dm-surface-muted);border-radius:var(--dm-radius);border-top:1px solid rgba(111,88,83,.16)}.day-editor-sections>.meal-section-panel:first-child{padding-top:.95rem;border-top:0}.shopping-list-screen{width:min(100%,54rem)}.shopping-list-panel{width:100%;height:100%;min-height:0;align-content:flex-start}.shopping-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.shopping-list-header h2{margin:0}.shopping-group-toggle{width:max-content;max-width:100%;padding:0;border:0;border-radius:0;background:transparent}.shopping-group-toggle button{border-radius:0}.shopping-group-toggle button.active{background:transparent;box-shadow:none;color:var(--dm-red-strong);text-decoration:underline;text-decoration-thickness:.12em;text-underline-offset:.22em}.shopping-sections{display:grid;gap:.85rem}.shopping-section{display:grid;gap:.7rem;padding:.95rem;border:1px solid rgba(111,88,83,.14);border-radius:var(--dm-radius);background:var(--dm-surface-muted)}.shopping-section-title{display:inline-flex;align-items:center;gap:.65rem;width:max-content;max-width:100%;font-size:1.08rem;font-weight:700;color:var(--dm-ink)}.shopping-section-title input{width:1.1rem;height:1.1rem;accent-color:var(--dm-red)}.shopping-ingredients{display:grid;gap:.45rem;margin:0;padding-left:1.6rem}.shopping-ingredients li{padding-right:.25rem}.shopping-ingredients small{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.45rem;margin-left:.5rem;border-radius:999px;background:#fff;color:var(--dm-red-strong);font-size:.78rem;font-weight:700}.shopping-section.checked .shopping-section-title span,.shopping-section.checked .shopping-ingredients span{text-decoration:line-through;text-decoration-thickness:.12em;color:var(--dm-subtle)}.day-editor-sections>.meal-section-panel>h3{margin:0;text-align:center}.day-editor-header>h3{margin:0}.recipe-edit-screen,.day-screen,.account-screen,.friends-screen,.stats-screen,.settings-screen,.info-screen{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;align-items:center;overflow:auto}.account-screen{background-color:#efe6dc;background-image:linear-gradient(#fff7f447,#fff7f447),var(--account-screen-bg);background-position:top center;background-repeat:no-repeat;background-size:cover}.account-screen>.panel:not(.auth-panel),.info-screen>.panel{width:min(100%,37.5rem)}.friends-screen>.panel{width:min(100%,52rem)}.account-screen>.account-dashboard-panel{width:min(100%,42rem)}.info-screen>.panel.info-panel{width:min(100%,52rem)}.auth-panel{width:min(100%,25rem)}.auth-panel-header{display:grid;gap:.35rem}.auth-panel-header.centered{justify-items:center;text-align:center}.auth-panel-header p{margin:0;color:var(--dm-subtle)}.friends-screen{padding:1rem}.stats-panel{display:grid;gap:1rem;width:min(100%,58rem);margin-block:auto}.stats-hero,.stats-card,.stats-metric-card{border:1px solid rgba(111,88,83,.16);background:var(--dm-surface);box-shadow:0 14px 34px #562d2b14}.stats-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,.36fr);gap:1rem;align-items:stretch;padding:1.1rem;border-radius:18px;background:linear-gradient(135deg,#c9273614,#f7f1eba3 46%,#fff)}.stats-hero h2,.stats-card-heading h3{margin:0}.stats-hero p{margin:.35rem 0 0;color:var(--dm-subtle)}.stats-hero-highlight{display:grid;align-content:center;gap:.35rem;min-width:0;padding:.95rem;border-radius:14px;background:#ffffffbd;border:1px solid rgba(201,39,54,.12)}.stats-hero-highlight span,.stats-metric-card span,.stats-metric-card small,.stats-history-row span{color:var(--dm-subtle)}.stats-hero-highlight strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:1.08rem}.stats-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.85rem}.stats-metric-card{display:grid;gap:.2rem;min-height:7rem;align-content:center;padding:1rem;border-radius:16px}.stats-metric-card strong{font-size:2rem;line-height:1}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stats-card{display:grid;gap:.85rem;min-width:0;padding:1rem;border-radius:16px}.stats-card-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.stats-card-heading span{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;padding-inline:.6rem;border-radius:999px;background:var(--dm-surface-muted);color:var(--dm-red-strong);font-weight:700}.stats-section{align-content:start}.stats-ranked-row,.stats-weekly-row,.stats-history-row{display:grid;gap:.48rem;min-width:0}.stats-ranked-row>div,.stats-history-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.stats-ranked-row>div{display:grid;gap:.75rem}.stats-ranked-row span,.stats-history-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-progress-track{display:block;width:100%;height:.48rem;overflow:hidden;border-radius:999px;background:#efe3dc}.stats-progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--dm-red-strong),var(--dm-red))}.stats-weekly-list,.stats-history-list{display:grid;gap:.75rem}.stats-weekly-row{grid-template-columns:minmax(5.5rem,.28fr) minmax(0,1fr) auto;align-items:center}.stats-weekly-row>span:first-child{color:var(--dm-ink);font-weight:600}.stats-history-card input{margin:0}.stats-history-row{padding:.75rem 0;border-top:1px solid rgba(111,88,83,.13)}.settings-panel{width:min(100%,42rem)}.friends-panel{width:min(100%,37.5rem)}.recipe-edit-screen>.panel{width:min(100%,37.5rem)}.expandable-field{display:grid;gap:.55rem}.expandable-field-toggle{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:nowrap;width:100%;margin:0;padding:0;border:0;background:transparent;color:var(--dm-ink);border-radius:0;box-shadow:none}.expandable-field-toggle>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expandable-field-toggle .material-symbol-icon{flex:0 0 auto;transition:transform .18s ease}.expandable-field-toggle.is-expanded .material-symbol-icon{transform:rotate(180deg)}.settings-section,.friends-section{display:grid;gap:.85rem}.settings-screen{padding:1rem}.settings-panel{grid-template-columns:minmax(0,1fr);align-content:start;padding:0;background:transparent;box-shadow:none}.settings-section{width:100%;min-width:0;align-content:start;padding:1rem;border:1px solid rgba(111,88,83,.14);border-radius:16px;background:#ffffffeb;box-shadow:0 12px 28px #562d2b12}.settings-section-wide{grid-column:auto}.settings-section-tall{grid-row:auto}.settings-panel>h3,.settings-section>h3{margin:0;text-align:left;font-size:1rem;line-height:1.2}.settings-manage-button{width:100%;justify-content:center}.settings-button-stack{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-choice-muted{opacity:.55}.settings-button-stack>button{width:100%;justify-content:center}.settings-button-content{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:0}.settings-button-content>span:last-child{min-width:0;overflow-wrap:anywhere}.settings-button-stack-full>button{grid-column:1 / -1}.settings-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.settings-status-row{display:grid;gap:.35rem;min-width:0;padding:.85rem;border:1px solid rgba(111,88,83,.12);border-radius:14px;background:var(--dm-surface-muted)}.settings-status-row>span{color:var(--dm-subtle);font-size:.88rem}.settings-status-chip{display:inline-flex;width:max-content;max-width:100%;align-items:center;min-height:2rem;padding:.35rem .7rem;border-radius:999px;background:#fff;color:var(--dm-red-strong);overflow-wrap:anywhere}.settings-pill-list{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center}.settings-toggle-pill{min-height:2.75rem;margin:0}.settings-section .friend-row{gap:.75rem;min-width:0;padding:.75rem 0;border-top:1px solid rgba(111,88,83,.12)}.settings-section .friend-row:first-of-type{border-top:0}.settings-section .friend-row>span,.settings-section .friend-row strong{min-width:0;overflow-wrap:anywhere}.settings-section .split-grid{padding-bottom:.25rem}.recipe-edit-screen>.panel,.stats-screen>.panel,.settings-screen>.panel,.friends-screen>.panel,.account-screen>.panel,.info-screen>.panel{margin-block:auto}.friends-panel-empty{text-align:center;justify-items:center}.friends-panel{align-content:start;padding:0;background:transparent;box-shadow:none}.friends-hero-card,.friends-section,.friend-person-card,.friend-select-row{border:1px solid rgba(111,88,83,.14);background:#ffffffeb;box-shadow:0 12px 28px #562d2b12}.friends-hero-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:1.1rem;border-radius:16px;background:linear-gradient(135deg,#c9273614,#ffffffe0 54%,#fff)}.friends-hero-icon,.friend-avatar{display:grid;place-items:center;flex:0 0 auto;color:#fff;font-weight:800;line-height:1}.friends-hero-icon{width:4rem;height:4rem;border-radius:18px;background:var(--dm-red)}.friends-hero-copy{min-width:0}.friends-hero-copy span{color:var(--dm-subtle);font-size:.92rem}.friends-hero-copy h3{margin:.15rem 0 0;font-size:1.45rem;line-height:1.15;overflow-wrap:anywhere}.friends-section{padding:1rem;border-radius:16px}.friends-group-card{grid-template-columns:minmax(0,1fr) auto;align-items:end}.friends-add-section{justify-items:center}.friends-section-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.friends-section-heading h3{margin:0;font-size:1rem}.friends-section-heading span{display:inline-grid;place-items:center;min-width:2rem;height:2rem;padding-inline:.6rem;border-radius:999px;background:var(--dm-surface-muted);color:var(--dm-red-strong);font-weight:700}.account-compact-actions{display:flex;justify-content:center;gap:.85rem;flex-wrap:wrap}.account-dashboard-panel{gap:1rem;padding:1rem}.account-profile-card,.account-detail-card,.account-alert-card,.account-action-card{border:1px solid rgba(111,88,83,.14);background:#ffffffe6;box-shadow:0 12px 28px #562d2b12}.account-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:1.1rem;border-radius:16px;background:linear-gradient(135deg,#c9273614,#ffffffdb 54%,#fff);color:inherit;text-decoration:none;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.account-profile-card:hover,.account-profile-card:focus-visible{border-color:#c9273652;box-shadow:0 16px 34px #562d2b1c;transform:translateY(-1px)}.account-profile-card:focus-visible{outline:3px solid rgba(201,39,54,.28);outline-offset:3px}.account-profile-avatar{display:grid;place-items:center;width:4rem;height:4rem;border-radius:18px;background:var(--dm-red);color:#fff;font-size:1.65rem;font-weight:800;line-height:1}.account-profile-copy{min-width:0}.account-profile-copy span,.account-detail-card span{color:var(--dm-subtle);font-size:.9rem}.account-profile-copy h3,.account-profile-copy p,.account-alert-card p{margin:0}.account-profile-copy h3{margin-top:.15rem;font-size:1.45rem;line-height:1.15;overflow-wrap:anywhere}.account-profile-copy p{margin-top:.2rem;color:var(--dm-subtle);overflow-wrap:anywhere}.account-detail-card{display:grid;gap:.25rem;padding:.95rem 1rem;border-radius:14px;background:var(--dm-surface-muted)}.account-detail-card strong{overflow-wrap:anywhere}.account-alert-card{display:grid;gap:.75rem;padding:.95rem;border-radius:14px;background:#fff8ee}.account-alert-card button{justify-self:start}.account-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.account-action-card{position:relative;display:grid;justify-items:center;align-content:center;gap:.55rem;min-height:8rem;margin:0;padding:1rem;border-radius:16px;color:var(--dm-red-strong)}.account-action-card .badge{position:absolute;top:.75rem;right:.75rem}.account-action-icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:999px;background:var(--dm-surface-muted);color:var(--dm-red-strong)}.account-danger-section{display:grid;justify-items:center;gap:.75rem;padding:.95rem;border:1px solid rgba(31,26,24,.1);border-radius:14px;background:#ffffffc7}.account-danger-section summary{justify-self:stretch;cursor:pointer;color:var(--dm-ink);font-weight:700}.account-delete-button{justify-self:center;width:max-content;margin-inline:auto;background:#111;border-color:#111;color:#fff}.account-delete-button:hover:not(:disabled){background:#000;border-color:#000}.account-delete-other-apps{display:grid;gap:.65rem}.account-delete-other-apps p,.account-delete-other-apps ul{margin:0}.account-verification-row{display:flex;align-items:center;gap:.45rem;margin-top:-.55rem}.account-verified-symbol{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:999px;background:#178c45;color:#fff;font-weight:800;line-height:1}.account-screen .panel{background:#ffffffe0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.info-panel{background:radial-gradient(circle at top right,rgba(201,39,54,.08),transparent 36%),linear-gradient(180deg,#fffaf8,#fff)}.info-hero{display:grid;gap:.75rem;padding:.35rem}.info-hero h2,.info-feature-card h3{margin:0}.info-hero p,.info-feature-card p{margin:0;color:var(--dm-subtle)}.info-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.info-feature-card{display:grid;gap:.55rem;padding:1rem;border-radius:20px;background:var(--dm-surface-muted);border:1px solid rgba(201,39,54,.08)}@media(max-width:720px){.stats-panel{width:calc(100% - 2rem);max-width:calc(100% - 2rem);margin-inline:1rem}.stats-hero,.stats-grid,.stats-metric-grid{grid-template-columns:1fr}.stats-metric-grid{gap:.65rem}.stats-metric-card{min-height:5.9rem}.stats-weekly-row{grid-template-columns:minmax(5rem,.35fr) minmax(0,1fr) auto}.stats-history-row,.info-feature-grid{grid-template-columns:1fr}.account-screen>.panel,.account-screen>.panel:not(.auth-panel){width:calc(100% - 2rem);max-width:calc(100% - 2rem);margin-inline:1rem}.account-profile-card,.account-action-grid{grid-template-columns:minmax(0,1fr)}.account-profile-card{justify-items:center;text-align:center}}.account-compact-action{width:33.333%;min-width:max-content}.friends-primary-action{width:auto;min-width:min(100%,11rem);justify-self:center}.friend-members-list{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.friend-select-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;width:100%;margin:0;padding:.85rem;border-radius:14px;color:var(--dm-ink);text-align:left}.friend-person-card,.friends-section>.friend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;padding:.85rem;border-radius:14px}.friends-section>.friend-row{box-shadow:none;background:var(--dm-surface-muted)}.friend-avatar{width:2.45rem;height:2.45rem;border-radius:999px;background:var(--dm-red);font-size:.95rem}.friend-person-card>div,.friend-select-row>div,.friends-section>.friend-row>div{min-width:0;padding-left:0}.friend-person-card strong,.friend-person-card p,.friend-select-row strong,.friend-select-row p,.friends-section>.friend-row strong,.friends-section>.friend-row p{min-width:0;overflow-wrap:anywhere}.recipe-detail-screen .panel{min-height:100%;max-height:100%;overflow:auto;align-content:start}.recipe-edit-screen{justify-items:center;overflow:auto}.recipe-edit-screen .panel{width:100%}.recipe-edit-heading{flex-direction:row;align-items:center}.recipe-edit-heading-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto}.recipe-editor-form{display:grid;grid-template-columns:minmax(0,1fr);gap:.85rem}.hidden-file-input{display:none}.upload-photo-button{justify-self:start}.meal-entry-list{display:grid;gap:.75rem}.meal-entry-row{padding:.8rem .9rem;border-radius:14px;background:var(--dm-surface-muted)}.suggestions-card{display:grid;gap:.3rem;padding:.35rem;border:1px solid var(--dm-border);border-radius:14px;background:#fff}.suggestion-row{justify-content:flex-start;background:transparent;color:var(--dm-ink);box-shadow:none}.split-grid{align-items:end}.split-grid>*{flex:1 1 0}.recipe-list,.recipe-grid,.book-index-page,.ingredient-lines{display:grid;gap:.85rem}.recipe-library-header{margin-bottom:.85rem;padding-bottom:.15rem}.recipe-count-pill{display:inline-flex;align-items:center;min-height:2.25rem;padding:.35rem .75rem;border:1px solid rgba(201,39,54,.13);border-radius:999px;background:#fff;color:var(--dm-red-strong);font-weight:700;white-space:nowrap}.book-index-page{justify-items:stretch;align-content:start;align-items:start;grid-auto-rows:max-content;margin-top:5px;padding:1rem}.book-section{display:grid;justify-items:stretch;gap:.75rem;margin-top:5px}.recipe-row-card,.recipe-grid-card,.book-recipe-page{text-align:left;color:var(--dm-ink)}.recipe-row-card,.recipe-grid-card,.book-index-page,.book-recipe-page{border:1px solid rgba(111,88,83,.14);border-radius:16px;background:#fffffff0;box-shadow:0 10px 24px #562d2b0f}.recipe-row-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.85rem;width:100%;margin:0;padding:.95rem}.recipe-row-card>div,.recipe-grid-card-copy{display:grid;gap:.18rem;min-width:0}.recipe-row-card span,.recipe-row-card strong,.recipe-grid-card span,.recipe-grid-card strong{color:var(--dm-ink)}.recipe-row-card strong{padding-right:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-row-card span,.recipe-grid-card span{color:var(--dm-subtle);font-size:.9rem}.recipe-card-tags{max-width:14rem;padding:.35rem .65rem;border-radius:999px;background:var(--dm-surface-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.recipe-grid-card{display:grid;gap:.7rem;margin:0;padding:.75rem;overflow:hidden}.recipe-grid-media{display:grid;place-items:center;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--dm-surface-muted);color:var(--dm-subtle)}.recipe-grid-media img,.book-image,.detail-image{width:100%;height:100%;object-fit:cover}.book-recipe-page{display:grid;gap:.85rem;align-content:start;align-items:start;grid-auto-rows:max-content;padding:1rem}.recipe-browser-main-panel .book-index-page,.recipe-browser-main-panel .book-recipe-page,.sidebar-panel-browser .book-index-page,.sidebar-panel-browser .book-recipe-page{flex:1 1 auto;min-height:0;overflow:auto}.sidebar-panel-browser .book-recipe-page{min-height:100%}.book-recipe-content{display:grid;gap:.85rem;align-content:start;align-items:start;grid-auto-rows:max-content;width:100%;padding:0;border:0;background:transparent;box-shadow:none;color:var(--dm-ink);text-align:left}.book-recipe-content:hover:not(:disabled){background:transparent;color:var(--dm-ink)}.book-page-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;width:100%}.book-page-title{display:grid;justify-items:center;gap:.15rem;min-width:0}.book-page-title h3{margin:0;text-align:center}.book-page-title span{color:var(--dm-subtle);font-size:.9rem}.book-page-nav{min-width:2.75rem;min-height:2.75rem;padding:0;justify-content:center;border:1px solid var(--dm-border);border-radius:999px;background:#fff;color:var(--dm-red-strong)}.book-page-nav:disabled{opacity:.4;cursor:default}.book-image{max-height:24rem;border-radius:14px}.book-index-link{display:flex;width:100%;justify-content:flex-start;padding:0;margin-bottom:0;border:0;background:transparent;color:var(--dm-red-strong);box-shadow:none;text-decoration:none;text-align:left}.book-section>strong{display:block;width:100%;justify-self:stretch;text-align:center}.inline-text-button{display:flex;width:100%;justify-content:center;padding:0;margin-bottom:5px;background:transparent;color:var(--dm-red-strong);box-shadow:none;text-decoration:none;text-align:center}.source-link{color:var(--dm-red-strong);word-break:break-word}.ingredient-lines{max-height:28rem;overflow:auto;padding-right:.15rem}.ingredient-lines p{margin:0}.ingredient-title{font-weight:600}.steps-copy{display:grid;gap:.45rem;white-space:pre-wrap;line-height:1.5}.steps-copy span,.steps-copy strong{white-space:pre-wrap}.diet-tag-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.checkbox-row,.checkbox-pill,.radio-pill{display:inline-flex;align-items:center;gap:.55rem}.checkbox-pill,.radio-pill{padding:.55rem .8rem;border:1px solid var(--dm-border);border-radius:999px;background:#fff}.checkbox-pill input,.radio-pill input,.checkbox-row input{width:auto}.site-row{display:grid;gap:.75rem;padding:.85rem;border-radius:14px;background:var(--dm-surface-muted)}.site-row .friend-row{justify-content:flex-end}.site-row .inline-actions{flex-direction:row;align-items:center;flex-wrap:nowrap}.site-editor{display:grid;gap:.75rem}.stat-value{margin:0;font-size:2.1rem;font-weight:700}.modal-actions{justify-content:flex-end;flex-wrap:wrap}.modal-actions-centered,.inline-actions-centered{justify-content:center}.friend-import-bulk-actions,.friend-import-dialog-actions{flex-direction:row;flex-wrap:wrap}.friend-import-full-row-actions>button{flex:1 1 0}.friend-import-toggle-row{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;flex-wrap:nowrap}.friend-import-checkbox-row{display:flex;align-items:center;gap:.5rem;flex:0 1 auto;flex-wrap:nowrap}.friend-import-checkbox-row input{width:auto;flex:0 0 auto}.friend-import-checkbox-row span{white-space:nowrap}.friend-import-info-button{width:2rem;height:2rem;min-width:2rem;padding:0;margin-left:5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.friend-import-select-row{display:flex;align-items:center;gap:.6rem;width:100%}.friend-import-select-list{display:grid;gap:.6rem;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem}.friend-import-select-row input{width:auto;flex:0 0 auto}.friend-import-select-row span{flex:1 1 auto}.site-import-dialog{display:grid;gap:.75rem}.offline-merge-section{display:grid;gap:.4rem}.offline-merge-section h4{margin:0}.offline-merge-list{margin:0;padding-left:1.2rem;display:grid;gap:.3rem}.ingredient-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}@media(max-width:900px){.app-topbar-titleWrap p,.topbar-account-link{display:none}.screen{overflow:auto}.planner-week-list{max-height:none}.calendar-panel-header,.recipe-library-header,.recipe-row-card{grid-template-columns:minmax(0,1fr)}.recipe-browser-toolbar{grid-template-columns:auto auto auto;justify-content:center;column-gap:.18rem}.recipe-browser-toolbar .view-mode-row{grid-column:2}.recipe-filter-trigger{grid-column:1}.recipe-order-trigger{grid-column:3}.calendar-panel-header,.recipe-library-header{align-items:stretch}.calendar-mode-segmented,.recipe-count-pill{justify-self:start}.recipe-card-tags{max-width:100%;justify-self:start}.day-card-entry,.meal-entry-row,.split-grid,.inline-actions{flex-direction:column;align-items:stretch}.ingredient-row{grid-template-columns:1fr}.settings-screen{padding:.75rem}.settings-panel{grid-template-columns:minmax(0,1fr);width:100%;margin-block:0}.settings-section-wide,.settings-section-tall{grid-column:auto;grid-row:auto}.settings-status-grid{grid-template-columns:minmax(0,1fr)}.friends-screen{padding:.75rem}.friends-screen>.panel{width:100%;margin-block:0}.friends-hero-card,.friends-group-card,.friend-person-card,.friends-section>.friend-row{grid-template-columns:minmax(0,1fr)}.friends-hero-card{justify-items:center;text-align:center}.friends-group-card{align-items:stretch}.friends-section>.friend-row .inline-actions{width:100%}.site-row .inline-actions{flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap}.site-browser-fullscreen-button{width:2.75rem;height:2.75rem;justify-content:center;padding:0}.site-browser-fullscreen-label{display:none}}
