@charset "UTF-8";
:root{--primary:#E75E34;--primary-dark:#b34017;--secondary:#E9AE47;--blue:#3661E2;--bg:#f2f1f0;--card:#fff;--ink:#172033;--muted:#526078;--line:#e4dfdb;--accent-soft:#faeee9;--green:var(--primary);--orange:var(--secondary);--lime:#fff}

*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{height:88px;display:flex;align-items:center;gap:24px;padding:0 max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);background:#fff}a{color:var(--green);text-underline-offset:4px}a:hover{color:var(--primary-dark)}.brand{display:flex;align-items:center;gap:12px;font-weight:750;font-size:23px;text-decoration:none;white-space:nowrap}.brand-icon{background:var(--green);color:var(--lime);width:42px;height:42px;display:grid;place-items:center;border-radius:14px;font-size:28px}.header-caption{font-size:13px;color:var(--muted)}.logout{margin-left:auto}main{max-width:1248px;margin:auto;padding:0 24px}nav{display:flex;gap:8px;padding:24px 0;overflow:auto}nav a{padding:9px 19px;white-space:nowrap;text-decoration:none;font-weight:600;border-radius:24px;color:var(--muted);font-size:14px}nav a[aria-current]{background:var(--green);color:white}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 28px}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:750;color:var(--green)}h1{font-size:clamp(30px,4vw,44px);letter-spacing:-.04em;line-height:1.13;margin:12px 0}h2{font-size:21px;letter-spacing:-.02em;margin:0 0 18px}h3{font-size:16px;margin:18px 0 8px}p{color:var(--muted);margin:8px 0 16px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px;margin-bottom:20px;box-shadow:0 4px 14px #38322e03}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:24px;align-items:start}.meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.meal-grid .card{margin:0}.row{display:flex;justify-content:space-between;align-items:center;gap:16px}.row h2{margin:0 0 12px}.badge{display:inline-block;background:var(--accent-soft);color:var(--green);padding:4px 11px;border-radius:20px;font-size:12px;white-space:nowrap}.pending-badge{background:#fff0d9;color:#7d4f0d}.daily-total{background:var(--accent-soft);border-color:var(--line)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.metrics strong{display:block;font-size:clamp(20px,2.2vw,31px);letter-spacing:-.035em}.metrics span{font-size:12px;color:var(--muted)}.energy{border-top:1px solid var(--line);padding-top:15px;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:12px;color:var(--muted)}.macro-tags{display:flex;gap:12px}.protein{color:var(--blue)}.carbs{color:#92651d}.fat{color:var(--primary-dark)}.meal-dot{font-size:28px;color:var(--orange);background:#f8f2e7;width:45px;height:45px;text-align:center;border-radius:50%}.meal-name{font-size:24px;margin:10px 0}.empty-meal{border:1px dashed var(--line);border-radius:14px;padding:24px;margin:20px 0;color:var(--muted);font-size:14px}.date-card{display:flex;align-items:center;justify-content:space-between;padding:18px 26px}.date-card>a{font-size:24px;text-decoration:none;padding:12px}.date-form{display:flex;align-items:end;gap:14px}.date-form label{margin:0}.date-form input{margin-top:3px}label{display:block;font-size:13px;font-weight:650;margin:16px 0;color:var(--ink)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;font:inherit;font-size:16px;color:var(--ink);background:#fff;margin-top:7px;min-width:0}input:focus,select:focus,textarea:focus{outline:3px solid #3661E266;outline-offset:1px}button,.button{display:inline-block;border:0;background:var(--green);color:white;border-radius:10px;padding:12px 18px;font:inherit;font-size:14px;font-weight:650;cursor:pointer;text-decoration:none}button:hover{background:var(--primary-dark)}.secondary{background:var(--accent-soft);color:var(--green);border:1px solid var(--line)}.secondary:hover{background:var(--accent-soft)}.link{background:none;color:var(--green);padding:5px;text-decoration:underline}.link:hover{background:transparent}.danger{color:#8e3f33}.text-link{font-size:13px;margin-left:8px}.help{font-size:12px;line-height:1.7;margin:14px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.catalog article{display:flex;gap:16px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0}.catalog h3{margin:0;font-size:16px}.catalog p{font-size:13px;margin:4px 0}.catalog a{font-size:13px}.ingredient{display:grid;grid-template-columns:minmax(0,1fr) 100px 30px;gap:10px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:10px}.ingredient label{margin:10px 0}.ingredient .remove-ingredient{padding:8px;margin-bottom:12px}.ingredient-filter{font-size:13px;padding:8px}.ingredient-summary{padding:0;list-style:none;margin:20px 0}.ingredient-summary li{display:flex;justify-content:space-between;gap:16px;font-size:14px;border-bottom:1px solid var(--line);padding:9px 0}.ingredient-summary b{font-weight:550;white-space:nowrap}.note{background:var(--bg);padding:12px;border-radius:10px;font-size:13px}.note span{color:var(--muted)}.pending{background:#fff5e5;border:1px solid #f0dfc3;color:#795721;border-radius:12px;padding:16px;margin:16px 0;font-size:14px}.pending p{color:inherit;margin:6px 0 0;font-size:13px}.notice,.error{padding:16px 20px;border-radius:12px;margin:16px 0}.notice{background:var(--accent-soft)}.error{background:#fbe9e4;color:#85392a}details{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}summary{cursor:pointer;font-size:14px;font-weight:600}.delete-form{margin-top:20px;font-size:12px}.auth{max-width:480px;margin:70px auto;padding:40px}.auth button{width:100%;margin-top:10px}.narrow{max-width:560px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}h1,h2,h3,.catalog p{overflow-wrap:anywhere}@media(max-width:820px){.split{grid-template-columns:1fr}.header-caption{display:none}.meal-grid{gap:16px}.card{padding:22px}.metrics{grid-template-columns:1fr 1fr;gap:12px}.daily-total .metrics{grid-template-columns:repeat(4,1fr)}}@media(max-width:560px){header{height:72px;padding:0 18px}main{padding:0 16px}nav{gap:2px;padding:18px 0}nav a{padding:8px 13px;font-size:13px}.page-heading{margin:16px 0 22px}.page-heading p{font-size:14px}.meal-grid{grid-template-columns:1fr}.card{padding:20px;border-radius:18px}.daily-total .metrics{grid-template-columns:1fr 1fr}.date-card{padding:12px;gap:6px}.date-form{gap:8px}.date-form button{padding:12px}.date-card>a{padding:4px}.ingredient{grid-template-columns:minmax(0,1fr) 80px 28px;gap:6px}.auth{margin:40px auto;padding:26px}.energy{display:block}.macro-tags{margin-top:10px}.row{gap:8px}.badge{font-size:11px}}
.thumbnail{width:64px;height:64px;object-fit:cover;border-radius:12px;flex:none;background:var(--accent-soft)}.catalog article{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:6px 14px}.catalog .thumbnail{grid-column:1;grid-row:1 / 3}.catalog-text{grid-column:2;grid-row:1 / 3;min-width:0}.catalog article>a{grid-column:3;grid-row:1}.catalog article>form{grid-column:3;grid-row:2}.catalog .link{font-size:13px;padding:2px}.recipe .row h2{flex:1}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;margin:0}.day-save{position:sticky;bottom:0;padding:16px;background:#f2f1f0f5;border-top:1px solid var(--line);margin-top:24px;z-index:2;display:flex;align-items:center;gap:20px}.day-save button{flex:none}.day-save p{margin:0}@media(max-width:560px){.thumbnail{width:48px;height:48px}.catalog article{grid-template-columns:48px minmax(0,1fr) auto;gap:6px 8px}.day-save{display:block}.day-save button{width:100%}.day-save p{margin-top:8px}}

.action-icon{font-size:.95em;margin-right:.25em;vertical-align:baseline}.catalog article>a,.catalog article>form .link{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border-radius:8px;text-decoration:none;font-weight:600;white-space:nowrap}.catalog article>a{background:var(--accent-soft)}.catalog article>form .link{background:#fff0eb}.catalog article>a:hover{background:var(--line)}.catalog article>form .link:hover{background:#f9dcd2}.catalog .action-icon{margin:0}.remove-ingredient .action-icon{margin:0}.recipe .row>a{text-decoration:none;white-space:nowrap}@media(max-width:560px){.catalog article>a,.catalog article>form .link{padding:7px 6px;font-size:12px}}

.ingredient-summary b{white-space:normal;text-align:right;flex-shrink:0;max-width:58%}.ingredient-kcal{display:inline-block;white-space:nowrap;color:var(--muted);font-weight:500;font-size:.93em}.ingredient-summary li{overflow-wrap:anywhere}

.meal-extras fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:14px 0;min-width:0}.meal-extras legend{font-weight:650;padding:0 6px}

.header-actions{margin-left:auto;display:flex;align-items:center;gap:16px;flex:none}.header-actions .logout{margin:0}.profile-link{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:14px;text-decoration:none}.profile-link img{border-radius:50%;object-fit:cover}.profile-link i{font-size:24px}.profile-card{max-width:760px;margin:24px auto}.profile-avatar{width:96px;height:96px;object-fit:cover;border-radius:50%;display:block;margin-bottom:16px}@media(max-width:560px){header{gap:8px}.brand{font-size:18px;gap:7px}.brand-icon{width:32px;height:32px;font-size:22px}.header-actions{gap:8px}.profile-link{font-size:13px;gap:5px}.header-actions .link{font-size:13px;padding:4px}.profile-card .form-grid{grid-template-columns:1fr}}

.compact-extras{margin:16px 0}.compact-extra{border:0;padding:0;margin:0;min-width:0}.saved-extra-line{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:8px 0;font-size:13px}.saved-extra-line>span:first-child{min-width:0;overflow-wrap:anywhere}.extra-line-actions{display:flex;flex:none;gap:4px}.extra-line-actions button{padding:8px;min-height:36px;min-width:36px;text-decoration:none}.extra-edit-fields{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:10px}.extra-edit-fields label{font-size:12px;margin:8px 0}.extra-edit-fields input,.extra-edit-fields select{padding:8px;font-size:14px}.compact-extra .help{margin:6px 0;font-size:11px}.extra-status:empty{display:none}.add-extra{margin-top:6px;padding-top:6px}.add-extra summary{font-size:13px}.compact-extra [data-extra-editor]{background:var(--bg);border-radius:10px;padding:8px 12px}

/* Actions: regular, compact pill and icon-only. */
.btn,.catalog .btn,.gym-mode .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;max-width:100%;padding:12px 18px;border:1px solid transparent;border-radius:12px;background:var(--green);color:#fff;font:inherit;font-size:14px;font-weight:650;line-height:1.25;text-decoration:none;text-align:center;vertical-align:middle;cursor:pointer;white-space:normal;overflow-wrap:normal}
.btn:visited,.gym-mode .btn:visited{color:#fff}.btn:hover,.gym-mode .btn:hover{background:color-mix(in srgb,var(--green) 82%,black);color:#fff;text-decoration:none}.btn:focus-visible{outline:3px solid var(--green);outline-offset:3px}.btn .action-icon{margin:0}.btn i{flex:none}.btn-small,.catalog .btn-small,.gym-mode .btn-small{min-height:25px;padding:0 10px;border-radius:999px;font-size:13px;white-space:nowrap}
.btn.danger,.catalog .btn.danger,.gym-mode .btn.danger{background:#a43e34;color:#fff}.btn.danger:hover,.gym-mode .btn.danger:hover{background:#853128;color:#fff}
.btn-secondary,.gym-mode .btn-secondary{background:transparent;color:var(--green);border-color:var(--line)}.btn-secondary:visited,.gym-mode .btn-secondary:visited{color:var(--green)}.btn-secondary:hover,.gym-mode .btn-secondary:hover{background:var(--bg);color:var(--green)}
.btn-icon,.gym-mode .btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:0;width:40px;height:40px;min-height:40px;padding:8px;border:0;border-radius:10px;text-decoration:none;flex:none}.btn-quiet,.gym-mode .btn-quiet{background:transparent;color:var(--green)}.btn-quiet.danger,.gym-mode .btn-quiet.danger{background:transparent;color:#a43e34}.btn-quiet:hover,.gym-mode .btn-quiet:hover{background:var(--bg);color:var(--green)}.btn-quiet.danger:hover{background:#fff0eb;color:#853128}
.action-group{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;width:max-content;max-width:100%}.action-group form{display:inline-flex;margin:0}.gym-actions{gap:10px}.gym-actions form{display:inline-flex;margin:0}.gym-actions .btn{flex:none}.page-heading{flex-wrap:wrap}.catalog .btn{font-size:13px}.catalog article>a.btn,.catalog article>form .btn{padding:8px 12px;min-height:40px;border-radius:999px}
.ingredient-summary .workout-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:14px 0}.workout-name{min-width:0;overflow-wrap:normal}.ingredient-summary .workout-metrics{max-width:none;white-space:nowrap;align-self:start}.workout-row .action-group{grid-column:1 / -1}.action-group .btn{white-space:nowrap}
@media(max-width:560px){.ingredient-summary .workout-row{grid-template-columns:minmax(0,1fr)}.ingredient-summary .workout-metrics{text-align:left;white-space:normal}.workout-row .action-group{grid-column:1}.btn{min-height:46px}.btn-small{min-height:25px}.page-heading>.btn{flex:none}.gym-actions{align-items:center}.day-save .btn{width:100%}}

.catalog article>a.btn-small,.catalog article>form .btn-small{min-height:25px;padding:0 10px}

.brand-logo{display:block;width:200px;height:58px;object-fit:contain}.settings-page{width:100%;max-width:none;margin:24px auto}.settings-logo-preview{display:block;max-width:100%;width:300px;height:100px;object-fit:contain;margin:18px 0}#security{border-top:1px solid var(--line);margin-top:28px;padding-top:16px}.settings-page form{margin:12px 0}header .header-caption{max-width:260px;line-height:1.4}@media(max-width:560px){.brand-logo{width:128px;height:44px}.header-actions .profile-link{font-size:12px}.header-actions .profile-link img{width:24px;height:24px}.header-actions{gap:6px}.settings-page{margin:20px auto}}

.section-tabs{display:flex;gap:6px;background:var(--accent-soft);padding:5px;border-radius:14px;margin:24px 0 16px}.section-tabs[hidden],[data-tab-panel][hidden]{display:none}.section-tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:650;cursor:pointer}.section-tabs button[aria-selected="true"]{background:var(--green);color:#fff;box-shadow:0 2px 6px #38322e1a}.section-tabs button:hover{background:var(--line);color:var(--green)}.section-tabs button[aria-selected="true"]:hover{background:var(--green);color:#fff}.section-tabs button:focus-visible{outline:3px solid var(--green);outline-offset:2px}.section-tabs i{flex:none}@media(max-width:560px){.section-tabs{gap:4px}.section-tabs button{padding:9px 8px;font-size:12px;gap:6px;line-height:1.35}}

/* Only the selected pill glides; panels switch without animation. */
.section-tabs{position:relative;isolation:isolate}.section-tabs::before{content:"";position:absolute;left:0;top:5px;width:var(--tab-width,0);height:var(--tab-height,46px);transform:translateX(var(--tab-left,5px));border-radius:10px;background:var(--green);box-shadow:0 2px 6px #38322e1a;pointer-events:none;z-index:-1}.section-tabs.tabs-ready::before{transition:transform .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1),height .28s ease}.section-tabs button{transition:color .18s ease,background .18s ease}.section-tabs button[aria-selected="true"],.section-tabs button[aria-selected="true"]:hover{background:transparent;box-shadow:none;color:#fff}@media(prefers-reduced-motion:reduce){.section-tabs.tabs-ready::before,.section-tabs button{transition:none}}

/* Date controls: keep the native iPhone date input inside its own column. */
.date-card{gap:12px}.date-card .date-form{flex:1;min-width:0}.date-form label{flex:1;min-width:0}.date-form input[type="date"]{display:block;width:100%;max-width:100%;min-width:0}.date-form .btn{flex:none}@media(max-width:560px){.date-card{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:8px;align-items:center}.date-card>a{text-align:center;padding:4px}.date-form{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0}.date-form label{width:100%}.date-form .btn{width:100%;margin:0}.date-card .date-form{width:100%}}

/* On phones, arrows have their own row above the date controls. */
@media(max-width:560px){.date-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:14px}.date-card>a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;line-height:1;border-radius:10px;background:var(--bg)}.date-card>a:first-child{grid-column:1;grid-row:1;justify-self:start}.date-card>a:last-child{grid-column:2;grid-row:1;justify-self:end}.date-card .date-form{grid-column:1 / -1;grid-row:2;min-width:0;max-width:100%}.date-card input[type="date"]{-webkit-appearance:none;appearance:none;min-height:48px;box-sizing:border-box}.date-card input[type="date"]::-webkit-date-and-time-value{min-width:0;text-align:center}}

/* Keep all day navigation together, with Today centered between arrows. */
.date-card{display:flex;flex-direction:column;align-items:stretch;gap:14px}.date-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px}.date-navigation>a[aria-label]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:var(--bg);font-size:24px;line-height:1;text-decoration:none}.date-navigation>.btn{justify-self:center;min-height:44px}.date-card .date-form{width:100%;max-width:100%}@media(max-width:560px){.date-card{display:flex}.date-card .date-form{display:flex}}

.recipe-category{border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:12px 16px;min-width:0}.recipe-category legend{font-size:13px;font-weight:650;padding:0 6px}.recipe-category .check{margin:8px 0}.recipe-category .help{margin:10px 0 0}

.document-row{border-top:1px solid var(--line);padding:18px 0}.document-row h3{margin:0;overflow-wrap:anywhere}.document-row .help{margin:6px 0 12px}.document-row .action-group{gap:8px}

.recipe>.row{margin-bottom:16px}

/* Oreka Fit: calm cards and permanent four-destination navigation. */

body{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}header{border-bottom:0;background:#ffffffb8}.header-caption{display:none}.brand-logo{width:210px;height:58px}.card{border-radius:24px;box-shadow:0 8px 28px #38322e05}.daily-total{background:linear-gradient(135deg,var(--accent-soft),#fff);border-color:var(--line)}.section-navigation{gap:8px}.section-navigation a{font-weight:650}.page-heading h1{letter-spacing:-.045em}.date-navigation>a[aria-label]{background:var(--bg)}.saved-extra-line{padding:12px 0}.day-save{position:static;border:0;border-radius:18px;background:var(--accent-soft);padding:18px;margin-top:24px}.day-save .help{font-size:12px}.profile-link{font-size:0}.profile-link img,.profile-link i{width:34px;height:34px;font-size:30px}.header-actions{gap:16px}.settings-logo-preview{width:320px}
.bottom-navigation{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 24px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;margin:0;border:1px solid var(--line);border-radius:30px;background:#fffffff5;box-shadow:0 8px 36px #38322e1f;z-index:50;isolation:isolate;overflow:visible;backdrop-filter:blur(14px)}
.bottom-navigation::before{content:"";position:absolute;top:6px;left:0;width:var(--nav-width,calc((100% - 24px)/4));height:calc(100% - 12px);border-radius:24px;background:var(--primary);transform:translateX(var(--nav-left,6px));z-index:-1;pointer-events:none}.bottom-navigation.nav-ready::before{transition:transform .24s cubic-bezier(.22,1,.36,1),width .24s ease}.bottom-navigation>a,.gym-mode .bottom-navigation>a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 2px;min-height:66px;min-width:0;color:var(--muted);border-radius:24px;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;background:transparent;transition:color .2s ease}.bottom-navigation>a[aria-current],.gym-mode .bottom-navigation>a[aria-current]{color:#fff;background:transparent}.bottom-navigation i{font-size:22px}.bottom-navigation a:hover{color:var(--ink)}.bottom-navigation a[aria-current]:hover{color:#fff}.bottom-navigation a:focus-visible{outline:3px solid var(--primary);outline-offset:4px}
@media(max-width:560px){header{height:80px}.brand-logo{width:178px;height:50px}.header-actions .profile-link{font-size:0}.header-actions .profile-link img{width:30px;height:30px}.header-actions{gap:12px}.card{border-radius:22px}.bottom-navigation{bottom:calc(8px + env(safe-area-inset-bottom,0px));width:calc(100% - 20px);border-radius:28px;gap:2px}.bottom-navigation>a,.gym-mode .bottom-navigation>a{font-size:10px;min-height:62px;padding:9px 0;gap:6px}.bottom-navigation i{font-size:20px}.meal>.thumbnail{width:72px;height:72px;border-radius:16px}.meal-name{font-size:24px}.day-save{margin-bottom:16px}.section-tabs button{min-width:0}}
@media(prefers-reduced-motion:reduce){.bottom-navigation.nav-ready::before,.bottom-navigation>a{transition:none}}

.daily-meals:has([role="tablist"]) .meal-grid{display:block}.daily-meals:has([role="tablist"]) .meal{margin-bottom:16px}.daily-meals .section-tabs button{padding:10px 6px;font-size:13px}.daily-meals .section-tabs{margin-top:16px}

/* One compact date bar; the native date picker remains available from its label. */
.date-card.compact-date{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:6px;padding:6px 10px;min-height:58px;border-radius:22px;margin-bottom:20px}
.compact-date>a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;color:var(--ink);font-size:19px;text-decoration:none;border-radius:14px}
.compact-date>a:hover{background:var(--accent-soft)}
.compact-date .compact-date-form{min-width:0;margin:0;text-align:center}
.compact-date-label{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;font-size:16px;font-weight:700;cursor:pointer;overflow:hidden}
.compact-date-label input[type="date"]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
.compact-date-label:focus-within{outline:2px solid var(--blue);outline-offset:-2px;border-radius:12px}
.compact-date-form button{margin:4px 0}
.date-card.compact-date>a:first-child{grid-column:1;grid-row:1;justify-self:start}.date-card.compact-date>a:last-child{grid-column:3;grid-row:1;justify-self:end}.date-card.compact-date .compact-date-form{grid-column:2;grid-row:1;width:100%;max-width:100%}

.appearance-colors{border-top:1px solid var(--line);margin-top:28px;padding-top:16px}.color-field>span{display:flex;align-items:center;gap:12px;margin-top:8px}.color-field input[type="color"]{width:64px;height:44px;padding:3px;margin:0;flex:none;cursor:pointer}.color-field output{font-size:14px;font-variant-numeric:tabular-nums}.theme-preview{display:flex;gap:12px;flex-wrap:wrap;padding:20px;border:1px solid var(--line);border-radius:16px;margin:16px 0;background:var(--preview-bg,var(--bg))}.theme-preview>strong{width:100%;color:#38322e}.theme-preview>span{padding:8px 14px;border-radius:12px;color:#fff;font-size:13px;font-weight:650}.theme-preview-primary{background:var(--preview-primary,var(--primary))}.theme-preview-secondary{background:var(--preview-secondary,var(--secondary));color:#38322e!important}.theme-preview-blue{background:var(--preview-blue,var(--blue))}

/* Soft elevation shared across nutrition, training, documents and settings. */
:root{--shadow-card:0 3px 8px rgba(56,50,46,.035),0 12px 30px rgba(56,50,46,.065);--shadow-control:0 2px 6px rgba(56,50,46,.03),0 6px 18px rgba(56,50,46,.05)}
.card{box-shadow:var(--shadow-card)}
.section-tabs,.compact-date{box-shadow:var(--shadow-control)}
.gym-reminder,.gym-set,.plan-item,.gym-stat,.theme-preview{box-shadow:var(--shadow-control)}
.day-save{box-shadow:var(--shadow-control)}

/* Compact blue energy balance, using the customizable palette color. */
.daily-balance{background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 7%,white),white);border-color:color-mix(in srgb,var(--blue) 18%,white)}
.balance-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;margin:20px 0;gap:0}
.balance-overview>div{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px;padding:16px 8px;min-width:0}
.balance-overview>div+div{border-left:1px solid color-mix(in srgb,var(--blue) 25%,transparent)}
.balance-overview strong{font-size:clamp(18px,2.5vw,30px);line-height:1.25;letter-spacing:-.035em}.balance-overview small{font-size:.6em;letter-spacing:0;white-space:nowrap}.balance-overview span{font-size:13px;color:var(--muted)}
.balance-overview .balance-highlight{background:color-mix(in srgb,var(--blue) 14%,white);border:0;border-radius:18px;margin-left:8px}
.daily-balance>.notice{background:color-mix(in srgb,var(--blue) 12%,white)}
@media(max-width:560px){.daily-balance>.row .badge{display:none}.balance-overview>div{padding:14px 4px}.balance-overview strong{font-size:18px}.balance-overview span{font-size:11px}.balance-overview .balance-highlight{margin-left:5px;border-radius:14px}}

/* Vivid palette on neutral cards, matching the approved proposal. */
.daily-total,.gym-today,.daily-balance,.day-save{background:#fff;border-color:var(--line)}
.balance-overview .balance-highlight{background:var(--blue);color:#fff}
.balance-overview .balance-highlight span{color:#fff}
.section-tabs{background:#fff;box-shadow:var(--shadow-control)}

/* The section menu belongs visually to the header, above the page content. */
header{background:#fff}
.header-navigation{background:#fff;border-bottom:0;box-shadow:none}
.header-navigation .section-navigation{max-width:1248px;margin:0 auto;padding:4px 24px 14px;gap:8px;scrollbar-width:none;overscroll-behavior-x:contain}
.header-navigation .section-navigation::-webkit-scrollbar{display:none}
.header-navigation .section-navigation a{padding:9px 18px;border-radius:14px;font-size:14px;flex:none;color:var(--muted)}
.header-navigation .section-navigation a[aria-current]{color:#fff;background:var(--primary)}
.header-navigation .section-navigation a:not([aria-current]):hover{color:var(--primary);background:var(--accent-soft)}
@media(max-width:560px){.header-navigation .section-navigation{padding:0 16px 12px;gap:4px}.header-navigation .section-navigation a{padding:9px 12px;font-size:13px;border-radius:12px}}

/* The active header pill glides; content stays still. Native links keep iPhone app navigation. */
.header-navigation .section-navigation{position:relative;isolation:isolate}
.header-navigation .section-navigation a{display:inline-flex;align-items:center;gap:7px;position:relative;z-index:1}
.header-navigation .section-navigation i{font-size:14px;flex:none}
.header-navigation .section-navigation.header-glide a[aria-current]{background:transparent}
.header-navigation .section-navigation::before{content:none}
.header-navigation .section-navigation.header-glide::before{content:"";position:absolute;left:0;top:var(--header-top);height:var(--header-height);width:var(--header-width);transform:translateX(var(--header-left));border-radius:14px;background:var(--primary);pointer-events:none;z-index:0}
.header-navigation .section-navigation.header-glide-ready::before{transition:transform .25s cubic-bezier(.22,1,.36,1),width .25s ease}
@media(max-width:560px){.header-navigation .section-navigation a{padding:9px 11px;gap:6px}.header-navigation .section-navigation.header-glide::before{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.header-navigation .section-navigation.header-glide-ready::before{transition:none}}

.header-navigation .section-navigation i{width:16px;text-align:center}

/* Compact common layout and semantic action colors. */
.library-layout:has(>section[hidden]){display:block}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0;margin:16px 0}.metrics>div{padding:4px 10px;text-align:center;min-width:0}.metrics>div+div{border-left:1px solid var(--line)}.metrics strong{font-size:clamp(18px,2.2vw,28px)}.metrics span{font-size:11px}
.info-disclosure{border:0;padding:0;margin:12px 0}.info-disclosure>summary{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--blue);background:color-mix(in srgb,var(--blue) 10%,white);list-style:none}.info-disclosure>summary::-webkit-details-marker{display:none}.info-disclosure[open]>summary{background:var(--blue);color:white}.info-disclosure .energy{margin-top:12px}
.daily-balance{position:relative}.balance-information>summary{position:absolute;right:20px;top:22px}.daily-balance>.row{padding-right:36px}.daily-balance>.row .badge{display:none}
.recipe-expanded{margin-top:12px}.recipe-actions{margin-top:24px;gap:16px}.recipe>.row,.exercise-heading{justify-content:flex-start;gap:12px}.recipe>.row h2,.exercise-heading h2{flex:1;text-align:left;margin:0}.meal>.thumbnail{display:block;margin:12px 0}.meal .metrics{margin:12px 0}.meal details:not(.info-disclosure)>summary{font-size:12px}.compact-extras{display:flex;gap:10px;flex-wrap:wrap}.compact-extra{flex:1;min-width:120px;padding:0;border:0}.extra-edit-fields{display:block}.compact-extra label{font-size:12px}.saved-extra-line{font-size:12px}.extra-line-actions .btn-icon{width:30px;height:30px;min-height:30px;padding:4px}.meal .delete-form .btn{min-height:30px;padding:4px 10px;font-size:12px}.meal .choose{margin-top:12px}.meal .ingredient-summary li{font-size:12px}
a.btn[href*="edit="],.catalog a[href*="edit="],.btn-edit{background:var(--blue)!important;color:#fff!important;text-decoration:none}.btn-edit:hover,a.btn[href*="edit="]:hover{filter:brightness(.92)}
.btn.danger{background:#c53c32!important;color:white!important}.btn-quiet.danger{background:transparent!important;color:#c53c32!important}
form>.btn+ .btn{margin-left:12px}.saved-schedules{margin-top:26px}.strength-summary{margin-top:22px}.gym-triple>label{display:flex;flex-direction:column;justify-content:flex-end;min-width:0}.gym-triple>label input{margin-top:8px}.gym-triple>div{min-width:0}input[type="file"]{max-width:100%;min-width:0;font-size:13px}input::file-selector-button{max-width:100%;margin-right:8px}
.input-date-bar{box-shadow:var(--shadow-control);grid-column:1 / -1;margin-bottom:12px!important}.input-date-bar>button{width:44px;height:44px;padding:0;background:transparent;color:var(--ink)}
@media(max-width:560px){.metrics>div{padding:3px 4px}.metrics span{font-size:10px}.metrics strong{font-size:20px}.gym-triple:has(input[type="file"]){grid-template-columns:1fr}.gym-triple>label{min-height:86px}.gym-triple>label input{min-height:46px}.meal .metrics .energy{font-size:11px}}

.volume-celebration{display:flex;align-items:center;flex-direction:column;gap:8px;padding:20px;border-radius:18px;background:color-mix(in srgb,var(--secondary) 14%,white);text-align:center}.volume-celebration>i{color:var(--secondary);font-size:30px}.volume-celebration strong{font-size:26px}.volume-celebration span{font-size:13px;color:var(--muted)}.movement-grid{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:24px;margin-top:20px}.volume-circle{width:174px;height:174px;border:10px solid var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;text-align:center;padding:14px;background:white}.volume-circle strong{font-size:29px}.volume-circle span{font-size:12px}.movement-grid p{font-size:14px}.movement-grid i{width:22px;color:var(--blue)}@media(max-width:560px){.movement-grid{grid-template-columns:1fr;gap:12px}.volume-circle{justify-self:center}}

.meal>details:not(.info-disclosure){display:inline-block;vertical-align:top;margin:10px 8px 0 0;padding-top:8px}.meal>details[open]:not(.info-disclosure){display:block;width:100%}.meal>details>summary,.add-extra>summary{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:10px;background:var(--bg);font-size:12px}.meal .delete-form{margin-top:14px}.summary-explanation{font-size:11px}

.daily-total{position:relative}.daily-total>.row{padding-right:36px}.daily-total h2{font-size:19px}.daily-total .metric-info{margin:0}.daily-total .metric-info>summary{position:absolute;right:20px;top:22px}.daily-total .metrics{margin-bottom:0}.daily-total .info-disclosure[open]{margin-top:12px}.daily-total>.row>.badge{display:none}.metrics span{line-height:1.35}

.meal-tools{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-top:14px}.meal-tools>.compact-extras{display:contents}.meal-tools .compact-extra{flex:0 1 auto;min-width:0;margin:0}.meal-tools .compact-extra:has(.saved-extra-line){flex-basis:100%}.meal-tools details{border:0;margin:0;padding:0}.meal-tools details>summary{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:10px;background:var(--bg);font-size:11px;min-height:32px}.meal-tools>.info-disclosure>summary{width:32px;padding:0;background:color-mix(in srgb,var(--blue) 10%,white)}.meal-tools details[open]{flex-basis:100%;width:100%}.meal-tools>.delete-form{margin:0}.meal-tools>.delete-form button{font-size:0;width:32px;min-height:32px;height:32px;padding:0}.meal-tools>.delete-form button i{font-size:13px}.meal-tools .add-extra[open] .extra-edit-fields{min-width:220px}.meal-tools .info-disclosure[open]>summary{background:var(--blue);color:white}
.extra-status:empty{display:none}
@media(max-width:560px){.gym-triple:has(>label){grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gym-triple>label{font-size:12px;line-height:1.4;min-height:94px}.gym-triple>label input{padding:10px 7px}}

/* Consistent headings and compact information controls. */
.card h2,.daily-total h2,.meal-name{font-size:21px!important;line-height:1.3}
.daily-balance>.balance-information:not([open]){margin:0;padding:0;height:0}
.daily-balance>.notice,.daily-balance>.pending{margin-bottom:0}
.daily-balance>.balance-overview:last-child{margin-bottom:0}
.meal-recipe-heading{display:flex;align-items:center;gap:12px;margin:16px 0;min-width:0}
.meal-recipe-heading .thumbnail{flex:none;margin:0;width:64px;height:64px;object-fit:cover}
.meal-recipe-heading .meal-name{margin:0;min-width:0}
.extra-amount{display:block;font-weight:400}
.meal-tools{align-items:flex-start}.meal-tools .choose{margin:0}
.meal>.delete-form{display:block;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
.meal>.delete-form .btn{width:auto;height:auto;min-height:38px;padding:8px 12px;font-size:12px}
.recipe{position:relative}.recipe-tags{position:relative;padding-right:40px;margin-top:16px;display:flex;gap:6px;flex-wrap:wrap;min-height:32px;align-items:center}
.recipe>.metric-info{margin:0;padding:0}.recipe>.metric-info>summary{position:absolute;right:28px;transform:translateY(-32px)}
.recipe-expanded>summary{list-style:none}.recipe-expanded>summary::-webkit-details-marker{display:none}
.diary-history>.row{align-items:center}.diary-history>.row h2{margin:0;flex:1}.diary-history h2 a{text-decoration:none}
.diary-history>.row>.metric-info{margin:0;flex:none}.diary-history>.row>.metric-info[open]{position:static}.diary-history{position:relative}
.diary-history .metric-info[open]>.energy{position:relative;width:100%}
.movement-month,.movement-month form,.movement-month .compact-date{min-width:0;max-width:100%}
.movement-month .compact-date{margin:16px 0;padding:8px;display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:4px}
.movement-month .compact-date-label{min-width:0;margin:0}.movement-month .compact-date-label span{font-size:14px;text-transform:capitalize}
.movement-month input[type=month]{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0}
@media(max-width:560px){.recipe>.metric-info>summary{right:20px}.card h2,.daily-total h2,.meal-name{font-size:20px!important}}

.history-info-ready>.metric-info>summary{position:absolute;top:24px;right:20px}.history-info-ready>.metric-info:not([open]){margin:0;height:0}.diary-history>.row>.badge{flex:none}

/* Anchor recipe information to the tag row in both disclosure states. */
.recipe-tags>.metric-info{position:static;margin:0;padding:0;height:0;flex-basis:100%}
.recipe-tags>.metric-info>summary{position:absolute;right:0;top:0;transform:none}
.recipe-tags>.metric-info[open]{height:auto;margin-top:14px}
.recipe-tags>.metric-info .energy{margin-top:0;padding-top:16px}

.recipe-tags>.metric-info .energy{width:calc(100% + 40px)}

/* Remove trailing metric spacing and give exercise badges breathing room. */
.diary-history>.metrics{margin-bottom:0}
.diary-history>.metric-info:not([open]){margin:0;padding:0;height:0}
.card>.exercise-heading+.badge{margin-top:14px}

.diary-history>.row{min-height:32px}.history-info-slot{display:block;flex:none;width:32px;height:32px}.history-info-ready>.metric-info>summary{margin:0}

.saved-schedules .gym-actions>.btn,.saved-schedules .gym-actions>form>.btn{border-radius:12px;min-height:44px;min-width:100px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px}

.gym-plan-row>a{text-decoration:none}.gym-mode .gym-plan-row .badge.plan-active-badge{background:var(--blue);color:#fff}

/* Monthly activity preview beside the home heading. */
.today-heading{padding-right:112px;min-height:100px}
.movement-preview{position:relative;border:0;margin:0;padding:0}
.movement-preview>summary{position:absolute;right:0;top:-128px;width:96px;height:96px;border-radius:50%;background:var(--primary);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;list-style:none;box-shadow:var(--shadow-control)}
.movement-preview>summary::-webkit-details-marker{display:none}
.movement-preview>summary strong{font-size:20px;line-height:1.25}.movement-preview>summary span{font-size:10px}.movement-preview>summary i{font-size:15px}
.movement-preview>summary:hover{background:var(--primary-dark)}
.movement-preview:not([open]){height:0}
.movement-preview[open]{margin-bottom:20px}.movement-preview .movement-month{margin-bottom:0}
@media(max-width:560px){.today-heading{padding-right:88px;min-height:112px}.movement-preview>summary{width:76px;height:76px;top:-112px}.movement-preview>summary strong{font-size:17px}}

#product-list article>a.btn-small,#product-list article>form .btn-small{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:25px;padding:0 10px;border-radius:999px;font-size:13px;line-height:1.55;min-width:76px}

/* Apple Salud: source and association cards share the existing palette. */
.health-device,.health-pending{padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border,#e5e1dd)}
.health-device .badge{margin-left:.6rem}
.health-pending form{margin-bottom:.8rem}
.health-pending h3{margin-bottom:.5rem}

/* Compact floating navigation, closer to the iPhone home gesture. */
@media(max-width:560px){
  body{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
  .bottom-navigation{bottom:max(6px,calc(env(safe-area-inset-bottom,0px) - 12px));padding:5px;border-radius:26px}
  .bottom-navigation::before{top:5px;height:calc(100% - 10px);border-radius:21px}
  .bottom-navigation>a,.gym-mode .bottom-navigation>a{min-height:50px;padding:6px 0;gap:4px;border-radius:21px;font-size:10px;line-height:1.3}
  .bottom-navigation i{font-size:19px}
}

.delete-confirmation{max-width:calc(100vw - 32px);width:420px;border:1px solid var(--line);border-radius:20px;padding:24px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-control)}.delete-confirmation::backdrop{background:#0005}.delete-confirmation p{margin:0 0 20px}.delete-confirmation .gym-actions{display:flex;gap:12px;flex-wrap:wrap}

.meal .refresh-meal{display:inline-flex;margin:0}.meal .refresh-meal .btn{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:0;border-radius:10px;background:var(--bg);color:var(--ink);font-size:11px;min-height:32px;box-shadow:none}

.skip-meal{margin:12px 0 18px}.meal-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:0;border:0;background:transparent;color:var(--ink);font-size:14px;text-align:left;box-shadow:none}.meal-switch-track{position:relative;flex:none;width:51px;height:31px;border-radius:999px;background:#d1d5db;transition:background .2s}.meal-switch-track:before{content:"";position:absolute;left:2px;top:2px;width:27px;height:27px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:transform .2s}.meal-switch[aria-checked="true"] .meal-switch-track{background:var(--primary)}.meal-switch[aria-checked="true"] .meal-switch-track:before{transform:translateX(20px)}

.product-editor-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:12px;margin-top:18px}.product-editor-actions>.btn{flex:1 1 170px;justify-content:center;gap:8px;margin:0}.product-editor-actions>.btn i{display:inline-flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;line-height:1;margin:0}.product-editor-actions>.btn span{min-width:0}

.settings-health-tabs>a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 14px;border-radius:10px;color:var(--muted);font-size:14px;font-weight:650;white-space:normal;text-align:center;line-height:1.35;text-decoration:none}.settings-health-tabs>a[aria-current]{background:var(--green);color:white}.settings-health-tabs>a i{flex:none}@media(max-width:560px){.settings-health-tabs>a{padding:9px 8px;font-size:12px;gap:6px;min-width:0}}

#personal .appearance-colors,#personal .form-grid,#personal label{min-width:0}#personal input[type="date"]{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;-webkit-appearance:none;appearance:none}#personal input[type="date"]::-webkit-date-and-time-value{text-align:left;min-width:0}#personal select{max-width:100%;min-width:0}

#personal .profile-sex-weight{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}#personal .profile-sex-weight>div{min-width:0}#personal .profile-sex-weight input[readonly]{background:var(--bg);color:var(--muted)}#personal .profile-sex-weight .help{font-size:12px;margin-top:0}

.skip-meal .meal-switch,.skip-meal .meal-switch:hover,.skip-meal .meal-switch:active,.skip-meal .meal-switch:focus{background:transparent;color:var(--ink);box-shadow:none}.skip-meal .meal-switch:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:6px}

.bottom-navigation{grid-template-columns:repeat(5,minmax(0,1fr));width:min(680px,calc(100% - 20px))}.daily-expenditure{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.daily-expenditure span{color:var(--muted);font-size:13px}.daily-expenditure strong{color:var(--blue);font-size:20px}.meal-dish+.meal-dish{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.meal-dish-actions{display:flex;gap:10px;flex-wrap:wrap}.meal-dish-actions form{margin:0}.meal .meal-dish-actions .btn{min-height:32px;padding:6px 8px;font-size:11px}.meal .meal-dish-actions .delete-form .btn{width:auto;height:auto;font-size:11px}.meal-dish .meal-name{font-size:20px}@media(max-width:560px){.bottom-navigation>a,.gym-mode .bottom-navigation>a{font-size:9px}.bottom-navigation i{font-size:18px}}

.weight-evolution .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.weight-evolution label{min-width:0}.weight-evolution input[type="date"]{display:block;width:100%;max-width:100%;min-width:0;-webkit-appearance:none;appearance:none}.weight-evolution input[type="date"]::-webkit-date-and-time-value{text-align:left}.weight-period-navigation{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--bg);border-radius:14px;padding:12px;margin:16px 0}.weight-period-navigation strong{flex:1;text-align:center;font-size:14px;min-width:0}.weight-period-navigation>a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;color:var(--ink);text-decoration:none}.weight-evolution .weight-chart{display:block;width:100%;height:auto;max-height:300px}.weight-evolution .weight-chart text{fill:var(--muted);font-size:12px}@media(max-width:560px){.weight-evolution .form-grid{gap:10px}.weight-evolution .weight-period-navigation strong{font-size:12px}}

.weight-evolution .form-grid{align-items:stretch}.weight-evolution .form-grid label{display:flex;flex-direction:column;justify-content:flex-end}.weight-evolution .form-grid select,.weight-evolution .form-grid input[type="date"]{height:48px;min-height:48px;box-sizing:border-box;margin-bottom:0}

.weight-value-tooltip{position:fixed;z-index:1000;pointer-events:none;max-width:calc(100vw - 16px);padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-control);font-size:13px;font-weight:650;text-align:center}.weight-value-tooltip[hidden]{display:none}.weight-value-target{cursor:pointer;pointer-events:all}.weight-value-target:focus-visible{outline:none;stroke:var(--ink);stroke-width:2}

.meal-editor{display:block;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.meal-editor>summary{display:inline-flex;align-items:center;gap:8px}.meal-editor-content{padding-top:14px}.meal-edit-dish{margin-top:16px}.meal-edit-dish h3{font-size:15px;margin-bottom:10px}.meal-editor .choose{display:block;margin:10px 0 18px}.meal-extras-overview{border-top:1px solid var(--line);margin:16px 0;padding-top:12px}.meal-extras-overview p{margin:6px 0;font-size:14px}.meal-extras-overview span{color:var(--muted);font-size:12px}.meal .meal-dish .meal-name{font-size:18px}.meal-editor .compact-extras{margin-top:18px}.meal-editor .skip-meal{margin-top:0}

.meal>details.meal-editor{display:block;width:100%;margin:18px 0 0;padding-top:16px}.meal>details.meal-editor>summary{font-size:13px;padding:9px 12px}

.meal>.metrics{background:color-mix(in srgb,var(--blue) 12%,white);border-radius:18px;padding:18px 10px;margin:20px 0 12px}.meal>.metrics>div{border-color:color-mix(in srgb,var(--blue) 22%,white)}.meal-extras-overview{display:flex;flex-wrap:wrap;gap:12px;border:0;padding:0;margin:18px 0}.meal-extra-tile{display:flex;align-items:center;gap:12px;flex:0 1 260px;background:var(--bg);border-radius:14px;padding:14px;min-width:0}.meal-extra-tile>i{font-size:22px;color:var(--muted);flex:none}.meal-extra-tile>div{min-width:0;display:flex;flex-direction:column;gap:5px}.meal-extra-tile strong{font-size:14px;overflow-wrap:anywhere}.meal-extra-tile span{font-size:12px;color:var(--muted)}.meal-nutrition-tools{margin-top:0}.meal-nutrition-tools>.meal-ingredients>summary{min-height:32px}.meal-editor .skip-meal{background:color-mix(in srgb,var(--blue) 12%,white);padding:14px 16px;border-radius:18px}.meal-edit-dish h3{border-bottom:1px solid var(--line);padding-bottom:12px;font-size:16px}.meal-edit-dish h3 span{font-weight:750}.meal-edit-dish .meal-dish-actions{align-items:center}.meal-edit-dish .delete-form{margin-left:auto}.meal-edit-dish+.choose{margin-bottom:24px}@media(max-width:560px){.meal-extra-tile{flex:1 1 calc(50% - 12px)}.meal-nutrition-tools>.meal-ingredients>summary{font-size:11px}}

.meal>.metrics{padding:10px 8px;margin:16px 0 10px}.meal>.metrics>div{padding:3px 5px}.meal>.metrics strong{font-size:26px;line-height:1.15;margin-bottom:4px}.meal>.metrics span{font-size:11px;margin-top:4px}.meal-extra-tile>div{flex:1}.meal-extra-dismiss{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;min-height:30px;padding:0;margin:0;border:0;border-radius:50%;background:transparent;color:var(--muted);box-shadow:none}.meal-extra-dismiss:hover{background:var(--line);color:var(--ink)}.meal .meal-edit-dish .meal-dish-actions{align-items:stretch;gap:10px}.meal .meal-edit-dish .meal-dish-actions form{display:flex;margin-top:0;margin-bottom:0}.meal .meal-edit-dish .meal-dish-actions .btn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;margin:0;padding:8px 10px;font-size:11px;line-height:1.3}.meal .meal-edit-dish .meal-dish-actions .btn i{flex:none}@media(max-width:560px){.meal .meal-edit-dish .meal-dish-actions{display:grid;grid-template-columns:1fr 1fr}.meal .meal-edit-dish .meal-dish-actions form{min-width:0;width:100%;margin:0}.meal .meal-edit-dish .meal-dish-actions .btn{width:100%;min-height:44px}.meal-extra-tile{gap:8px;padding:12px}}

.meal-extra-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:0 1 150px;min-height:74px;padding:12px;background:transparent;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:12px;margin:0;box-shadow:none}.meal-extra-add>i{font-size:20px}.extra-picker{width:440px;max-width:calc(100vw - 28px);max-height:80vh;overflow:auto;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-control)}.extra-picker::backdrop{background:#0005}.extra-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.extra-picker-heading h3{margin:0}.extra-picker .compact-extras{display:block}.extra-picker .compact-extra{margin:12px 0}.extra-picker .add-extra>summary{padding:10px 14px;font-size:14px}.meal-main-actions{border-top:1px solid var(--line);padding-top:14px;gap:8px}.meal-main-actions>.meal-editor{margin:0;border:0;padding:0}.meal-main-actions>details>summary{min-height:36px}.meal-main-actions>.meal-editor>summary{font-size:12px}.meal-main-actions>.meal-editor[open]{flex-basis:100%;width:100%}.meal-main-actions .meal-editor-content{padding-top:16px}.meal-main-actions>.meal-ingredients>summary{font-size:11px}

.meal-extra-add:hover,.meal-extra-add:active{background:var(--bg);color:var(--ink);border-color:var(--muted);box-shadow:none}.meal-extra-add:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.meal-main-actions>.meal-editor>summary{background:color-mix(in srgb,var(--blue) 12%,white);color:var(--blue)}.meal-main-actions>.meal-editor>summary:hover{background:color-mix(in srgb,var(--blue) 20%,white)}

.recipe-apply{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:14px}.recipe-apply legend{font-weight:650;font-size:14px}.recipe-apply input[type="date"]{width:100%;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none}

#add-ingredient{margin-top:16px;margin-bottom:8px}

.secondary-nutrients{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;color:var(--muted);margin:10px 0 16px}.secondary-nutrients b{font-weight:600}.nutrient-balance-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.nutrient-balance-values>div{padding:16px;border-radius:16px;background:var(--bg)}.nutrient-balance-values h3{margin:0 0 6px;font-size:15px}.nutrient-balance-values strong{font-size:20px}.nutrient-balance-values .help{margin-bottom:0}.nutrient-average-table p{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:13px}

.header-documents{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex:none;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:16px;text-decoration:none}.header-documents:hover{background:var(--accent-soft)}
.bottom-navigation{grid-template-columns:repeat(4,minmax(0,1fr));width:min(560px,calc(100% - 20px))}
@media(max-width:560px){.header-actions{gap:8px}.brand-logo{max-width:calc(100vw - 160px)}}

.training-dumbbell{display:inline-block;width:24px;height:24px;background:currentColor;mask:url(training-dumbbell.svg) center/contain no-repeat;-webkit-mask:url(training-dumbbell.svg) center/contain no-repeat;flex:none}.header-navigation .section-navigation .training-dumbbell{width:18px;height:18px}.bottom-navigation .training-dumbbell{width:24px;height:24px}

.profile-avatar-button{display:block;position:relative;width:112px;height:112px;margin:20px auto 24px;padding:0;border-radius:50%;background:var(--accent-soft);color:var(--primary);font-size:44px}.profile-avatar-button>img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.profile-avatar-button>span{position:absolute;right:0;bottom:0;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;background:var(--primary);color:white;font-size:15px;border:3px solid var(--card)}[data-avatar-dialog]{width:calc(100% - 40px);max-width:380px;border:1px solid var(--line);border-radius:22px;padding:24px;background:var(--card);color:var(--ink)}[data-avatar-dialog]::backdrop{background:#0009}[data-avatar-dialog] button{display:block;width:100%;margin:10px 0}[data-avatar-file][hidden]{display:none!important}

.exercise-category-badge{margin-left:8px}

.brand-logo,.settings-logo-preview{object-position:left center;background:transparent}

.development-switch{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:16px}.development-control{position:relative;display:block;width:50px;height:30px;flex:none}.development-control input{position:absolute;inset:0;opacity:0;margin:0;width:100%;height:100%;cursor:pointer;z-index:1}.development-track{display:block;width:50px;height:30px;border-radius:20px;background:var(--muted)}.development-track::after{content:"";display:block;width:24px;height:24px;position:absolute;top:3px;left:3px;border-radius:50%;background:white;transition:transform .2s}.development-control input:checked+.development-track{background:var(--primary)}.development-control input:checked+.development-track::after{transform:translateX(20px)}.development-control input:focus-visible+.development-track{outline:3px solid var(--blue);outline-offset:3px}

.exercise-heading>img,.superset-exercise-heading>img{cursor:zoom-in}.exercise-heading>img:focus-visible,.superset-exercise-heading>img:focus-visible{outline:3px solid var(--primary);outline-offset:4px}.exercise-photo-popup{width:min(760px,calc(100vw - 28px));max-height:calc(100dvh - 140px);padding:46px 14px 14px;border:1px solid var(--line);border-radius:22px;background:var(--card);color:var(--ink);overflow:auto;box-shadow:0 16px 80px #0008}.exercise-photo-popup::backdrop{background:#000c}.exercise-photo-popup>img{display:block;width:100%;height:auto;max-height:calc(100dvh - 245px);object-fit:contain;border-radius:12px}.exercise-photo-popup>p{margin:12px 0 0;text-align:center;color:var(--ink);font-size:14px}.exercise-photo-popup>.exercise-photo-close{position:absolute;right:10px;top:8px;display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;background:var(--bg);color:var(--ink);font-size:27px;line-height:1}

.catalog-actions,.exercise-catalog-actions{display:flex;align-items:center;gap:5px;flex-wrap:nowrap}.catalog-actions form,.exercise-catalog-actions form{display:inline-flex;margin:0}.catalog-actions>.btn,.catalog-actions>form .btn,.exercise-catalog-actions>.btn,.exercise-catalog-actions>form .btn{min-height:25px;padding:0 10px;border-radius:999px;font-size:13px;white-space:nowrap}.catalog article>.catalog-actions{grid-column:3 / -1;justify-self:end}.catalog article>.catalog-actions .action-icon{margin:0}

#product-list.catalog article{grid-template-columns:88px minmax(0,1fr);gap:12px 16px;align-items:start}#product-list.catalog .thumbnail{width:88px;height:88px;grid-row:1;border-radius:14px}#product-list.catalog .catalog-text{grid-row:1;grid-column:2}#product-list.catalog .catalog-text p{margin:6px 0}#product-list.catalog article>.catalog-actions{grid-column:1 / -1;grid-row:2;justify-self:start;gap:5px}#product-list.catalog .catalog-actions form{margin:0}@media(max-width:560px){#product-list.catalog article{grid-template-columns:72px minmax(0,1fr);gap:10px 12px}#product-list.catalog .thumbnail{width:72px;height:72px}}

:is(.meal-main-actions,.meal-extras-overview)>.meal-editor>summary.meal-add-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:150px;min-height:74px;padding:12px;border:1px dashed var(--line);border-radius:14px;background:transparent;color:var(--muted);font-size:12px;box-shadow:none}:is(.meal-main-actions,.meal-extras-overview)>.meal-editor>summary.meal-add-tile>i{font-size:20px}:is(.meal-main-actions,.meal-extras-overview)>.meal-editor>summary.meal-add-tile:hover,:is(.meal-main-actions,.meal-extras-overview)>.meal-editor>summary.meal-add-tile:active{background:var(--bg);color:var(--ink);border-color:var(--muted)}:is(.meal-main-actions,.meal-extras-overview)>.meal-editor>summary.meal-add-tile:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

.meal-extras-overview>.meal-editor{margin:0;border:0;padding:0;flex:0 1 150px}.meal-extras-overview>.meal-editor[open]{flex-basis:100%;width:100%}.meal-extras-overview>.meal-editor>.meal-editor-content{padding-top:16px}

.prepared-product-tag{white-space:normal;line-height:1.4}#product-list .prepared-product-tag{margin:6px 0}

.photo-edit-preview{width:112px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:0;background:var(--bg);color:var(--muted);border:1px dashed var(--line);border-radius:16px;overflow:hidden}.photo-edit-preview>img{display:block;width:100%;height:100%;object-fit:cover}.photo-edit-preview>i{font-size:26px}.photo-edit-preview>span{font-size:12px}.photo-edit-preview:hover{background:var(--bg);color:var(--ink)}.photo-edit-menu{width:min(360px,calc(100vw - 40px));padding:24px;border-radius:22px;border:1px solid var(--line);background:var(--card);color:var(--ink)}.photo-edit-menu::backdrop{background:#0009}.photo-edit-menu>button{display:block;width:100%;margin:10px 0}

.prepared-day-picker form>.btn{margin:8px 5px 0 0}

.meal-dish-tile>.thumbnail{width:44px;height:44px;object-fit:cover;border-radius:10px;flex:none}.meal-total-block{background:color-mix(in srgb,var(--blue) 12%,white);border-radius:18px;padding:14px 16px;margin:16px 0}.meal-total-block>h3{margin:0 0 12px;font-size:14px}.meal-total-block>.metrics{padding:0;margin:0;gap:0}.meal-total-block>.metrics>div{padding:3px 8px;border-right:1px solid color-mix(in srgb,var(--blue) 22%,white)}.meal-total-block>.metrics>div:last-child{border-right:0}.meal-total-block>.metrics strong{font-size:26px;line-height:1.15;margin-bottom:4px}.meal-total-block>.metrics span{font-size:11px;margin-top:4px}.meal-total-block>.secondary-nutrients{margin:12px 0 0}

.meal-dish-tile>.meal-dish-remove{display:flex;flex:none;margin:0;padding:0}

/* Platos completos arriba; cafés y postres en dos columnas debajo. */
.meal-extras-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}.meal-extras-overview>.meal-extra-tile,.meal-extras-overview>.meal-extra-add{width:100%;min-width:0;margin:0}.meal-extras-overview>.meal-dish-tile{grid-column:1 / -1}.meal-dish-tile strong{overflow-wrap:break-word;word-break:normal}.meal-extras-overview>[data-second-dish-open],.meal-extras-overview>[data-first-dish-open]{grid-column:1 / -1;display:flex;flex-direction:row;min-height:38px;padding:8px 12px;gap:8px;margin:4px 0}.meal-extras-overview>[data-second-dish-open]>i,.meal-extras-overview>[data-first-dish-open]>i{font-size:16px}.meal-extras-overview>.meal-editor{grid-column:1 / -1;width:100%;min-width:0}.meal-extras-overview>.meal-editor>summary.meal-add-tile{width:100%}

.meal>.skip-meal,.meal-extras-overview>.skip-meal{grid-column:1 / -1;width:100%;box-sizing:border-box;background:var(--blue-soft,#e7edff);border-radius:18px;padding:14px 16px;margin:12px 0}
.meal-extras-overview>.meal-editor .choose[data-dish-slot="0"]{border:0;margin:0;padding-top:0}
.meal-extras-overview>.meal-editor[open]>.meal-editor-content{padding:12px 0}

.meal-extras-overview>.meal-editor>summary[hidden]{display:none!important}
.meal-extras-overview>.meal-editor[open]{grid-column:1 / -1;width:100%;min-width:0}

.meal-extras-overview>.meal-editor.meal-first-picker-box,.meal-dish-picker-box{grid-column:1 / -1;border:1px dashed var(--line);border-radius:16px;overflow:hidden;padding:0;width:100%;box-sizing:border-box}
.meal-extras-overview>.meal-editor.meal-first-picker-box>summary.meal-add-tile{border:0;border-radius:0;box-sizing:border-box}
.meal-first-picker-box>.meal-editor-content,.meal-dish-picker-box>.meal-editor>.meal-editor-content{padding:0 16px 18px!important}
.meal-dish-picker-box>[data-second-dish-open],.meal-dish-picker-box>[data-first-dish-open]{width:100%;min-height:38px;box-sizing:border-box;display:flex;flex-direction:row;gap:8px;border:0;border-radius:0;margin:0;padding:12px}
.meal-dish-picker-box>.meal-editor{border:0;padding:0;margin:0;width:100%}
.meal-editor>summary[data-meal-editor-unused]{display:none!important}
.meal-dish-picker-box .second-meal-select>h3{display:none}

/* Mismo hover al añadir; cabeceras integradas cuando el selector está abierto. */
:root .meal-extra-add,:root .meal-extra-add:hover,:root .meal-extra-add:active{background:transparent}
:root .meal-extra-add:hover,:root .meal-extra-add:active{background:var(--bg);color:var(--ink);border-color:var(--muted)}
:root .meal-first-picker-box[open]>summary.meal-add-tile,:root .meal-first-picker-box[open]>summary.meal-add-tile:hover,:root .meal-first-picker-box[open]>summary.meal-add-tile:active{background:transparent!important;color:var(--muted)}
:root .meal-dish-picker-box.is-open>[data-second-dish-open],:root .meal-dish-picker-box.is-open>[data-second-dish-open]:hover,:root .meal-dish-picker-box.is-open>[data-second-dish-open]:active,:root .meal-dish-picker-box.is-open>[data-first-dish-open]{background:transparent!important;color:var(--muted)}
.meal-inline-selector>summary{display:none!important}

#personal .profile-expenditure{border-top:0}
.settings-page>.section-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;min-width:0;box-sizing:border-box;-webkit-overflow-scrolling:touch;gap:6px}
.settings-page>.section-tabs>button,.settings-page>.section-tabs>a{flex:0 0 auto;white-space:nowrap;min-width:max-content;display:flex;align-items:center;justify-content:center;gap:8px}

.settings-page>#security{margin-top:0}
#security>[data-face-settings],#security>[data-face-settings][hidden]+.appearance-colors,#appearance>.appearance-colors{border-top:0;margin-top:12px;padding-top:0}

#personal .profile-expenditure{margin-top:0;padding-top:0}
#personal .profile-expenditure>h3:first-child{margin-top:0}

.settings-save-divider{border:0;border-top:1px solid var(--line);margin:20px 0 16px}

.ingredient-category-tag{display:inline-flex;align-items:center;margin:4px 6px 6px 0;font-size:12px;font-weight:600;padding:4px 11px;border-radius:20px;color:var(--primary);background:var(--accent-soft)}

.pantry-view-switch{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 12px}

/* Personal selection only; catalog management remains in the catalog view. */
#product-list[data-pantry-view="mine"] .catalog-actions>.btn-edit,#product-list[data-pantry-view="mine"] .catalog-actions>form:not([data-pantry-membership]){display:none}

.pantry-view-switch{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;padding:4px;border-radius:18px;background:var(--dark-panel,var(--accent-soft));isolation:isolate}
.pantry-view-switch::before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--primary);border-radius:14px;z-index:-1;transition:transform .2s ease}
.pantry-view-switch[data-active="catalog"]::before{transform:translateX(100%)}
.pantry-view-switch button,.pantry-view-switch button:hover{display:flex;align-items:center;justify-content:center;gap:10px;margin:0;padding:12px 10px;background:transparent;border:0;box-shadow:none;color:var(--muted);font-size:13px;line-height:1.35}
.pantry-view-switch button[aria-pressed="true"]{color:white}
.pantry-view-switch button i{font-size:20px;flex:none}
@media(prefers-reduced-motion:reduce){.pantry-view-switch::before{transition:none}}
.birthday-greeting{position:fixed;width:calc(100% - 32px);max-width:390px;max-height:calc(100dvh - 40px);overflow:auto;margin:auto;padding:52px 28px 28px;border:1px solid var(--line);border-radius:30px;background:var(--card);color:var(--ink);text-align:center;box-shadow:0 20px 50px #0003}.birthday-greeting::backdrop{background:#0009;backdrop-filter:blur(5px)}.birthday-close,.birthday-close:hover{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;margin:0;border:0;border-radius:50%;background:transparent;color:var(--muted);box-shadow:none;font-size:20px}.birthday-emblem{display:grid;place-items:center;width:88px;height:88px;margin:10px auto 26px;background:var(--accent-soft);color:var(--primary);border-radius:28px;transform:rotate(-7deg)}.birthday-emblem i{font-size:40px;transform:rotate(7deg)}.birthday-greeting .birthday-kicker{color:var(--primary);font-size:11px;font-weight:750;letter-spacing:.16em;margin:0 0 14px}.birthday-greeting h2{font-size:32px!important;line-height:1.12;letter-spacing:-.04em;font-weight:750;margin:0 0 20px;color:var(--ink)}.birthday-greeting .birthday-message{font-size:15px;line-height:1.65;color:var(--muted);margin:0 0 30px}.birthday-continue{width:100%;padding:16px 18px;border:0;border-radius:18px;font:650 15px system-ui;background:var(--primary);color:white;position:relative}.birthday-greeting .birthday-signature{font-size:12px;color:var(--muted);margin:18px 0 0}.birthday-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:30px}.birthday-confetti span{position:absolute;top:-18px;width:6px;height:14px;border-radius:2px;background:var(--primary);opacity:.65;animation:birthday-fall 2.5s var(--delay) both ease-out}.birthday-confetti .confetti-soft{opacity:.3;width:8px;height:8px}@keyframes birthday-fall{from{transform:translate(0,-10px) rotate(0)}to{transform:translate(var(--drift),540px) rotate(var(--turn));opacity:0}}@media(prefers-reduced-motion:reduce){.birthday-confetti span{animation:none;top:45px;opacity:.3}.birthday-confetti span:nth-child(n+7){display:none}}

.birthday-greeting{inset:0;margin-top:max(calc(env(safe-area-inset-top,0px) + 20px),calc((100dvh - 540px)/2 - 48px));margin-bottom:auto;max-height:calc(100dvh - env(safe-area-inset-top,0px) - 40px)}
/* Revised app chrome, preserving the existing palette and functionality. */
body>header .header-caption{display:none}body>header>.brand{display:none}.balance-page>header>.brand{display:flex}.balance-page .brand-logo{width:38px!important;height:38px!important;min-width:0!important;object-fit:contain}
.header-user{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);min-width:0}.header-user img,.header-user-placeholder{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:none}.header-user-placeholder{display:grid;place-items:center;background:var(--accent-soft);color:var(--primary)}.header-user>span:last-child{display:flex;flex-direction:column;min-width:0}.header-user strong{font-size:14px;font-weight:650}.header-user small{font-size:11px;color:var(--muted)}body>header .header-actions{margin-left:auto;gap:8px;flex:none}.header-settings,.header-health-web{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--dark-panel,var(--accent-soft));color:var(--primary);text-decoration:none}body>header .header-documents{width:36px;height:36px;border-radius:12px}body>header:has([data-native-health-icon]) .header-health-web{display:none}
.header-navigation .section-navigation{gap:22px;padding-bottom:0;margin-bottom:16px}.header-navigation .section-navigation a,.header-navigation .section-navigation a[aria-current]{position:relative;background:transparent!important;color:var(--muted);border-radius:0;padding:12px 0;font-size:13px;box-shadow:none}.header-navigation .section-navigation a[aria-current]{color:var(--ink);border-bottom:2px solid var(--primary)}.header-navigation .section-navigation a>i{display:none}.header-navigation .header-glide::before{display:none}
.bottom-navigation{display:flex;max-width:550px!important;border-radius:40px;gap:4px;padding:7px;align-items:center}.bottom-navigation>a,.gym-mode .bottom-navigation>a{flex:1;flex-direction:row;justify-content:center;gap:9px;border-radius:30px;min-height:52px;padding:13px 12px}.bottom-navigation>a>span{display:none}.bottom-navigation>a[aria-current]{flex:1.7}.bottom-navigation>a[aria-current]>span{display:inline;font-size:12px}.bottom-navigation>a>i{font-size:22px;margin:0}.bottom-navigation::before{display:none}
@media(max-width:560px){body>header{gap:9px;padding-left:16px;padding-right:16px}.header-user{gap:8px}.header-user strong{font-size:12px}.header-user small{font-size:10px}.header-user img,.header-user-placeholder{width:30px;height:30px}body>header .header-actions{gap:5px}.header-settings,.header-health-web,body>header .header-documents{width:30px;height:34px;font-size:14px}.balance-page .brand-logo{width:28px!important;height:28px!important}.header-navigation .section-navigation{gap:20px}.bottom-navigation>a,.gym-mode .bottom-navigation>a{min-height:48px;padding:12px 8px;font-size:12px}.bottom-navigation>a>i{font-size:21px}.bottom-navigation>a[aria-current]>span{font-size:11px}}
@media(max-width:370px){.header-user small{max-width:98px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.balance-page>header>.brand{display:none}}
.activity-rings-layout{display:flex;align-items:center;gap:26px;margin:24px 0}.activity-rings-visual{width:160px;flex:0 0 160px}.activity-ring{border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--ring-color) var(--ring-percent),var(--dark-panel,var(--line)) 0)}.activity-ring-steps{width:160px;height:160px;--ring-color:var(--primary)}.activity-ring-kcal{width:132px;height:132px;border:6px solid var(--card);--ring-color:#E9AE47}.activity-ring-minutes{width:98px;height:98px;border:6px solid var(--card);--ring-color:var(--blue)}.activity-ring-center{width:64px;height:64px;border-radius:50%;background:var(--card);display:grid;place-items:center;color:var(--muted)}.activity-rings-values{flex:1;display:grid;gap:16px}.activity-ring-value{position:relative;padding-left:16px}.activity-ring-value::before{content:"";position:absolute;left:0;top:6px;width:8px;height:8px;border-radius:50%;background:var(--primary)}.activity-value-kcal::before{background:#E9AE47}.activity-value-minutes::before{background:var(--blue)}.activity-ring-value>span{display:block;font-size:12px;color:var(--muted)}.activity-ring-value strong{font-size:24px;display:block}.activity-ring-value small{font-size:12px;color:var(--muted);font-weight:400}@media(max-width:400px){.activity-rings-layout{gap:16px}.activity-rings-visual{width:130px;flex-basis:130px}.activity-ring-steps{width:130px;height:130px}.activity-ring-kcal{width:106px;height:106px}.activity-ring-minutes{width:76px;height:76px}.activity-ring-center{width:46px;height:46px}.activity-ring-value strong{font-size:20px}}

.bottom-navigation>a[aria-current],.gym-mode .bottom-navigation>a[aria-current]{background:var(--primary)!important;color:#fff!important}.activity-rings-visual>svg{display:block;width:100%;height:auto}
/* Comfortable header touch targets on iPhone. */
body>header .header-actions>a,body>header [data-native-health-icon]{width:44px!important;height:44px!important;min-width:44px;min-height:44px;font-size:20px!important;display:flex!important;align-items:center;justify-content:center;flex:none}
.header-user img,.header-user-placeholder{width:40px;height:40px}.header-user strong{font-size:16px}.header-user small{font-size:12px}
@media(max-width:560px){body>header{height:auto;min-height:88px;gap:8px;padding-top:12px;padding-bottom:12px}.balance-page>header>.brand{display:none}.header-user{gap:9px;flex:1;min-width:0}.header-user img,.header-user-placeholder{width:38px;height:38px}.header-user strong{font-size:15px}.header-user small{font-size:11px;max-width:none;white-space:normal;line-height:1.35}.header-user>span:last-child{min-width:0}.header-actions{gap:4px!important}body>header .header-actions>a,body>header [data-native-health-icon]{width:44px!important;height:44px!important;font-size:20px!important}}
body>header:has([data-native-health-icon]) .header-actions>.header-health-web{display:none!important}

.weight-latest{display:flex;flex-direction:column;gap:3px;margin:18px 0}.weight-latest strong{font-size:32px;line-height:1.2}.weight-latest strong small{font-size:15px;color:var(--muted);font-weight:400}.weight-latest>span{font-size:12px;color:var(--muted)}.weight-evolution .weight-period-navigation{background:transparent;padding:8px 0;font-size:12px;color:var(--muted)}.weight-evolution .weight-chart{margin:18px 0}.weight-filter-details{margin-top:20px}.weight-filter-details>summary{color:var(--muted);font-size:13px}

body>header [data-native-health-icon]{border-radius:12px!important}

.balance-page>header>.brand{display:none!important}.page-title-with-logo{display:flex;align-items:center;gap:14px}.page-title-with-logo .page-title-logo{width:44px;height:44px;object-fit:contain;flex:0 0 44px}.page-title-with-logo>span{min-width:0}@media(max-width:560px){.page-title-with-logo{gap:10px}.page-title-with-logo .page-title-logo{width:34px;height:34px;flex-basis:34px}}

body>header .header-user img,body>header .header-user-placeholder{width:64px;height:64px;flex:0 0 64px}
.planning-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.planning-day{border:1px solid var(--line);border-radius:16px;padding:14px;margin:12px 0}.planning-day summary{font-weight:650;margin-bottom:12px}.planning-days{margin:20px 0}.shopping-item{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:10px 20px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}.shopping-check{display:flex;gap:14px;align-items:center;margin:0}.shopping-check input{width:24px;height:24px;min-height:24px;flex:none;accent-color:var(--primary)}.shopping-check small{display:block;color:var(--muted);margin-top:4px}.shopping-price{font-size:11px;margin:0}.shopping-price input{margin-top:4px}.shopping-item [data-shopping-status]{grid-column:1/-1;font-size:11px;margin:0}.shopping-bought .shopping-check strong{text-decoration:line-through;color:var(--muted)}@media(max-width:440px){.shopping-item{grid-template-columns:minmax(0,1fr) 100px;gap:10px}.shopping-price input{padding:9px}.planning-tabs .btn{font-size:12px}}

.shopping-summary{position:sticky;top:var(--native-safe-top,env(safe-area-inset-top,0px));z-index:20;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--bg);padding:12px 0 16px;margin:18px 0 0;font-variant-numeric:tabular-nums}.shopping-summary span,.shopping-summary small{display:block;color:var(--muted);font-size:12px}.shopping-summary strong{display:block;font-size:28px;line-height:1.3;color:var(--ink)}.shopping-summary-count{text-align:right}.shopping-summary small{font-size:11px}.shopping-summary::before{content:"";position:absolute;left:50%;transform:translateX(-50%);width:100vw;top:calc(-1 * var(--native-safe-top,env(safe-area-inset-top,0px)));bottom:0;background:var(--bg);z-index:-1;display:none}.shopping-summary-pinned::before{display:block}
