:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#151d2c;background:#f6f8fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}.sidebar{width:210px;flex:none;background:#0d1118;color:#d8e1ed;min-height:100vh;position:sticky;top:0;height:100vh;padding:23px 12px;display:flex;flex-direction:column}.brand{text-align:center;margin-bottom:28px}.monogram{font-size:47px;font-weight:950;letter-spacing:-7px;line-height:1}.monogram span{color:#0786ff}.brand-sub{font-size:13px;letter-spacing:4px;font-weight:800;margin-top:4px}.brand small{display:block;color:#7d8da3;font-size:9px;letter-spacing:3px;margin-top:7px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar nav a{padding:13px 15px;border-radius:9px;font-size:12px;display:flex;align-items:center;gap:13px;color:#c1c9d5}.sidebar nav a:hover,.sidebar nav a.active{background:#173458;color:#fff}.sidebar nav a.active{border-left:3px solid #0786ff}.nav-heading{font-size:9px;letter-spacing:2px;color:#748398;margin:21px 10px 9px;border-top:1px solid #252c37;padding-top:19px}.sidebar-foot{margin-top:auto;font-size:9px;letter-spacing:1px;color:#66768c;padding:12px}.workspace{min-width:0;flex:1}.topbar{height:60px;background:#0c1016;color:#f6f8fb;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font-size:12px;font-weight:800;letter-spacing:2px}.topbar b{color:#0786ff}.topbar .private{color:#8190a4;font-size:9px}main{max-width:1750px;margin:auto;padding:30px 30px 22px}.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:23px}.eyebrow{color:#087df1!important;font-size:10px!important;font-weight:800;letter-spacing:2px}.heading h1{font-size:37px;letter-spacing:-1.8px;margin:5px 0}.heading h1 span{color:#087df1}.heading p{color:#738095;font-size:13px;margin:0}.date{font-size:12px;color:#8793a5}.metrics{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:13px}.metric,.panel{background:#fff;border:1px solid #e9edf3;box-shadow:0 3px 16px rgba(20,37,67,.025);border-radius:13px}.metric{padding:13px 10px;display:flex;align-items:center;gap:9px;min-height:93px}.metric small,.health-feature small{font-size:10px;color:#66748a;display:block;margin-bottom:5px}.metric strong{display:block;font-size:19px;letter-spacing:-.6px;white-space:nowrap}.metric strong em{font-size:12px;font-style:normal;font-weight:600}.metric p{font-size:9px;color:#96a1b0;margin:5px 0 0}.metric.objective strong{font-size:14px;white-space:normal}.symbol{height:37px;width:37px;flex:none;display:grid;place-items:center;border-radius:10px;font-size:20px;font-weight:700}.blue{background:#e8f2ff;color:#0786ff}.sky{background:#eaf7ff;color:#168ac9}.green{background:#e6f9f0;color:#13a968}.cyan{background:#e8f7fb;color:#039cc0}.violet{background:#f0edff;color:#6e55df}.amber{background:#fff3e3;color:#e6a11a}.orange{background:#fff0e7;color:#f47733}.layout{display:grid;gap:13px;margin-bottom:13px}.layout.top{grid-template-columns:1.55fr 1fr}.layout.middle{grid-template-columns:1.05fr 1fr 1fr}.layout.bottom{grid-template-columns:1fr 1fr}.panel{padding:17px;min-width:0}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:10px;margin-bottom:16px}.panel-head h2{font-size:14px;letter-spacing:-.2px;text-transform:uppercase;margin:0 0 5px}.panel-head p{font-size:11px;color:#8995a5;margin:0}.panel-head a{color:#007bfa;font-size:11px;white-space:nowrap;margin-top:3px}.routine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.routine{border:1px solid #e9eef5;background:#f9fbfd;border-radius:11px;padding:13px 11px;min-height:160px;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.routine:hover{transform:translateY(-2px);border-color:#0786ff}.day{font-size:9px;color:#0b80ec;font-weight:800;letter-spacing:1px}.routine-icon{font-size:30px;color:#188af6;margin:9px 0}.routine h3{font-size:12px;margin:0 0 5px;line-height:1.25}.routine p{font-size:10px;color:#7e8b9d;margin:0 0 12px}.go{font-size:10px;color:#0786ff;font-weight:700;margin-top:auto}.empty-chart{height:143px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,#fff,#fbfdff);border-radius:8px}.chart-lines{position:absolute;inset:12px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 32px,#e9eef5 33px),repeating-linear-gradient(to right,transparent 0,transparent 64px,#edf1f7 65px)}.chart-note{position:relative;background:#fff;padding:9px 12px;border:1px solid #e7edf4;border-radius:8px;color:#8290a2;font-size:11px}.dot{display:inline-block;width:7px;height:7px;background:#0786ff;border-radius:50%;margin-right:5px}.chart-legend{display:flex;justify-content:center;gap:15px;color:#8390a2;font-size:10px;margin-top:9px}.chart-legend span:nth-child(2){color:#19ae80}.chart-legend span:nth-child(3){color:#fa8b45}.nutrition-body{display:flex;align-items:center;gap:20px}.donut{width:138px;height:138px;flex:none;border-radius:50%;background:conic-gradient(#e8eef5 0 100%);display:grid;place-items:center}.donut>div{width:104px;height:104px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.donut strong{font-size:26px}.donut small{color:#8b98aa;font-size:11px}.macros{flex:1;display:flex;flex-direction:column;gap:13px}.macro-line{display:flex;justify-content:space-between;gap:10px;font-size:11px}.macro-line b{font-size:11px}.blue-dot{background:#0786ff}.orange-dot{background:#f77b34}.yellow-dot{background:#ffc032}.bar{height:7px;border-radius:99px;background:#eaf0f6;margin-top:6px;overflow:hidden}.bar span{height:100%;display:block;background:#0786ff;border-radius:99px}.hint{font-size:10px;color:#98a3b1;margin:13px 0 0}.health-feature{border:1px solid #edf0f5;border-radius:10px;padding:12px;display:flex;gap:11px;align-items:center}.health-feature strong{font-size:13px}.health-feature p{font-size:10px;color:#8b97a7;margin:5px 0 0}.health-tags{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.health-tags>div{border:1px solid #edf0f5;border-radius:9px;padding:10px}.health-tags small,.health-tags span{font-size:9px;color:#8290a0;display:block}.health-tags b{display:block;font-size:19px;margin:8px 0}.photo-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.photo-slots div{height:134px;border:1px dashed #cbd7e6;border-radius:10px;display:grid;place-items:center;font-size:26px;color:#a2b2c7;background:#f8fbff}.stat-trio,.well-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-trio>div,.well-grid>div{padding:11px;background:#f8fafc;border-radius:9px}.stat-trio small,.well-grid small{display:block;color:#8290a1;font-size:10px}.stat-trio strong,.well-grid strong{display:block;font-size:18px;margin-top:8px}footer{padding:14px 0;border-top:1px solid #e7edf3;color:#a1acb9;font-size:9px;letter-spacing:1px;display:flex;justify-content:space-between}@media(max-width:1400px){.metrics{grid-template-columns:repeat(4,1fr)}.layout.middle{grid-template-columns:repeat(2,1fr)}.physique{grid-column:1/-1}}@media(max-width:1050px){.layout.top,.layout.middle,.layout.bottom{grid-template-columns:1fr}.physique{grid-column:auto}.metrics{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.app{display:block}.sidebar{position:relative;width:100%;height:auto;min-height:0;padding:12px}.brand{margin-bottom:10px}.monogram{font-size:30px}.brand-sub{font-size:10px}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}.sidebar nav a{padding:10px}.nav-heading{grid-column:1/-1;margin:8px}.sidebar-foot{display:none}.topbar{height:45px;padding:0 15px}.topbar .private{display:none}main{padding:20px 14px}.heading h1{font-size:31px}.date{display:none}.metrics{grid-template-columns:repeat(2,1fr)}.metric{padding:11px 8px}.routine-grid{grid-template-columns:repeat(2,1fr)}.nutrition-body{gap:12px}.donut{width:115px;height:115px}.donut>div{width:85px;height:85px}.donut strong{font-size:22px}.panel{padding:13px}.health-tags{gap:5px}.health-tags>div{padding:7px}footer span{display:none}}@media(max-width:390px){.metric .symbol{width:30px;height:30px;font-size:17px}.metric strong{font-size:16px}.nutrition-body{flex-direction:column;align-items:stretch}.donut{align-self:center}}

/* HOME 1.1: logo oficial, contenido alineado a la izquierda e iconos discretos */
.brand{margin-bottom:25px;padding:0 5px}.brand a{display:block}.official-logo{display:block;width:100%;max-width:172px;height:auto;margin:0 auto;object-fit:contain}.brand .monogram,.brand .brand-sub,.brand small{display:none}
main{max-width:none;margin:0;padding:30px 28px 22px}
.routine-icon{width:43px;height:43px;display:grid;place-items:center;margin:7px 0 9px;color:#087df1;background:#e9f3ff;border-radius:11px}.routine-icon svg{width:30px;height:30px}.routine:nth-child(2) .routine-icon{color:#7654e9;background:#f0edff}.routine:nth-child(3) .routine-icon{color:#12a977;background:#e7f8ef}.routine:nth-child(4) .routine-icon{color:#f47733;background:#fff0e7}
@media(min-width:1800px){main{padding-left:34px;padding-right:34px}}
@media(max-width:700px){.official-logo{max-width:130px}main{padding:20px 14px}}

/* HOME 1.2 — filas 2 y 3 equilibradas; filas 1 y 4 intactas */
@media (min-width:1051px){
  .layout.top,.layout.middle{grid-auto-rows:270px;}
  .layout.top > .panel,.layout.middle > .panel{height:270px;min-height:0;}
}
/* En pantallas menores dejamos que el contenido determine la altura. */

/* HOME v1.3 — alinear fila 3 con las columnas de fila 2.
   Sin modificar alturas ni estilos de las tarjetas. */
@media (min-width:1401px) {
  .layout.middle {
    grid-template-columns:
      calc(((100% - 13px) * 1.55 / 2.55 - 13px) / 2)
      calc(((100% - 13px) * 1.55 / 2.55 - 13px) / 2)
      calc((100% - 13px) / 2.55);
  }
}

/* HOME 1.4: alineación de las 6 métricas y tres filas de paneles.
   Solo cambia la distribución horizontal, no las alturas. */
@media (min-width:1401px) {
  .metrics { grid-template-columns: repeat(6,minmax(0,1fr)); }
  .layout.top, .layout.bottom { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .layout.middle { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .layout.middle > .nutrition, .layout.middle > .health { grid-column: span 1; }
  .layout.middle > .physique { grid-column: span 2; }
  /* Las cuatro rutinas siguen en una sola fila, sin alterar la altura del panel. */
  .routine-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* HOME v1.5 — imágenes anatómicas, sin modificar anchuras ni alturas de paneles */
.routine-anatomy {
  display:block; width:100%; height:70px; object-fit:contain; object-position:center;
  margin:5px auto 7px; flex:0 0 70px; border-radius:6px;
}
/* El texto y el enlace permanecen dentro de la tarjeta de altura aprobada. */
.routine { overflow:hidden; }
.routine h3 { font-size:11px; line-height:1.2; margin-bottom:3px; }
.routine p { margin-bottom:6px; }
@media(max-width:700px) { .routine-anatomy { height:78px; flex-basis:78px; } }


/* HOME v1.6 — retoque visual, sin modificar alturas ni columnas */
/* Las ilustraciones 1 y 3 tienen más margen dentro de sus archivos. */
.routine:nth-child(1) .routine-anatomy,
.routine:nth-child(3) .routine-anatomy {
  transform: scale(1.42);
  transform-origin: center;
}
/* El blanco de la ilustración 2 se funde con el fondo claro de la tarjeta. */
.routine:nth-child(2) .routine-anatomy {
  mix-blend-mode: multiply;
}

/* HOME v1.7 — reducir solo la ilustración del día 3 un 15%; resto intacto */
.routine:nth-child(3) .routine-anatomy { transform: scale(1.207); }

/* HOME v1.8 — bajar solo los títulos de las rutinas hacia el enlace, sin mover las imágenes ni alterar las tarjetas */
.routine h3 { margin-top: 13px; }

/* HOME v1.9 — iconografía vectorial uniforme, sin alterar tarjetas ni layout */
.metric-icon{width:21px;height:21px;display:block;flex:none}

/* HOME v2.1 — iconos PNG oficiales dentro de las píldoras existentes */
.metric .symbol .metric-icon-img{display:block;width:22px;height:22px;object-fit:contain;object-position:center;flex:none;}
@media(max-width:390px){.metric .symbol .metric-icon-img{width:20px;height:20px;}}

/* HOME v2.2 — datos y alineación de las dos tarjetas inferiores. */
.layout.bottom .stat-trio > div,
.layout.bottom .well-grid > div {
  min-width:0; min-height:79px; height:79px;
  padding:11px; display:flex; flex-direction:column;
  justify-content:flex-start;
}
.layout.bottom .stat-trio strong,
.layout.bottom .well-grid strong { margin-top:8px; line-height:22px; }
.layout.bottom .well-grid .bar { margin-top:auto; height:6px; flex:none; }
.layout.bottom .well-grid > div:nth-child(1) .bar span { background:#1689f9; }
.layout.bottom .well-grid > div:nth-child(2) .bar span { background:#8a70e8; }
.layout.bottom .well-grid > div:nth-child(3) .bar span { background:#18a978; }

/* HOME v2.3 — solo Nutrición: distribución estimada de energía por macronutriente */
.nutrition .donut{background:conic-gradient(#0786ff 0 34%,#f77b34 34% 73%,#ffc032 73% 100%)}
.nutrition .donut strong{font-size:20px;white-space:nowrap;letter-spacing:-.5px}
.nutrition .macros>div:nth-child(1) .bar span{background:#0786ff}
.nutrition .macros>div:nth-child(2) .bar span{background:#f77b34}
.nutrition .macros>div:nth-child(3) .bar span{background:#ffc032}

/* HOME v2.4 — asegurar aro tricolor de Nutrición, sin cambios de tamaño */
.nutrition .donut{background:conic-gradient(#0786ff 0 34%, #f77b34 34% 73%, #ffc032 73% 100%)}

/* HOME v2.5 — cabecera, hero compacto y banner lateral. El dashboard conserva sus dimensiones. */
.sidebar{overflow:hidden}
.sidebar-banner{margin-top:auto;min-height:0;flex:0 1 300px;display:flex;align-items:flex-end;overflow:hidden;border-radius:8px}
.sidebar-banner img{width:100%;height:100%;object-fit:cover;object-position:center bottom;display:block}
.topbar{position:relative;z-index:10;height:54px;justify-content:flex-end;padding:0 26px;letter-spacing:normal}
.top-actions{display:flex;align-items:center;gap:16px}
.header-search{height:35px;width:225px;display:flex;align-items:center;gap:9px;border:1px solid #344153;border-radius:9px;padding:0 10px;background:#101923}
.header-search svg,.header-icon svg{height:18px;width:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.header-search input{background:transparent;border:0;outline:0;color:#fff;min-width:0;width:100%;font:400 12px inherit}
.header-search input::placeholder{color:#a8b4c5}
.header-search:focus-within{border-color:#0786ff;box-shadow:0 0 0 2px #0786ff33}
.header-icon,.profile-trigger{cursor:pointer;color:#fff;background:transparent;border:0;display:grid;place-items:center}
.header-icon{width:34px;height:34px;border-radius:8px}
.header-icon:hover{background:#192738}
.profile-wrap{position:relative}
.profile-trigger{width:38px;height:38px;border-radius:50%;border:1px solid #0786ff;font-size:12px}
.profile-panel{position:absolute;right:0;top:46px;width:260px;padding:16px;background:#fff;color:#182237;border:1px solid #e0e8f3;border-radius:12px;box-shadow:0 12px 36px #0003;letter-spacing:0;z-index:50}
.profile-panel[hidden],.search-results[hidden]{display:none}
.profile-panel strong,.profile-panel span{display:block}.profile-panel span{color:#0786ff;font-size:10px;margin:5px 0}.profile-panel p{font-size:12px;line-height:1.5;color:#66748a;margin:8px 0 0;font-weight:400}
.search-results{position:absolute;right:110px;top:50px;width:285px;max-width:calc(100vw - 32px);background:#fff;color:#1a2637;border:1px solid #e0e8f3;border-radius:10px;padding:7px;box-shadow:0 12px 36px #0003;letter-spacing:0}
.search-results a,.search-results p{display:block;padding:10px;border-radius:7px;font-size:12px;margin:0;font-weight:500}
.search-results a:hover{background:#e9f3ff;color:#0786ff}
.hero-banner{height:118px;background:#090d12 url('assets/mrproject-hero-banner.png') center center/100% 100% no-repeat;border-bottom:1px solid #1e2b3a}
/* Tema oscuro: solo la zona interactiva; logo, sidebar y hero permanecen oscuros. */
body.theme-dark{background:#111923;color:#edf4ff}
body.theme-dark main{background:#111923}
body.theme-dark .metric,body.theme-dark .panel{background:#1c2938;border-color:#2c3b4c;color:#edf4ff}
body.theme-dark .routine,body.theme-dark .stat-trio>div,body.theme-dark .well-grid>div,body.theme-dark .health-tags>div,body.theme-dark .health-feature,body.theme-dark .photo-slots div{background:#243449;border-color:#33465d;color:#edf4ff}
body.theme-dark .empty-chart{background:#1c2938}
body.theme-dark .chart-lines{opacity:.17}
body.theme-dark .chart-note,body.theme-dark .donut>div{background:#1c2938;color:#edf4ff;border-color:#33465d}
body.theme-dark .bar{background:#344459}
body.theme-dark .heading p,body.theme-dark .panel-head p,body.theme-dark .metric p,body.theme-dark .hint{color:#a8b6c9}
body.theme-dark .health-tags small,body.theme-dark .health-tags span,body.theme-dark .metric small,body.theme-dark .stat-trio small,body.theme-dark .well-grid small{color:#a9b8c9}
body.theme-dark footer{border-color:#2c3b4c}
@media(max-width:1050px){.sidebar-banner{flex-basis:240px}.hero-banner{height:100px}}
@media(max-width:700px){.sidebar{overflow:visible}.sidebar-banner{display:none}.topbar{height:52px;padding:0 12px}.top-actions{gap:9px}.header-search{width:min(52vw,230px)}.hero-banner{height:88px;background-size:100% 100%}.search-results{right:10px;top:49px}.profile-panel{right:0}}

/* HOME v2.6: imagen lateral completa y hero compacto */
main{padding-top:16px}
.sidebar-banner{flex:0 0 auto;width:100%;height:auto;max-height:calc(100vh - 465px);margin-top:auto;overflow:visible;align-items:flex-end}
.sidebar-banner img{display:block;width:100%;height:auto;max-height:calc(100vh - 465px);object-fit:contain;object-position:center bottom}
.hero-banner{height:clamp(105px,8.7vw,145px);background-image:url('assets/mrproject-hero-compact.png');background-position:center;background-size:100% 100%;background-repeat:no-repeat}
@media(max-height:750px) and (min-width:701px){.sidebar-banner,.sidebar-banner img{max-height:210px}}
@media(max-width:700px){main{padding-top:14px}.sidebar-banner{display:none}.hero-banner{height:85px}}

/* HOME v2.7 — correcciones puntuales de banners y contraste anatómico */
.hero-banner{background-image:url('assets/mrproject-hero-compact.png');background-size:cover;background-position:center center;background-repeat:no-repeat;}
@media(max-width:700px){.hero-banner{background-size:cover;background-position:center center;}}
.sidebar-banner{background:transparent;border-radius:0;overflow:hidden;}
.sidebar-banner img{object-fit:contain;mix-blend-mode:screen;}
body.theme-dark .routine:nth-child(2) .routine-anatomy{filter:brightness(1.65) contrast(1.07);}

/* HOME v2.8 */
.topbar{height:84px;min-height:84px}
.routine:nth-child(2) .routine-anatomy,body.theme-dark .routine:nth-child(2) .routine-anatomy{mix-blend-mode:normal;filter:none}
@media(max-width:700px){.topbar{height:52px;min-height:52px}}


/* HOME v2.9.6 — cuatro miniaturas verticales en dos parejas semanales.
   No altera el panel exterior ni ninguna otra sección. */
.physique .evolution-head-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}
.physique .evolution-head-meta a{margin-top:3px}
.physique .evolution-date{margin:0;color:#8995a5;font-size:10px;white-space:nowrap;text-align:right}
body.theme-dark .physique .evolution-date{color:#a8b6c9}
.physique .panel-head{margin-bottom:11px}
.physique .evolution-weeks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.physique .evolution-week{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:7px}
.physique .evolution-week-photos{display:grid;grid-template-columns:repeat(2,minmax(0,96px));justify-content:center;gap:9px;min-width:0}
.physique .photo-preview{display:block;position:relative;width:100%;height:157px;min-width:0;overflow:hidden;border:1px solid #334153;border-radius:9px;background:#0d1118;isolation:isolate}
.physique .photo-preview>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important;background:#0d1118}
.physique .photo-preview>span{position:absolute;bottom:0;left:0;right:0;padding:9px 2px 5px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;text-align:center;font-size:10px;font-weight:700}
.physique .photo-preview:hover{border-color:#0786ff}
.physique .evolution-week-caption{display:flex;align-items:baseline;justify-content:center;gap:7px;min-width:0;white-space:nowrap}
.physique .evolution-week-caption strong{font-size:10px;color:#0786ff;letter-spacing:.35px}
.physique .evolution-week-caption small{font-size:9px;color:#8995a5}
.physique .evolution-week-demo .evolution-week-caption strong{color:#73849a}
body.theme-dark .physique .evolution-week-caption small{color:#a8b6c9}
@media(max-width:700px){.physique .evolution-weeks{gap:7px}.physique .evolution-week-photos{grid-template-columns:repeat(2,minmax(0,96px));gap:5px}.physique .photo-preview{height:140px}.physique .evolution-week-caption{flex-wrap:wrap;gap:3px}.physique .evolution-date{font-size:9px}}
@media(max-width:390px){.physique .photo-preview{height:120px}.physique .evolution-week-caption small{font-size:8px}}

/* HOME v2.9.7 — 4 semanas en el espacio exterior original de 270px. */
@media (min-width:1051px){.layout.middle>.physique{height:270px;min-height:0;overflow:hidden}}
.physique .panel-head{margin-bottom:10px}
.physique .evolution-weeks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;min-width:0}
.physique .evolution-week{min-width:0;gap:7px}
.physique .evolution-week-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;justify-content:center;width:100%;max-width:184px;margin:0 auto}
.physique .photo-preview{height:153px;min-width:0;width:100%;background:#0d1118;border-color:#334153;border-radius:8px}
.physique .photo-preview>img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important;background:#0d1118}
.physique .photo-preview>span{font-size:9px;padding:7px 2px 4px}
.physique .evolution-week-caption{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;white-space:normal;text-align:center}
.physique .evolution-week-caption strong{font-size:10px;letter-spacing:.15px;color:#0786ff}
.physique .evolution-week:nth-child(even) .evolution-week-caption strong{color:#151d2c}
body.theme-dark .physique .evolution-week:nth-child(even) .evolution-week-caption strong{color:#e8edf5}
.physique .evolution-week-caption small{font-size:9px;line-height:1.15;color:#8995a5}
@media(max-width:700px){.physique .evolution-weeks{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}.physique .photo-preview{height:145px}.physique .evolution-week-photos{max-width:180px}}

/* HOME v2.9.8 — 8 fotos en UNA fila, cuatro grupos. Solo Evolución física. */
.physique .evolution-weeks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;align-items:start}
.physique .evolution-week{min-width:0;gap:5px}
.physique .evolution-week-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;gap:4px;width:100%;max-width:144px;margin:0 auto}
.physique .photo-preview{width:100%;height:125px;min-width:0;border-radius:7px;background:#0d1118;overflow:hidden}
.physique .photo-preview>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;transform:none!important;background:#0d1118}
.physique .photo-preview>span{font-size:8px;padding:7px 1px 3px}
.physique .evolution-week-caption{gap:2px}
.physique .evolution-week-caption strong{font-size:9px}
.physique .evolution-week-caption small{font-size:8px}
@media(min-width:1051px){.layout.middle>.physique{height:270px;overflow:hidden}}
/* La vista compacta conserva las cuatro semanas en horizontal hasta 500px. */
@media(min-width:501px) and (max-width:1050px){.physique .evolution-weeks{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.physique .evolution-week-photos{max-width:144px}.physique .photo-preview{height:125px}}
@media(max-width:500px){.physique .evolution-weeks{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:12px}.physique .photo-preview{height:125px}}


/* HOME v2.9.10 — ajustes exclusivos de Evolución física. */
/* Conserva los 270px y las cuatro parejas en una fila en escritorio. */
@media(min-width:1051px){
  .physique .panel-head{margin-bottom:17px;}
  .physique .evolution-weeks{transform:translateY(19px);}
}
/* Alternancia azul/negro (blanco en tema oscuro), incluso en semanas pendientes. */
.physique .evolution-week:nth-child(odd) .evolution-week-caption strong{color:#0786ff;}
.physique .evolution-week:nth-child(even) .evolution-week-caption strong{color:#151d2c;}
body.theme-dark .physique .evolution-week:nth-child(even) .evolution-week-caption strong{color:#edf4ff;}
/* Pequeño zoom interior; el marco mantiene exactamente sus dimensiones. */
.physique .photo-preview:not(.photo-pending)>img{transform:scale(1.15)!important;transform-origin:center center;object-fit:cover;}
/* Semanas futuras: tarjetas vacías, sin enlaces ni fotografías ficticias. */
.physique .photo-pending{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:#f4f7fb;border:1px dashed #b9c7d9;cursor:default;}
.physique .photo-pending>span{position:static;background:none;color:#7c8da2;padding:0;font-size:9px;}
.physique .photo-pending>.pending-note{font-size:8px;font-weight:500;color:#9aa8b8;}
body.theme-dark .physique .photo-pending{background:#243449;border-color:#4c6078;}
body.theme-dark .physique .photo-pending>span{color:#b4c4d7;}
@media(max-width:1050px){.physique .evolution-week-caption small{font-size:8px;}}

/* HOME v2.9.11 — agrupación horizontal y tipografía; sin modificar fotos ni panel. */
@media (min-width:1051px){
  .physique .evolution-weeks{
    width:94%;
    margin-inline:auto;
    column-gap:12px;
  }
}
.physique .evolution-week{gap:10px;}
.physique .evolution-week-caption{gap:4px;}
.physique .evolution-week-caption strong{font-size:10px;line-height:1.15;}
.physique .evolution-week-caption small{font-size:9px;line-height:1.2;}
@media(max-width:1050px){
  .physique .evolution-week-caption small{font-size:9px;}
}

/* HOME v3.0.2 — solo MI PROGRESO; panel y dimensiones intactos. */
.progress-chart{height:143px;position:relative;overflow:hidden;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdff)}
.progress-chart svg{display:block;width:100%;height:143px;overflow:visible}
.progress-legend span:nth-child(1){color:#1683ff}
.progress-legend span:nth-child(2){color:#18b889}
.progress-legend span:nth-child(3){color:#ff873f}
body.theme-dark .progress-chart{background:#1c2938}

/* HOME v3.0.3 — únicamente tipografía de MI PROGRESO. */
.progress-chart svg text{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:0;font-variant-ligatures:normal;}

/* HOME v3.0.4: etiquetas SVG un punto más pequeñas; sin cambios de layout. */

/* HOME v3.0.6 — SOLO MI PROGRESO: gráfica compacta y 9 cromos en una fila */
.progress{overflow:hidden;display:flex;flex-direction:column}
.progress .panel-head{margin-bottom:6px;align-items:flex-start}
.progress-head-legend{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;padding-top:2px}
.progress-head-legend span{font-size:9px;color:#748399;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.progress-head-legend i{display:inline-block;width:7px;height:7px;background:var(--dot);border-radius:50%;flex:none}
.progress .progress-chart{height:112px;flex:none;background:transparent;border-radius:0;overflow:hidden}
.progress .progress-chart svg{height:112px;width:100%;display:block;overflow:hidden}
.progress-stickers{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin-top:auto;min-width:0}
.progress-sticker{min-width:0;height:56px;padding:5px 2px 4px;border:1px solid #e7edf5;border-radius:9px;background:#f8fafd;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;text-align:center}
.progress-sticker .sticker-icon{font-size:14px;line-height:15px;font-weight:700;color:var(--accent,#7e91a8);font-family:Arial,sans-serif}
.progress-sticker .sticker-label{font-size:8px;line-height:10px;color:#8290a2;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.progress-sticker .sticker-value{font-size:10px;line-height:12px;font-weight:800;letter-spacing:-.25px;color:#1a2637;white-space:nowrap;font-variant-numeric:tabular-nums}
.progress-stickers-loading{font-size:11px;color:#8290a2;grid-column:1/-1}
body.theme-dark .progress-sticker{background:#243449;border-color:#33465d}
body.theme-dark .progress-sticker .sticker-label{color:#a8b6c9}
body.theme-dark .progress-sticker .sticker-value{color:#f1f6ff}
body.theme-dark .progress-head-legend span{color:#a8b6c9}
@media(max-width:1400px){.progress-head-legend{gap:6px}.progress-stickers{gap:3px}.progress-sticker .sticker-value{font-size:9px}}
@media(max-width:600px){.progress .panel-head{gap:4px;flex-wrap:wrap}.progress-head-legend{margin-left:auto}.progress-stickers{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.progress-sticker{height:59px}.progress-sticker .sticker-label{font-size:10px}.progress-sticker .sticker-value{font-size:12px}.progress{overflow:visible}}


/* HOME v3.0.7 — retoque quirúrgico de los nueve cromos de MI PROGRESO. */
/* Más aire entre cromos, sin alterar altura, gráfica ni otras tarjetas. */
@media (min-width:601px){
  .progress .progress-stickers{gap:7px;padding-inline:4px;}
}
/* Los tres primeros conservan los colores originales de sus métricas. */
.progress .progress-sticker:nth-child(4){--sticker-tone:#0c9fbe;} /* Agua */
.progress .progress-sticker:nth-child(5){--sticker-tone:#8b5cf6;} /* IMC */
.progress .progress-sticker:nth-child(6){--sticker-tone:#ef6673;} /* Visceral */
.progress .progress-sticker:nth-child(7){--sticker-tone:#d89a1c;} /* Masa grasa */
.progress .progress-sticker:nth-child(8){--sticker-tone:#6485b3;} /* Masa ósea */
.progress .progress-sticker:nth-child(9){--sticker-tone:#e77742;} /* Basal */
.progress .progress-sticker:nth-child(n+4) .sticker-icon{color:var(--sticker-tone);}
.progress .progress-sticker:nth-child(n+4) .sticker-value{color:var(--sticker-tone);}
body.theme-dark .progress .progress-sticker:nth-child(n+4) .sticker-value{color:var(--sticker-tone);}
/* En anchos intermedios preservamos legibilidad y evitamos desbordes. */
@media (min-width:601px) and (max-width:1400px){
  .progress .progress-stickers{gap:5px;padding-inline:2px;}
}


/* HOME v3.0.8 — uniformidad cromática y tipografía más compacta. */
/* Cada valor hereda exactamente el color de su propio icono. */
.progress .progress-sticker .sticker-value,
body.theme-dark .progress .progress-sticker .sticker-value{
  color:var(--sticker-tone,var(--accent,#7e91a8));
}
/* Los seis indicadores secundarios ya comparten el tono del icono. */
.progress .progress-sticker:nth-child(n+4) .sticker-icon{
  color:var(--sticker-tone,var(--accent,#7e91a8));
}
@media (min-width:601px){
  .progress .progress-sticker .sticker-label{font-size:7px;}
  .progress .progress-sticker .sticker-value{font-size:9px;letter-spacing:-.2px;}
  .progress .progress-sticker{gap:3px;}
}

/* HOME v3.0.11 — encuadre consolidado para todas las semanas.
   Una sola regla, sin zoom, sin modificar los archivos ni el diseño exterior. */
.physique .evolution-week-photos .photo-preview:not(.photo-pending) > img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:none !important;
}

/* HOME v3.1.4 — tipografía e iconos del menú, estética oficial intacta. */
.sidebar nav a{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Arial,sans-serif;font-size:12.5px;font-weight:500;letter-spacing:-.08px;line-height:1.25;gap:12px;}
.sidebar nav a.active{font-weight:600;}
.sidebar nav .nav-icon{display:block;width:17px;height:17px;min-width:17px;flex:0 0 17px;}
@media(max-width:700px){.sidebar nav a{font-size:12px;gap:9px;}}

/* HOME v3.1.5 — cuatro indicadores compactos, exclusivamente en Salud. */
.health .health-tags{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.health .health-tags>div{min-width:0;padding:7px 5px}
.health .health-tags small{font-size:8px;line-height:1.2;min-height:20px;overflow-wrap:anywhere}
.health .health-tags b{font-size:16px;line-height:1.1;margin:5px 0}
.health .health-tags span{font-size:8px;line-height:1.2;overflow-wrap:anywhere}
@media(max-width:420px){.health .health-tags{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.health .health-tags>div{padding:9px}.health .health-tags small{min-height:0;font-size:10px}.health .health-tags b{font-size:19px}.health .health-tags span{font-size:9px}}

/* HOME v3.1.6 — cuatro píldoras en una fila, rectángulos verticales compactos.
   Exclusivo panel Salud; sin alterar altura del panel ni el resto del dashboard. */
.panel.health .health-tags{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px;margin-top:9px}
.panel.health .health-tags>div{min-width:0;padding:9px 5px;border-radius:9px;overflow:hidden}
.panel.health .health-tags small{display:block;font-size:clamp(8px,.78vw,10px);line-height:1.15;min-height:24px;overflow-wrap:normal;word-break:normal;hyphens:auto}
.panel.health .health-tags b{font-size:clamp(15px,1.5vw,20px);line-height:1.1;margin:6px 0 5px;white-space:nowrap}
.panel.health .health-tags span{font-size:clamp(8px,.76vw,10px);line-height:1.15;white-space:nowrap}
@media(max-width:700px){.panel.health .health-tags{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:5px}.panel.health .health-tags>div{padding:8px 4px}.panel.health .health-tags small{font-size:9px;min-height:30px}.panel.health .health-tags b{font-size:16px}.panel.health .health-tags span{font-size:8px}}
@media(max-width:360px){.panel.health .health-tags{gap:3px}.panel.health .health-tags>div{padding:7px 3px}.panel.health .health-tags small{font-size:8px}.panel.health .health-tags b{font-size:14px}.panel.health .health-tags span{font-size:7px}}

/* HOME v3.1.7 — acentos cromáticos suaves por indicador; sin alterar geometría. */
.panel.health .health-tags>div:nth-child(1){background:#fff5ef;border-color:#f4d4c4}
.panel.health .health-tags>div:nth-child(1) b{color:#cb5639}
.panel.health .health-tags>div:nth-child(2){background:#f5f0ff;border-color:#e2d6f8}
.panel.health .health-tags>div:nth-child(2) b{color:#7955b6}
.panel.health .health-tags>div:nth-child(3){background:#edfaf4;border-color:#ccebdc}
.panel.health .health-tags>div:nth-child(3) b{color:#168960}
.panel.health .health-tags>div:nth-child(4){background:#eef6ff;border-color:#d0e2fa}
.panel.health .health-tags>div:nth-child(4) b{color:#176ec3}
body.theme-dark .panel.health .health-tags>div:nth-child(1){background:#382a2a;border-color:#704638}
body.theme-dark .panel.health .health-tags>div:nth-child(1) b{color:#ffa68a}
body.theme-dark .panel.health .health-tags>div:nth-child(2){background:#302b42;border-color:#554473}
body.theme-dark .panel.health .health-tags>div:nth-child(2) b{color:#c3a6ff}
body.theme-dark .panel.health .health-tags>div:nth-child(3){background:#203a35;border-color:#356c59}
body.theme-dark .panel.health .health-tags>div:nth-child(3) b{color:#73ddb0}
body.theme-dark .panel.health .health-tags>div:nth-child(4){background:#24374e;border-color:#365c87}
body.theme-dark .panel.health .health-tags>div:nth-child(4) b{color:#87c2ff}
