/* ============================================================
   DTR · Nutrición v0.8 · estructura visual atleta
   - Header compacto, sin kcal visibles para atleta
   - Menú diario/semanal preparado para el módulo de menús
   - Comidas desplegables y acciones secundarias
   - Tipografía y estética alineadas con la app principal
============================================================ */

.progress-subtabs,
.nutri-day-tabs,
.nutri-actions-row {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:16px;
  font-family:inherit;
}

.progress-subtab,
.nutri-day-tab,
.nutri-action-btn {
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.68);
  border-radius:12px;
  padding:10px 14px;
  font-size:13px;
  font-weight:700;
  line-height:1.15;
  cursor:pointer;
  transition:all .18s var(--ease);
  font-family:inherit;
}

.progress-subtab:hover,
.nutri-day-tab:hover,
.nutri-action-btn:hover {
  background:rgba(255,255,255,.10);
  color:#fff;
}

.progress-subtab.active,
.nutri-day-tab.active,
.nutri-action-btn.active {
  background:var(--blue);
  border-color:var(--blue);
  color:#fff;
  box-shadow:0 8px 22px rgba(47,125,209,.22);
}

.nutri-action-btn.ghost {
  background:rgba(255,255,255,.03);
  color:rgba(255,255,255,.58);
}

.progress-panel,
.nutri-panel { display:none; }
.progress-panel.active,
.nutri-panel.active { display:block; }

.nutri-shell {
  display:flex;
  flex-direction:column;
  gap:14px;
  font-family:inherit;
}

/* ────────────────────────────────────────────
   HERO COMPACTO
──────────────────────────────────────────── */
.nutri-hero {
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#16304F,#0A1A2F);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:14px 16px;
  min-height:auto;
}
.nutri-hero:after {
  content:'';
  position:absolute;
  width:190px;
  height:190px;
  right:-82px;
  top:-92px;
  background:radial-gradient(circle,rgba(79,158,232,.25),transparent 66%);
  pointer-events:none;
}
.nutri-hero-main,
.nutri-macro-strip {
  position:relative;
  z-index:1;
}
.nutri-hero-main {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.nutri-hero-title-wrap { min-width:0; }
.nutri-hero-k {
  font-size:10px;
  font-weight:700;
  letter-spacing:1.1px;
  color:rgba(255,255,255,.46);
  text-transform:uppercase;
  margin-bottom:3px;
}
.nutri-hero-title {
  font-size:20px;
  font-weight:700;
  letter-spacing:-.35px;
  line-height:1.12;
  color:#fff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nutri-next-mini {
  min-width:142px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.075);
  border-radius:13px;
  padding:9px 11px;
  text-align:left;
}
.nutri-next-mini span,
.nutri-macro-stat span {
  display:block;
  font-size:9.5px;
  color:rgba(255,255,255,.50);
  font-weight:700;
  letter-spacing:.7px;
  text-transform:uppercase;
  line-height:1;
}
.nutri-next-mini b {
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:14px;
  font-weight:700;
  letter-spacing:-.2px;
  line-height:1.05;
}
.nutri-macro-strip {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:10px;
}
.nutri-macro-stat {
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.055);
  border-radius:12px;
  padding:8px 10px;
  min-height:48px;
}
.nutri-macro-stat b {
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:15px;
  font-weight:700;
  letter-spacing:-.2px;
  line-height:1;
}

/* ────────────────────────────────────────────
   SELECTOR DÍAS + ACCIONES
──────────────────────────────────────────── */
.nutri-day-tabs {
  background:rgba(255,255,255,.05);
  padding:8px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  margin-bottom:0;
}
.nutri-day-tab {
  flex:1;
  min-width:76px;
  text-align:center;
  padding:10px 8px;
}
.nutri-day-tab small {
  display:block;
  margin-top:2px;
  opacity:.58;
  font-size:10px;
  font-weight:700;
}
.nutri-actions-row { margin-bottom:0; }
.nutri-action-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}

/* ────────────────────────────────────────────
   CARDS / DÍA / COMIDAS
──────────────────────────────────────────── */
.nutri-day-card,
.nutri-empty-card,
.nutri-meal-accordion,
.nutri-week-day {
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  font-family:inherit;
}
.nutri-day-card { padding:18px; }
.nutri-day-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.nutri-day-head.minimal { margin-bottom:12px; }
.nutri-day-title {
  font-size:20px;
  font-weight:700;
  letter-spacing:-.35px;
  color:var(--navy);
}
.nutri-day-sub {
  font-size:13px;
  color:var(--text-2);
  margin-top:3px;
}

.nutri-meal-list {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.nutri-meal-accordion {
  overflow:hidden;
  background:#FBFCFD;
}
.nutri-meal-summary {
  width:100%;
  border:none;
  background:transparent;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:15px 16px;
  cursor:pointer;
  text-align:left;
  font-family:inherit;
}
.nutri-meal-left {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.nutri-meal-icon {
  width:36px;
  height:36px;
  border-radius:11px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--blue-soft);
  font-size:18px;
  flex-shrink:0;
}
.nutri-meal-left b {
  display:block;
  font-size:15px;
  font-weight:700;
  color:var(--navy);
}
.nutri-meal-left small {
  display:block;
  margin-top:1px;
  font-size:12px;
  color:var(--text-2);
}
.nutri-chevron {
  font-size:18px;
  color:var(--text-3,#8FA0B4);
  transition:transform .2s var(--ease);
}
.nutri-meal-accordion.open .nutri-chevron { transform:rotate(180deg); }
.nutri-meal-body {
  display:none;
  padding:0 16px 16px 64px;
}
.nutri-meal-accordion.open .nutri-meal-body { display:block; }

.nutri-meal-placeholder {
  border-top:1px solid var(--line-2,#EEF2F7);
  padding-top:13px;
}
.nutri-recipe-title {
  font-size:14px;
  font-weight:700;
  color:var(--navy);
}
.nutri-recipe-sub {
  margin-top:3px;
  font-size:13px;
  color:var(--text-2);
  line-height:1.45;
}
.nutri-ingredient-list {
  margin-top:12px;
  border:1px solid var(--line-2,#EEF2F7);
  border-radius:12px;
  overflow:hidden;
}
.nutri-ingredient-row {
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:9px 11px;
  background:#fff;
  font-size:13px;
  color:var(--text-2);
  border-bottom:1px solid var(--line-2,#EEF2F7);
}
.nutri-ingredient-row:last-child { border-bottom:none; }
.nutri-ingredient-row b {
  color:var(--navy);
  font-weight:700;
}
.nutri-ingredient-row.muted {
  background:#FAFCFE;
  color:var(--text-3,#8FA0B4);
}
.nutri-recovery-option {
  margin-top:14px;
}
.nutri-recovery-option-head {
  font-size:13.5px;
  font-weight:800;
  color:var(--navy);
  letter-spacing:.01em;
}
.nutri-recovery-option .nutri-ingredient-list {
  margin-top:8px;
}
.nutri-recovery-option .nutri-ingredient-row b {
  text-align:right;
}
.nutri-macro-row {
  margin-top:12px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.nutri-macro-chip,
.nutri-muted-chip {
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-size:11px;
  font-weight:700;
  padding:6px 9px;
  border-radius:999px;
}
.nutri-macro-chip {
  background:#EEF4FB;
  color:var(--blue);
}
.nutri-muted-chip {
  padding:5px 8px;
  background:#F3F5F8;
  color:var(--text-2);
}

/* ────────────────────────────────────────────
   SEMANA / LISTA COMPRA
──────────────────────────────────────────── */
.nutri-empty-card {
  text-align:center;
  padding:32px 24px;
  border-style:dashed;
  background:#fff;
}
.nutri-empty-card.compact-empty { padding:28px 22px; }
.nutri-empty-ic { font-size:38px; margin-bottom:9px; }
.nutri-empty-h {
  font-size:17px;
  font-weight:700;
  color:var(--navy);
}
.nutri-empty-d {
  max-width:440px;
  margin:6px auto 0;
  font-size:13.5px;
  color:var(--text-2);
  line-height:1.55;
}
.nutri-week-list {
  display:flex;
  flex-direction:column;
  gap:10px;
}
.nutri-week-day { padding:16px; }
.nutri-week-day-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.nutri-week-day-title {
  font-size:15px;
  font-weight:700;
  color:var(--navy);
}
.nutri-week-day-sub {
  font-size:12.5px;
  color:var(--text-2);
  margin-top:2px;
}
.nutri-week-meals {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}

.nutri-week-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border:1px solid rgba(0,74,173,.12);
  background:linear-gradient(135deg,#F7FAFF,#EEF5FF);
  border-radius:16px;
}
.nutri-week-tools-k{
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--blue);
}
.nutri-week-tools-title{
  margin-top:2px;
  font-size:16px;
  font-weight:900;
  color:var(--navy);
}
.nutri-pdf-btn{
  border:1px solid rgba(0,74,173,.18);
  background:#fff;
  color:var(--blue);
  border-radius:999px;
  padding:9px 13px;
  font-size:12.5px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(0,74,173,.08);
  font-family:inherit;
  white-space:nowrap;
  transition:all .18s var(--ease);
}
.nutri-pdf-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(0,74,173,.35);
  box-shadow:0 10px 22px rgba(0,74,173,.14);
}

@media (max-width:900px){
  .nutri-hero {
    padding:13px 14px;
    border-radius:17px;
  }
  .nutri-hero-title { font-size:19px; }
}
@media (max-width:620px){
  .progress-subtabs,
  .nutri-actions-row {
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:2px;
  }
  .progress-subtab,
  .nutri-action-btn { white-space:nowrap; }
  .nutri-day-tabs {
    flex-wrap:nowrap;
    overflow-x:auto;
    margin-left:-2px;
    margin-right:-2px;
  }
  .nutri-day-tab {
    min-width:70px;
    flex:0 0 auto;
  }
  .nutri-hero-main {
    align-items:flex-start;
    gap:10px;
  }
  .nutri-next-mini {
    min-width:118px;
    padding:8px 9px;
  }
  .nutri-next-mini b { font-size:13px; }
  .nutri-macro-strip {
    gap:6px;
    margin-top:9px;
  }
  .nutri-macro-stat {
    padding:7px 8px;
    min-height:44px;
  }
  .nutri-macro-stat span { font-size:8.8px; letter-spacing:.45px; }
  .nutri-macro-stat b { font-size:13px; }
  .nutri-day-card,
  .nutri-empty-card {
    padding:16px;
    border-radius:16px;
  }
  .nutri-day-head {
    flex-direction:column;
    align-items:flex-start;
  }
  .nutri-meal-body { padding-left:16px; }
}


/* ────────────────────────────────────────────
   Nutrición atleta v0.5 · datos reales
──────────────────────────────────────────── */
.nutri-plan-meta{
  margin-top:4px;
  font-size:11.5px;
  color:rgba(255,255,255,.54);
  font-weight:650;
}
.nutri-shopping-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.nutri-shopping-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
}
.nutri-shopping-title{
  font-size:14px;
  font-weight:800;
  color:var(--navy);
  margin-bottom:9px;
}
.nutri-shopping-row{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:8px 0;
  border-bottom:1px solid var(--line-2,#EEF2F7);
  font-size:13px;
  color:var(--text-2);
}
.nutri-shopping-row:last-child{border-bottom:0;}
.nutri-shopping-row b{
  color:var(--navy);
  font-weight:800;
  white-space:nowrap;
}
@media(max-width:720px){
  .nutri-shopping-list{grid-template-columns:1fr;}
}

/* ────────────────────────────────────────────
   Nutrición atleta v0.8 · preview semana + compra checklist
──────────────────────────────────────────── */
.nutri-week-switcher{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.nutri-week-switch-buttons{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:6px;
}
.nutri-week-switch-btn{
  border:none;
  border-radius:14px;
  padding:10px 12px;
  background:transparent;
  color:rgba(255,255,255,.58);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  transition:all .18s var(--ease);
  min-width:0;
}
.nutri-week-switch-btn span{
  display:block;
  font-size:10px;
  font-weight:850;
  letter-spacing:.95px;
  text-transform:uppercase;
  color:inherit;
}
.nutri-week-switch-btn b{
  display:block;
  margin-top:3px;
  font-size:13px;
  font-weight:850;
  letter-spacing:-.15px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.nutri-week-switch-btn:hover:not(:disabled){
  background:rgba(255,255,255,.08);
  color:#fff;
}
.nutri-week-switch-btn.active{
  background:#fff;
  color:var(--navy);
  box-shadow:0 12px 26px rgba(10,26,47,.12);
}
.nutri-week-switch-btn:disabled{
  cursor:not-allowed;
  opacity:.48;
}
.nutri-preview-note{
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border-radius:14px;
  border:1px solid rgba(79,158,232,.20);
  background:rgba(79,158,232,.10);
  color:rgba(255,255,255,.82);
}
.nutri-preview-note b{
  flex:0 0 auto;
  font-size:11px;
  font-weight:900;
  letter-spacing:.7px;
  text-transform:uppercase;
  color:#fff;
}
.nutri-preview-note span{
  font-size:12.2px;
  font-weight:650;
  line-height:1.35;
  color:rgba(255,255,255,.66);
}

.nutri-preview-note button{
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-family:inherit;
  font-size:11.5px;
  font-weight:850;
  padding:7px 10px;
  cursor:pointer;
}
.nutri-preview-note button:hover{
  background:rgba(255,255,255,.16);
}

.nutri-plan-meta.preview{
  color:#BFE0FF;
}

.nutri-meal-accordion.is-pre-workout{
  border-color:rgba(47,125,209,.24);
  background:linear-gradient(180deg,#F2F8FF 0%,#FBFDFF 100%);
  box-shadow:inset 3px 0 0 rgba(47,125,209,.62);
}
.nutri-meal-accordion.is-pre-workout .nutri-meal-icon{
  background:linear-gradient(135deg,#DCEEFF,#CBE4FF);
  color:#0E4F92;
}
.nutri-meal-accordion.is-pre-workout.open .nutri-meal-summary{
  background:rgba(47,125,209,.045);
}
.nutri-meal-accordion.is-pre-workout .nutri-macro-chip{
  background:#DCEEFF;
  color:#1D67AA;
}

.nutri-shopping-wrap{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.nutri-shopping-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  background:linear-gradient(135deg,#FFFFFF,#F5F9FD);
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px 16px;
}
.nutri-shopping-head-k{
  font-size:10px;
  font-weight:850;
  letter-spacing:1.1px;
  text-transform:uppercase;
  color:var(--text-3,#8FA0B4);
}
.nutri-shopping-head-title{
  margin-top:2px;
  font-size:17px;
  font-weight:900;
  letter-spacing:-.35px;
  color:var(--navy);
}
.nutri-shopping-clear{
  border:none;
  border-radius:999px;
  background:#EEF3F8;
  color:#526377;
  padding:8px 12px;
  font-family:inherit;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
}
.nutri-shopping-clear:hover{
  background:#E1EAF3;
  color:var(--navy);
}
.nutri-shopping-row.checklist{
  align-items:center;
  justify-content:flex-start;
  cursor:pointer;
  color:var(--text);
}
.nutri-shopping-row.checklist input{
  width:18px;
  height:18px;
  flex:0 0 18px;
  accent-color:var(--blue);
  cursor:pointer;
}
.nutri-shopping-row.checklist span{
  flex:1;
  min-width:0;
  font-weight:700;
  color:var(--text);
}
.nutri-shopping-row.checklist b{
  font-size:12.5px;
}
.nutri-shopping-row.checklist.checked span,
.nutri-shopping-row.checklist.checked b{
  color:var(--text-3,#8FA0B4);
  text-decoration:line-through;
}

@media(max-width:620px){
  .nutri-week-switch-buttons{grid-template-columns:1fr 1fr;gap:6px;padding:5px;}
  .nutri-week-switch-btn{padding:9px 10px;border-radius:13px;}
  .nutri-week-switch-btn b{font-size:12px;}
  .nutri-preview-note{align-items:flex-start;flex-direction:column;gap:3px;}
  .nutri-week-tools{padding:12px 13px;align-items:flex-start;}
  .nutri-week-tools-title{font-size:14px;}
  .nutri-pdf-btn{padding:8px 10px;font-size:12px;}
  .nutri-shopping-head{padding:13px 14px;}
  .nutri-shopping-head-title{font-size:16px;}
}


/* ============================================================
   DTR · Nutrición atleta · Avisos del nutricionista v1.4
   Botón fijo arriba derecha, estilo “Pasar revisión”.
   No ocupa espacio entre bloques y el panel nunca tapa el botón.
============================================================ */
.nutri-notes-topbar{
  position:fixed;
  top:calc(env(safe-area-inset-top,0px) + 18px);
  right:calc(env(safe-area-inset-right,0px) + 22px);
  z-index:240;
  width:auto;
  max-width:calc(100vw - 32px);
  margin:0!important;
  display:block;
  pointer-events:none;
}
.nutri-notes-topbar > *{ pointer-events:auto; }
.nutri-note-bell-wrap{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:0;
  max-width:100%;
}
.nutri-note-bell{
  min-height:42px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.10);
  color:#fff;
  border-radius:999px;
  padding:9px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-family:inherit;
  font-weight:900;
  letter-spacing:-.01em;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
  position:relative;
  cursor:pointer;
  white-space:nowrap;
  z-index:260;
}
.nutri-note-bell:hover{transform:translateY(-1px);background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.28);box-shadow:0 18px 42px rgba(0,0,0,.20);}
.nutri-note-bell.has-notes{background:#fff;color:#0A1A2F;border-color:rgba(47,125,209,.24);}
.nutri-note-bell-ic{font-size:16px;line-height:1;}
.nutri-note-bell-text{font-size:12.5px;}
.nutri-note-badge{
  position:absolute;top:-7px;right:-5px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  background:#EF4444;color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:10.5px;font-weight:950;border:2px solid #fff;box-shadow:0 8px 16px rgba(239,68,68,.25);
}
.nutri-note-bell-sub{display:none!important;}
.nutri-notes-panel{
  position:absolute;
  right:0;
  top:56px;
  width:min(420px,calc(100vw - 32px));
  background:rgba(255,255,255,.97);
  border:1px solid rgba(226,232,238,.94);
  border-radius:22px;
  box-shadow:0 24px 60px rgba(10,26,47,.24);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  z-index:250;
  overflow:hidden;
  color:#0A1A2F;
  pointer-events:auto;
}
.nutri-notes-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #EEF2F7;}
.nutri-notes-panel-head b{font-size:13px;font-weight:900;}
.nutri-notes-panel-head button{border:none;background:#F4F7FB;color:#5F6C7B;border-radius:999px;padding:6px 10px;font-size:11.5px;font-weight:850;cursor:pointer;}
.nutri-notes-list{display:grid;gap:10px;padding:12px;max-height:430px;overflow:auto;}
.nutri-note-card{border:1px solid #E2E8EE;border-radius:18px;background:#fff;padding:13px;box-shadow:0 10px 28px rgba(10,26,47,.055);}
.nutri-note-card.unseen{border-color:rgba(47,125,209,.35);box-shadow:0 12px 34px rgba(47,125,209,.10);}
.nutri-note-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px;}
.nutri-note-card-head b{display:block;font-size:13.5px;font-weight:950;color:#0A1A2F;}
.nutri-note-card-head small{display:block;font-size:11px;color:#8FA0B4;margin-top:2px;font-weight:700;}
.nutri-note-new{display:inline-flex;border-radius:999px;background:#E8F1FA;color:#2F7DD1;padding:3px 8px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;}
.nutri-note-card p{font-size:13px;color:#334155;line-height:1.45;margin:0 0 10px;white-space:pre-wrap;}
.nutri-note-comment-prev{font-size:12px;background:#F4F7FB;border:1px solid #EEF2F7;border-radius:12px;padding:8px 10px;color:#334155;margin-bottom:9px;}
.nutri-note-comment-prev span{display:block;color:#8FA0B4;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;}
.nutri-note-comment{width:100%;min-height:54px;resize:vertical;border:1px solid #E2E8EE;background:#FAFCFE;border-radius:14px;padding:10px 11px;font-family:inherit;font-size:12.5px;outline:none;color:#0A1A2F;transition:border-color .15s ease,box-shadow .15s ease;}
.nutri-note-comment:focus{border-color:#2F7DD1;box-shadow:0 0 0 4px rgba(47,125,209,.10);}
.nutri-note-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;}
.nutri-note-actions button{border:1px solid #E2E8EE;background:#fff;color:#0A1A2F;border-radius:999px;padding:7px 10px;font-size:11.5px;font-weight:900;transition:all .15s ease;cursor:pointer;}
.nutri-note-actions button:hover{border-color:#2F7DD1;color:#2F7DD1;background:#E8F1FA;}
.nutri-note-actions button.primary{background:#2F7DD1;border-color:#2F7DD1;color:#fff;}
.nutri-notes-empty{padding:18px 16px;display:grid;gap:4px;text-align:left;}
.nutri-notes-empty b{font-size:13.5px;color:#0A1A2F;}
.nutri-notes-empty span{font-size:12px;color:#5F6C7B;}

/* seguridad anti-scroll lateral solo para el módulo, sin remaquetar el hero */
#v-nutricion,
#nutrition-content,
.nutri-shell{max-width:100%;min-width:0;}
#nutrition-content{overflow-x:hidden;}

@media(max-width:700px){
  .nutri-notes-topbar{
    top:calc(env(safe-area-inset-top,0px) + 12px);
    right:calc(env(safe-area-inset-right,0px) + 12px);
    max-width:calc(100vw - 24px);
  }
  .nutri-note-bell{min-height:39px;padding:8px 12px;box-shadow:0 12px 28px rgba(0,0,0,.20);}
  .nutri-note-bell-text{font-size:12px;}
  .nutri-notes-panel{
    position:absolute;
    right:0;
    top:52px;
    width:calc(100vw - 24px);
    max-width:none;
    border-radius:20px;
  }
  .nutri-notes-list{max-height:calc(100vh - 190px);}
}
