/* Gemma 2.0 visual system.
   Shared responsive shell first; module-specific composition follows below. */
:root{
  --content-width:1120px;
  --content-gutter:clamp(12px,3.2vw,42px);
  --surface-raised:color-mix(in srgb,var(--surface) 98%,var(--lavender));
  --shadow-soft:0 10px 32px rgba(66,48,94,.075);
  --shadow-float:0 20px 52px rgba(66,48,94,.14);
}
[hidden]{display:none!important}
html{font-size:16px}
body{font-size:.95rem;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.topbar{max-width:calc(var(--content-width) + 2 * var(--content-gutter));height:64px;padding-inline:var(--content-gutter)}
.app-content{width:min(calc(100% - 2 * var(--content-gutter)),var(--content-width));padding:clamp(16px,3vw,30px) 0 34px}
.app-legal-footer{width:min(calc(100% - 2 * var(--content-gutter)),var(--content-width));margin-inline:auto}
.card{border-radius:var(--radius-lg);padding:clamp(17px,2.4vw,26px);box-shadow:var(--shadow-soft)}
.page-heading,.hero{margin:8px 0 clamp(20px,4vw,30px)}
.page-heading h1,.hero h1{max-width:20ch;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.06;letter-spacing:-.045em}
.page-heading p,.hero p{max-width:58ch;font-size:clamp(.9rem,2vw,1rem)}
.section-heading{margin:clamp(24px,4vw,34px) 0 12px}
.section-heading h2{font-size:clamp(1.08rem,2vw,1.3rem)}
.button{border-radius:13px}.button:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;filter:saturate(.55)}.button-primary{box-shadow:0 8px 20px color-mix(in srgb,var(--accent-strong) 24%,transparent)}
.bottom-nav{width:min(calc(100% - 16px),820px);bottom:8px;border:1px solid color-mix(in srgb,var(--border) 78%,transparent);border-radius:22px;padding:5px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 10px 35px rgba(47,32,49,.14)}
.bottom-nav a{min-height:56px;border-radius:14px;transition:background .16s ease,color .16s ease,transform .16s ease}.bottom-nav a.active{background:linear-gradient(145deg,var(--lavender),color-mix(in srgb,var(--dusty-pink) 55%,var(--lavender)));color:var(--accent-strong)}
.nutrition-tabs,.training-tabs,.progress-tabs{gap:4px;padding:4px;border-radius:15px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 5px 18px rgba(55,39,57,.04)}
.nutrition-tabs a,.training-tabs a,.progress-tabs a{border-radius:11px}.nutrition-tabs a.active,.training-tabs a.active,.progress-tabs a.active{background:linear-gradient(145deg,var(--lavender),color-mix(in srgb,var(--dusty-pink) 40%,var(--lavender)));color:var(--accent-strong)}
.dashboard-grid,.progress-summary-grid{gap:12px}.dashboard-primary,.progress-hero{background:linear-gradient(145deg,color-mix(in srgb,var(--lavender) 75%,var(--surface)),color-mix(in srgb,var(--dusty-pink) 32%,var(--surface)))}
.today-agenda,.training-week,.stack-list{gap:10px}.today-agenda-item,.training-day,.list-row,.menu-card{transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.today-agenda-item:hover,.training-day:hover,.list-row:hover,.menu-card:hover{border-color:color-mix(in srgb,var(--accent) 32%,var(--border));box-shadow:var(--shadow-hover)}
.today-quick-action{min-height:108px;border-radius:17px}.today-training,.today-habits,.today-wellness{margin-block:14px}
.settings-grid{display:grid;gap:10px}.settings-grid .menu-card{margin:0}.menu-card a{min-height:78px}.menu-copy{min-width:0}.menu-copy small{line-height:1.35}.menu-chevron{flex:none}

/* Shared premium components across every existing module. */
.soft-icon{color:var(--accent-strong)}
.status-pill,.status{gap:.3rem}
.notice{border:1px solid color-mix(in srgb,var(--peach) 55%,var(--border))}
.alert{border:1px solid color-mix(in srgb,currentColor 13%,transparent)}
.empty-inline{min-height:78px}.empty-inline .soft-icon{width:42px;height:42px}
.metric-grid>div,.dashboard-metric,.analytics-stat,.progress-stat{background:linear-gradient(145deg,var(--surface),var(--surface-soft));border-color:color-mix(in srgb,var(--accent) 12%,var(--border))}
.metric-grid strong,.dashboard-metric strong,.analytics-stat strong,.progress-stat strong{color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.chart-wrap{border-radius:18px;background:linear-gradient(180deg,var(--surface-soft),transparent)}
.back-link{gap:.4rem;font-weight:760;color:var(--accent-strong)}
.form-card,.wellness-form-card,.care-form-card,.progress-form-card{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 16%,var(--surface)))}
.stack-list .list-row,.health-record,.care-list-row{background:var(--surface)}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent)}
select,button,input,textarea{accent-color:var(--accent)}
.settings-section{margin-top:26px}.settings-section>.section-heading{margin-bottom:10px}.settings-section>.section-heading h2{font-size:.98rem;color:var(--muted)}
.ux-search{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.ux-search .icon-only{width:48px;height:48px}
.ux-search input[type="search"]::-webkit-search-cancel-button{display:none}
form[aria-busy="true"]{pointer-events:none}.button.is-loading{position:relative;color:transparent!important;cursor:wait}.button.is-loading::after{content:"Procesando…";position:absolute;inset:0;display:grid;place-items:center;color:var(--text);font-size:.8rem}.button-primary.is-loading::after{color:#fff}
.danger-zone .button-ghost,.inline-delete .button-ghost{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 22%,var(--border))}

/* Hoy: centro de control diario, con lectura progresiva y datos reales. */
.today-control{display:grid;gap:18px}.today-control-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:6px 2px 0}.today-control-header h1{margin:5px 0 7px;max-width:18ch;font-size:clamp(2rem,5vw,3.15rem);line-height:1;letter-spacing:-.05em}.today-control-header p{margin:0;color:var(--muted);font-size:clamp(.92rem,2vw,1.04rem)}.today-profile-link{display:flex;align-items:center;gap:7px;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font-weight:750;text-decoration:none}.today-profile-link svg{width:18px;height:18px}
.today-overview{display:grid;gap:18px;border-color:color-mix(in srgb,var(--accent) 18%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--lavender) 76%,var(--surface)),color-mix(in srgb,var(--dusty-pink) 27%,var(--surface)))}.today-overview-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.today-overview-heading h2{margin:4px 0 0;font-size:clamp(1.3rem,3vw,1.75rem)}.today-overview-heading p{max-width:42ch;margin:0;color:var(--muted);text-align:right}.today-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.today-overview-grid>a{display:flex;align-items:center;gap:10px;min-width:0;min-height:76px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--surface) 84%,transparent);color:var(--text);text-decoration:none}.today-overview-grid .soft-icon{flex:none;width:38px;height:38px;margin:0}.today-overview-grid>a>span:last-child{display:grid;min-width:0}.today-overview-grid strong{overflow:hidden;font-size:1.12rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.today-overview-grid small{color:var(--muted)}
.today-quick .section-heading{margin:4px 0 10px}.today-control .today-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.today-quick-action{min-height:94px;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px;padding:12px;border-radius:17px}.today-quick-action>span:last-child,.today-quick-form button>span:last-child{display:grid}.today-quick-action small,.today-quick-form small{color:var(--muted);font-size:.7rem;line-height:1.2}.today-quick-form{margin:0}.today-quick-form button{width:100%;display:flex;align-items:flex-start;flex-direction:column;gap:10px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.today-action-primary{border-color:color-mix(in srgb,var(--accent) 26%,var(--border));background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 55%,var(--surface)))}
.today-dashboard-grid{display:grid;gap:14px}.today-dashboard-grid>.card{margin:0}.today-dashboard-grid .section-heading{margin:0 0 16px}.today-dashboard-grid .section-heading .soft-icon{flex:none;margin:0}.today-nutrition-panel{background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--lavender) 25%,var(--surface)))}.today-calorie-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.today-calorie-row>div{display:flex;align-items:baseline;gap:7px}.today-calorie-row>div strong,.today-water-total strong{font-size:clamp(2.25rem,7vw,3.5rem);line-height:1;letter-spacing:-.055em}.today-calorie-row>div span,.today-water-total span{color:var(--muted)}.today-progress{height:9px;margin:14px 0}.today-macro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.today-macro-grid>div{display:grid;gap:2px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 11%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--surface) 82%,transparent)}.today-macro-grid small,.today-macro-grid span{color:var(--muted);font-size:.7rem}.today-macro-grid strong{font-size:1.02rem}.today-macro-grid .progress-track{height:5px;margin:6px 0 0}.today-macro-grid .progress-track i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.today-inline-empty{display:flex;align-items:center;gap:11px;margin-top:14px;padding:12px;border-radius:14px;background:color-mix(in srgb,var(--peach) 62%,var(--surface))}.today-inline-empty .soft-icon{flex:none;width:39px;height:39px;margin:0}.today-inline-empty>span:last-child{display:grid}.today-inline-empty small{color:var(--muted)}.today-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.today-card-actions .button{flex:1}.today-plan-link{display:grid;gap:3px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);color:var(--text);text-decoration:none}.today-plan-link>span{display:flex;align-items:center;gap:7px}.today-plan-link svg{width:17px;height:17px;color:var(--accent)}.today-plan-link small,.today-context-note{color:var(--muted);font-size:.76rem}.today-context-note{margin:11px 0 0}
.today-water-panel{align-content:start;background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--sage) 30%,var(--surface)))}.today-water-total{display:flex;align-items:baseline;gap:7px;margin:8px 0}.today-water-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:16px}.today-water-actions form{margin:0}.today-water-actions .button{width:100%;padding-inline:5px}.today-detail-link{justify-content:flex-end;gap:4px;margin-top:14px}.today-detail-link svg{width:16px;height:16px}
.today-movement-panel,.today-care-panel{align-content:start}.today-movement-stats,.today-care-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.today-movement-stats>div,.today-care-summary>span{display:grid;gap:2px;padding:11px;border-radius:14px;background:var(--bg)}.today-movement-stats strong,.today-care-summary strong{font-size:1.08rem}.today-movement-stats small,.today-care-summary small{color:var(--muted);font-size:.7rem}.today-schedule{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px;border-radius:14px;background:color-mix(in srgb,var(--sage) 58%,var(--surface))}.today-schedule>span{display:grid;place-items:center}.today-schedule>div{display:grid}.today-schedule small{color:var(--muted)}.today-imported{display:flex;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 0;color:var(--text);text-decoration:none}.today-imported span{color:var(--muted)}.today-care-summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.today-care-panel .habit-checklist{margin-top:13px}
.today-agenda-panel{grid-column:1/-1}.today-agenda-panel .section-heading{margin:8px 0 10px}.today-section-links{display:flex;align-items:center;gap:12px}.today-processor-inline{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:9px 11px;border-radius:12px;background:var(--peach);color:var(--text);font-size:.76rem;text-decoration:none}.today-processor-inline svg{flex:none;width:16px;height:16px}.today-agenda-empty{margin:0}.today-progress-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;color:var(--text);text-decoration:none}.today-progress-link .soft-icon{margin:0}.today-progress-link>span:nth-child(2){display:grid}.today-progress-link small{color:var(--muted)}

@media(min-width:760px){.today-dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.today-nutrition-panel{grid-column:span 7}.today-water-panel{grid-column:span 5}.today-movement-panel{grid-column:span 5}.today-care-panel{grid-column:span 7}.today-agenda-panel{grid-column:1/-1}.today-quick-action{min-height:102px}}

/* Cuidado personal: navegación simple y áreas unificadas */
.care-heading{max-width:760px}
.care-heading p{max-width:62ch}
.care-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;overflow:visible}
.care-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;text-align:center;white-space:normal;border-radius:13px}
.care-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.care-module-card{display:grid;align-content:start;gap:8px;min-height:150px;padding:20px;text-decoration:none;color:var(--text);transition:transform .18s ease,box-shadow .18s ease}
.care-module-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.care-module-card strong{font-size:1.02rem}
.care-module-card small{line-height:1.45;color:var(--muted)}
.care-form-card{padding:clamp(18px,4vw,28px)}
.care-form-card form{display:grid;gap:16px}
.care-form-card label{display:grid;gap:7px}
.care-form-card label.toggle-row{display:flex;align-items:center;gap:10px;width:fit-content;min-height:42px;margin:0;padding:9px 12px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--lavender) 24%,var(--surface));font-weight:750;cursor:pointer}
.care-form-card label.toggle-row input[type=checkbox]{box-sizing:border-box;flex:0 0 21px;width:21px;height:21px;margin:0;padding:0;accent-color:var(--accent)}
.care-form-card label.toggle-row:has(input:checked){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--lavender);color:var(--accent-strong)}
.care-product-grid,.care-routine-list,.care-timeline{gap:14px}
.care-reminder-card{display:none}
@media(min-width:760px){.care-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}.care-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:420px){.care-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.care-module-grid{grid-template-columns:1fr}.care-module-card{min-height:0}.care-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Laboratorios: importación privada desde PDF y tendencias */
.lab-import-card{display:grid;gap:18px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--sage) 24%,var(--surface)))}
.lab-import-heading{display:flex;align-items:flex-start;gap:14px}.lab-import-heading .soft-icon{flex:0 0 auto;margin:0}.lab-import-heading h2{margin:3px 0 5px}.lab-import-heading p{margin:0;color:var(--muted);max-width:62ch}
.lab-import-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.lab-import-upload label{display:grid;gap:7px;font-weight:750}.lab-import-upload label small{color:var(--muted);font-weight:500}.lab-import-upload input[type=file]{min-height:48px;padding:9px;border:1px dashed var(--border);border-radius:13px;background:var(--surface);font:inherit}.lab-import-upload input::file-selector-button{margin-right:10px;padding:8px 12px;border:0;border-radius:9px;background:var(--lavender);color:var(--accent-strong);font:inherit;font-weight:750}
.lab-preview-card{border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}.lab-preview-card .notice{margin:15px 0}.lab-preview-form{display:grid;gap:16px}.lab-preview-table{overflow:auto;border:1px solid var(--border);border-radius:15px;background:var(--surface)}.lab-preview-row{display:grid;grid-template-columns:minmax(190px,1.45fr) minmax(105px,.65fr) minmax(105px,.7fr) minmax(180px,1fr);gap:8px;min-width:720px;padding:9px 11px;border-bottom:1px solid var(--border)}.lab-preview-row:last-child{border-bottom:0}.lab-preview-row label{display:grid;gap:5px}.lab-preview-row label>span{display:none}.lab-preview-row input{width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--bg);font:inherit}.lab-preview-header{color:var(--muted);font-size:.76rem;font-weight:800;background:var(--bg)}.lab-import-cancel{margin-top:8px}.lab-trends-section{margin-top:18px}.lab-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lab-trend-card{display:grid;gap:12px}.lab-trend-card>div:first-child{display:flex;justify-content:space-between;gap:12px}.lab-trend-card>div:first-child span,.lab-trend-card small{color:var(--muted)}.lab-trend-card p{display:grid;gap:2px;margin:0}.lab-trend-card p b{font-size:1.4rem}.lab-trend-card p small{font-size:.74rem}.lab-trend-change{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:var(--lavender)}
@media(max-width:640px){.lab-import-upload{grid-template-columns:1fr}.lab-import-upload .button{width:100%}.lab-trend-grid{grid-template-columns:1fr}.lab-preview-header{display:none}.lab-preview-row{min-width:0;grid-template-columns:1fr 1fr}.lab-preview-row label>span{display:block;color:var(--muted);font-size:.7rem;font-weight:700}}
.lab-manual-entry-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;background:color-mix(in srgb,var(--lavender) 34%,var(--surface))}.lab-manual-entry-card h2{margin:3px 0 5px}.lab-manual-entry-card p{margin:0;color:var(--muted)}
.manual-lab-heading{display:grid;gap:7px;margin:4px 0 18px}.manual-lab-heading h2{margin:0;font-size:clamp(1.55rem,4vw,2.15rem)}.manual-lab-heading p{margin:0;max-width:68ch}.manual-lab-form{display:grid;gap:24px}.manual-lab-form>section{display:grid;gap:15px}.manual-lab-form .section-heading{margin:0}.manual-lab-form .section-heading>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px 10px}.manual-lab-form .section-heading p{grid-column:2;margin:0;color:var(--muted)}.step-badge{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--lavender);color:var(--accent-strong);font-weight:850}.manual-lab-results{display:grid;gap:12px}.manual-lab-result{display:grid;grid-template-columns:minmax(180px,1.35fr) minmax(110px,.7fr) minmax(110px,.7fr) minmax(160px,1fr);gap:12px;margin:0;padding:14px;border:1px solid var(--border);border-radius:15px;background:var(--bg)}.manual-lab-result legend{padding:0 6px;color:var(--accent-strong);font-size:.78rem;font-weight:850}.manual-lab-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px;border-top:1px solid var(--border)}
.manual-lab-add{justify-self:start}.manual-lab-remove{grid-column:1/-1;justify-self:end}
@media(max-width:720px){.lab-manual-entry-card{align-items:stretch;flex-direction:column}.lab-manual-entry-card .button{width:100%}.manual-lab-result{grid-template-columns:1fr 1fr}.manual-lab-actions{flex-direction:column-reverse}.manual-lab-actions .button{width:100%}}
@media(max-width:420px){.manual-lab-result{grid-template-columns:1fr}.manual-lab-form .section-heading>div{grid-template-columns:auto 1fr}}
@media(max-width:759px){.today-control{gap:15px}.today-control-header{margin-top:2px}.today-overview-heading{align-items:flex-start;flex-direction:column;gap:5px}.today-overview-heading p{text-align:left}.today-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-control .today-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.today-quick-action{min-height:100px}.today-profile-link span{display:none}.today-profile-link{width:44px;justify-content:center;padding:8px}.today-card-actions .button{min-width:calc(50% - 4px)}}
@media(max-width:430px){.today-control-header h1{font-size:clamp(1.95rem,10vw,2.45rem)}.today-overview{padding:16px}.today-overview-grid>a{min-height:68px;padding:9px}.today-overview-grid .soft-icon{width:34px;height:34px}.today-overview-grid strong{font-size:.98rem}.today-control .today-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-quick-action:last-child{grid-column:1/-1;min-height:76px;flex-direction:row;align-items:center}.today-macro-grid{grid-template-columns:1fr}.today-macro-grid>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.today-macro-grid>div>span{grid-column:1}.today-macro-grid .progress-track{grid-column:1/-1}.today-calorie-row{align-items:flex-start;flex-direction:column}.today-card-actions{display:grid}.today-card-actions .button{width:100%}}

@media(hover:hover){
  .button:not(:disabled):hover{transform:translateY(-1px)}
  .card[href]:hover,.quick-card:hover,.today-quick-action:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media(max-width:480px){.ux-search{grid-template-columns:minmax(0,1fr) auto}.ux-search>.button-primary{grid-column:1/-1;width:100%}.settings-section{margin-top:22px}}

/* Progress: calm, legible tracking with measured data kept distinct from estimates. */
.progress-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.progress-heading>div{max-width:720px}.progress-heading .button{flex:0 0 auto}
.progress-settings summary{display:flex;flex-direction:column;gap:3px;cursor:pointer}.progress-settings summary span{color:var(--muted);font-size:.88rem;font-weight:400}.progress-settings form{display:grid;gap:18px;margin-top:20px}.progress-preference-grid,.composition-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.progress-metric-choices{display:flex;flex-wrap:wrap;gap:10px 18px;border:0;padding:0}.progress-metric-choices legend{width:100%;margin-bottom:8px;font-weight:700}.progress-metric-choices label{display:flex;align-items:center;gap:8px}
.compact-field{min-width:180px}.progress-comparison form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:12px}.comparison-dates{display:flex;justify-content:center;gap:12px;margin-top:18px;color:var(--muted);font-weight:700}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.comparison-grid article{display:flex;flex-direction:column;gap:5px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--lavender) 22%,var(--surface))}.comparison-grid strong{font-size:1.12rem}.comparison-grid span,.comparison-grid small{color:var(--muted)}
.composition-edit{margin:18px 0;padding:15px;border:1px solid var(--border);border-radius:var(--radius-md)}.composition-edit summary{cursor:pointer;font-weight:700}.composition-edit .composition-form-grid{margin-top:15px}.composition-measurement-list{display:grid;gap:12px}.composition-measurement-list article{display:grid;grid-template-columns:minmax(120px,.65fr) minmax(0,2fr) auto;gap:18px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md)}.composition-measurement-list article>div{display:flex;flex-direction:column;gap:4px}.composition-measurement-list article>div small{color:var(--muted)}.composition-measurement-list dl{display:flex;flex-wrap:wrap;gap:12px 22px;margin:0}.composition-measurement-list dl div{display:flex;flex-direction:column}.composition-measurement-list dt{color:var(--muted);font-size:.78rem}.composition-measurement-list dd{margin:3px 0 0;font-weight:750}.composition-measurement-list dd small{display:block;color:var(--muted);font-weight:400}
@media(max-width:640px){.progress-heading{align-items:stretch;flex-direction:column}.progress-heading .button{width:100%}.progress-preference-grid,.composition-form-grid,.progress-comparison form,.comparison-grid{grid-template-columns:1fr}.progress-comparison form .button{width:100%}.composition-measurement-list article{grid-template-columns:1fr}.composition-measurement-list article .button{width:100%}.progress-chart-card .section-heading{align-items:stretch;flex-direction:column}.compact-field{min-width:0}}

/* Tablet composition: information expands into useful columns, never a stretched phone. */
@media(min-width:760px){
  .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .settings-grid .menu-card a{min-height:98px}
  .dashboard-grid{grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(150px,.7fr))}
  .today-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .health-card-list,.wellness-summary-grid,.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid,.health-form-grid,.wellness-form-grid,.care-form-grid{column-gap:18px}
}

/* Desktop app shell: the same navigation becomes a calm, native-feeling side rail. */
@media(min-width:1100px){
  :root{--bottom-nav-clearance:34px;--content-gutter:clamp(34px,4vw,64px)}
  body:not(.guest-page){padding-left:244px;padding-bottom:0}
  .topbar{position:fixed;inset:0 auto 0 0;z-index:31;width:244px;max-width:none;height:100dvh;display:flex;align-items:stretch;flex-direction:column;padding:26px 22px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(20px)}
  .topbar .brand{align-self:flex-start;font-size:1.25rem}
  .topbar-actions{margin-top:auto;padding-top:18px;border-top:1px solid var(--border)}
  .notification-bell,.avatar{border-radius:14px}.avatar{margin-left:auto}
  .bottom-nav{inset:88px auto auto 16px;z-index:32;width:212px;min-height:0;display:grid;grid-template-columns:1fr;gap:6px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;transform:none}
  .bottom-nav a{min-height:52px;display:grid;grid-template-columns:30px minmax(0,1fr);justify-items:start;justify-content:stretch;gap:10px;padding:10px 14px;border-radius:15px;font-size:1.15rem}
  .bottom-nav a small{font-size:.84rem;font-weight:720}
  .bottom-nav a.active{background:linear-gradient(135deg,var(--lavender),color-mix(in srgb,var(--dusty-pink) 50%,var(--surface)));box-shadow:0 8px 20px rgba(95,71,143,.09)}
  .app-content{width:min(calc(100% - 2 * var(--content-gutter)),var(--content-width));min-height:calc(100dvh - 70px);padding:38px 0 48px}
  .app-legal-footer{width:min(calc(100% - 2 * var(--content-gutter)),var(--content-width));padding-bottom:24px}
  .page-heading,.hero{margin-top:0}
  .app-content:has(.today-hero){display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:16px;align-items:start}
  .app-content:has(.today-hero)>*{grid-column:1/-1;min-width:0}
  .app-content:has(.today-hero)>.today-habits{grid-column:1/8;height:100%}
  .app-content:has(.today-hero)>.today-training{grid-column:8/-1;height:100%;align-content:center;margin-block:14px}
  .settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .settings-grid .menu-card a{min-height:112px;align-items:flex-start}
  .quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .today-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .health-card-list,.wellness-summary-grid,.analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .progress-summary-grid{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,.65fr))}
  .progress-hero{grid-row:auto}
}

/* Daily nutrition keeps the action visually dominant. */
.diary-summary{border-color:color-mix(in srgb,var(--accent) 14%,var(--border));background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 34%,var(--surface)))}
.diary-primary-actions{margin:14px 0 24px}.diary-primary-actions .button-primary{min-height:52px}.diary-meal-card{border-radius:18px}.diary-fab{border:3px solid var(--surface)}
.diary-meals{display:grid;gap:10px}.diary-meal-empty{padding-block:14px;background:color-mix(in srgb,var(--surface) 88%,var(--lavender))}.diary-meal-empty .meal-card-head{align-items:center}.diary-meal-empty .meal-card-head span{color:var(--muted)}.diary-meal-empty .button{flex:none}.diary-empty{margin-bottom:2px;padding-block:20px}.meal-suggestion{display:block;max-width:44ch;margin-top:5px;color:var(--muted)}

/* One-page meal logger. */
.app-content:has(.quick-log){width:min(calc(100% - 2 * var(--content-gutter)),980px)}
.quick-log{display:grid;gap:14px;padding-bottom:20px}
.quick-log-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:6px 0 2px}
.quick-log-header h1{margin:4px 0 6px;font-size:clamp(2rem,6vw,2.75rem);line-height:1.05;letter-spacing:-.045em}
.quick-log-header p{max-width:54ch;margin:0;color:var(--muted)}
.meal-context{display:grid;gap:16px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 30%,var(--surface)))}
.meal-context-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.meal-context-heading h2{margin-top:4px}.meal-context-heading label{display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:750}.meal-context-heading input{min-height:42px;border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:7px 10px}
.meal-type-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;scrollbar-width:none}.meal-type-picker::-webkit-scrollbar{display:none}.meal-type-picker label{position:relative;cursor:pointer}.meal-type-picker input{position:absolute;opacity:0}.meal-type-picker span{min-height:46px;display:grid;place-items:center;padding:8px;border:1px solid var(--border);border-radius:13px;background:var(--surface);font-weight:720;text-align:center}.meal-type-picker input:checked+span{border-color:var(--accent);background:var(--accent);color:var(--surface);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 20%,transparent)}.meal-type-picker input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.meal-source-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--lavender) 38%,var(--bg))}.meal-source-switch button{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:8px 13px;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;cursor:pointer}.meal-source-switch button>.gemma-icon{width:22px;height:22px}.meal-source-switch button>span{display:grid;gap:1px;min-width:0;text-align:left}.meal-source-switch button strong{color:var(--text);font-size:.9rem}.meal-source-switch button small{font-size:.72rem;font-weight:600}.meal-source-switch button[aria-selected="true"]{background:var(--surface);color:var(--accent);box-shadow:0 5px 16px rgba(66,45,69,.1)}.meal-source-switch button[aria-selected="true"] strong{color:var(--accent)}
.quick-log:not(.is-recipe-mode) [data-recipe-workflow],.quick-log.is-recipe-mode [data-food-workflow]{display:none!important}
.quick-picks{min-width:0}.quick-pick-shelf{display:flex;gap:9px;overflow-x:auto;padding:2px 1px 8px;scroll-snap-type:x proximity}.quick-pick-card{flex:0 0 min(245px,78vw);display:grid;gap:6px;padding:14px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow-soft);scroll-snap-align:start}.quick-pick-card small{min-height:2.4em;color:var(--muted)}.quick-pick-kind{justify-self:start;padding:3px 7px;border-radius:999px;background:var(--lavender);color:var(--accent);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.quick-log-workspace{min-width:0}.quick-log-title,.list-heading,.basket-heading,.recipe-selection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.quick-log-title h2{margin:4px 0}.quick-log-title p{margin:0;color:var(--muted)}
.unified-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:18px 0 12px;padding:6px 7px 6px 13px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:16px;background:var(--bg)}.unified-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.unified-search input{min-width:0;min-height:42px;border:0;outline:0;background:transparent}.unified-results{display:grid;gap:4px;max-height:340px;overflow:auto;margin:-4px 0 14px;padding:7px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow-float)}.unified-result{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:10px 11px;border:0;border-radius:11px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.unified-result:hover,.unified-result:focus-visible{background:var(--lavender)}.unified-result>span{display:grid}.unified-result small{color:var(--muted)}.unified-result b{color:var(--accent);font-size:.78rem}.result-heading{padding:7px 10px 2px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.quick-food-groups{display:grid;gap:12px}.quick-food-groups h3,.recipe-quick-list h3{margin:0 0 7px;font-size:.88rem}.food-chips{padding-bottom:3px}.food-chips button{display:flex;align-items:center;gap:7px;min-height:40px;background:var(--surface)}.food-chips button span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--lavender);color:var(--accent);font-size:1rem}
.recipe-quick-list{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.list-heading a{font-size:.8rem;font-weight:750}.recipe-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recipe-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:74px;padding:10px;border:1px solid var(--border);border-radius:15px;background:var(--bg);color:var(--text);text-align:left;cursor:pointer}.recipe-option:hover,.recipe-option:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--lavender) 35%,var(--surface))}.recipe-option .soft-icon{width:38px;height:38px;margin:0}.recipe-option>span:nth-child(2){display:grid;min-width:0}.recipe-option strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-option small{color:var(--muted)}.recipe-option>b{color:var(--accent);font-size:1.2rem}
.recipe-browser{min-width:0}.recipe-browser .unified-search{margin-top:14px}.recipe-browser-empty{display:grid;place-items:center;gap:7px;min-height:150px;padding:22px;color:var(--muted);text-align:center}.recipe-browser-empty .soft-icon{margin:0}.recipe-browser-empty strong{color:var(--text)}
.recipe-ingredient-builder{margin-block:22px}.recipe-ingredient-search{margin-bottom:8px}.recipe-ingredient-list{display:grid;gap:10px}.recipe-ingredient-card{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:15px;background:var(--bg)}.recipe-ingredient-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.recipe-ingredient-main,.recipe-ingredient-details{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recipe-ingredient-main label,.recipe-ingredient-details label{display:grid;gap:4px;color:var(--muted);font-size:.75rem;font-weight:750}.recipe-ingredient-card input,.recipe-ingredient-card select{width:100%;min-height:44px}.recipe-ingredient-card details summary{color:var(--accent);font-weight:750;cursor:pointer}.recipe-ingredient-details{margin-top:10px}.recipe-ingredient-empty{display:grid;place-items:center;gap:4px;min-height:105px;padding:18px;border:1px dashed var(--border);border-radius:15px;color:var(--muted);text-align:center}.recipe-ingredient-empty strong{color:var(--text)}
.recipe-basics{grid-template-columns:minmax(150px,240px)}.recipe-form-advanced{margin:12px 0 4px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}.recipe-form-advanced>summary{color:var(--accent);font-weight:780;cursor:pointer}.recipe-form-advanced .form-grid{margin-top:13px}
.create-own-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px 13px;margin-top:18px;padding:13px;border-radius:14px;background:color-mix(in srgb,var(--lavender) 28%,var(--bg));font-size:.82rem}.create-own-row span{color:var(--muted)}.create-own-row a{font-weight:750}
.meal-basket{align-self:start;min-width:0;border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.basket-heading{align-items:center}.basket-heading h2{margin-top:3px}.basket-kcal{padding:7px 10px;border-radius:999px;background:var(--lavender);font-weight:800}.basket-empty{display:flex;align-items:center;gap:11px;padding:17px 0;color:var(--muted)}.basket-empty .soft-icon{flex:none;margin:0}.basket-empty div{display:grid}.basket-empty strong{color:var(--text)}.basket-empty small{margin-top:2px}
.builder-items{display:grid;gap:8px;margin-top:12px}.builder-item{display:grid;gap:9px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}.builder-item-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.builder-item-title>span{display:grid;min-width:0}.builder-item-title small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.builder-item-controls{display:grid;grid-template-columns:minmax(85px,1fr) minmax(78px,.75fr);gap:7px}.builder-item-controls input,.builder-item-controls select{min-width:0;min-height:44px;border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:8px}.builder-item-controls select:last-child{grid-column:1/-1}.builder-item-controls select[hidden]{display:none!important}
.macro-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:14px 0}.macro-strip>span{display:grid;gap:2px;min-width:0;padding:8px;border-radius:11px;background:var(--bg)}.macro-strip small{overflow:hidden;color:var(--muted);font-size:.64rem;text-overflow:ellipsis}.macro-strip b{font-size:.8rem}.meal-basket-options{margin:4px 0 12px}.meal-basket-options>summary{min-height:42px;display:flex;align-items:center;color:var(--accent);font-weight:750;cursor:pointer}.meal-basket-options .check-label{margin-top:6px}.meal-basket-options>details{margin-top:9px}.meal-basket-options>details summary{cursor:pointer}.basket-save{min-height:52px}
.recipe-selection{border-color:var(--accent);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 28%,var(--surface)))}.recipe-selection-heading h2{margin-top:3px}.recipe-selection-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.recipe-selection-fields label{display:grid;gap:5px;color:var(--muted);font-size:.75rem;font-weight:750}.recipe-selection-fields input,.recipe-selection-fields select{width:100%;min-height:46px;border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:8px}.recipe-selection .macro-strip{grid-template-columns:repeat(5,1fr)}.recipe-selection-actions{display:flex;justify-content:flex-end;gap:8px}
.nutrition-advanced{padding-block:16px;scroll-margin-bottom:92px}.nutrition-advanced>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.nutrition-advanced>summary::-webkit-details-marker{display:none}.nutrition-advanced>summary>span{display:grid}.nutrition-advanced>summary small{color:var(--muted)}.nutrition-advanced>summary .gemma-icon{transition:transform .18s ease}.nutrition-advanced[open]>summary .gemma-icon{transform:rotate(90deg)}.advanced-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.advanced-link-grid a{min-height:46px;display:grid;place-items:center;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--bg);font-weight:720;text-align:center;text-decoration:none}.advanced-link-grid a:hover,.advanced-link-grid a:focus-visible{border-color:var(--accent);background:var(--lavender)}.wizard-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@media(min-width:760px){
  .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid .menu-card a{min-height:92px}.diary-meals{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-meals>.section-heading,.diary-meals>.diary-empty,.diary-meals>.diary-meal-card:not(.diary-meal-empty){grid-column:1/-1}
  .quick-log{grid-template-columns:minmax(0,1.55fr) minmax(285px,.85fr);align-items:start;gap:16px}.quick-log-header,.meal-context,.meal-source-switch,.quick-picks,.recipe-browser,.recipe-selection,.nutrition-advanced{grid-column:1/-1}.quick-log-workspace{grid-column:1}.meal-basket{position:relative;top:auto;grid-column:2}
}
@media(max-width:759px){
  :root{--content-gutter:12px}.card{padding:17px}.bottom-nav{width:calc(100% - 12px);bottom:6px}.quick-log-header{margin-top:2px}.quick-log-header p{font-size:.88rem}.quick-pick-shelf{margin-inline:-12px;padding-inline:12px}.nutrition-tabs,.training-tabs,.progress-tabs{position:sticky;top:63px;z-index:9;overflow-x:auto;scrollbar-width:none}.nutrition-tabs a,.training-tabs a,.progress-tabs a{flex:0 0 auto;min-width:86px;padding-inline:8px}.nutrition-tabs{display:flex}.training-tabs{display:flex}.meal-basket{scroll-margin-top:74px}
}
@media(max-width:560px){.app-content:has(.hydration-title) .nutrition-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.app-content:has(.hydration-title) .nutrition-tabs a{min-width:0;padding-inline:3px}}
@media(max-width:520px){
  .section-heading{align-items:center;flex-direction:row}.quick-log-header{display:grid}.quick-log-header .button{justify-self:start}.meal-context-heading{align-items:start;flex-direction:column}.meal-context-heading label{width:100%}.meal-context-heading input{width:100%}.meal-type-picker{display:flex;overflow-x:auto;margin-inline:-17px;padding:2px 17px 7px;scroll-snap-type:x proximity}.meal-type-picker label{flex:0 0 auto;scroll-snap-align:start}.meal-type-picker span{min-width:104px}.meal-source-switch{grid-template-columns:1fr}.unified-search{grid-template-columns:auto minmax(0,1fr)}.unified-search .button{grid-column:1/-1;width:100%}.recipe-option-grid{grid-template-columns:1fr}.recipe-selection .macro-strip{grid-template-columns:repeat(2,1fr)}.recipe-selection .macro-strip span:first-child{grid-column:1/-1}.advanced-link-grid{grid-template-columns:repeat(2,1fr)}.today-quick-grid{gap:8px}.today-quick-action{min-height:102px}.page-heading h1,.hero h1{font-size:clamp(1.8rem,9vw,2.2rem)}.basket-save{position:static;box-shadow:none}
}
@media(max-width:430px){.recipe-ingredient-main,.recipe-ingredient-details{grid-template-columns:1fr}}

/* Movimiento rápido e historial editable */
.activity-choice-grid label.is-frequent span{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--lavender) 55%,var(--surface))}.activity-choice-grid span small{display:block;margin-top:2px;color:var(--accent-strong);font-size:.58rem}.duration-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;border:0}.duration-fields>legend{grid-column:1/-1;margin-bottom:0;font-size:.85rem;font-weight:700}.duration-fields label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px}.duration-fields input{width:100%;min-width:0}.duration-fields span{color:var(--muted);font-size:.72rem}.movement-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.movement-history-filter{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;margin-bottom:14px}.movement-history-filter .field{margin:0}.movement-history-card{padding:0;overflow:hidden}.movement-history-card .movement-history-item{box-shadow:none;border:0;border-radius:0}.movement-history-edit{padding:0 16px 14px;border-top:1px solid var(--border)}.movement-history-edit>summary{min-height:44px;display:flex;align-items:center;color:var(--accent-strong);font-weight:750;cursor:pointer}.movement-history-edit>form:first-of-type{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.movement-history-edit .field{margin:0}.movement-history-edit textarea{min-height:76px}.movement-edit-notes{grid-column:1/-1}.movement-history-edit form:last-child{margin-top:8px}.movement-history-item>span:nth-child(2) small+small{margin-top:3px}.quick-activity-card:has(.alert-error){border-color:var(--danger)}
@media(max-width:620px){.movement-history-filter,.movement-history-edit>form:first-of-type{grid-template-columns:1fr}.movement-edit-notes{grid-column:auto}.duration-fields{grid-template-columns:1fr 1fr}.activity-choice-grid label.is-frequent span small{display:block}}
@media(max-width:350px){
  .app-content{width:calc(100% - 20px)}.card{padding:15px}.bottom-nav a{font-size:1.12rem}.bottom-nav a small{font-size:.58rem}.macro-strip{grid-template-columns:repeat(2,1fr)}.quick-log-title{display:grid}.recipe-selection-actions{display:grid}.recipe-selection-actions>*{width:100%}
}
/* Movimiento: sistema visual propio, progresivo y mobile-first. */
.movement-heading{margin-bottom:14px}.movement-heading h1{max-width:16ch}.movement-tabs{grid-template-columns:repeat(5,minmax(0,1fr));position:sticky;top:67px;z-index:8;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px)}.movement-tabs a{gap:4px;padding:5px 2px}.movement-tabs svg{width:18px;height:18px}.movement-hero{display:grid;gap:18px;margin-bottom:12px;padding:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--lavender) 86%,var(--surface)),color-mix(in srgb,var(--dusty-pink) 35%,var(--surface)))}.movement-hero h2{margin:5px 0;font-size:clamp(1.45rem,6vw,2rem);letter-spacing:-.035em}.movement-hero p{max-width:52ch;margin:0;color:var(--muted)}.movement-hero-action .button,.movement-hero-action form{width:100%;margin:0}.movement-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}.movement-summary article{display:flex;min-width:0;min-height:112px;flex-direction:column;justify-content:center;padding:14px;border:1px solid var(--border);border-radius:17px;background:var(--surface)}.movement-summary small,.movement-summary span{color:var(--muted);font-size:.72rem}.movement-summary strong{font-size:1.65rem;line-height:1.1;letter-spacing:-.04em}.quick-activity-card{scroll-margin-top:145px;margin:16px 0 28px;padding:0;overflow:hidden}.quick-activity-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:82px;padding:16px 18px;cursor:pointer;list-style:none}.quick-activity-card>summary::-webkit-details-marker{display:none}.quick-activity-summary{display:flex;align-items:center;gap:12px}.quick-activity-summary .soft-icon{width:44px;height:44px;margin:0;background:var(--lavender)}.quick-activity-summary>span:last-child{display:grid}.quick-activity-summary small{color:var(--muted)}.quick-activity-form{padding:4px 18px 20px;border-top:1px solid var(--border)}.quick-activity-form fieldset{margin:16px 0;padding:0;border:0}.quick-activity-form legend{margin-bottom:10px;font-weight:800}.activity-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.activity-choice-grid label{cursor:pointer}.activity-choice-grid input{position:absolute;opacity:0;pointer-events:none}.activity-choice-grid span{display:grid;min-height:45px;place-items:center;padding:7px;border:1px solid var(--border);border-radius:13px;background:var(--bg);font-size:.78rem;font-weight:750;text-align:center}.activity-choice-grid input:checked+span{border-color:var(--accent);background:var(--lavender);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}.activity-choice-grid input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.activity-core-fields,.activity-optional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.activity-optional-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-notes{margin:4px 0 16px}.activity-notes>summary{min-height:44px;display:flex;align-items:center;color:var(--accent-strong);font-weight:750;cursor:pointer}.movement-section-heading,.movement-subheading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:28px 0 12px}.movement-section-heading h2,.movement-subheading h2{margin:3px 0}.movement-section-heading a{font-weight:750}.movement-plan-empty{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}.movement-plan-empty .soft-icon{margin:0}.movement-plan-empty h3{margin:0 0 5px}.movement-plan-empty p{margin:0;color:var(--muted)}.movement-plan-empty form,.movement-plan-empty>a{grid-column:1/-1;margin:0}.movement-week{grid-template-columns:1fr}.movement-week .training-day{min-height:100px}.movement-week .training-day h3{margin:4px 0}.movement-recent-list,.movement-history{display:grid;gap:9px}.movement-recent-item,.movement-history-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;color:var(--text);text-decoration:none}.movement-recent-item .soft-icon,.movement-history-item .soft-icon{width:42px;height:42px;margin:0}.movement-recent-item>span:nth-child(2),.movement-history-item>span:nth-child(2){display:grid;min-width:0}.movement-recent-item small,.movement-history-item small{overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.movement-recent-empty{padding:16px}.movement-recent-empty p{margin:0;color:var(--muted)}.movement-subheading{align-items:center;margin-top:0}.movement-subheading p{margin:5px 0 0}.routine-library-grid,.exercise-library-grid{display:grid;gap:11px}.routine-library-card{position:relative;display:grid;min-height:190px;align-content:start;color:var(--text);text-decoration:none}.routine-library-card>.soft-icon{margin:0 0 18px}.routine-library-card>.status-pill{position:absolute;top:16px;right:16px}.routine-library-card h3{margin:0 0 5px;font-size:1.18rem}.routine-library-card p{margin:0 0 14px;color:var(--muted)}.routine-library-card>strong{display:flex;align-items:center;gap:4px;margin-top:auto;color:var(--accent-strong)}.movement-create-link{display:flex;justify-content:center;align-items:center;gap:7px;min-height:48px;margin-top:12px;font-weight:750}.exercise-filter{display:grid;gap:0 12px;margin-bottom:12px}.exercise-filter .button{align-self:end;margin-bottom:15px}.exercise-library-card{min-height:145px}.exercise-library-card>div{display:flex;gap:6px}.exercise-library-card h3{margin:13px 0 3px}.exercise-library-card p{margin:0;color:var(--muted)}.exercise-library-card small{display:block;margin-top:6px}.exercise-library-card details{margin-top:12px}.exercise-library-card summary{cursor:pointer;font-weight:750;color:var(--accent-strong)}.is-personal{background:var(--peach)}.movement-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.movement-progress-grid article{display:flex;min-height:112px;flex-direction:column;justify-content:center}.movement-progress-grid small,.movement-progress-grid span{color:var(--muted)}.movement-progress-grid strong{font-size:1.45rem}.movement-progress-hero{grid-row:span 3;background:linear-gradient(150deg,var(--lavender),color-mix(in srgb,var(--dusty-pink) 45%,var(--surface)))}.movement-progress-hero strong{font-size:clamp(2.4rem,10vw,3.7rem)}.movement-records{margin-top:12px}.movement-records h2{display:flex;align-items:center;gap:8px}
@media(min-width:700px){.movement-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:28px}.movement-hero-action .button,.movement-hero-action form{width:auto}.movement-summary{gap:12px}.activity-choice-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.movement-plan-empty{grid-template-columns:auto minmax(0,1fr) minmax(230px,.7fr);align-items:center}.movement-plan-empty form,.movement-plan-empty>a{grid-column:auto}.movement-week,.routine-library-grid,.exercise-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-filter{grid-template-columns:minmax(0,1.7fr) minmax(160px,.8fr) auto}.movement-history{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.movement-tabs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;top:61px;margin-left:-4px;margin-right:-4px;overflow:visible}.movement-tabs a{min-width:0!important;width:auto!important;font-size:.61rem}.movement-tabs svg{width:15px;height:15px}.movement-hero{padding:19px}.movement-summary article{min-height:96px;padding:11px}.movement-summary small{min-height:28px}.movement-summary strong{font-size:1.4rem}.activity-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-core-fields,.activity-optional-grid{grid-template-columns:1fr}.movement-section-heading{align-items:flex-start}.movement-plan-empty{grid-template-columns:auto minmax(0,1fr)}.movement-subheading{align-items:flex-start;flex-direction:column}.movement-subheading .button{width:100%}.movement-recent-item,.movement-history-item{grid-template-columns:auto minmax(0,1fr)}.movement-recent-item>.status,.movement-history-item>.status{grid-column:2}.movement-progress-grid{grid-template-columns:1fr}.movement-progress-hero{grid-row:auto}.exercise-filter .button{width:100%}}
/* Rutinas y sesión activa comparten el mismo lenguaje de Movimiento. */
.routine-day{padding:18px}.routine-day>.section-heading{padding-bottom:10px}.routine-exercise{align-items:center}.routine-exercise>div>strong{font-size:.98rem}.routine-exercise details>summary{min-height:42px;display:flex;align-items:center;justify-content:flex-end;color:var(--accent-strong);font-weight:750;cursor:pointer}.routine-exercise details form:first-of-type{padding:12px;border-radius:14px;background:var(--bg)}.routine-exercise .set-grid label{display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:700}.routine-exercise .set-grid input{background:var(--surface)}.add-exercise{border-top:1px solid var(--border)}.add-exercise>summary{gap:6px;color:var(--accent-strong);font-weight:800}.add-exercise form{padding:14px;border-radius:14px;background:var(--bg)}.session-exercise{padding:18px}.session-exercise>.section-heading h2{font-size:1.12rem}.session-exercise>.section-heading small{color:var(--muted)}.set-history span{border:1px solid var(--border);background:var(--surface)}.session-exercise>form{padding:13px;border-radius:14px;background:var(--bg)}.session-exercise .button-row{margin-bottom:0}.session-exercise+.session-exercise{margin-top:12px}
@media(max-width:520px){.routine-day,.session-exercise{padding:15px}.routine-exercise details>summary{justify-content:flex-start}.routine-exercise .set-grid,.session-exercise .set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.session-exercise .button-row>*{width:100%}}
.timed-session-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.timed-session-summary>div{display:flex;min-height:96px;flex-direction:column;justify-content:center;padding:14px;border-radius:14px;background:var(--bg)}.timed-session-summary small{color:var(--muted)}.timed-session-summary strong{font-size:1.05rem}.timed-session-summary p{grid-column:1/-1;margin:0;padding-top:13px;border-top:1px solid var(--border)}@media(max-width:520px){.timed-session-summary{grid-template-columns:1fr}.timed-session-summary p{grid-column:auto}}
.session-exercise .set-grid label{display:grid;gap:5px;color:var(--muted);font-size:.72rem;font-weight:700}.session-exercise .set-grid label input{background:var(--surface)}

/* Recetario personal: biblioteca, editor guiado y resumen nutricional. */
.recipe-library-heading{align-items:center}.recipe-filters-compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.45fr) auto auto;align-items:center;gap:9px;padding:14px}.recipe-filters-compact label{margin:0}.recipe-filters-compact select,.recipe-filters-compact input{width:100%;min-height:46px}.recipe-main-search{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border);border-radius:13px;background:var(--bg)}.recipe-main-search input{border:0!important;background:transparent!important;padding-inline:0!important}.recipe-filter-more{grid-column:1/-1}.recipe-filter-more>summary{color:var(--accent-strong);font-weight:750;cursor:pointer}.recipe-filter-more>div{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:10px;margin-top:12px}.recipe-library-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}.recipe-book-card{transition:transform .18s ease,box-shadow .18s ease}.recipe-book-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.recipe-book-card .recipe-card-photo,.recipe-book-card .recipe-photo-placeholder{aspect-ratio:16/10;height:auto}.recipe-card-body strong small{color:var(--muted);font-weight:600}
.recipe-editor-heading{margin:8px 0 18px}.recipe-editor-heading h1{margin:3px 0 5px}.recipe-editor-heading p{margin:0;color:var(--muted)}.recipe-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,330px);gap:16px;align-items:start}.recipe-editor-main{min-width:0;display:grid;gap:14px}.recipe-form-section{margin:0}.recipe-form-section>label{display:grid;gap:7px;margin-top:13px}.recipe-form-section label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:.875rem;font-weight:650;color:var(--text)}.recipe-form-section label small{font-size:.75rem;font-weight:400;color:var(--muted)}.recipe-form-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.recipe-form-section input:not([type="checkbox"]):not([type="file"]),.recipe-form-section textarea,.recipe-form-section select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft,var(--bg));color:var(--text);font:inherit;font-size:1rem;font-weight:400;line-height:1.45;transition:border-color .16s ease,box-shadow .16s ease}.recipe-form-section textarea{min-height:96px;resize:vertical}.recipe-form-section input:focus-visible,.recipe-form-section textarea:focus-visible,.recipe-form-section select:focus-visible{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.recipe-form-section .check-label,.recipe-form-section .tag-checks label{flex-direction:row;align-items:center}.recipe-photo-picker input{font:inherit;font-weight:400;font-size:.875rem;min-height:48px}.recipe-photo-picker input::file-selector-button{border:0;border-radius:8px;background:var(--lavender);color:var(--accent-strong);padding:8px 12px;margin-right:10px;font:inherit;font-weight:650;cursor:pointer}.recipe-section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:15px}.recipe-section-title>div{min-width:0}.recipe-section-title>span{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--lavender);color:var(--accent-strong);font-weight:850}.recipe-section-title h2{margin:1px 0 2px}.recipe-section-title p{margin:0;color:var(--muted);font-size:.88rem}.recipe-core-row{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr);gap:12px;margin-top:12px}.recipe-core-row>label{display:grid;gap:6px}.recipe-core-row>label>small,.recipe-photo-picker>span{color:var(--muted);font-size:.75rem}.recipe-photo-picker input{width:100%;min-width:0;padding:9px;border:1px dashed var(--border);border-radius:12px;background:var(--bg)}.recipe-step-editor{display:grid;gap:8px;margin-top:12px}.recipe-step-editor label{display:grid;grid-template-columns:30px 1fr;align-items:start;gap:8px}.recipe-step-editor label>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--lavender);font-weight:800}.recipe-step-editor textarea{min-height:68px}.recipe-preferences>summary{font-weight:800;cursor:pointer}.recipe-preferences>fieldset{margin-top:15px}.recipe-editor-aside{position:sticky;top:82px;display:grid;gap:10px}.recipe-live-nutrition{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--lavender) 45%,var(--surface)))}.recipe-live-nutrition h2{margin:3px 0 4px}.recipe-preview-macros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.recipe-preview-macros>div{display:grid;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.recipe-preview-macros>div:first-child{grid-column:1/-1}.recipe-preview-macros small,.recipe-preview-macros span{color:var(--muted);font-size:.7rem}.recipe-preview-macros strong{font-size:1.12rem}.recipe-preview-serving{display:grid;gap:2px;margin:5px 0 12px;padding-top:11px;border-top:1px solid var(--border)}.recipe-preview-serving span{color:var(--muted);font-size:.75rem}.recipe-save-bar{display:grid;grid-template-columns:auto 1fr;gap:8px;padding:10px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:var(--shadow)}.recipe-save-bar .button-primary{width:100%}.recipe-search-empty{display:grid;gap:3px;padding:14px}.recipe-search-empty span{color:var(--muted);font-size:.82rem}.create-own-row{display:flex;justify-content:flex-end;gap:5px;margin:5px 0 14px;color:var(--muted);font-size:.8rem}.create-own-row a{font-weight:750}.recipe-ingredient-card{scroll-margin-top:90px}.recipe-ingredient-card details>summary{min-height:38px;display:flex;align-items:center}.recipe-ingredient-details label small{font-weight:500}.recipe-photo-edit{display:flex;align-items:center;gap:12px;margin-top:12px}.recipe-photo-edit img{flex:0 0 auto}
@media(max-width:900px){.recipe-editor-layout{grid-template-columns:1fr}.recipe-editor-aside{position:static}.recipe-live-nutrition{order:1}.recipe-save-bar{position:sticky;z-index:7;bottom:calc(var(--bottom-nav-clearance) - 8px)}}
@media(max-width:620px){.recipe-library-heading{align-items:flex-start;flex-direction:column}.recipe-library-heading .button{width:100%}.recipe-filters-compact{grid-template-columns:1fr}.recipe-filters-compact>*{grid-column:1}.recipe-filter-more>div{grid-template-columns:1fr}.recipe-library-grid{grid-template-columns:1fr}.recipe-editor-heading{margin-top:4px}.recipe-form-section{padding:16px}.recipe-form-section .form-grid,.recipe-core-row{grid-template-columns:1fr}.recipe-section-title{gap:9px}.recipe-section-title>span{flex-basis:30px;width:30px;height:30px}.recipe-ingredient-search{grid-template-columns:auto minmax(0,1fr)}.recipe-ingredient-search .button{grid-column:1/-1;width:100%}.create-own-row{justify-content:flex-start;flex-wrap:wrap}.recipe-editor-aside{min-width:0}.recipe-save-bar{grid-template-columns:.65fr 1.35fr;margin-inline:-2px}.recipe-save-bar .button{padding-inline:10px}.recipe-preview-macros{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Planificador semanal: edición manual simple, lectura diaria móvil y resumen progresivo. */
.weekly-page-header p{margin:4px 0 0;color:var(--muted)}.weekly-top-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.weekly-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.weekly-summary-strip>div{display:grid;gap:2px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}.weekly-summary-strip strong{font-size:1.08rem}.weekly-summary-strip small{color:var(--muted)}.weekly-nutrition-details{margin-top:12px}.weekly-nutrition-details>summary{color:var(--accent-strong);font-weight:750;cursor:pointer}.weekly-day{scroll-margin-top:82px;margin-block:22px}.week-day-tabs{position:sticky;z-index:6;top:64px;padding:7px;border:1px solid var(--border);border-radius:15px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px)}.week-day-tabs a{min-width:54px;border-radius:11px}.week-day-tabs a:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 22%,transparent)}.weekly-quick-add{margin:12px 0;padding:0;overflow:hidden;border-style:dashed}.weekly-quick-add>summary{display:flex;align-items:center;gap:8px;padding:14px 16px;color:var(--accent-strong);font-weight:800;cursor:pointer}.weekly-quick-add>summary svg{width:18px}.weekly-quick-add>form{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr) auto;align-items:end;gap:12px;padding:0 16px 16px}.weekly-quick-add form>label{display:grid;gap:6px;font-weight:700}.weekly-quick-add fieldset{display:grid;grid-template-columns:auto minmax(160px,1fr) minmax(110px,.35fr);align-items:end;gap:8px;margin:0;padding:12px;border:1px solid var(--border);border-radius:13px}.weekly-quick-add legend{padding-inline:5px;color:var(--muted);font-size:.78rem;font-weight:700}.weekly-quick-add fieldset>label{display:flex;align-items:center;gap:6px;font-size:.82rem}.weekly-quick-add input:not([type=radio]),.weekly-quick-add select,.planned-actions select{box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--bg);font:inherit}.planned-meal{border-left:4px solid var(--accent);box-shadow:0 8px 24px rgba(67,48,93,.06)}.planned-meal.is-locked{border-left-color:#b18b46}.planned-head h3{margin-block:3px}.planned-ingredients{margin:10px 0}.planned-ingredients>summary{color:var(--muted);font-size:.82rem;font-weight:700;cursor:pointer}.planned-ingredients[open]>summary{margin-bottom:8px}.planned-actions{align-items:center}.planned-actions>details>summary{font-weight:750}.planned-actions .more-actions form{display:flex;align-items:end;gap:7px;flex-wrap:wrap}.planned-actions .more-actions label{display:grid;gap:4px;color:var(--muted);font-size:.75rem;font-weight:700}.weekly-empty-day{padding:18px;border:1px dashed var(--border);border-radius:15px;text-align:center;background:var(--bg)}.weekly-empty-day p{margin:0 0 3px;font-weight:750}.weekly-empty-day small{color:var(--muted)}.plan-vs-real small{display:block;margin-top:9px;color:var(--muted)}
@media(min-width:1000px){.weekly-day{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.weekly-day>.section-heading,.weekly-day>.plan-target-line,.weekly-day>.notice,.weekly-day>.weekly-quick-add,.weekly-day>.weekly-empty-day,.weekly-day>.plan-vs-real{grid-column:1/-1}.weekly-day>.planned-meal{margin:0}}
@media(max-width:760px){.weekly-page-header{align-items:flex-start}.weekly-page-header .date-nav{width:100%;justify-content:space-between}.weekly-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.week-day-tabs{top:8px;display:flex;overflow-x:auto;scrollbar-width:none}.weekly-quick-add>form{grid-template-columns:1fr}.weekly-quick-add fieldset{grid-template-columns:auto minmax(0,1fr)}.weekly-quick-add fieldset>label:nth-of-type(2),.weekly-quick-add fieldset>label:nth-of-type(2)+select{margin-top:7px}.weekly-quick-add fieldset>label:has(input[type=number]){grid-column:1/-1}.weekly-top-actions{width:100%}.weekly-top-actions .button,.weekly-top-actions form{flex:1}.weekly-top-actions button{width:100%}.planned-actions{display:grid;grid-template-columns:1fr 1fr}.planned-actions>form,.planned-actions>form .button,.planned-actions>details{width:100%}.planned-actions>details{grid-column:1/-1}.planned-actions>form .button{justify-content:center}.planned-actions form:has(select){grid-column:1/-1;display:grid;grid-template-columns:1fr auto}.planned-head{align-items:flex-start}.meal-state{white-space:nowrap}}
@media(max-width:380px){.weekly-summary-strip{grid-template-columns:1fr 1fr}.weekly-summary-strip>div{padding:10px}.weekly-quick-add fieldset{grid-template-columns:1fr}.weekly-quick-add fieldset>label:has(input[type=radio]){flex-direction:row}.weekly-quick-add fieldset>*{grid-column:1}.planned-actions{grid-template-columns:1fr}.planned-actions>*{grid-column:1!important}}

/* Movimiento: encabezado con acción primaria visible. */
.movement-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.movement-heading .button{flex:0 0 auto}
@media(max-width:520px){.movement-heading{align-items:flex-start;flex-direction:column}.movement-heading .button{width:100%}}

/* Biblioteca y editor de rutinas. */
.exercise-filter-complete{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.exercise-filter-complete .button{margin-bottom:15px}.exercise-library-card>.button{margin-top:10px}.routine-day>.section-heading form{margin:0}.routine-exercise{padding:14px 0;border-bottom:1px solid var(--border)}.routine-exercise>div:first-child{display:grid;gap:4px}.routine-exercise small{color:var(--muted)}.series-target-field{grid-column:span 2}.series-target-field small{display:block;color:var(--muted);font-size:.72rem}.duplicate-routine-day{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.duplicate-routine-day>summary{color:var(--accent-strong);font-weight:750;cursor:pointer}.duplicate-routine-day form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:10px}.exercise-editor-card{max-width:820px;margin-inline:auto}
@media(min-width:900px){.exercise-filter-complete{grid-template-columns:1.4fr repeat(3,minmax(130px,.7fr)) auto auto}.routine-day{padding:24px}.set-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.exercise-filter-complete{grid-template-columns:1fr}.exercise-filter-complete .button{width:100%;margin-bottom:0}.routine-day>.section-heading{align-items:flex-start;flex-direction:column}.routine-day>.section-heading form,.routine-day>.section-heading .button{width:100%}.series-target-field{grid-column:1/-1}.duplicate-routine-day form{grid-template-columns:1fr}.duplicate-routine-day .button{width:100%}}

/* Movilidad y recuperación */
.movement-recovery-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:12px 0 22px;color:var(--text);text-decoration:none;background:linear-gradient(135deg,color-mix(in srgb,var(--lavender) 72%,var(--surface)),var(--surface))}.movement-recovery-entry .soft-icon{margin:0}.movement-recovery-entry>span:nth-child(2){display:grid;gap:3px}.movement-recovery-entry small{color:var(--muted)}.mobility-hero{display:grid;gap:18px;padding:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--lavender) 84%,var(--surface)),color-mix(in srgb,var(--dusty-pink) 30%,var(--surface)))}.mobility-hero h1{margin:4px 0 7px;font-size:clamp(1.75rem,7vw,2.6rem);letter-spacing:-.045em}.mobility-hero p{max-width:55ch;margin:0;color:var(--muted)}.mobility-hero-actions{display:flex;flex-wrap:wrap;gap:8px}.mobility-safety{margin:10px 4px 18px;color:var(--muted);font-size:.82rem}.mobility-summary{margin-bottom:28px}.mobility-summary article:last-child strong{font-size:1.15rem;letter-spacing:-.02em}.mobility-routine-grid{display:grid;gap:12px}.mobility-routine-card{display:flex;min-width:0;flex-direction:column;gap:7px}.mobility-routine-card.is-favorite{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--lavender) 42%,var(--surface)))}.mobility-routine-top{display:flex;align-items:center;justify-content:space-between}.mobility-routine-top .soft-icon{margin:0}.mobility-routine-top form{margin:0}.mobility-routine-card h3{margin:5px 0 0}.mobility-routine-card p{margin:0;color:var(--muted);flex:1}.mobility-routine-card>small{color:var(--muted)}.mobility-routine-card .button-row{margin-top:10px}.mobility-filter{display:grid;gap:0 12px;align-items:end;margin-bottom:12px}.mobility-filter .field{margin-bottom:0}.mobility-exercise-grid details p{color:var(--muted);font-size:.86rem;line-height:1.6}.mobility-history{margin-bottom:28px}.live-exercise.is-current{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent),var(--shadow)}.mobility-session-note{margin:10px 0 14px}.mobility-session-note p{margin:4px 0 0}.mobility-exercise-timer{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:linear-gradient(135deg,var(--lavender),var(--surface))}.mobility-feelings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;padding:0;border:0}.mobility-feelings legend{grid-column:1/-1;margin-bottom:2px;font-weight:800}.mobility-feelings legend small{color:var(--muted);font-weight:500}.mobility-feelings .field{margin:0}.mobility-feeling-summary{padding:12px;border-radius:12px;background:var(--lavender);color:var(--accent-strong)}
@media(min-width:700px){.mobility-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:32px}.mobility-routine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobility-filter{grid-template-columns:minmax(0,1.5fr) minmax(180px,.7fr) auto}}
@media(max-width:620px){.mobility-hero-actions,.mobility-hero-actions .button,.mobility-routine-card .button-row>*{width:100%}.mobility-routine-card .button-row{display:grid}.mobility-filter,.mobility-feelings{grid-template-columns:1fr}.mobility-filter .button{width:100%}.mobility-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.mobility-summary article{min-height:100px}.mobility-summary article:last-child strong{font-size:.95rem}.mobility-summary small{min-height:30px}}
/* Interactive empty states expose navigation without looking like a second button. */
.today-inline-empty[href]{color:var(--text);text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.today-inline-empty[href]:hover{transform:translateY(-1px);box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 12%,transparent)}
.today-inline-empty[href]:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 38%,transparent);outline-offset:3px}
/* Recipe library and logging use the same calm, touch-friendly visual language. */
.recipe-library-grid{gap:16px}.recipe-book-card{border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));border-radius:22px;background:var(--surface);box-shadow:0 10px 30px rgba(67,48,93,.07)}
.recipe-book-card .recipe-card-body{display:flex;min-height:230px;flex-direction:column;padding:18px}.recipe-book-card .recipe-photo-placeholder{background:linear-gradient(145deg,color-mix(in srgb,var(--lavender) 72%,var(--surface)),color-mix(in srgb,var(--peach) 62%,var(--surface)))}
.recipe-book-card h2{margin:14px 0 12px;font-size:1.18rem;line-height:1.2}.recipe-card-stats{display:flex!important;flex-wrap:wrap;justify-content:flex-start!important;gap:8px 14px;color:var(--muted);font-size:.78rem}.recipe-card-stats span{display:inline-flex;align-items:center;gap:5px}.recipe-card-stats svg{width:15px;height:15px}.recipe-card-energy{display:grid!important;justify-content:start!important;gap:0;margin-top:18px}.recipe-card-energy strong{font-size:1.5rem;line-height:1}.recipe-card-energy span{margin-top:4px;color:var(--muted);font-size:.72rem}.recipe-card-open{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:18px;color:var(--accent-strong);font-weight:800}.recipe-card-open svg{width:17px;height:17px}
.recipe-log-card{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 20%,var(--surface)))}.recipe-log-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.recipe-log-heading .soft-icon{flex:0 0 auto;margin:0}.recipe-log-heading h2{margin:2px 0 4px}.recipe-log-heading p{margin:0;color:var(--muted)}.recipe-log-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.recipe-log-form label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:750}.recipe-log-form input,.recipe-log-form select{box-sizing:border-box;width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit}.recipe-log-form .button{grid-column:1/-1;min-height:50px}.recipe-log-note{display:flex;align-items:flex-start;gap:7px;margin:14px 0 0;color:var(--muted);font-size:.78rem}.recipe-log-note svg{flex:0 0 auto;width:16px;height:16px;color:var(--accent)}
@media(max-width:700px){.recipe-log-form{grid-template-columns:1fr 1fr}.recipe-log-form .button{grid-column:1/-1}}
@media(max-width:430px){.recipe-log-form{grid-template-columns:1fr}.recipe-log-form .button{grid-column:1}.recipe-library-grid{grid-template-columns:1fr}}

/* Hidratación básica: progreso, carga directa y estimación transparente para mate. */
.hydration-simple-hero{margin-bottom:14px}.hydration-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.hydration-stats .card{display:grid;gap:3px;margin:0;padding:15px}.hydration-stats small,.hydration-stats span{color:var(--muted);font-size:.73rem}.hydration-stats strong{font-size:1.2rem}.hydration-simple-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:14px;align-items:start}.hydration-simple-grid main{display:grid;gap:14px}.hydration-simple-grid aside{position:sticky;top:84px}.mate-register{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--sage) 38%,var(--surface)))}.mate-register .section-heading{align-items:flex-start}.mate-register .section-heading p{margin:.35rem 0 0}.mate-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,.55fr) auto;gap:9px;align-items:end}.mate-estimate{display:block;margin-top:10px;color:var(--muted)}
@media(max-width:760px){.hydration-stats{grid-template-columns:1fr}.hydration-simple-grid{grid-template-columns:1fr}.hydration-simple-grid aside{position:static}.mate-form{grid-template-columns:1fr 1fr}.mate-form .button{grid-column:1/-1}.hydration-title .back-link{margin-bottom:8px}}

/* Menú semanal: opciones claras, proporciones consistentes y controles táctiles normales. */
.nutrition-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.weekly-page-header{padding:8px 2px 4px}.weekly-page-header h1{margin:3px 0 5px}.weekly-builder{padding:24px;border-color:color-mix(in srgb,var(--accent) 16%,var(--border));background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--lavender) 22%,var(--surface)))}.weekly-builder-heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}.weekly-builder-heading .soft-icon{flex:0 0 auto;margin:0}.weekly-builder-heading h2{margin:3px 0 5px}.weekly-builder-heading p{margin:0;color:var(--muted)}.weekly-choice-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px;padding:0;border:0}.weekly-choice-group legend{grid-column:1/-1;margin-bottom:1px;font-weight:850}.weekly-choice{display:flex!important;min-height:84px;flex-direction:row!important;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--border);border-radius:15px;background:var(--surface);cursor:pointer}.weekly-choice:has(input:checked){border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--lavender)}.weekly-choice input[type=checkbox]{box-sizing:border-box!important;flex:0 0 21px!important;width:21px!important;min-width:21px!important;height:21px!important;min-height:21px!important;margin:1px 0 0;padding:0!important;accent-color:var(--accent)}.weekly-choice span{display:grid;gap:3px}.weekly-choice strong{line-height:1.2}.weekly-choice small{color:var(--muted);font-size:.72rem;font-weight:500;line-height:1.35}.weekly-select-options{grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 16px}.weekly-select-options label{padding:0}.weekly-advanced{margin:4px 0 18px;border-top:1px solid var(--border)}.weekly-advanced>summary{min-height:48px;display:flex;align-items:center;color:var(--accent-strong);font-weight:800;cursor:pointer}.weekly-build-button{min-height:52px;font-size:.95rem}.allocation-settings{margin-top:18px}.allocation-settings>summary{min-height:46px;font-weight:800;cursor:pointer}
@media(max-width:700px){.weekly-builder{padding:18px}.weekly-choice-group{grid-template-columns:1fr}.weekly-choice{min-height:0}.weekly-select-options{grid-template-columns:1fr}.weekly-page-header{align-items:stretch;flex-direction:column}.weekly-page-header .date-nav{width:100%;justify-content:space-between}.weekly-builder-heading{gap:10px}}
/* Movement navigation uses four focused destinations: Hoy, Rutinas, Ejercicios y Progreso. */
.movement-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:520px){.movement-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
/* Guided live workout: one exercise and one series at a time. */
.live-workout .live-exercise.is-complete,.live-workout .live-exercise.is-skipped,.live-workout .live-exercise.is-upcoming{display:none}
.live-workout .live-exercise.is-current{display:block;min-height:clamp(430px,64vh,680px);padding:clamp(20px,4vw,42px);border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--lavender) 50%,var(--surface)));box-shadow:0 24px 64px rgba(75,50,115,.14)}
.live-workout .live-exercise-head{padding-right:0}.live-workout .live-exercise-head h2{font-size:clamp(1.55rem,5vw,2.4rem)}
.live-workout .exercise-order,.live-workout .add-live-exercise{display:none!important}
.live-workout .exercise-actions form:nth-child(2),.live-workout .exercise-actions form:last-child{display:none}
.live-workout .quick-set-form{margin-top:clamp(18px,4vw,34px);padding:clamp(16px,3vw,26px);background:color-mix(in srgb,var(--surface) 78%,var(--lavender))}
.live-workout .complete-set-button{min-height:54px;font-size:1rem}
.live-workout .finish-workout{display:none;position:fixed;z-index:80;inset:50% auto auto 50%;width:min(calc(100% - 28px),620px);max-height:calc(100dvh - 36px);margin:0;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 30px 100px rgba(38,25,57,.35)}
.live-workout .finish-workout.is-open{display:block}
.live-workout .finish-workout.is-open:before{content:'';position:fixed;z-index:-1;inset:-100vh;background:rgba(31,22,45,.38);backdrop-filter:blur(3px)}
.finish-dialog-close{float:right;font-size:1.5rem}
.workout-completion-confirm{text-align:center;padding:clamp(10px,3vw,26px)}.workout-completion-confirm h2{margin:0 0 8px;font-size:clamp(1.45rem,5vw,2rem)}.workout-completion-confirm p{margin:0;color:var(--muted)}.workout-completion-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.workout-completion-actions .button{width:100%;min-height:52px}
.live-workout .finish-workout.is-open.is-compact{width:min(calc(100% - 32px),440px);max-height:none;padding:24px;overflow:hidden;background:var(--surface);box-shadow:0 0 0 100vmax rgba(31,22,45,.38),0 30px 90px rgba(38,25,57,.28)}.live-workout .finish-workout.is-open.is-compact:before{display:none}.finish-workout.is-compact .workout-completion-confirm{padding:6px}.finish-workout.is-compact .workout-completion-actions{margin-top:20px}
.workout-summary:after{content:'Calorías: sin dato registrado';display:block;margin:12px 0 18px;padding:12px 14px;border-radius:13px;background:var(--bg);color:var(--muted);font-size:.82rem}
@media(max-width:520px){.live-workout .live-exercise.is-current{min-height:58vh;padding:18px}.live-workout .live-progress{position:sticky;top:62px;z-index:7}.live-workout .quick-set-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.live-workout .complete-set-button{grid-column:1/-1}}
.composition-simplified~section{display:none}.composition-simplified{display:grid;justify-items:start;gap:10px}.composition-simplified h2,.composition-simplified p{margin:0}.composition-result{font-size:clamp(2.8rem,10vw,4.6rem);line-height:1;color:var(--accent-strong)}.composition-simplified>small{color:var(--muted)}.composition-simplified .empty-state{width:100%}.empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.composition-simplified{gap:22px}.composition-heading{width:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.composition-heading h2{margin:4px 0 5px}.composition-heading p{color:var(--muted)}.composition-primary{display:grid;flex:0 0 auto;justify-items:end}.composition-primary strong{font-size:clamp(3rem,9vw,5rem);line-height:.9;letter-spacing:-.06em;color:var(--accent-strong)}.composition-primary span{margin-top:8px;color:var(--muted);font-size:.78rem}.composition-metric-grid{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.composition-metric-grid article{display:grid;align-content:start;gap:6px;min-height:132px;padding:16px;border:1px solid var(--border);border-radius:17px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--lavender) 28%,var(--surface)))}.composition-metric-grid small,.composition-source small{color:var(--muted)}.composition-metric-grid strong{font-size:1.45rem;letter-spacing:-.03em}.composition-metric-grid span{color:var(--muted);font-size:.73rem;line-height:1.4}.composition-source{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px;border-radius:16px;background:var(--bg)}.composition-source>div{display:grid;gap:4px}.composition-source strong{font-size:.95rem}.composition-measured{width:100%;display:grid;gap:10px;padding-top:4px}.composition-measured .composition-source{background:color-mix(in srgb,var(--sage) 42%,var(--surface))}.composition-disclaimer{width:100%;display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:15px;background:color-mix(in srgb,var(--peach) 55%,var(--surface));color:var(--muted);font-size:.8rem;line-height:1.55}.composition-disclaimer svg{flex:0 0 auto;width:18px;height:18px;color:var(--accent-strong)}.composition-disclaimer p{margin:0}.composition-disclaimer strong{color:var(--text)}
@media(max-width:720px){.composition-heading{align-items:flex-start;flex-direction:column}.composition-primary{justify-items:start}.composition-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.composition-source{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.composition-metric-grid,.composition-source{grid-template-columns:1fr}.composition-metric-grid article{min-height:auto}}

/* Hábitos: estadísticas primero y un formulario limpio, sin el editor de objetivos. */
#goals{display:none}.habit-create{overflow:hidden}.habit-create>summary{padding:2px 0;color:var(--accent-strong)}.habit-form{margin-top:18px!important;padding-top:18px;border-top:1px solid var(--border)}.habit-form>label,.habit-form-grid>label{display:grid;gap:7px;color:var(--text);font-weight:700}.habit-form input:not([type=checkbox]):not([type=radio]):not([type=color]),.habit-form select,.habit-form textarea{width:100%;min-height:48px;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:11px 13px;color:var(--text);font:inherit;box-shadow:0 1px 0 rgba(64,45,93,.03)}.habit-form textarea{min-height:96px;resize:vertical}.habit-form input:focus,.habit-form select:focus,.habit-form textarea:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 16%,transparent)}.habit-form fieldset{padding:16px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--lavender) 20%,var(--surface))}.habit-form legend{padding:0 8px;font-weight:800}.habit-form .choice-grid label{cursor:pointer}.habit-form .choice-grid span{min-height:48px;display:flex;align-items:center;padding:10px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.habit-form .choice-grid input:checked+span{border-color:var(--accent);background:var(--lavender);color:var(--accent-strong)}.habit-form .habit-days{margin:14px 0}.habit-form .habit-days label{background:var(--surface)}.habit-form .button-full{min-height:50px}.habit-calendar-card{margin-bottom:18px}.habit-progress-summary{margin-top:4px}
@media(max-width:600px){.habit-form fieldset{padding:12px}.habit-form .choice-grid{grid-template-columns:1fr}.habit-form .habit-days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.habit-form .habit-days label{justify-content:center;padding:7px 4px}}
.habit-create-heading{margin-bottom:16px}.habit-create-page{max-width:780px;margin-inline:auto}.habit-create-page .habit-form{margin-top:0!important;padding-top:0;border-top:0}.habit-create-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.habit-create-actions .button{min-width:150px}.habit-management+.empty-state{margin-top:12px}
@media(max-width:520px){.habit-create-page{padding:18px}.habit-create-actions{flex-direction:column-reverse}.habit-create-actions .button{width:100%}}
.habit-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:4px 2px 18px}.habit-progress-heading h2{margin:4px 0;font-size:clamp(1.5rem,5vw,2rem)}.habit-progress-heading p{margin:0;color:var(--muted)}.habit-progress-today{margin-bottom:18px}.habit-progress-today .section-heading{margin-bottom:4px}.habit-progress-today .habit-amount{display:grid;grid-template-columns:minmax(80px,1fr) auto}.habit-progress-today .habit-amount input{min-height:42px;border:1px solid var(--border);border-radius:11px;padding:8px;background:var(--bg)}
@media(max-width:600px){.habit-progress-heading{flex-direction:column}.habit-progress-heading .button{width:100%}}
