:root{font-synthesis:none;--profile-accent:#254d80;--dashboard-bg:#fff;--dashboard-panel:#fff;--dashboard-sidebar:#182433;--dashboard-sidebar-muted:#8da2b8;--dashboard-border:#d8e0ea;--dashboard-text:#1f2937}body{background:var(--dashboard-bg);min-width:320px;color:var(--dashboard-text);margin:0}body:not(.mobile-view-mode):before{display:none}.login-shell{background:radial-gradient(circle at 0 0,#2fa4e738,#0000 32rem),linear-gradient(135deg,#eef8fe 0%,#d9eef9 48%,#f7fbfd 100%);place-items:center;min-height:100vh;padding:clamp(.75rem,3vw,2rem);display:grid}.login-shell[hidden]{display:none}.login-card{background:#fff;border:1px solid #2fa4e72e;border-radius:1.25rem;grid-template-columns:minmax(260px,1fr) minmax(300px,.88fr);width:min(900px,100%);display:grid;overflow:hidden}.login-visual{background:#d8f0fc;min-height:clamp(430px,58vh,520px)}.login-visual picture,.login-visual img{width:100%;height:100%;display:block}.login-visual img{object-fit:cover;object-position:center top}.login-form{align-content:center;gap:.8rem;padding:clamp(1.25rem,3vw,2.25rem);display:grid}.login-form h1{color:#1d3650;margin-bottom:0;font-size:clamp(2rem,4vw,3rem)}.login-intro{color:var(--bs-secondary-color);margin-bottom:.4rem;font-size:.95rem}.login-form label{color:var(--bs-secondary-color);gap:.4rem;font-size:.82rem;font-weight:700;display:grid}.login-form .form-control-lg{min-height:2.85rem;padding:.55rem .85rem;font-size:1rem}.login-form .btn-lg{padding:.62rem 1rem;font-size:1rem}.login-mode-toggle{justify-self:start;padding-inline:0;font-weight:700;text-decoration:none}.household-control{grid-template-columns:auto minmax(12rem,18rem);align-items:center;gap:.35rem;margin-bottom:0;display:inline-grid}.household-display{border:1px solid var(--bs-border-color);min-height:31px;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border-radius:.375rem;align-items:center;padding:.25rem .6rem;font-size:.82rem;font-weight:700;display:inline-flex}.admin-household-list{gap:.65rem;display:grid}.admin-household-row{border-bottom:1px solid var(--bs-border-color);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.75rem 0;display:grid}.admin-household-row h3{margin:0;font-size:1rem}.admin-household-name-field{gap:.25rem;margin:0;display:grid}.admin-household-name-field span{color:var(--bs-secondary-color);font-size:.78rem;font-weight:800}.admin-household-name-field .form-control{max-width:28rem;font-weight:700}.admin-household-row p{color:var(--bs-secondary-color);margin:.15rem 0 0;font-size:.82rem}.admin-household-row.is-current h3{color:var(--bs-primary)}.admin-household-actions{align-items:center;gap:.45rem;display:flex}.admin-quotes-panel,.admin-page-descriptions-panel,.admin-users-panel,.admin-settings-panel,.admin-security-panel{margin-top:0}.admin-tabs{border-bottom:2px solid var(--dashboard-border);flex-wrap:wrap;align-items:end;gap:0;margin:.1rem 0 .65rem;padding:0 .65rem;display:flex}.admin-tab-button{border:1px solid #b9c2cc;border-bottom-color:var(--dashboard-border);min-height:2.35rem;color:var(--bs-secondary-color);background:#eef2f6;border-radius:.45rem .45rem 0 0;margin:0 -1px -1px 0;padding:.45rem .9rem;font-size:.86rem;font-weight:800;line-height:1.2;position:relative}.admin-tab-button:hover,.admin-tab-button:focus-visible{color:var(--bs-primary);z-index:1;background:#f8fafc}.admin-tab-button.is-active{z-index:2;color:var(--bs-primary);border-color:var(--dashboard-border);box-shadow:inset 0 3px 0 var(--bs-primary);background:#f8fafc;border-bottom-color:#f8fafc}.admin-tab-panel[hidden]{display:none}.admin-tab-panel .section-heading{margin-bottom:.75rem}.admin-setting-toggle{border:1px solid var(--dashboard-border);background:#f8fafc;border-radius:.55rem;justify-content:space-between;align-items:center;gap:1rem;max-width:42rem;margin:0;padding:.85rem 1rem;display:flex}.admin-setting-toggle span{gap:.15rem;display:grid}.admin-setting-toggle small{color:var(--bs-secondary-color)}.admin-theme-settings{border:1px solid var(--dashboard-border);border-radius:.65rem;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.admin-theme-settings legend{float:none;width:auto;margin:0;font-size:1rem;font-weight:700}.admin-theme-settings p{color:var(--bs-secondary-color);margin:0}.admin-theme-options{flex-wrap:wrap;gap:.65rem;display:flex}.admin-theme-option{border:1px solid var(--dashboard-border);border-radius:.55rem;align-items:center;gap:.45rem;padding:.45rem .65rem;display:flex}.theme-swatch{background:var(--theme-swatch);border-radius:50%;width:1.15rem;height:1.15rem;box-shadow:0 0 0 1px #0f172a29}.admin-quote-form,.admin-quote-list,.admin-page-description-form,.admin-page-description-list,.admin-user-list,.admin-security-block-list{gap:.75rem;display:grid}.admin-security-form{grid-template-columns:repeat(4,minmax(10rem,1fr)) auto;align-items:end;gap:.75rem;max-width:62rem;display:grid}.admin-quote-form{grid-template-columns:minmax(0,1fr) minmax(12rem,18rem) auto;align-items:end}.admin-page-description-form{grid-template-columns:minmax(8rem,12rem) minmax(10rem,16rem) minmax(0,1fr) auto;align-items:end;margin-bottom:1rem}.admin-quote-form label,.admin-quote-row label,.admin-security-form label,.admin-page-description-form label,.admin-page-description-row label{color:var(--bs-secondary-color);gap:.35rem;margin:0;font-size:.8rem;font-weight:700;display:grid}.admin-security-blocks-heading{justify-content:space-between;align-items:end;gap:1rem;max-width:62rem;margin:1rem 0 .65rem;display:flex}.admin-security-blocks-heading h3{margin:0;font-size:1rem}.admin-security-blocks-heading p{margin:0;font-size:.82rem}.admin-security-table-wrap{border:1px solid var(--dashboard-border);border-radius:.5rem;max-width:62rem;overflow-x:auto}.admin-security-table{border-collapse:collapse;width:100%;min-width:680px;font-size:.82rem}.admin-security-table th,.admin-security-table td{border-bottom:1px solid var(--dashboard-border);text-align:left;vertical-align:middle;padding:.55rem .65rem}.admin-security-table th{color:var(--bs-secondary-color);background:var(--dashboard-panel);text-transform:uppercase;font-size:.72rem}.admin-security-table tr:last-child td{border-bottom:0}.admin-quote-row{border-bottom:0;grid-template-columns:minmax(0,1fr) minmax(10rem,14rem) auto auto;align-items:end;gap:.65rem;padding:.75rem 0;display:grid}.admin-quote-row.is-disabled,.admin-page-description-row.is-disabled{opacity:.68}.admin-quote-table-wrap,.admin-user-table-wrap,.admin-page-description-table-wrap{border:1px solid var(--dashboard-border);background:var(--dashboard-panel);border-radius:.55rem;overflow-x:auto}.admin-quote-table,.admin-user-table,.admin-page-description-table{border-collapse:collapse;width:100%;min-width:860px}.admin-quote-table th,.admin-quote-table td,.admin-user-table th,.admin-user-table td,.admin-page-description-table th,.admin-page-description-table td{border-bottom:1px solid var(--dashboard-border);vertical-align:middle;padding:.6rem}.admin-quote-table th,.admin-user-table th,.admin-page-description-table th{color:var(--bs-secondary-color);letter-spacing:.06em;text-transform:uppercase;background:#f8fafc;font-size:.72rem;font-weight:800}.admin-quote-table tr:last-child td,.admin-user-table tr:last-child td,.admin-page-description-table tr:last-child td{border-bottom:0}.admin-user-table .user-cell{min-width:14rem}.admin-user-table .email-cell{min-width:16rem}.admin-user-table .access-cell{width:12rem}.admin-user-table .household-cell{min-width:20rem}.admin-user-table .created-cell{width:9rem;color:var(--bs-secondary-color);white-space:nowrap;font-size:.86rem}.admin-user-table .user-cell strong,.admin-user-table .user-cell small{display:block}.admin-user-table .user-cell small{color:var(--bs-secondary-color);margin-top:.15rem}.admin-access-badge{border:1px solid var(--dashboard-border);min-height:1.7rem;color:var(--bs-secondary-color);background:#eef2f6;border-radius:999px;align-items:center;padding:.25rem .55rem;font-size:.76rem;font-weight:800;display:inline-flex}.admin-access-badge.is-global{color:#123252;background:#e7f4fd;border-color:#b9dcf6}.admin-user-memberships{flex-wrap:wrap;gap:.4rem;display:flex}.admin-user-memberships span{border:1px solid var(--dashboard-border);background:#f8fafc;border-radius:.45rem;gap:.05rem;padding:.35rem .5rem;display:inline-grid}.admin-user-memberships strong{color:var(--bs-body-color);font-size:.84rem}.admin-user-memberships small{color:var(--bs-secondary-color);font-size:.72rem;font-weight:800}.admin-page-description-table .key-cell{width:9rem}.admin-page-description-table .title-cell{width:14rem}.admin-page-description-table .description-cell,.admin-quote-table .quote-cell{min-width:28rem}.admin-quote-table .author-cell{width:14rem}.admin-quote-table .status-cell,.admin-page-description-table .status-cell{width:7.5rem}.admin-quote-table .actions-cell,.admin-page-description-table .actions-cell{width:9rem}.admin-quote-table .form-control,.admin-page-description-table .form-control{min-width:0}.admin-quote-enabled,.admin-page-description-enabled{white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex!important}.admin-quote-actions,.admin-page-description-actions{align-items:center;gap:.4rem;display:flex}.admin-quote-pagination{color:var(--bs-secondary-color);justify-content:space-between;align-items:center;gap:1rem;font-size:.82rem;display:flex}.admin-quote-page-actions{white-space:nowrap;align-items:center;gap:.5rem;display:flex}.login-status{min-height:1.3rem;margin-bottom:0}.toast-region{z-index:1080;pointer-events:none;gap:.65rem;width:min(380px,100vw - 2rem);display:grid;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.app-toast{border:1px solid var(--dashboard-border);border-left:4px solid var(--bs-primary);color:var(--dashboard-text);background:var(--bs-body-bg);pointer-events:auto;border-radius:.55rem;gap:.1rem;padding:.75rem .9rem;display:grid;box-shadow:0 .75rem 1.75rem #1824332e}.app-toast strong{color:inherit;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.app-toast span{color:var(--bs-secondary-color);font-size:.88rem}.app-toast.is-success{border-left-color:var(--bs-success)}.app-toast.is-error{border-left-color:var(--bs-danger)}.app-toast.is-saving{border-left-color:var(--bs-primary)}.app-confirm-dialog{width:min(430px,100% - 2rem);color:var(--bs-body-color);background:var(--bs-body-bg);text-align:center;border:0;border-radius:1rem;padding:1.5rem;box-shadow:0 1.25rem 3rem #15374e47}.app-confirm-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1830407a}.confirm-dialog-icon{width:50px;height:50px;color:var(--bs-primary);background:var(--bs-primary-bg-subtle);border-radius:50%;place-items:center;margin:0 auto 1rem;font-size:1.5rem;font-weight:800;display:grid}.app-confirm-dialog h2{margin-bottom:.5rem;font-size:1.45rem}.app-confirm-dialog p{color:var(--bs-secondary-color);margin-bottom:1.25rem}.confirm-dialog-actions{justify-content:center;gap:.65rem;display:flex}.meal-history-dialog{width:min(980px,100% - 3rem);max-height:min(860px,100vh - 3rem);color:var(--bs-body-color);background:var(--bs-body-bg);border:0;border-radius:.8rem;padding:0;box-shadow:0 1.25rem 3rem #15374e47}.meal-history-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1830407a}.meal-history-dialog-header{border-bottom:1px solid var(--dashboard-border);justify-content:space-between;align-items:start;gap:1rem;padding:1.4rem 2rem 1.1rem;display:flex}.meal-history-dialog-header h2{margin-bottom:0;font-size:1.35rem}.meal-history-dialog-summary{background:#f8fafc;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;padding:1.1rem 2rem;display:grid}.meal-history-dialog-summary span{gap:.2rem;display:grid}.meal-history-dialog-summary small{color:var(--bs-secondary-color);letter-spacing:.07em;text-transform:uppercase;font-size:.68rem;font-weight:800}.meal-history-dialog-summary strong{color:var(--bs-primary);font-size:1.05rem}.meal-history-dialog-body{max-height:min(650px,100vh - 13rem);padding:1.1rem 2rem 2rem;overflow:auto}.meal-history-edit-help{color:var(--bs-secondary-color);margin:.55rem 0 0;font-size:.86rem}.profile-setup-dialog{width:min(820px,100% - 2rem);max-height:min(760px,100vh - 2rem);color:var(--bs-body-color);background:var(--bs-body-bg);border:0;border-radius:.8rem;padding:0;box-shadow:0 1.25rem 3rem #15374e47}.profile-setup-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#18304080}.profile-setup-card{gap:1rem;padding:1.35rem;display:grid}.profile-setup-header h2{margin-bottom:.25rem;font-size:1.6rem}.profile-setup-header p:last-child{color:var(--bs-secondary-color);margin:0}.profile-setup-progress{border-bottom:2px solid var(--dashboard-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-setup-progress span{border:1px solid #b9c2cc;border-bottom-color:var(--dashboard-border);min-height:2.25rem;color:var(--bs-secondary-color);background:#eef2f6;border-radius:.45rem .45rem 0 0;place-items:center;margin:0 -1px -1px 0;padding:.45rem .75rem;font-size:.82rem;font-weight:800;display:grid}.profile-setup-progress span.is-active{z-index:1;color:var(--bs-primary);border-color:var(--dashboard-border);box-shadow:inset 0 3px 0 var(--bs-primary);background:#fff;border-bottom-color:#fff}.profile-setup-step{gap:.85rem;display:grid}.profile-setup-step[hidden]{display:none}.profile-setup-images{flex-wrap:wrap;gap:.65rem;display:flex}.profile-setup-step:not(:first-of-type){grid-template-columns:repeat(3,minmax(0,1fr))}.profile-setup-targets{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.profile-setup-targets span{border:1px solid var(--dashboard-border);background:#f8fafc;border-radius:.55rem;gap:.2rem;padding:.75rem .9rem;display:grid}.profile-setup-targets small{color:var(--bs-secondary-color);letter-spacing:.07em;text-transform:uppercase;font-size:.68rem;font-weight:800}.profile-setup-targets strong{color:var(--bs-primary);font-size:1.1rem}.profile-setup-actions{justify-content:flex-end;gap:.65rem;display:flex}.meal-history-meal{border-bottom:1px solid var(--dashboard-border);padding:.85rem 0}.meal-history-meal:last-child{border-bottom:0}.meal-history-meal h3{color:var(--bs-primary);align-items:baseline;gap:.65rem;margin-bottom:.55rem;display:flex}.meal-history-meal h3 small{color:var(--bs-secondary-color);font-size:.76rem}.meal-history-meal ul{gap:.45rem;margin-bottom:0;padding-left:0;list-style:none;display:grid}.meal-history-meal li{color:var(--bs-secondary-color);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem;display:grid}.meal-history-meal li>span:first-of-type{color:var(--dashboard-text)}.meal-history-meal li.is-consumed>span:first-of-type{color:var(--bs-secondary-color);text-decoration:line-through}.meal-history-meal .form-check-input{cursor:pointer;margin:0}.meal-history-meal button{white-space:nowrap}.meal-history-meal li.is-empty{color:var(--bs-secondary-color);display:block}.meal-history-add{border-top:1px dashed var(--dashboard-border);margin-top:.7rem;padding-top:.65rem}.meal-history-add summary{width:fit-content;color:var(--bs-primary);cursor:pointer;font-size:.86rem;font-weight:800}.meal-history-add form{grid-template-columns:minmax(150px,.85fr) minmax(220px,1.35fr) 100px auto;align-items:end;gap:.65rem;margin-top:.65rem;display:grid}.meal-history-add label{color:var(--bs-secondary-color);gap:.25rem;font-size:.75rem;font-weight:700;display:grid}.meal-history-add-status{color:var(--bs-secondary-color);grid-column:1/-1}.meal-history-add-empty{color:var(--bs-secondary-color);margin:.65rem 0 0;font-size:.82rem}.meal-history-row{cursor:pointer}.meal-history-row:focus{outline:3px solid var(--bs-primary-border-subtle);outline-offset:-3px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;max-width:760px;margin-bottom:.75rem;font-size:clamp(2.5rem,6vw,4.75rem);line-height:1}h2{letter-spacing:-.025em;margin-bottom:1.25rem;font-size:clamp(1.55rem,3vw,2.15rem)}h3{margin-bottom:.25rem;font-size:1rem}.page-shell{max-width:none}body:not(.mobile-view-mode) .page-shell{padding:0!important}[data-view][hidden]{display:none!important}.desktop-dashboard{grid-template-columns:206px minmax(0,1fr);align-items:start;gap:0;display:grid}.app-side-rail{color:#fff;background:linear-gradient(90deg,#265084 0%,#1e3e6f 40%,#00050c 100%);align-content:start;gap:1.6rem;min-height:100vh;padding:1.35rem .8rem;display:grid;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff38;place-items:center;padding:0 .35rem 1.25rem;display:grid}.sidebar-brand-logo{object-fit:contain;justify-self:start;width:min(8.75rem,112%);max-height:5.1rem;margin-left:-.25rem;display:block}.dashboard-workspace{--dashboard-content-radius:2.2rem;background:#080808;gap:0;min-width:0;display:grid;position:relative}.dashboard-main{border-radius:var(--dashboard-content-radius) 0 0 0;background:#fff;align-content:start;gap:.9rem;min-height:calc(100vh - 76px);padding:30px 0 2rem;display:grid}.dashboard-topbar{z-index:25;color:#fff;background:linear-gradient(90deg,#080808 0%,#111d47 10%,#275389 100%);border:0;border-radius:0;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:clamp(1rem,3vw,3rem);min-height:76px;margin-bottom:0;padding:.75rem clamp(1rem,1vw,6rem);display:grid;position:sticky;top:0;box-shadow:0 .7rem 1.8rem #1f293752}.dashboard-topbar:after{content:"";left:0;bottom:calc(-1 * var(--dashboard-content-radius));width:var(--dashboard-content-radius);height:var(--dashboard-content-radius);background:radial-gradient(circle at bottom right, transparent 0 calc(var(--dashboard-content-radius) - 1px), #080808 var(--dashboard-content-radius));pointer-events:none;position:absolute}.dashboard-topbar h1{color:#fff;letter-spacing:0;margin:0;font-size:1.25rem;line-height:1.2}.dashboard-page-description{color:#ffffffd1;max-width:68rem;margin:.28rem 0 0;font-size:.85rem;line-height:1.35}.dashboard-topbar .eyebrow{color:#ffffffd1}.dashboard-title-block{min-width:0}.topbar-profile-switcher{justify-content:center;align-items:center;gap:clamp(.7rem,2vw,1.5rem);display:flex}.topbar-profile-button{aspect-ratio:1;color:#ffffffe6;filter:grayscale()saturate(.3);opacity:.72;background:#ffffff14;border:0;border-radius:50%;place-items:center;width:clamp(2.35rem,3.6vw,3.15rem);padding:0;display:grid;box-shadow:inset 0 0 1.1rem #02061733}.topbar-profile-button img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.topbar-profile-button span{font-size:clamp(1rem,2vw,1.45rem);font-weight:800}.topbar-profile-button:hover,.topbar-profile-button:focus-visible,.topbar-profile-button.is-active{filter:none;opacity:1}.topbar-profile-button.is-active{transform:scale(1.08);box-shadow:0 0 0 3px #ffffffdb,0 .65rem 1.2rem #02061738}.dashboard-account-block{justify-content:space-between;align-items:center;gap:.75rem;min-width:clamp(14rem,18vw,20rem);display:flex}.dashboard-account-labels{justify-items:start;gap:.12rem;min-width:0;display:grid}.dashboard-household-name{text-overflow:ellipsis;white-space:nowrap;max-width:min(26rem,34vw);margin:0;overflow:hidden}.dashboard-active-profile-name{color:#ffffffdb;text-overflow:ellipsis;white-space:nowrap;max-width:min(20rem,28vw);margin:0;font-size:.8rem;font-weight:700;line-height:1.15;overflow:hidden}.app-navigation{min-width:0;box-shadow:none;background:0 0;border:0;margin:0;padding:0;display:block}.mobile-quick-switch{display:none}.mobile-view-mode .page-shell{max-width:540px;padding-bottom:max(2rem, calc(1rem + env(safe-area-inset-bottom)))!important}.mobile-view-mode .desktop-dashboard{display:block}.mobile-view-mode .dashboard-workspace,.mobile-view-mode .dashboard-main{background:0 0;border-radius:0;min-height:0;padding:0}.mobile-view-mode .dashboard-main>.content-section,.mobile-view-mode .dashboard-main>.profile-form{width:auto}.mobile-view-mode .app-topnav,.mobile-view-mode .app-side-rail,.mobile-view-mode .app-sidebar,.mobile-view-mode .dashboard-topbar,.mobile-view-mode .app-navigation,.mobile-view-mode .mobile-logout-button,.mobile-view-mode .mobile-quick-switch,.mobile-view-mode .daily-plan-actions,.mobile-view-mode [data-view=planner]>.daily-copy-status{display:none}.mobile-view-mode .mobile-quick-switch.is-enabled{order:0;justify-content:space-between;width:100%;margin:0 0 .2rem;padding-right:3rem;display:flex}.mobile-view-mode .mobile-quick-switch.is-enabled .mobile-logout-button,.mobile-view-mode [data-view=planner] .planner-overview-panel>.section-heading{display:none}.mobile-view-mode .daily-progress-card{position:relative}.mobile-view-mode .mobile-profile-buttons{flex:auto;justify-content:flex-start;align-items:center;gap:.75rem;width:auto;display:flex;overflow:visible}.mobile-view-mode .mobile-profile-button{isolation:isolate;aspect-ratio:1;width:3.1rem;min-width:3.1rem;color:var(--bs-primary);box-shadow:none;filter:none;opacity:1;background:0 0;border:0;border-radius:50%;place-items:center;padding:2px;font-weight:800;display:grid;position:relative;overflow:visible}.mobile-view-mode .mobile-profile-button:before{z-index:-1;background:var(--bs-primary-bg-subtle);content:"";border-radius:50%;position:absolute;inset:2px;box-shadow:0 .35rem .85rem #0f172a24}.mobile-view-mode .mobile-profile-button img{z-index:1;clip-path:circle(50%);filter:none;object-fit:cover;opacity:.2;border-radius:50%;width:100%;height:100%;display:block;position:relative}.mobile-view-mode .mobile-profile-button span{font-size:1.15rem}.mobile-view-mode .mobile-profile-button.is-active{color:var(--bs-primary);box-shadow:none;filter:none;opacity:1;background:0 0;transform:scale(1.04)}.mobile-view-mode .mobile-profile-button.is-active img{filter:none;opacity:1}.mobile-view-mode .mobile-panel-switch{z-index:3;gap:.5rem;display:grid;position:absolute;top:6.9rem;left:.8rem}.mobile-view-mode .mobile-panel-switch[hidden]{display:none}.mobile-view-mode .mobile-panel-switch-button{color:#29445b;background:#fff;border:1px solid #cbd9e3;border-radius:.55rem;place-items:center;width:2.15rem;height:2.15rem;font-size:.74rem;font-weight:900;display:grid;box-shadow:0 .35rem .85rem #0f172a1f}.mobile-panel-switch-button[hidden]{display:none}.mobile-view-mode .mobile-panel-switch-button.is-active{border-color:var(--bs-primary);color:#fff;background:var(--bs-primary)}.mobile-view-mode .mobile-theme-picker{order:8;grid-column:1/-1;justify-content:center;align-items:center;gap:.55rem;width:100%;margin-top:.15rem;display:flex}.mobile-view-mode .health-tracking-panel{order:9}.mobile-view-mode .mobile-theme-picker[hidden],.mobile-theme-picker,.mobile-notes-panel{display:none}body:not(.mobile-view-mode) [data-view=planner] .mobile-notes-panel{gap:.9rem;display:grid}body:not(.mobile-view-mode) [data-view=planner] .mobile-notes-panel[hidden],body:not(.mobile-view-mode) .mobile-notes-toolbar{display:none}.mobile-view-mode .daily-progress-card.is-notes-mode{gap:.75rem;min-height:0;padding-bottom:1rem}.mobile-view-mode [data-view=planner].is-notes-mode .daily-progress-card,.mobile-view-mode [data-view=planner].is-notes-mode .mobile-notes-panel:not([hidden]){width:calc(100vw - 1.5rem);max-width:calc(540px - 1.5rem);margin-left:50%;transform:translate(-50%)}.mobile-view-mode .daily-progress-card.is-notes-mode .progress-donut,.mobile-view-mode .daily-progress-card.is-notes-mode #progressStats,.mobile-view-mode .daily-progress-card.is-notes-mode .progress-planned-totals,.mobile-view-mode .daily-progress-card.is-notes-mode .health-tracking-panel{display:none}.mobile-view-mode .mobile-notes-panel{z-index:50;background:#f3f7fa;border:0;border-radius:0;align-content:start;gap:.9rem;min-height:100dvh;padding:1rem;display:grid;position:fixed;inset:0;overflow-y:auto;width:min(100%,540px)!important;max-width:540px!important;margin:0 auto!important;transform:none!important}.mobile-view-mode .mobile-notes-panel[hidden]{display:none}.mobile-notes-toolbar{justify-content:flex-start;display:flex}.mobile-notes-toolbar .btn{border-color:var(--bs-primary);color:var(--bs-primary);background:#fff}.mobile-notes-heading,.mobile-notes-form,.mobile-notes-list,.mobile-notes-panel>.save-status{width:100%}.mobile-notes-heading h2,.mobile-notes-heading p{margin-bottom:.15rem}.mobile-notes-heading>p:last-child{color:var(--bs-secondary-color);font-size:.82rem}.mobile-notes-section{border:1px solid var(--dashboard-border);background:#fff;border-radius:.75rem;gap:.7rem;padding:1rem;display:grid}.mobile-notes-section-heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.mobile-notes-section-heading h3{margin:0;font-size:1.05rem}.mobile-notes-section-heading span{color:var(--bs-secondary-color);font-size:.75rem}.mobile-notes-form{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;display:grid}.mobile-notes-form .btn-primary{border-color:var(--bs-primary);background:var(--bs-primary)}.mobile-notes-form .btn-primary:hover,.mobile-notes-form .btn-primary:focus-visible{border-color:var(--profile-accent);background:var(--profile-accent)}.mobile-notes-form .form-control:focus{border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb), .18)}.mobile-notes-list{gap:.5rem;display:grid}.mobile-note-item{border:1px solid var(--bs-primary-border-subtle);background:var(--bs-primary-bg-subtle);border-radius:.65rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;margin:0;padding:.75rem;display:grid}.mobile-note-check{align-items:center;gap:.65rem;min-width:0;margin:0;display:flex}.mobile-note-text{overflow-wrap:anywhere;min-width:0}.mobile-note-actions{gap:.35rem;display:flex}.mobile-note-action{border:1px solid var(--profile-accent);width:2rem;height:2rem;color:var(--profile-accent);font:inherit;cursor:pointer;background:#fff;border-radius:.55rem;place-items:center;padding:0;line-height:1;display:inline-grid}.mobile-note-action:hover,.mobile-note-action:focus-visible{color:#fff;background:var(--profile-accent)}.mobile-note-action.is-delete{font-size:1.3rem}.mobile-note-action:disabled{cursor:wait;opacity:.5}.mobile-note-edit-form{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;gap:.5rem;display:grid}.mobile-note-edit-form[hidden],.mobile-note-item.is-editing>.mobile-note-check,.mobile-note-item.is-editing>.mobile-note-actions{display:none}.mobile-note-item .form-check-input:checked{border-color:var(--bs-primary);background-color:var(--bs-primary)}.mobile-note-item.is-complete{opacity:.65}.mobile-note-item.is-complete .mobile-note-text{text-decoration:line-through}@media (width<=540px){.mobile-note-edit-form{grid-template-columns:1fr auto}.mobile-note-edit-form .form-control{grid-column:1/-1}}.mobile-view-mode .mobile-theme-button{background:var(--theme-swatch);border:2px solid #fff;border-radius:50%;width:1.8rem;height:1.8rem;padding:0;box-shadow:0 0 0 1px #cbd9e3,0 .3rem .7rem #0f172a29}.mobile-view-mode .mobile-theme-button.is-active{box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--theme-swatch), 0 .35rem .8rem #0f172a33}.app-navigation .nav-link{color:#ffffffe0;border-bottom:0;border-radius:.45rem;align-items:center;min-height:2.65rem;padding:.55rem .7rem;display:flex}.app-navigation .nav-link:hover,.app-navigation .nav-link:focus{color:#fff;background:#ffffff29}.app-navigation .nav-link.active{color:#fff;background:#ffffff38}.nav-section-links{gap:.2rem;display:grid}.household-control,.active-profile-control,.household-display-control{grid-template-columns:1fr;align-items:center;gap:.28rem;margin:0;display:grid}.household-name-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;display:grid}.household-control[hidden],.household-display-control[hidden],.household-display[hidden],.household-name-row>[hidden]{display:none!important}.profile-management-section label,.profile-management-section label>span:first-child{color:var(--bs-secondary-color);margin:0;font-size:.8rem;font-weight:700}.household-mobile-switch-control{border:1px solid var(--dashboard-border);background:#f8fafc;border-radius:.55rem;grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem;display:flex!important}.household-mobile-switch-control>span:first-child{color:var(--dashboard-text);gap:.15rem;display:grid}.household-mobile-switch-control small{color:var(--bs-secondary-color);font-weight:500}.profile-select-row{grid-template-columns:minmax(5rem,1fr) auto auto;align-items:center;gap:.35rem;display:grid}.logout-icon-button{justify-self:end;place-items:center;width:2.25rem;height:2.25rem;padding:0;font-size:1rem;line-height:1;display:inline-grid}.dashboard-topbar .btn-outline-secondary{color:#fff;background:#ffffff14;border-color:#ffffff6b}.dashboard-topbar .btn-outline-secondary:hover{color:#152235;background:#fff}.profile-form label{color:var(--bs-secondary-color);gap:.4rem;font-size:.8rem;font-weight:700;display:grid}.profile-form .field-label{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.profile-form .required-marker{color:#9f1f24;text-transform:uppercase;background:#f8d7da;border-radius:999px;padding:.08rem .35rem;font-size:.65rem;line-height:1.35;display:none}.profile-form .required-field.is-missing .required-marker{display:inline-flex}.profile-form .required-field.is-missing .form-control,.profile-form .required-field.is-missing .form-select{border-left:4px solid #dc3545}.profile-form .required-field.is-missing .form-control:focus,.profile-form .required-field.is-missing .form-select:focus{border-left-color:#b02a37}.profile-form{border:1px solid var(--dashboard-border);border-radius:.65rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;padding:1rem;display:grid;box-shadow:0 .5rem 1.5rem #1824330d!important}.profile-form[hidden]{display:none}#profileForm{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:1rem}.profile-editor-column,.profile-overview-column{grid-template-columns:minmax(0,1fr);align-content:start;gap:1rem;min-width:0;display:grid}#profileForm .profile-health-entry,#profileForm .profile-overview-column .summary-grid,#profileForm .profile-overview-column .health-chart-grid{grid-template-columns:minmax(0,1fr)}#profileForm .profile-config-summary{text-align:center;grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem}#profileForm .profile-config-summary h2{overflow-wrap:anywhere;font-size:clamp(1.35rem,2vw,1.8rem)}@media (width<=1000px){#profileForm{grid-template-columns:minmax(0,1fr)}}.profile-goals,.profile-actions{grid-column:1/-1}.profile-token-field{grid-column:span 2}.profile-mobile-pin-panel{border:1px solid var(--border);background:#ffffffb8;border-radius:8px;grid-column:1/-1;gap:.85rem;padding:1rem;display:grid}.profile-mobile-pin-panel h4{color:var(--ink);margin:0;font-size:1rem}.profile-mobile-pin-form{grid-template-columns:minmax(12rem,18rem) auto;align-items:end;gap:.75rem;display:grid}.mobile-pin-gate{z-index:2000;background:radial-gradient(circle at 20% 8%,#2fa4e72e,#0000 34%),linear-gradient(145deg,#edf7fd,#fff 48%,#e7f2f9);place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.mobile-pin-gate[hidden]{display:none}.mobile-pin-card{border:1px solid rgba(var(--bs-primary-rgb), .22);text-align:center;background:linear-gradient(#fff,#f7fbfe);border-radius:18px;gap:1rem;width:min(100%,26rem);padding:1.5rem;display:grid;box-shadow:0 18px 42px #0f233729}.mobile-pin-card.is-shaking{animation:.34s mobile-pin-shake}.mobile-pin-card h1{color:var(--ink);margin:0;font-size:2rem}.mobile-pin-intro{color:var(--muted);margin:0}.mobile-pin-display{justify-content:center;align-items:center;gap:.7rem;min-height:3.5rem;display:flex}.mobile-pin-dot{aspect-ratio:1;border:2px solid rgba(var(--bs-primary-rgb), .42);background:#fff;border-radius:50%;width:.86rem;display:block}.mobile-pin-dot.is-filled{border-color:var(--bs-primary);background:var(--bs-primary);box-shadow:0 0 0 4px rgba(var(--bs-primary-rgb), .12)}.mobile-pin-keypad{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.mobile-pin-keypad button{border:1px solid rgba(var(--bs-primary-rgb), .16);min-height:4rem;color:var(--ink);background:#f8fbfe;border-radius:14px;font-size:1.35rem;font-weight:800}.mobile-pin-keypad button:active{background:var(--bs-primary-bg-subtle);transform:translateY(1px)}.mobile-pin-keypad button:disabled{opacity:.6}@keyframes mobile-pin-shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}.profile-status{grid-column:1/-1;margin-bottom:0}.profile-tabs,.food-library-tabs{border-bottom:2px solid var(--dashboard-border);flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:0;margin:.1rem 0 .65rem;padding:0 .65rem;display:flex}.profile-tab-button,.food-library-tab-button{border:1px solid #b9c2cc;border-bottom-color:var(--dashboard-border);min-height:2.35rem;color:var(--bs-secondary-color);background:#eef2f6;border-radius:.45rem .45rem 0 0;margin:0 -1px -1px 0;padding:.45rem .9rem;font-size:.86rem;font-weight:800;line-height:1.2;position:relative}.profile-tab-button:hover,.profile-tab-button:focus-visible,.food-library-tab-button:hover,.food-library-tab-button:focus-visible{color:var(--bs-primary);z-index:1;background:#f8fafc}.profile-tab-button.is-active,.food-library-tab-button.is-active{z-index:2;color:var(--bs-primary);border-color:var(--dashboard-border);box-shadow:inset 0 3px 0 var(--bs-primary);background:#f8fafc;border-bottom-color:#f8fafc}.profile-section{border:1px solid var(--dashboard-border);background:#f8fafc;border-radius:.55rem;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;padding:1rem;display:grid}.profile-section[hidden],.library-tab-panel[hidden]{display:none!important}.profile-section h3{color:var(--bs-primary);grid-column:1/-1;margin:0;font-size:1.1rem}.profile-image-picker{border:0;grid-column:1/-1;margin:0;padding:0}.profile-image-picker legend{color:var(--bs-secondary-color);margin-bottom:.45rem;font-size:.8rem;font-weight:700}.profile-image-options{flex-wrap:wrap;gap:.65rem;display:flex}.profile-image-option{border:1px solid var(--dashboard-border);width:5.4rem;color:var(--bs-secondary-color);cursor:pointer;text-align:center;background:#fff;border-radius:.55rem;place-items:center;gap:.35rem;margin:0;padding:.45rem;font-size:.75rem;font-weight:700;display:grid}.profile-image-option input{opacity:0;pointer-events:none;position:absolute}.profile-image-option img,.profile-image-empty{background:var(--bs-tertiary-bg);object-fit:cover;border-radius:50%;place-items:center;width:3.7rem;height:3.7rem;display:grid}.profile-image-empty{color:var(--bs-secondary-color);font-size:.7rem}.profile-image-option.is-selected{border-color:var(--bs-primary);color:var(--bs-primary);background:var(--bs-primary-bg-subtle);box-shadow:0 0 0 3px var(--bs-primary-border-subtle)}.profile-target-estimator{align-content:end;gap:.25rem;display:grid}.profile-target-estimator .save-status{margin:0;font-size:.78rem}.profile-health-entry{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.profile-health-entry>.health-trends{grid-area:1/2/3}.profile-health-entry .health-chart-grid{grid-template-columns:minmax(0,1fr)}.profile-health-entry>.save-status{grid-column:1}.health-entry-panel[hidden]{display:none}@media (width<=1000px){.profile-health-entry{grid-template-columns:minmax(0,1fr)}.profile-health-entry>.health-trends{grid-area:auto/1}}.profile-health-entry .profile-section-heading{border-bottom:1px solid var(--dashboard-border);padding-bottom:.25rem}.profile-health-entry .profile-section-heading p{margin:0;font-size:.82rem}.profile-health-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.profile-health-summary .health-reading-card{border:1px solid var(--dashboard-border);background:#fff;border-radius:.55rem;padding:.85rem}.health-trends{gap:.75rem;display:grid}.health-trends-heading{justify-content:space-between;align-items:end;display:flex}.health-trends-heading h4,.health-trends-heading p{margin:0}.health-trends-heading h4{color:var(--dashboard-text);font-size:1rem}.health-trends-heading p{margin-top:.2rem;font-size:.78rem}.health-chart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.health-chart-card{border:1px solid color-mix(in srgb, var(--dashboard-border) 82%, #fff);background:radial-gradient(circle at 100% 0,#528bc714,#0000 42%),linear-gradient(160deg,#fff 0%,#fbfdff 100%);border-radius:.9rem;min-width:0;padding:.9rem;transition:border-color .16s,box-shadow .16s;position:relative;overflow:hidden;box-shadow:0 .55rem 1.35rem #19314c14}.health-chart-card:hover{border-color:color-mix(in srgb, var(--bs-primary) 28%, var(--dashboard-border));box-shadow:0 .8rem 1.8rem #19314c21}.health-chart-card-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.health-chart-card-heading h5,.health-chart-card-heading p{margin:0}.health-chart-card-heading h5{color:var(--dashboard-text);font-size:.92rem}.health-chart-card-heading p{color:var(--bs-secondary-color);margin-top:.16rem;font-size:.72rem}.health-chart-card-heading>strong{color:var(--dashboard-text);white-space:nowrap;font-size:1.15rem}.health-chart-card-heading>strong small{color:var(--bs-secondary-color);text-transform:uppercase;margin-left:.25rem;font-size:.64rem;font-weight:700}.health-chart-legend{min-height:1.5rem;color:var(--bs-secondary-color);align-items:center;gap:.75rem;margin-top:.55rem;font-size:.69rem;display:flex}.health-chart-legend-item{align-items:center;gap:.3rem;display:inline-flex}.health-chart-legend-item i{background:var(--chart-colour);border-radius:50%;width:.55rem;height:.55rem}.health-chart-plot{margin:.1rem -.2rem -.35rem}.health-chart-plot svg{width:100%;height:auto;min-height:160px;display:block}.health-chart-gridline{stroke:#e6edf4;stroke-width:1px;stroke-dasharray:4 5}.health-chart-reference-line{pointer-events:none;stroke:#586b7f;stroke-width:2px;stroke-dasharray:10 7;opacity:.78}.health-chart-axis-label{fill:#718096;font-family:inherit;font-size:18px}.health-chart-line{stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.health-chart-dot{stroke:#fff;stroke-width:3px;transition:r .14s}.health-chart-dot:hover{r:7px}.health-chart-dot.is-latest{stroke-width:3.5px}.health-chart-latest-halo{opacity:.15}.health-chart-area{pointer-events:none}.health-chart-empty{min-height:160px;color:var(--bs-secondary-color);text-align:center;place-content:center;justify-items:center;display:grid}.health-chart-empty span{color:#b8c4d1;font-size:2rem}.health-chart-empty p{max-width:16rem;margin:.4rem 0 0;font-size:.78rem}.mobile-health-trends,.dashboard-health-trends{display:none}body:not(.mobile-view-mode) [data-view=planner] .dashboard-health-trends{grid-column:1/-1;gap:.45rem;min-width:0;display:grid}.dashboard-health-trends-heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.dashboard-health-trends-heading h2{color:var(--dashboard-text);margin:0;font-size:1rem}.dashboard-health-trends-heading span{color:var(--bs-secondary-color);font-size:.72rem}.dashboard-health-trends-controls,.dashboard-theme-picker{align-items:center;display:flex}.dashboard-health-trends-controls{gap:.75rem}.dashboard-theme-picker{border:1px solid color-mix(in srgb, var(--bs-primary) 16%, var(--dashboard-border));background:color-mix(in srgb, var(--bs-primary-bg-subtle) 30%, #fff);border-radius:999px;gap:.38rem;padding:.25rem .35rem}.dashboard-theme-button{background:var(--theme-swatch);cursor:pointer;border:2px solid #fff;border-radius:50%;width:1rem;height:1rem;padding:0;transition:box-shadow .15s,transform .15s;box-shadow:0 0 0 1px #19314c33}.dashboard-theme-button:hover{transform:scale(1.12)}.dashboard-theme-button.is-active{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--theme-swatch)}.dashboard-theme-button:focus-visible{outline:2px solid var(--dashboard-text);outline-offset:3px}.dashboard-theme-button:disabled{cursor:wait;opacity:.55}.dashboard-health-chart-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.dashboard-health-chart-grid .health-chart-card{border-color:color-mix(in srgb, var(--bs-primary) 12%, var(--dashboard-border));background:radial-gradient(circle at 100% 0, rgba(var(--bs-primary-rgb), .09), transparent 42%), linear-gradient(160deg, #fff 0%, color-mix(in srgb, var(--bs-primary-bg-subtle) 20%, #fff) 100%);padding:.7rem .8rem}.dashboard-health-chart-grid .health-chart-legend{min-height:1.15rem;margin-top:.3rem}.dashboard-health-chart-grid .health-chart-plot{margin-bottom:-.55rem}.dashboard-health-chart-grid .health-chart-plot svg{min-height:0}.mobile-view-mode .mobile-health-trends{--health-weight-colour:var(--bs-primary);--health-systolic-colour:var(--bs-primary);--health-diastolic-colour:var(--profile-accent);--health-heart-colour:var(--profile-accent);border-top:1px solid color-mix(in srgb, var(--bs-primary) 14%, var(--bs-border-color));gap:.7rem;min-width:0;margin-top:0;padding-top:.85rem;display:grid}.mobile-view-mode .health-tracking-panel>.health-reading-cards{display:none}.mobile-health-trends-heading{justify-content:space-between;align-items:end;gap:.75rem;padding:0 .1rem;display:flex}.mobile-health-trends-heading small{color:var(--bs-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:800}.mobile-health-trends-heading h3{margin:.12rem 0 0;font-size:1rem}.mobile-health-trends-heading>span{color:var(--bs-secondary-color);white-space:nowrap;font-size:.66rem}.mobile-health-chart-strip{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:thin;grid-auto-columns:min(86vw,360px);grid-auto-flow:column;gap:.75rem;margin:0 -1rem;padding:.2rem 1rem 1rem;scroll-padding-inline:1rem;display:grid;overflow-x:auto}.mobile-health-chart-strip .health-chart-card{scroll-snap-align:start}.mobile-view-mode .mobile-health-chart-strip .health-chart-card{border-color:color-mix(in srgb, var(--bs-primary-border-subtle) 76%, #fff);background:radial-gradient(circle at 100% 0, rgba(var(--bs-primary-rgb), .17), transparent 46%), linear-gradient(155deg, #fff 14%, color-mix(in srgb, var(--bs-primary-bg-subtle) 62%, #fff) 100%);box-shadow:0 .7rem 1.7rem rgba(var(--bs-primary-rgb), .14)}.mobile-view-mode .mobile-health-chart-strip .health-chart-card-heading h5,.mobile-view-mode .mobile-health-chart-strip .health-chart-card-heading>strong{color:var(--profile-accent)}.mobile-view-mode .mobile-health-chart-strip .health-chart-card-heading>strong small,.mobile-view-mode .mobile-health-chart-strip .health-chart-card-heading p,.mobile-view-mode .mobile-health-chart-strip .health-chart-legend,.mobile-view-mode .mobile-health-chart-strip .health-chart-axis-label{color:color-mix(in srgb, var(--profile-accent) 72%, #687586);fill:color-mix(in srgb, var(--profile-accent) 72%, #687586)}.mobile-view-mode .mobile-health-chart-strip .health-chart-gridline{stroke:rgba(var(--bs-primary-rgb), .16)}.mobile-view-mode .mobile-health-chart-strip .health-chart-dot{stroke:color-mix(in srgb, var(--bs-primary-bg-subtle) 42%, #fff)}.mobile-health-chart-strip .health-chart-card:hover{transform:none}.profile-health-tools{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;min-width:0;display:grid}.health-entry-tabs{margin-bottom:0}.health-entry-panel{border:1px solid var(--dashboard-border);background:#fff;border-radius:.55rem;gap:.8rem;padding:1rem;display:grid}.health-entry-panel h4{color:var(--dashboard-text);margin:0;font-size:1rem}.profile-health-entry .save-status{margin:0}.profile-section-heading{grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;display:flex}.profile-section-heading h3{grid-column:auto}.profile-wide-field{grid-column:1/-1}.profile-trajectory-editor{grid-column:1/-1;gap:.65rem;display:grid}.profile-trajectory-row{grid-template-columns:minmax(180px,1.5fr) minmax(140px,1fr) auto;align-items:end;gap:.65rem;display:grid}.profile-trajectory-row .btn{min-width:2.2rem}.profile-section-trajectory>.btn,.profile-section-trajectory>.save-status{grid-column:1/-1;justify-self:start}.page-header,.profile-config-summary{background-image:linear-gradient(135deg,#ffffff14,#fff0);border-radius:.65rem;grid-template-columns:minmax(280px,4fr) minmax(0,6fr);align-items:center;gap:clamp(1.25rem,3vw,2.5rem);padding:clamp(1.25rem,2.4vw,1.8rem);display:grid}.profile-config-summary{border:1px solid var(--dashboard-border);grid-column:1/-1;box-shadow:0 .8rem 1.8rem #0f172a14;color:var(--dashboard-text)!important;background-color:#f8fafc!important;background-image:linear-gradient(135deg,#2fa4e714,#fff0 42%),linear-gradient(#fbfdff 0%,#f4f8fc 100%)!important;background-position:0 0!important;background-repeat:repeat!important;background-size:auto!important;background-attachment:scroll!important;background-origin:padding-box!important;background-clip:border-box!important}.profile-summary-image{aspect-ratio:1;background:var(--bs-tertiary-bg);object-fit:cover;width:clamp(5.5rem,9vw,7.25rem);box-shadow:0 0 0 1px var(--dashboard-border), 0 .9rem 1.6rem #0f172a24;border:3px solid #fff;border-radius:50%;justify-self:center}.profile-config-summary:has(.profile-summary-image:not([hidden])){grid-template-columns:auto minmax(260px,4fr) minmax(0,6fr)}.page-header h1,.profile-config-summary h2{letter-spacing:0;margin-bottom:.45rem;font-size:clamp(1.7rem,3vw,2.25rem)}.profile-config-summary h2{color:#1f2937}.page-header .eyebrow,.page-header .profile{color:#ffffffc7}.profile-config-summary .eyebrow{color:var(--bs-primary)}.profile-config-summary .profile{color:var(--bs-secondary-color)}.eyebrow{color:var(--bs-primary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:700}.profile{margin-bottom:0;font-size:.9rem}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:0;display:grid}.summary-card{border:1px solid var(--dashboard-border);border-radius:var(--bs-border-radius-lg);background:#fff;flex-direction:column;justify-content:space-between;min-height:88px;padding:.8rem .9rem;display:flex;box-shadow:0 .45rem 1rem #0f172a0d}.summary-card span,.summary-card small{color:var(--bs-secondary-color)}.summary-card strong{color:#1f2937;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.15}.content-section{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:0;padding:0}.dashboard-main>.content-section,.dashboard-main>.profile-form{width:calc(100% - clamp(2rem,8vw,12rem));margin-left:auto;margin-right:auto}body:not(.mobile-view-mode) .dashboard-main>.content-section.card,body:not(.mobile-view-mode) .dashboard-main>.profile-form.card{background:0 0;border:0;border-radius:0;box-shadow:none!important}.section-heading,.assignment-heading{border-bottom:1px solid var(--dashboard-border);justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1rem;padding-bottom:.85rem;display:flex}.section-heading h2,.assignment-heading h2,.weekly-planner-heading h2,.content-section>h2{color:#182433;letter-spacing:0;margin-bottom:0;font-size:1.35rem}.daily-totals{color:var(--bs-secondary-color);gap:1.25rem;margin-bottom:1.25rem;font-size:.9rem;display:flex}.daily-totals strong{color:var(--bs-primary)}.daily-plan-actions{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.daily-plan-actions .daily-totals{margin-bottom:0}.current-daily-template{color:var(--bs-secondary-color);margin:.35rem 0 0}.current-daily-template strong{color:var(--bs-primary)}.daily-copy-status{text-align:right;margin-top:-.75rem}.daily-progress-card{border:1px solid var(--dashboard-border);background:var(--bs-body-bg);box-shadow:none;border-radius:.65rem;grid-template-columns:150px minmax(280px,1fr) minmax(210px,auto);align-items:center;gap:1.5rem;margin-bottom:1rem;padding:1.25rem 1.5rem;display:grid}.progress-donut{aspect-ratio:1;background:conic-gradient(var(--bs-primary) var(--progress,0deg), var(--bs-primary-bg-subtle) 0);border-radius:50%;place-items:center;width:132px;display:grid}.progress-donut:before{aspect-ratio:1;background:var(--bs-body-bg);content:"";border-radius:50%;grid-area:1/1;width:96px}.progress-donut>div{z-index:1;text-align:center;grid-area:1/1;display:grid}.progress-donut strong{color:var(--bs-primary);font-size:1.55rem}.progress-donut span{color:var(--bs-secondary-color);font-size:.72rem}.progress-summary h2{color:var(--bs-primary);margin-bottom:.35rem;font-size:1.4rem}.progress-summary .motivation-quote-text{max-width:35rem;margin-inline:auto;font-style:italic;font-weight:500;line-height:1.22;display:block}.mobile-refresh-button,.mobile-progress-actions,.mobile-day-switch,.mobile-panel-switch{display:none}.mobile-day-switch-button{border:var(--bs-border-width) solid var(--bs-border-color);min-width:0;color:var(--bs-body-color);text-align:left;background:#fff;border-radius:.75rem}.mobile-day-switch-button span,.mobile-day-switch-button small{display:block}.mobile-day-switch-button span{font-weight:800}.mobile-day-switch-button small{color:var(--bs-secondary-color);margin-top:.1rem;font-size:.76rem}.mobile-day-switch-button.is-active{border-color:var(--bs-primary);color:var(--bs-primary);background:var(--bs-primary-bg-subtle);box-shadow:inset 0 0 0 1px rgba(var(--bs-primary-rgb), .16)}.mobile-view-mode .mobile-progress-actions{gap:.45rem;display:flex;position:absolute;top:1rem;right:1rem}.mobile-view-mode .mobile-refresh-button,.mobile-view-mode .mobile-progress-actions .mobile-logout-button{border:var(--bs-border-width) solid var(--bs-border-color);width:2.85rem;min-width:2.85rem;height:2.25rem;color:var(--bs-primary);background:#fff;border-radius:999px;place-items:center;margin:0;font-size:1.25rem;line-height:1;display:inline-grid;position:absolute}.mobile-view-mode .mobile-progress-actions .mobile-refresh-button,.mobile-view-mode .mobile-progress-actions .mobile-logout-button{position:static}.mobile-view-mode .mobile-progress-actions .mobile-logout-button{color:var(--bs-primary);background:#fff}.mobile-view-mode .mobile-refresh-button:disabled{opacity:.55}.mobile-view-mode .mobile-day-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0 0 1rem;display:grid}.mobile-view-mode .mobile-day-switch-button{padding:.6rem .75rem}.progress-summary p:not(.eyebrow){color:var(--bs-secondary-color);margin-bottom:.8rem}.progress-summary .quote-attribution{color:#8d98a1;text-align:right;font-style:italic}.progress-stats{flex-wrap:wrap;gap:.6rem;display:flex}.progress-stats span{color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border-radius:999px;padding:.35rem .6rem;font-size:.8rem}.progress-stats strong{color:var(--bs-primary)}.progress-stats .progress-remaining{color:var(--bs-primary);background:var(--bs-primary-bg-subtle)}.progress-planned-totals{border-left:var(--bs-border-width) solid var(--bs-border-color);gap:.65rem;min-width:210px;margin:0;padding-left:1.5rem;display:grid}.progress-planned-totals span{gap:.1rem;display:grid}.progress-planned-totals small{color:var(--bs-secondary-color);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:700}.progress-planned-totals strong{font-size:1.25rem}.meal-list,.table-wrap{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);background:var(--bs-body-bg);box-shadow:var(--bs-box-shadow-sm);overflow:hidden}body:not(.mobile-view-mode) [data-view=planner].content-section{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(280px,.38fr) minmax(0,1fr);align-items:start;gap:1.2rem;padding:0;display:grid}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{grid-column:2}body:not(.mobile-view-mode) [data-view=planner] .exercise-daily-panel{background:0 0;border:0;border-radius:0;margin-top:0;padding:0}body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel,body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{border:1px solid var(--dashboard-border);background:var(--dashboard-panel);border-radius:.65rem;min-width:0;padding:1.25rem;box-shadow:0 .75rem 1.75rem #1824331a}body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel{background:radial-gradient(ellipse at 100% 0, rgba(var(--bs-primary-rgb), .09), transparent 70%), var(--dashboard-panel);position:sticky;top:92px}body:not(.mobile-view-mode) [data-view=planner] .progress-donut span{display:none}body:not(.mobile-view-mode) [data-view=planner] .section-heading{text-align:center;border-bottom:0;align-items:start;margin-bottom:1.2rem;padding:0;display:grid}body:not(.mobile-view-mode) [data-view=planner] .current-daily-template{display:none}body:not(.mobile-view-mode) [data-view=planner] .daily-plan-actions{grid-column:2;grid-template-columns:repeat(2,auto);justify-self:end;gap:.5rem;margin:-.35rem 1rem 0 0;display:grid}body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{text-align:center;background:0 0;border:0;border-radius:0;grid-template-columns:1fr;justify-items:center;gap:1rem;padding:0;position:relative}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch{gap:.5rem;display:grid;position:absolute;top:2.25rem;left:.25rem}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch[hidden]{display:none}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch-button{border:1px solid color-mix(in srgb, var(--bs-primary) 24%, #d7e0e7);width:2.35rem;height:2.35rem;color:color-mix(in srgb, var(--profile-accent) 82%, #24364a);background:color-mix(in srgb, var(--bs-primary-bg-subtle) 18%, #fff);box-shadow:0 .35rem .85rem rgba(var(--bs-primary-rgb), .13);border-radius:.55rem;place-items:center;font-size:.78rem;font-weight:900;display:grid}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch-button.is-active{border-color:var(--bs-primary);color:#fff;background:var(--bs-primary);box-shadow:0 .4rem .95rem rgba(var(--bs-primary-rgb), .3)}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch-button:not(.is-active):hover{border-color:var(--bs-primary);color:var(--profile-accent);background:var(--bs-primary-bg-subtle)}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch-button:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb), .22);outline-offset:2px}body:not(.mobile-view-mode) [data-view=planner] .progress-summary{justify-items:center;display:grid}body:not(.mobile-view-mode) [data-view=planner] .progress-stats{justify-content:center}body:not(.mobile-view-mode) [data-view=planner] .progress-planned-totals{text-align:left;border-top:0;border-bottom:0;border-left:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;width:100%;min-width:0;margin-bottom:0;padding-top:1rem;padding-bottom:1rem;padding-left:0;display:grid}.health-tracking-panel{border-top:0;border-bottom:0;gap:0;margin-top:0;padding-top:1rem;padding-bottom:1rem;display:grid}.health-reading-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.health-reading-card{background:0 0;align-content:start;gap:.12rem;padding:0;display:grid}.health-reading-card small,.health-reading-card span,.health-reading-card em{color:var(--bs-secondary-color);font-size:.72rem}.health-reading-card small{letter-spacing:.05em;text-transform:uppercase;font-weight:700}.health-reading-card strong{color:var(--bs-primary);font-size:1.15rem}.health-reading-card em{font-style:normal}body:not(.mobile-view-mode) [data-view=planner] .health-tracking-panel{display:none}body:not(.mobile-view-mode) [data-view=planner] .health-reading-cards{gap:1.25rem}.blood-pressure-form,.scale-import-form{gap:.65rem;display:grid}.blood-pressure-form{grid-template-columns:minmax(7rem,.8fr) minmax(10rem,1fr) minmax(7rem,.7fr) auto;align-items:end}.profile-health-entry .blood-pressure-form{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-health-entry .blood-pressure-form .health-date-field,.profile-health-entry .blood-pressure-form .health-notes-field{grid-column:1/-1}.profile-health-entry .blood-pressure-form .btn{justify-self:start}.profile-health-entry .scale-import-form textarea{resize:vertical;min-height:9rem;font-family:Consolas,Courier New,monospace;font-size:.86rem;line-height:1.45}.scale-import-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.profile-health-entry .scale-import-form>.btn{justify-self:stretch}.health-reading-table-wrap{border:1px solid var(--dashboard-border);border-radius:.5rem;overflow-x:auto}.health-reading-table{border-collapse:collapse;width:100%;min-width:560px;font-size:.82rem}.health-reading-table th,.health-reading-table td{border-bottom:1px solid var(--dashboard-border);text-align:left;vertical-align:top;padding:.55rem .65rem}.health-reading-table th{color:var(--bs-secondary-color);background:var(--dashboard-panel);text-transform:uppercase;white-space:nowrap;font-size:.72rem}.health-reading-table tr:last-child td{border-bottom:0}.health-reading-table .btn{white-space:nowrap}.health-reading-empty{color:var(--bs-secondary-color);text-align:center}.blood-pressure-form label,.scale-import-form label{color:var(--bs-secondary-color);gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.blood-pressure-inputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.35rem;display:grid}.health-reading-pagination{justify-content:space-between;align-items:center;gap:.75rem;font-size:.82rem;display:flex}.health-reading-pagination[hidden]{display:none}.blood-pressure-inputs span{color:var(--bs-secondary-color);font-weight:800}body:not(.mobile-view-mode) [data-view=planner] .meal-list{box-shadow:none;background:0 0;border:0;border-radius:0}body:not(.mobile-view-mode) [data-view=planner] .meal-row{padding-left:0;padding-right:0}.meal-row{border-bottom:var(--bs-border-width) solid var(--bs-border-color);grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:1.375rem;padding:1.25rem 1.5rem;display:grid}.meal-row:last-child{border-bottom:0}.exercise-daily-panel,.exercise-panel{background:#fff;border:1px solid #d8e5ec;border-radius:8px;padding:1rem}.exercise-daily-panel{margin-top:1rem}.exercise-panel-heading,.compact-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.exercise-panel-heading h2,.compact-heading h3{margin:0;font-size:1.05rem}.exercise-panel-heading span{color:#527386;font-weight:700}.exercise-heading-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.exercise-heading-actions .form-control{width:min(18rem,36vw)}.exercise-tabs{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.exercise-page-heading .exercise-tabs{justify-content:flex-end;margin-top:0}.exercise-tab-button{color:#29445b;background:#f8fbfd;border:1px solid #cbd9e3;border-radius:8px;padding:.55rem .85rem;font-weight:700}.exercise-tab-button.is-active{color:#fff;background:#29445b;border-color:#29445b}.exercise-workspace{grid-template-columns:1fr;gap:1rem;margin-top:1rem;display:grid}.exercise-day-date-switch{margin:0 0 1rem}.exercise-panel[data-exercise-tab-panel],.exercise-day-editor{grid-column:1/-1}.exercise-form{gap:.75rem;display:grid}.exercise-library-layout{grid-template-columns:minmax(16rem,4fr) minmax(0,8fr);align-items:start;gap:1rem;display:grid}.exercise-library-layout .exercise-form{position:sticky;top:1rem}.exercise-schedule-form{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));align-items:end;margin-bottom:1rem}.exercise-type-list,.exercise-workout-plan-list,.exercise-session-list{gap:.65rem;display:grid}.exercise-workout-layout{grid-template-columns:minmax(16rem,4fr) minmax(0,8fr);align-items:start;gap:1rem;display:grid}.exercise-workout-layout .exercise-workout-plan-list{position:sticky;top:1rem}.exercise-workout-editor{gap:1rem;display:grid}.exercise-workout-name-row{grid-template-columns:minmax(14rem,1fr) auto auto;align-items:end;gap:.65rem;display:grid}.exercise-session-group{gap:.55rem;display:grid}.exercise-session-group+.exercise-session-group{margin-top:.9rem}.exercise-session-group h4{color:#29445b;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.exercise-type-card,.exercise-workout-plan-card,.exercise-session-row{background:#f8fbfd;border:1px solid #d8e5ec;border-radius:8px;justify-content:space-between;align-items:center;gap:.8rem;padding:.75rem;display:flex}.exercise-type-card span,.exercise-workout-plan-heading span,.exercise-session-row small{color:#607887;display:block}.exercise-workout-plan-card{align-items:center;padding:0;display:flex}.exercise-workout-plan-card.is-selected{background:#edf3f8;border-color:#29445b}.exercise-workout-plan-picker{color:inherit;text-align:left;background:0 0;border:0;flex:1;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.75rem;display:flex}.exercise-workout-plan-picker span{color:#607887;font-size:.86rem}.exercise-workout-plan-heading{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.exercise-workout-plan-sessions{gap:.45rem;margin-top:.65rem;display:grid}.exercise-plan-session{gap:.15rem;display:grid}.exercise-plan-count{color:#607887;margin-left:.35rem;font-size:.82rem}.exercise-week-plan-select{max-width:24rem;display:inline-block}.exercise-card-actions{gap:.4rem;margin-top:.65rem;display:flex}.exercise-session-row label,.exercise-session-row>span{align-items:center;gap:.65rem;margin:0;display:flex}.exercise-session-row.is-complete{background:#f1f3f5;border-color:#d6dbe0}.exercise-session-row.is-complete strong,.exercise-session-row.is-complete small{color:var(--bs-secondary-color);opacity:.72;text-decoration:line-through}.exercise-schedule-list{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.exercise-schedule-list li{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.exercise-schedule-list .is-empty{color:#718594}.meal-complete-badge{display:none}.meal-row time{color:var(--bs-primary);font-size:.85rem;font-weight:700}.meal-details p{color:var(--bs-secondary-color);margin:0}.meal-items{color:var(--bs-secondary-color);gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.meal-items li+li{border-top:var(--bs-border-width) dashed var(--bs-border-color);padding-top:.2rem}.tracking-items label{cursor:pointer;align-items:center;gap:.6rem;display:flex}.tracking-items .form-check-input{accent-color:var(--bs-primary);flex:none;margin:0}.mobile-view-mode .tracking-items .form-check-input:checked,.mobile-view-mode .exercise-session-row .form-check-input:checked{border-color:var(--bs-primary);background-color:var(--bs-primary)}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .form-check-input{border-color:color-mix(in srgb, var(--bs-primary) 24%, var(--bs-border-color))}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .form-check-input:checked,body:not(.mobile-view-mode) [data-view=planner] .exercise-session-row .form-check-input:checked{border-color:var(--bs-primary);background-color:var(--bs-primary)}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .form-check-input:focus{border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb), .18)}.tracking-items .is-consumed>label>span{color:var(--bs-secondary-color);opacity:.72;text-decoration:line-through}.item-quantity{color:var(--bs-primary);font-weight:700}.meal-nutrition{color:var(--bs-primary);gap:.5rem;font-size:.8rem;display:flex}.meal-nutrition span{background:var(--bs-primary-bg-subtle);white-space:nowrap;border-radius:999px;padding:.4rem .6rem}.template-manager{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);background:var(--bs-body-bg);box-shadow:var(--bs-box-shadow-sm);margin-top:1rem;margin-bottom:1rem;padding:1.25rem}.assignment-mode-switch{justify-content:flex-end;align-self:center;gap:.5rem;margin:0;display:flex}.assignment-planner-heading{grid-template-columns:minmax(190px,.5fr) minmax(500px,1.15fr) minmax(520px,1.1fr);align-items:end;gap:1rem .8rem;margin-bottom:0;padding-bottom:0;display:grid}.assignment-planner-heading>div:first-child{min-width:0}.assignment-date-switch{flex-wrap:wrap;align-self:end;align-items:end;gap:0;min-width:0;margin:0 0 -1px;padding:0;display:flex;overflow:hidden}.assignment-date-button{border:1px solid #b9c2cc;border-bottom-color:var(--dashboard-border);min-width:6.4rem;min-height:2.55rem;color:var(--bs-secondary-color);text-align:left;background:#eef2f6;border-radius:.45rem .45rem 0 0;flex:0 0 6.4rem;gap:.1rem;margin:0 -1px -1px 0;padding:.42rem .85rem;line-height:1.2;display:grid;position:relative}.assignment-date-button strong{color:var(--dashboard-text);font-size:.82rem}.assignment-date-button span{font-size:.74rem}.assignment-date-button:hover,.assignment-date-button:focus-visible{z-index:1;color:var(--bs-primary);background:#f8fafc}.assignment-date-button.is-active{z-index:2;border-color:var(--bs-primary);color:var(--bs-primary);box-shadow:inset 0 3px 0 var(--bs-primary);background:#f8fafc;border-bottom-color:#f8fafc}.assignment-date-button.is-active strong{color:var(--bs-primary)}[data-view=assign] .assignment-workspace{padding-top:clamp(1.75rem,2.5vw,2.5rem)}.template-save{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:.75rem;display:grid}.template-save label,.food-form label,.assignment-form label{color:var(--bs-secondary-color);gap:.4rem;font-size:.8rem;font-weight:700;display:grid}.template-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem;display:grid}.template-card{width:100%;color:inherit;text-align:left;grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.template-card:hover{background:color-mix(in srgb, var(--bs-primary-bg-subtle) 70%, var(--bs-body-bg));box-shadow:var(--bs-box-shadow-sm)}.template-card.is-active{background:var(--bs-primary-bg-subtle)}.template-card-load{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:.35rem;padding:.875rem;display:grid}.template-card-load:hover{background:0 0}.template-card-load:focus-visible{z-index:1;outline:3px solid var(--bs-primary-border-subtle);outline-offset:-3px}.template-card-load>div{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.template-card-load>span{color:var(--bs-secondary-color);font-size:.8rem}.template-delete{justify-content:center;align-self:center;align-items:center;width:32px;height:31px;margin-right:.75rem;padding:0 0 3px;font-size:1.1rem;line-height:1;display:inline-flex}.template-apply{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}.food-manager{border-radius:1.25rem;padding:clamp(1.5rem,4vw,2.5rem)}.food-manager[data-view]{margin-top:0}.manager-intro{max-width:430px;color:var(--bs-secondary-color);margin-bottom:1.25rem}.food-form,.assignment-form{border-radius:var(--bs-border-radius-lg);align-items:end;gap:.875rem;padding-bottom:1.125rem;display:grid}.food-form{grid-template-columns:repeat(3,minmax(0,1fr))}.food-favourite-field{align-self:end;align-items:center;gap:.45rem;min-height:38px;display:inline-flex!important}.food-form .form-actions{grid-column:1/-1}.assignment-form{grid-template-columns:minmax(280px,1.35fr) minmax(220px,.8fr) minmax(96px,.28fr) auto;margin-bottom:1.125rem}.assignment-form .assignment-nutrition-summary{grid-area:1/2/auto/-1;margin-bottom:0}.assignment-form .assignment-food-field{grid-area:1/1/3;align-self:end}.assignment-form>label:not(.assignment-food-field),.assignment-form>button[type=submit]{grid-row:2}.assignment-form button[type=submit]{align-self:end;min-width:150px}.assignment-food-field{align-self:stretch}.assignment-food-search{display:block;position:relative}.assignment-food-search .form-control{padding-right:2.35rem}.assignment-food-search .form-control::-webkit-search-cancel-button{display:none}.assignment-food-search-clear{width:1.6rem;height:1.6rem;color:var(--bs-secondary-color);background:0 0;border:0;border-radius:50%;place-content:center;padding:0 0 .12rem;font-size:1.15rem;line-height:1;display:grid;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.assignment-food-search-clear:hover,.assignment-food-search-clear:focus-visible{color:var(--dashboard-text);background:var(--bs-tertiary-bg)}.assignment-food-search-status{min-height:1em;color:var(--bs-secondary-color);font-size:.7rem;font-weight:400}.assignment-heading{margin-top:3rem}.assignment-heading h2{margin-bottom:1.25rem}.assignment-heading-side{gap:.75rem;max-width:470px;display:grid}.assignment-heading-side .manager-intro{text-align:right;max-width:none;margin-bottom:0}.assignment-nutrition-summary{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);background:var(--bs-body-bg);grid-template-columns:repeat(2,minmax(250px,1fr));place-self:center end;width:min(620px,100%);margin-bottom:.55rem;display:grid;overflow:hidden}.assignment-nutrition-summary article{border-left:3px solid var(--bs-secondary-color);gap:.12rem;padding:.48rem .85rem .5rem;display:grid}.assignment-nutrition-summary small{color:var(--bs-secondary-color);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.assignment-nutrition-summary strong{color:var(--bs-primary);font-size:1.08rem}.assignment-nutrition-summary span{color:var(--bs-secondary-color);font-size:.68rem;line-height:1.25}.assignment-nutrition-summary .is-within{border-left-color:var(--bs-success)}.assignment-nutrition-summary .is-under{border-left-color:var(--bs-warning)}.assignment-nutrition-summary .is-over{border-left-color:var(--bs-danger)}.form-actions{gap:.5rem;display:flex}.save-status{min-height:1.5rem;margin:.75rem 0 .25rem;font-size:.84rem}.save-status.is-saving{color:var(--bs-secondary-color)}.save-status.is-success{color:var(--bs-success)}.save-status.is-error{color:var(--bs-danger)}.library-list,.food-item-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.food-library-editor{margin:0 0 1rem}.food-library-editor[hidden]{display:none!important}.food-library-tab-panels{gap:1rem;display:grid}.public-library-placeholder{border:1px dashed var(--dashboard-border);background:#f8fafc;border-radius:.55rem;padding:1.25rem}.public-library-placeholder h3{margin:0 0 .35rem}.public-library-placeholder p:last-child{color:var(--bs-secondary-color);margin-bottom:0}.public-library-import{border:1px solid var(--dashboard-border);background:#f8fbfed1;border-radius:8px;gap:.85rem;margin-bottom:1rem;padding:1rem;display:grid}.public-library-import .section-heading{border-bottom:0;margin-bottom:0;padding-bottom:0}.public-library-root{border:1px solid var(--dashboard-border);background:#fff;border-radius:8px;overflow:hidden}.public-library-root+.public-library-root{margin-top:.75rem}.public-library-root summary{cursor:pointer;color:var(--ink);background:#f4f8fb;justify-content:space-between;gap:1rem;padding:.75rem 1rem;display:flex}.public-library-root summary span{color:var(--muted);font-size:.9rem}.public-library-root .library-group-items{padding:.75rem}.library-item,.food-category{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);background:var(--bs-body-bg)}.library-item{justify-content:space-between;align-items:center;gap:1rem;padding:.875rem;display:flex}.library-item-actions{flex:none;align-items:center;gap:.4rem;display:flex}.library-delete{justify-content:center;align-items:center;width:32px;height:31px;padding:0 0 3px;font-size:1.1rem;line-height:1;display:inline-flex}.library-group{grid-column:1/-1;gap:.65rem;display:grid}.library-group>h3{color:var(--bs-primary);margin:0}.library-group-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.library-group-heading h3{color:var(--bs-primary);margin:0}.prepared-library-group{padding-top:0}.library-group-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.library-group-items>.empty-category{border:var(--bs-border-width) dashed var(--bs-border-color);border-radius:var(--bs-border-radius);grid-column:1/-1}.library-table-wrap{border:1px solid var(--dashboard-border);background:var(--dashboard-panel);border-radius:.55rem;overflow-x:auto}.library-table{border-collapse:collapse;width:100%;min-width:820px}.library-table th,.library-table td{border-bottom:1px solid var(--dashboard-border);vertical-align:middle;padding:.6rem}.library-table th{color:var(--bs-secondary-color);letter-spacing:.06em;text-transform:uppercase;background:#f8fafc;font-size:.72rem;font-weight:800}.library-table tr:last-child td{border-bottom:0}.library-table tr.is-favourite td:first-child{border-left:4px solid var(--bs-primary)}.library-table .form-control,.library-table .form-select{min-width:0}.library-favourite-cell{text-align:center;width:6.5rem}.library-category-row th{border-top:1px solid var(--dashboard-border);border-bottom:1px solid var(--dashboard-border);color:var(--bs-primary);background:var(--bs-primary-bg-subtle);letter-spacing:.04em;text-align:left;text-transform:uppercase;padding:.65rem .8rem;font-size:.82rem;font-weight:800}.library-category-row:first-child th{border-top:0}.food-category{overflow:hidden}.food-category>h3{color:var(--bs-primary);background:var(--bs-primary-bg-subtle);justify-content:space-between;align-items:baseline;gap:.75rem;margin:0;padding:.75rem .875rem;display:flex}.food-category-nutrition{color:var(--bs-secondary-color);white-space:nowrap;flex:none;font-size:.85rem;font-weight:500}.food-item{border-top:var(--bs-border-width) solid var(--bs-border-color);grid-template-columns:minmax(0,1fr) 76px max-content;align-items:center;gap:.6rem;padding:.75rem .875rem;display:grid}.food-item-details{gap:.125rem;min-width:0;display:grid}.food-item-details span{color:var(--bs-secondary-color);font-size:.8rem}.food-item>.btn{white-space:nowrap;justify-self:end}.remove-food-button{justify-content:center;align-self:end;align-items:center;width:32px;height:31px;padding:0 0 5px;font-size:1.2rem;line-height:1;display:inline-flex}.assignment-quantity{width:100%;color:var(--bs-secondary-color);gap:.2rem;font-size:.7rem;font-weight:700;display:grid}.empty-category{border-top:var(--bs-border-width) solid var(--bs-border-color);color:var(--bs-secondary-color);margin:0;padding:.75rem .875rem;font-size:.85rem}.meal-builder{margin-top:0}.meal-bundle-form{border-radius:var(--bs-border-radius-lg);background:var(--bs-tertiary-bg);grid-template-columns:minmax(220px,1.4fr) minmax(220px,1fr) 100px auto;align-items:end;gap:.875rem;padding:1.125rem;display:grid}.meal-bundle-form label{color:var(--bs-secondary-color);gap:.4rem;font-size:.8rem;font-weight:700;display:grid}.meal-bundle-draft{grid-column:1/-1;gap:.5rem;display:grid}.meal-bundle-item{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);background:var(--bs-body-bg);justify-content:space-between;align-items:center;gap:1rem;padding:.625rem .75rem;display:flex}.meal-bundle-item strong{color:var(--bs-primary)}.meal-bundle-actions{grid-column:1/-1}.meal-bundle-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.meal-bundle-card{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);background:var(--bs-body-bg);justify-content:space-between;align-items:center;gap:1rem;padding:.875rem;display:flex}.meal-bundle-card-actions{flex-shrink:0;gap:.4rem;display:flex}.empty-bundle{color:var(--bs-secondary-color);grid-column:1/-1;margin:0;font-size:.85rem}.two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem;display:grid}.overview-grid[data-view]{margin-top:0}.overview-grid[data-view]+.overview-grid[data-view]{margin-top:2rem}.overview-wide{width:100%}.weekly-planner-heading{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:.5rem;display:flex}.weekly-planner-heading .eyebrow,.weekly-planner-heading h2{margin-bottom:0}.weekly-planner-heading .btn{white-space:nowrap;flex:none;margin-top:.1rem}.table-wrap{overflow-x:auto}.weekly-template-select{min-width:min(420px,100%)}.note-card{border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius-lg);background:var(--bs-body-bg);height:calc(100% - 4.25rem);box-shadow:var(--bs-box-shadow-sm);padding:1.375rem}.note-card p:last-child{margin-bottom:0}.note-card ul{margin:0;padding-left:1.25rem}.note-card li+li{margin-top:.625rem}.supplement{border-left:5px solid var(--bs-primary)}.subtle{color:var(--bs-secondary-color)}@media (width>=1181px){body:not(.mobile-view-mode) [data-view=planner].content-section{gap:.8rem 1.2rem}body:not(.mobile-view-mode) [data-view=planner] .dashboard-health-trends{grid-area:1/1/auto/-1}body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel{grid-area:2/1;position:static}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{grid-area:2/2}body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel,body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{align-self:stretch;height:100%;padding:.9rem 1rem}body:not(.mobile-view-mode) [data-view=planner] .section-heading{margin-bottom:.55rem}body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{gap:.55rem}body:not(.mobile-view-mode) [data-view=planner] .progress-donut{width:104px}body:not(.mobile-view-mode) [data-view=planner] .progress-donut:before{width:74px}body:not(.mobile-view-mode) [data-view=planner] .progress-summary h2{font-size:1.2rem}body:not(.mobile-view-mode) [data-view=planner] .progress-summary p:not(.eyebrow){margin-bottom:.45rem}body:not(.mobile-view-mode) [data-view=planner] .progress-planned-totals,body:not(.mobile-view-mode) [data-view=planner] .health-tracking-panel{padding-top:.55rem;padding-bottom:.55rem}body:not(.mobile-view-mode) [data-view=planner] .meal-row{gap:.85rem;padding-top:.55rem;padding-bottom:.55rem}body:not(.mobile-view-mode) [data-view=planner] .meal-nutrition span{padding:.3rem .5rem}}@media (width>=1280px){body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{box-shadow:none;background:0 0;border:0;padding:0}body:not(.mobile-view-mode) [data-view=planner] .meal-list{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;height:100%;display:grid;overflow:visible}body:not(.mobile-view-mode) [data-view=planner] .meal-row,body:not(.mobile-view-mode) [data-view=planner] .meal-row:last-child{border:1px solid var(--dashboard-border);background:#fff;border-radius:.8rem;grid-template-rows:2.35rem minmax(0,1fr);grid-template-columns:5rem minmax(0,1fr);align-items:start;gap:0;min-width:0;padding:0;position:relative;overflow:hidden;box-shadow:0 .55rem 1.35rem #19314c14}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete{border-color:color-mix(in srgb, var(--bs-primary) 28%, var(--dashboard-border));background:color-mix(in srgb, var(--bs-primary-bg-subtle) 38%, #fff);box-shadow:0 .55rem 1.35rem rgba(var(--bs-primary-rgb), .11)}body:not(.mobile-view-mode) [data-view=planner] .meal-complete-badge{z-index:2;color:#fff;background:var(--bs-primary);width:1.45rem;height:1.45rem;box-shadow:0 .35rem .8rem rgba(var(--bs-primary-rgb), .32);border:2px solid #fff;border-radius:50%;place-items:center;font-size:.85rem;font-weight:900;line-height:1;display:grid;position:absolute;top:.48rem;right:.55rem}body:not(.mobile-view-mode) [data-view=planner] .meal-row time,body:not(.mobile-view-mode) [data-view=planner] .meal-details h3{min-height:2.35rem;color:color-mix(in srgb, var(--profile-accent) 82%, #24364a);background:color-mix(in srgb, var(--bs-primary) 16%, #fff);align-self:stretch;align-items:center;margin:0;padding:.6rem .75rem;line-height:1.2;display:inline-flex}body:not(.mobile-view-mode) [data-view=planner] .meal-row time{background:color-mix(in srgb, var(--bs-primary) 25%, #fff);white-space:nowrap;width:100%;font-size:.78rem;font-weight:800}body:not(.mobile-view-mode) [data-view=planner] .meal-details{display:contents}body:not(.mobile-view-mode) [data-view=planner] .meal-details h3{width:100%;padding-right:10rem;font-size:1rem;font-weight:800}body:not(.mobile-view-mode) [data-view=planner] .meal-items{grid-column:1/-1;gap:.05rem;padding:.55rem .75rem}body:not(.mobile-view-mode) [data-view=planner] .meal-items li+li{padding-top:.2rem}body:not(.mobile-view-mode) [data-view=planner] .meal-nutrition{z-index:1;justify-content:flex-end;align-items:center;gap:.5rem;height:2.35rem;margin:0;padding:0;display:flex;position:absolute;top:0;right:.75rem}body:not(.mobile-view-mode) [data-view=planner] .meal-nutrition span{color:color-mix(in srgb, var(--profile-accent) 82%, #24364a);background:0 0;border-radius:0;padding:0;font-size:.72rem;font-weight:700}body:not(.mobile-view-mode) [data-view=planner] .meal-nutrition span+span:before{color:rgba(var(--bs-primary-rgb), .32);content:"|";margin-right:.5rem}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-nutrition{opacity:.88;right:2.75rem}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete time,body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-details h3{color:color-mix(in srgb, var(--profile-accent) 54%, #677381);background:color-mix(in srgb, var(--bs-primary) 8%, #edf1f4)}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete time{background:color-mix(in srgb, var(--bs-primary) 14%, #e6ebef)}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-items{opacity:.68}}.meal-empty{color:var(--bs-secondary-color);grid-column:1/-1;margin:0;padding:.55rem .75rem}@media (width<=1180px){body:not(.mobile-view-mode):before{left:0}.desktop-dashboard{grid-template-columns:1fr}.app-side-rail{background:#fff;border-radius:.55rem;gap:.7rem;min-height:0;padding:.65rem;position:static}.nav-section-links{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.sidebar-brand{border-bottom:1px solid var(--dashboard-border);width:100%;padding-bottom:.65rem}.app-navigation .nav-link{color:#536171;background:0 0}.app-navigation .nav-link.active{color:var(--bs-primary);background:#f6f8fb}.dashboard-workspace{background:#fff}.dashboard-main{border-radius:0;min-height:0;padding:30px 0 1.5rem}.dashboard-topbar{grid-template-columns:minmax(0,1fr) auto auto;gap:1rem}.topbar-profile-button{width:2.35rem}.profile-tabs,.admin-tabs,.food-library-tabs{padding-inline:.35rem}.profile-tab-button,.admin-tab-button,.food-library-tab-button{padding-inline:.65rem;font-size:.8rem}.assignment-planner-heading{grid-template-columns:1fr;align-items:start}.assignment-date-switch{justify-content:flex-start}.assignment-nutrition-summary{justify-self:stretch;width:100%}.profile-setup-step:not(:first-of-type),.profile-setup-targets,.profile-setup-progress,body:not(.mobile-view-mode) [data-view=planner].content-section{grid-template-columns:1fr}body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel{position:static}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel,body:not(.mobile-view-mode) [data-view=planner] .daily-plan-actions{grid-column:1}body:not(.mobile-view-mode) [data-view=planner] .daily-plan-actions{justify-self:end;margin-right:0}body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{grid-template-columns:130px minmax(0,1fr) minmax(180px,auto);align-items:center}body:not(.mobile-view-mode) [data-view=planner] .progress-planned-totals{border-top:0;border-left:1px solid var(--dashboard-border);padding-top:0;padding-left:1rem}}@media (width<=960px){.nav-section-links{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-form,.profile-section{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-goals,.profile-actions{grid-column:1/-1}.daily-progress-card,body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{grid-template-columns:130px minmax(0,1fr)}.progress-planned-totals{border-top:0;border-left:0;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));padding-top:1rem;padding-left:0}.profile-health-tools,.health-chart-grid{grid-template-columns:1fr}.assignment-form{grid-template-columns:minmax(260px,1fr) minmax(180px,.75fr)}.assignment-form .assignment-nutrition-summary{grid-area:auto/1/auto/-1}.assignment-form .assignment-food-field,.assignment-form>label:not(.assignment-food-field),.assignment-form>button[type=submit]{grid-area:auto}.blood-pressure-form{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-form button[type=submit]{justify-self:start}}@media (width<=760px){body{background:#f3f7fa}.login-shell{place-items:start center;min-height:100svh;padding:.75rem}.login-card{border-radius:1rem;grid-template-columns:1fr;width:min(420px,100%)}.login-visual{height:auto;min-height:0}.login-visual picture,.login-visual img{height:auto}.login-visual img{object-fit:contain}.login-form{align-content:start;gap:.65rem;padding:1rem 1rem .85rem}.login-form h1{font-size:clamp(1.75rem,9vw,2.25rem)}.login-intro{font-size:.9rem}.login-form .form-control-lg{min-height:2.65rem;padding:.45rem .75rem}.login-form .btn-lg{padding:.55rem 1rem}.login-status:empty{min-height:0}.page-shell{padding:.75rem!important}.app-navigation{display:none}.mobile-quick-switch{justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:0;display:flex}.mobile-view-mode .mobile-quick-switch{display:none}.mobile-view-mode .mobile-quick-switch.is-enabled{order:0;width:100%;margin:0 0 .2rem;padding-right:3rem;display:flex}.mobile-profile-buttons{flex:auto;justify-content:flex-start;align-items:center;gap:.75rem;display:flex;overflow-x:auto}.mobile-profile-button,.mobile-logout-button{aspect-ratio:1;width:2.85rem;min-width:2.85rem;box-shadow:none;border:0;border-radius:50%;font-weight:800}.mobile-profile-button{color:var(--bs-primary);filter:grayscale()saturate(.35);opacity:.72;background:#ffffffd1;place-items:center;padding:0;display:grid}.mobile-profile-button img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.mobile-profile-button.is-active{color:var(--bs-primary);filter:none;opacity:1;background:#fff;transform:scale(1.04);box-shadow:0 0 0 3px #fffffff2}.mobile-logout-button{color:var(--bs-secondary-color);background:var(--bs-body-bg);flex:0 0 2.85rem;place-items:center;font-size:1.05rem;display:grid}.content-section{margin-top:.75rem}.profile-section,.profile-trajectory-row{grid-template-columns:1fr}.profile-section-heading{flex-direction:column;align-items:stretch}[data-view=planner].content-section{margin-top:0}.progress-planned-totals{border-bottom:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding-bottom:1rem;display:grid}.page-header,.profile-config-summary,.summary-grid,.two-column,.template-save,.template-list,.food-form,.assignment-form,.blood-pressure-form,.library-list,.library-group-items,.food-item-list,.profile-form,.meal-bundle-form,.meal-bundle-list{grid-template-columns:1fr}.assignment-nutrition-summary{grid-area:auto/1/auto/-1;justify-self:stretch;width:100%}.page-header,.profile-config-summary{border-radius:1rem;gap:.8rem;padding:1rem}.section-heading,.weekly-planner-heading,.assignment-heading{flex-direction:column;align-items:start;gap:.5rem;margin-bottom:1rem}[data-view=planner]>.section-heading,[data-view=planner]>.daily-copy-status{display:none}.section-heading .eyebrow{margin-bottom:.25rem}.current-daily-template{margin-top:0;font-size:.9rem}.daily-plan-actions{grid-template-columns:1fr 1fr;gap:.45rem;width:100%;display:grid}.daily-plan-actions .btn{min-height:2.25rem}.assignment-heading-side{width:100%;max-width:none}.assignment-heading-side .manager-intro{text-align:left}.assignment-nutrition-summary{grid-template-columns:1fr}.assignment-nutrition-summary article+article{border-top:var(--bs-border-width) solid var(--bs-border-color)}.meal-row{border:var(--bs-border-width) solid var(--bs-border-color);background:var(--bs-body-bg);box-shadow:var(--bs-box-shadow-sm);border-radius:.8rem;grid-template-columns:5.5rem minmax(0,1fr);align-items:start;gap:0;margin-bottom:1rem;padding:0;position:relative;overflow:hidden}.meal-complete-badge{z-index:2;color:#fff;background:var(--bs-primary);width:1.45rem;height:1.45rem;box-shadow:0 .35rem .8rem rgba(var(--bs-primary-rgb), .32);border:2px solid #fff;border-radius:50%;place-items:center;font-size:.85rem;font-weight:900;line-height:1;display:grid;position:absolute;top:.48rem;right:.55rem}.meal-row:last-child{margin-bottom:0}.meal-list{box-shadow:none;background:0 0;border:0;overflow:visible}.meal-row time,.meal-details h3{vertical-align:middle;align-self:stretch;align-items:center;display:inline-flex}.meal-row time{color:#fff;background:linear-gradient(135deg, var(--bs-primary), var(--profile-accent));white-space:nowrap;border-radius:0;width:100%;min-height:2.35rem;margin:0;padding:.65rem 1rem;font-size:.78rem;font-weight:800;line-height:1.2}.meal-details{display:contents}.meal-details h3{color:#fff;background:linear-gradient(135deg, var(--bs-primary), var(--profile-accent));justify-self:start;width:100%;min-height:2.35rem;padding:.65rem 1rem;font-size:1rem;font-weight:800;line-height:1.2;margin:0!important}.meal-row.is-complete{border-color:color-mix(in srgb, var(--bs-primary) 30%, #d5dce4);background:color-mix(in srgb, var(--bs-primary-bg-subtle) 55%, #fff);box-shadow:0 .25rem .8rem rgba(var(--bs-primary-rgb), .1)}.meal-row.is-complete time,.meal-row.is-complete .meal-details h3{color:#ffffffeb;background:linear-gradient(135deg, color-mix(in srgb, var(--bs-primary) 72%, #fff), color-mix(in srgb, var(--profile-accent) 72%, #fff))}.meal-row.is-complete .meal-items,.meal-row.is-complete .meal-nutrition{opacity:.68}.meal-row.is-complete .meal-complete-badge{background:color-mix(in srgb, var(--bs-primary) 72%, #fff);box-shadow:0 .25rem .65rem rgba(var(--bs-primary-rgb), .24)}.exercise-workspace,.exercise-library-layout,.exercise-workout-layout,.exercise-schedule-form{grid-template-columns:1fr}.exercise-library-layout .exercise-form,.exercise-workout-layout .exercise-workout-plan-list{position:static}.exercise-daily-panel,.exercise-panel{padding:.85rem}.exercise-panel-heading,.exercise-heading-actions,.compact-heading,.exercise-type-card,.exercise-workout-plan-heading,.exercise-session-row{flex-direction:column;align-items:stretch}.exercise-card-actions,.exercise-heading-actions .form-control,.exercise-session-row label{width:100%}.exercise-session-row.is-complete{opacity:.72}.meal-items{grid-column:1/-1;gap:.05rem;margin-top:0;padding:.85rem 1rem 0}.meal-items li+li{padding-top:.3rem}.tracking-items label{gap:.45rem;line-height:1.25}.meal-row.is-readonly .tracking-items label{color:var(--bs-secondary-color)}.meal-row.is-readonly .tracking-items input{opacity:.55}.meal-nutrition{grid-column:1/-1;justify-content:flex-end;margin-top:.55rem;padding:0 1rem 1rem}.meal-nutrition span{color:var(--bs-secondary-color);background:0 0;border-radius:0;padding:0;font-size:.76rem}.meal-nutrition span+span:before{color:var(--bs-border-color);content:"|";margin-right:.5rem}.daily-totals,.form-actions{flex-wrap:wrap}.daily-plan-actions{flex-direction:column;align-items:flex-start;gap:.6rem}.daily-copy-status{text-align:left;margin-top:-.5rem}.food-item{grid-template-columns:minmax(0,1fr) 70px 32px;align-items:center;gap:.45rem}.meal-bundle-card{flex-direction:column;align-items:flex-start}.daily-progress-card{border-radius:1rem;grid-template-columns:1fr;align-items:center;gap:.65rem;margin-bottom:1rem;padding:1rem;position:relative}.progress-donut{order:2;justify-self:center;width:156px}.meal-history-dialog-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-history-dialog{width:calc(100% - 1rem);max-height:calc(100vh - 1rem)}.meal-history-dialog-header,.meal-history-dialog-summary,.meal-history-dialog-body{padding-left:1rem;padding-right:1rem}.meal-history-meal li{grid-template-columns:1fr;gap:.15rem}.meal-history-add form{grid-template-columns:1fr}.meal-history-add-status{grid-column:auto}.progress-donut:before{width:114px}.progress-donut strong{font-size:1.7rem}.progress-donut span{font-size:.78rem}.progress-summary{display:contents}.progress-summary .eyebrow{text-align:center;order:1;margin-bottom:0}.progress-summary h2{text-align:center;order:3;margin-bottom:0;font-size:1.2rem}.progress-summary .motivation-quote-text{width:min(100%,21rem);font-size:1.02rem}.progress-summary p:not(.eyebrow){text-align:center;order:4;margin-bottom:0;font-size:.9rem}.progress-stats{order:5;justify-content:center;gap:.35rem}.progress-stats span{padding:.3rem .5rem;font-size:.72rem}.progress-planned-totals{border-top:0;border-bottom:0;order:7;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0;padding-top:.75rem;padding-bottom:0}.progress-planned-totals span{background:var(--bs-tertiary-bg);border-radius:.75rem;padding:.65rem}.progress-planned-totals strong{font-size:1rem}.health-tracking-panel{border-top:0;border-bottom:0;order:8;grid-column:1/-1;width:100%;padding-top:.75rem;padding-bottom:0}.health-reading-cards{gap:.5rem}.health-reading-card{background:var(--bs-tertiary-bg);border-radius:.75rem;padding:.65rem}}.mobile-view-mode .progress-summary .quote-attribution{color:#9aa6af;text-align:right;width:100%;display:block}.mobile-view-mode .exercise-daily-panel .exercise-panel-heading{display:none}@media (width>=761px) and (width<=1100px){.mobile-view-mode .page-shell{max-width:none;padding:.75rem!important}.mobile-view-mode .daily-progress-card{grid-template-columns:minmax(210px,.75fr) minmax(360px,1.25fr);align-items:center;gap:1rem 1.5rem;padding:1rem 1.25rem}.mobile-view-mode .mobile-quick-switch.is-enabled{grid-area:1/1/auto/-1;margin-bottom:0}.mobile-view-mode .progress-donut{grid-area:2/1;justify-self:center}.mobile-view-mode .progress-summary{grid-area:2/2;min-width:0;padding-right:6rem}.mobile-view-mode .progress-planned-totals{border:0;grid-area:3/1;align-self:start;padding:0}.mobile-view-mode .mobile-theme-picker{order:initial;grid-area:3/2;align-self:center;margin-top:0}.mobile-view-mode .health-tracking-panel{order:initial;grid-area:4/1/auto/-1;width:100%}.mobile-view-mode .mobile-health-chart-strip{grid-auto-columns:min(42vw,360px);margin-left:-1.25rem;margin-right:-1.25rem;padding-left:1.25rem;padding-right:1.25rem}}.food-item:has(.assignment-consumed){grid-template-columns:minmax(0,1fr) 76px max-content 32px}.assignment-consumed{white-space:nowrap;align-items:center;gap:.4rem;font-size:.8rem;display:flex}@media (width<=600px){.food-item:has(.assignment-consumed){grid-template-columns:minmax(0,1fr) 70px 32px}.food-item>.assignment-consumed{grid-area:2/1/auto/3}.food-item:has(.assignment-consumed)>.remove-food-button{grid-area:1/3}}.assignment-nutrition-summary article{position:relative}.assignment-nutrition-summary article>small{padding-right:85px}.assignment-remaining{white-space:nowrap;font-size:.85rem;font-weight:600;position:absolute;top:.6rem;right:.75rem}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch{justify-content:center;width:100%;display:flex;position:static}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch-button{width:auto;min-width:70px;padding:.5rem .8rem}body:not(.mobile-view-mode) [data-view=planner] .daily-totals{text-align:left;grid-template-columns:1fr;gap:.9rem;width:100%;display:grid}.dashboard-nutrition-row{border-top:1px solid var(--bs-border-color);padding-top:.8rem}.dashboard-nutrition-row h3{margin:0 0 .6rem;font-size:.9rem}.dashboard-nutrition-values{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.dashboard-nutrition-row p{margin:.5rem 0 0;font-size:.78rem}.dashboard-target-room{color:var(--bs-primary)}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .is-consumed,body:not(.mobile-view-mode) [data-view=planner] .tracking-items .is-consumed span,body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-items{opacity:1;color:var(--bs-body-color);text-decoration:none}@media (width>=1181px){body:not(.mobile-view-mode) [data-view=planner] .planner-overview-panel,body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{grid-row:1;align-self:start;height:auto}body:not(.mobile-view-mode) [data-view=planner] .dashboard-health-trends{grid-row:2;margin-top:.8rem}body:not(.mobile-view-mode) [data-view=planner] .meal-list{grid-template-rows:none;align-items:start;height:auto}body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{gap:.65rem}body:not(.mobile-view-mode) [data-view=planner] .progress-summary>.eyebrow,body:not(.mobile-view-mode) [data-view=planner] #progressMessage{display:none}body:not(.mobile-view-mode) [data-view=planner] .progress-summary h2{margin-bottom:.5rem;font-size:1rem}body:not(.mobile-view-mode) [data-view=planner] .daily-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}body:not(.mobile-view-mode) [data-view=planner] .dashboard-nutrition-values{gap:.4rem}body:not(.mobile-view-mode) [data-view=planner] .dashboard-nutrition-values strong{font-size:1.1rem}body:not(.mobile-view-mode) [data-view=planner] .dashboard-nutrition-values small{font-size:.62rem}body:not(.mobile-view-mode) [data-view=planner] .dashboard-nutrition-row p{font-size:.72rem;line-height:1.4}}@media (width<=600px){body:not(.mobile-view-mode) .dashboard-topbar{flex-wrap:wrap;gap:.75rem;padding:1rem;display:flex}body:not(.mobile-view-mode) .dashboard-topbar>:first-child{flex:0 0 100%;width:100%;min-width:0}body:not(.mobile-view-mode) .dashboard-page-description{display:none}body:not(.mobile-view-mode) [data-view=planner] .daily-progress-card{flex-direction:column;align-items:center;display:flex}body:not(.mobile-view-mode) [data-view=planner] .mobile-panel-switch{flex-wrap:wrap}}html:has(body:not(.mobile-view-mode)){scrollbar-gutter:stable}@media (width>=1181px){body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{align-content:start;display:grid}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#dailyPlan,body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#dailyExercisePanel,body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#mobileNotesPanel{grid-area:1/1;align-self:start;margin:0}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#dailyPlan[hidden],body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#dailyExercisePanel[hidden],body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#mobileNotesPanel[hidden]{display:none!important}body:not(.mobile-view-mode) [data-view=planner] #dailyTotals[hidden]{visibility:hidden;display:grid!important}body:not(.mobile-view-mode) [data-view=planner] #progressStats{align-content:start;min-height:4.3rem}body:not(.mobile-view-mode) [data-view=planner] #mobileNotesPanel{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}body:not(.mobile-view-mode) [data-view=planner] .mobile-notes-heading{grid-column:1/-1}body:not(.mobile-view-mode) [data-view=planner] .mobile-notes-section{min-width:0;margin:0}body:not(.mobile-view-mode) [data-view=planner] .mobile-notes-section-heading{flex-wrap:wrap}}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .is-consumed>label>span,body:not(.mobile-view-mode) [data-view=planner] .tracking-items .is-consumed>label>span span{color:#788692}body:not(.mobile-view-mode) [data-view=planner] .tracking-items .is-consumed>label>span .item-quantity{color:color-mix(in srgb, var(--bs-primary) 55%, #fff)}body:not(.mobile-view-mode) [data-view=planner] .meal-row>time{display:none}@media (width>=1181px){body:not(.mobile-view-mode) [data-view=planner] .meal-row,body:not(.mobile-view-mode) [data-view=planner] .meal-row:last-child{grid-template-columns:minmax(0,1fr)}}.mobile-view-mode [data-view=planner] .meal-row>time{display:none}.mobile-view-mode [data-view=planner] .meal-row{grid-template-columns:minmax(0,1fr)}@media (width<=1180px){[data-view=planner] .meal-row{grid-template-columns:minmax(0,1fr)}}@media (width>=1280px){body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel{align-content:stretch;align-self:stretch}body:not(.mobile-view-mode) [data-view=planner] .planner-food-panel>#dailyPlan{grid-template-rows:none;grid-auto-rows:minmax(max-content,1fr);align-self:stretch;align-items:stretch}body:not(.mobile-view-mode) [data-view=planner] .meal-row{grid-template-rows:2.35rem auto;align-content:start}body:not(.mobile-view-mode) [data-view=planner] .meal-items{margin-bottom:0}}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete{filter:grayscale();opacity:.6;box-shadow:none;background:#fff;border-color:#b9bec4}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-details h3,body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete time{color:#4b5056;background:#fff}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-nutrition span,body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .tracking-items span{color:#62676d}body:not(.mobile-view-mode) [data-view=planner] .meal-row.is-complete .meal-complete-badge{color:#fff;box-shadow:none;background:#555b62}
