
/* MI RUTA · hoja de estilo */
:root{
  --papel:#f7f5f0; --tinta:#1f2a24; --tinta-suave:#5f6f66; --linea:#dcd8ce;
  --tarjeta:#fffefb; --acento:#8a5a12; --verde:#2f6b4a; --verde-suave:#e4eee8;
  --rojo:#9b3b2f; --rojo-suave:#f3e3e0; --hueco:#b8860b; --hueco-suave:#f5ecd8;
  --display:'Instrument Serif','Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;
  --cuerpo:-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI Variable Text','Segoe UI',
    Roboto,'Helvetica Neue',sans-serif;
  --sombra:0 1px 2px rgba(31,42,36,.04), 0 6px 18px -8px rgba(31,42,36,.10);
  --sombra-alta:0 1px 2px rgba(31,42,36,.05), 0 14px 34px -14px rgba(31,42,36,.20);
  --r:22px; --r-ch:14px; --r-xl:28px;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --papel:#141916; --tinta:#e8eae6; --tinta-suave:#95a39b; --linea:#2d3832;
  --tarjeta:#1b221e; --acento:#d9a158; --verde:#7fc3a0; --verde-suave:#1d2e26;
  --rojo:#e08878; --rojo-suave:#2e1f1c; --hueco:#d9b05a; --hueco-suave:#2b2418;
  --sombra:0 1px 2px rgba(0,0,0,.3), 0 6px 18px -8px rgba(0,0,0,.45);
  --sombra-alta:0 1px 2px rgba(0,0,0,.35), 0 14px 34px -14px rgba(0,0,0,.6);
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --papel:#141916; --tinta:#e8eae6; --tinta-suave:#95a39b; --linea:#2d3832;
  --tarjeta:#1b221e; --acento:#d9a158; --verde:#7fc3a0; --verde-suave:#1d2e26;
  --rojo:#e08878; --rojo-suave:#2e1f1c; --hueco:#d9b05a; --hueco-suave:#2b2418;
  --sombra:0 1px 2px rgba(0,0,0,.3), 0 6px 18px -8px rgba(0,0,0,.45);
  --sombra-alta:0 1px 2px rgba(0,0,0,.35), 0 14px 34px -14px rgba(0,0,0,.6);
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--papel);color:var(--tinta);font-family:var(--cuerpo);
  font-size:15px;line-height:1.47;-webkit-font-smoothing:antialiased;
  font-feature-settings:"ss01","cv05";letter-spacing:-.005em}
@media(min-width:760px){body{font-size:16px}}
h1,h2,h3{font-family:var(--cuerpo);font-weight:680;text-wrap:balance;margin:0;letter-spacing:-.021em}
.eyebrow{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-suave);
  font-weight:700;margin:0;opacity:.85}
.hoja{max-width:46rem;margin:0 auto;padding-inline:18px;padding-block:14px 120px}
@media(min-width:760px){.hoja{padding-block:26px 110px}}

/* ---- cabecera y navegación ---- */
header.marca{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;
  display:flex;align-items:center;gap:12px;
  background:color-mix(in srgb,var(--papel) 88%,transparent);
  -webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--linea);
  margin-inline:-18px;padding:11px 18px;margin-bottom:18px}
header.marca h1{font-size:1.06rem;line-height:1;letter-spacing:-.025em;font-weight:700}
header.marca .saludo{font-size:.82rem;color:var(--tinta-suave);margin-left:auto;
  background:var(--tarjeta);border:1px solid var(--linea);border-radius:999px;padding:4px 11px}
nav.pest{position:fixed;left:0;right:0;bottom:0;z-index:50;
  display:grid;grid-template-columns:repeat(7,1fr);
  background:color-mix(in srgb,var(--papel) 90%,transparent);
  -webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);
  border-top:1px solid var(--linea);
  padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
nav.pest button{font:inherit;font-size:.61rem;font-weight:600;cursor:pointer;
  background:none;border:0;color:var(--tinta-suave);padding:6px 2px 4px;
  display:flex;flex-direction:column;align-items:center;gap:3px;
  border-radius:10px;letter-spacing:-.01em;line-height:1.15;text-align:center;
  -webkit-tap-highlight-color:transparent;transition:color .16s}
nav.pest button svg{width:21px;height:21px;stroke:currentColor;fill:none;
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
nav.pest button[aria-current="page"]{color:var(--acento)}
nav.pest button[aria-current="page"] svg{opacity:1;stroke-width:2}
nav.pest button:active{transform:scale(.94)}
nav.pest button:disabled{opacity:.38;cursor:default}
nav.pest button:focus-visible{outline:2px solid var(--acento);outline-offset:-2px}
@media(min-width:760px){
  nav.pest{position:sticky;top:calc(env(safe-area-inset-top,0px) + 46px);bottom:auto;
    grid-template-columns:none;display:flex;gap:2px;border-top:0;
    border-bottom:1px solid var(--linea);margin-inline:-18px;padding:4px 18px 0}
  nav.pest button{flex-direction:row;gap:7px;font-size:.84rem;padding:9px 13px;
    border-radius:8px 8px 0 0;border-bottom:2px solid transparent}
  nav.pest button svg{width:17px;height:17px}
  nav.pest button[aria-current="page"]{border-bottom-color:var(--acento)}
}

.vista{display:none}
.vista.on{display:block}
.vista>header.v{margin-bottom:18px}
.vista>header.v h2{font-size:clamp(1.45rem,4.8vw,1.85rem);line-height:1.06;margin-top:4px;
  letter-spacing:-.028em;font-weight:720}
.vista>header.v p.sub{margin:9px 0 0;color:var(--tinta-suave);font-size:.88rem;max-width:40ch;
  line-height:1.5}
.vista>header.v{margin-bottom:20px}
.prosa p,.prosa li{max-width:62ch}

/* ---- estados ---- */
.cargando,.paro{background:var(--tarjeta);border:1px solid var(--linea);border-radius:var(--r);box-shadow:var(--sombra);
  padding:34px 24px;text-align:center;color:var(--tinta-suave);font-size:.93rem;margin-top:30px}
.paro{border-left:4px solid var(--rojo)}
.paro h2{font-size:1.3rem;color:var(--tinta);margin-bottom:9px}
.ensayo{background:var(--hueco-suave);border:0;border-radius:999px;
  padding:6px 13px;margin-bottom:16px;font-size:.73rem;color:var(--hueco);font-weight:650;
  display:inline-flex;align-items:center;gap:6px;letter-spacing:-.003em;line-height:1.3;
  max-width:100%}
.ensayo::before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;flex:none}
.ensayo b{font-weight:800}

/* ---- formulario ---- */
section.paso{margin-bottom:14px;border:1px solid var(--linea);background:var(--tarjeta);
  border-radius:var(--r);overflow:hidden;box-shadow:var(--sombra)}
section.paso>header{padding:13px 16px;border-bottom:1px solid var(--linea);
  display:flex;gap:10px;align-items:center}
section.paso h3{font-family:var(--cuerpo);font-weight:650;font-size:1rem;line-height:1.2;
  letter-spacing:-.012em}
section.paso .np{font-family:var(--cuerpo);font-size:.72rem;font-weight:700;color:var(--tinta-suave);
  line-height:1;background:var(--papel);border:1px solid var(--linea);border-radius:999px;
  width:21px;height:21px;display:grid;place-items:center;flex:none}
section.paso .listo{margin-left:auto;font-size:.65rem;font-weight:800;letter-spacing:.08em;color:var(--verde)}
section.paso .cuerpo{padding:15px 16px 17px}
section.paso p.por{font-size:.83rem;color:var(--tinta-suave);margin:0 0 15px;max-width:52ch}

.campo{margin-bottom:19px}
.campo:last-child{margin-bottom:0}
.rot{font-weight:620;font-size:.91rem;display:block;margin-bottom:4px;letter-spacing:-.008em}
.ayuda{font-size:.79rem;color:var(--tinta-suave);margin:0 0 8px;max-width:52ch;line-height:1.42}
.textual{font-size:.84rem;color:var(--tinta);margin:0 0 10px;padding:11px 14px;background:var(--papel);
  border-left:3px solid var(--acento);border-radius:3px;white-space:pre-line}
.obl{display:none}                 /* lo necesario es casi todo: señalarlo en cada campo es ruido */
.opc{font-size:.68rem;font-weight:600;color:var(--tinta-suave);margin-left:7px;
  letter-spacing:0;text-transform:none;font-style:italic}
.confirma{font-size:.68rem;font-weight:650;color:var(--hueco);background:var(--hueco-suave);
  border-radius:999px;padding:2px 9px;margin-left:7px;white-space:nowrap;vertical-align:1px}

.ops{display:flex;flex-wrap:wrap;gap:8px}
.ops.col{flex-direction:column;align-items:stretch}
.op{font:inherit;font-size:.88rem;cursor:pointer;background:var(--papel);color:var(--tinta);
  border:1px solid var(--linea);border-radius:999px;padding:9px 15px;user-select:none;text-align:left;
  min-height:38px;transition:background .14s,border-color .14s,color .14s;
  -webkit-tap-highlight-color:transparent}
.op:active{transform:scale(.97)}
.ops.col .op{border-radius:var(--r-ch);padding:11px 14px;line-height:1.42}
.op:hover{border-color:var(--tinta-suave)}
.op:focus-visible{outline:2px solid var(--acento);outline-offset:2px}
.op[aria-pressed="true"]{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.op.duda[aria-pressed="true"]{background:var(--hueco-suave);color:var(--hueco);border-color:var(--hueco);font-style:italic}
.op .tit{font-weight:700;display:block}
.op .des{font-size:.83rem;opacity:.78;display:block;margin-top:3px}
.op .orden{float:right;font-family:var(--display);font-size:1.15rem;margin-left:10px}

input[type=text],input[type=number],textarea,select{
  font:inherit;font-size:16px;background:var(--papel);color:var(--tinta);
  border:1px solid var(--linea);border-radius:var(--r-ch);padding:8px 12px;max-width:100%;
  transition:border-color .15s, box-shadow .15s;-webkit-appearance:none;appearance:none}
input[type=text]:focus,input[type=number]:focus,textarea:focus,select:focus{
  border-color:var(--acento);box-shadow:0 0 0 3px color-mix(in srgb,var(--acento) 14%,transparent);outline:0}
select{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),
  linear-gradient(135deg,currentColor 50%,transparent 50%);
  background-position:calc(100% - 17px) calc(50% + 1px),calc(100% - 12px) calc(50% + 1px);
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}
input[type=number]{width:8rem}
input[type=text]{width:min(100%,24rem)}
textarea{width:100%;min-height:6rem;resize:vertical}
select{width:min(100%,20rem)}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--acento);outline-offset:1px}

.abre{display:none;margin-top:14px;padding-left:14px;border-left:2px solid var(--acento)}
.abre.on{display:block}
.pausa{background:var(--rojo-suave);border-left:3px solid var(--rojo);border-radius:3px;
  padding:13px 15px;margin-top:12px;font-size:.86rem}
.pausa b{color:var(--rojo)}
.resultado{background:var(--verde-suave);border-left:3px solid var(--verde);border-radius:3px;
  padding:13px 15px;margin-top:14px;font-size:.89rem}
.resultado .grande{font-family:var(--display);font-size:1.2rem;display:block;margin-bottom:4px}

.prod{border:1px solid var(--linea);border-radius:5px;padding:13px 15px;margin-bottom:10px;background:var(--papel)}
.prod .fila1{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.prod .nom{font-weight:600;flex:1 1 auto;min-width:8rem}
.prod .cat{font-size:.68rem;font-weight:700;color:var(--tinta-suave);border:1px solid var(--linea);
  border-radius:4px;padding:2px 7px}
.prod .quita{font:inherit;font-size:.78rem;cursor:pointer;background:none;border:1px solid var(--linea);
  border-radius:999px;padding:4px 11px;color:var(--tinta-suave)}
.prod .quita:hover{border-color:var(--rojo);color:var(--rojo)}
.prod .detalle{margin-top:12px;display:grid;gap:12px}
.mini{font-size:.79rem;font-weight:600;color:var(--tinta-suave);display:block;margin-bottom:5px}
.chip-v{display:inline-block;font-size:.68rem;font-weight:700;background:var(--verde-suave);color:var(--verde);
  border-radius:4px;padding:2px 7px;margin-left:6px}
.chip-h{display:inline-block;font-size:.68rem;font-weight:700;background:var(--hueco-suave);color:var(--hueco);
  border-radius:4px;padding:2px 7px;margin-left:6px}

/* ---- barra de guardar ---- */
.barra{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--papel);
  border-top:1px solid var(--linea);padding:11px 18px;display:none;gap:12px;align-items:center;
  padding-bottom:calc(11px + env(safe-area-inset-bottom,0px))}
.barra.on{display:flex}
.barra .txt{font-size:.85rem;color:var(--tinta-suave);flex:1 1 auto;min-width:0}
.barra .txt b{color:var(--tinta);font-family:var(--display);font-size:1.12rem}
.btn{font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;background:var(--tarjeta);color:var(--tinta);
  border:1px solid var(--linea);border-radius:999px;padding:9px 17px;white-space:nowrap}
.btn:hover{border-color:var(--tinta-suave)}
.btn.primario{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.btn:disabled{opacity:.4;cursor:default}
.btn:focus-visible{outline:2px solid var(--acento);outline-offset:2px}

/* ---- recetas ---- */
.barrita{position:sticky;top:0;z-index:20;background:var(--papel);border-bottom:1px solid var(--linea);
  padding-block:10px;margin-bottom:22px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cuenta{font-family:var(--display);font-size:1.2rem;line-height:1;white-space:nowrap}
.cuenta b{font-size:1.55rem}
.cuenta .sem{color:var(--verde);font-size:.92rem;font-family:var(--cuerpo);font-weight:600}
.reglas{background:var(--tarjeta);border:1px solid var(--linea);border-left:4px solid var(--acento);
  border-radius:4px;padding:18px 20px;margin-bottom:24px}
.reglas h3{font-size:1.1rem;margin-bottom:10px}
.reglas ul{margin:0;padding-left:1.15em;font-size:.91rem}
.reglas li+li{margin-top:7px}
.reglas .forma{color:var(--acento);font-weight:600}
.leyenda{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:28px}
.chip{font-size:.74rem;font-weight:600;border:1px solid var(--linea);background:var(--tarjeta);
  border-radius:999px;padding:4px 11px;color:var(--tinta-suave);white-space:nowrap}

section.cat{margin-bottom:32px}
section.cat>header{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;
  border-bottom:1px solid var(--tinta);padding-bottom:8px;margin-bottom:4px}
section.cat h3{font-size:1.42rem}
section.cat .n{font-size:.77rem;color:var(--tinta-suave);font-weight:600;margin-left:auto}
section.cat>p.nota{font-size:.85rem;color:var(--tinta-suave);margin:10px 0 14px}
ul.lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
li.rec{border-bottom:1px solid var(--linea)}
.cabeza{display:flex;align-items:stretch;gap:4px}
button.fila{flex:1 1 auto;min-width:0;text-align:left;font:inherit;cursor:pointer;background:none;border:0;
  padding:13px 4px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:baseline;color:inherit}
button.fila:focus-visible{outline:2px solid var(--acento);outline-offset:-2px}
li.rec:hover{background:var(--tarjeta)}
button.quiero{flex:0 0 auto;align-self:center;font:inherit;font-size:1.05rem;line-height:1;cursor:pointer;
  background:none;border:1px solid var(--linea);color:var(--tinta-suave);
  border-radius:999px;width:2.2rem;height:2.2rem;display:grid;place-items:center}
button.quiero:hover{border-color:var(--verde);color:var(--verde)}
button.quiero[aria-pressed="true"]{background:var(--verde);color:var(--papel);border-color:var(--verde)}
button.quiero:focus-visible{outline:2px solid var(--acento);outline-offset:2px}
.nombre{font-weight:600;font-size:1.01rem;line-height:1.3}
.detalle{font-size:.85rem;color:var(--tinta-suave);margin-top:3px}
.marcas{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.m{font-size:.7rem;font-weight:700;border-radius:4px;padding:2px 7px}
.m.grasa{background:var(--verde-suave);color:var(--verde)}
.m.hierro{background:var(--rojo-suave);color:var(--rojo)}
.m.lleva{background:var(--tinta);color:var(--papel)}
.m.filtro{display:none}
.tiempo{font-family:var(--display);font-size:1.1rem;white-space:nowrap;line-height:1.2}
.tiempo small{font-family:var(--cuerpo);font-size:.66rem;font-weight:600;color:var(--tinta-suave);
  display:block;text-align:right;letter-spacing:.06em}
.flecha{font-size:.7rem;color:var(--tinta-suave);display:block;text-align:right;margin-top:4px;transition:transform .15s}
li.rec.abierta .flecha{transform:rotate(180deg)}
li.rec.quiero{background:var(--verde-suave)}
.prep{display:none;padding:2px 4px 20px 2px}
li.rec.abierta .prep{display:block}
.prep ol{margin:0;padding-left:1.25em;font-size:.91rem}
.prep ol li+li{margin-top:6px}
.prep .linea{font-size:.85rem;margin-top:12px;padding:9px 12px;border-radius:4px;
  background:var(--tarjeta);border:1px solid var(--linea)}
.prep .linea.primero{border-left:3px solid var(--acento)}
.prep .linea.extra{border-left:3px solid var(--verde)}
.prep .linea.pais{border-left:3px solid var(--tinta-suave)}

.semana{margin-top:38px;padding-top:22px;border-top:2px solid var(--tinta)}
.semana h3{font-size:1.45rem;margin-bottom:6px}
.semana p.q{font-size:.87rem;color:var(--tinta-suave);margin:0 0 16px}
.vacia{background:var(--tarjeta);border:1px dashed var(--linea);border-radius:5px;
  padding:22px;text-align:center;font-size:.9rem;color:var(--tinta-suave)}
.elegidas{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}
.el{font-size:.84rem;background:var(--verde-suave);color:var(--verde);border:1px solid var(--verde);
  border-radius:999px;padding:5px 12px;font-weight:600}
.pasillo{margin-bottom:18px}
.pasillo h4{font-family:var(--cuerpo);font-size:.71rem;letter-spacing:.12em;text-transform:uppercase;
  font-weight:800;color:var(--tinta-suave);margin:0 0 9px}
.ings{display:flex;flex-wrap:wrap;gap:7px}
.ing{font-size:.86rem;border:1px solid var(--linea);background:var(--tarjeta);border-radius:5px;padding:5px 11px}

.pie{margin-top:38px;padding-top:18px;border-top:1px solid var(--linea);font-size:.85rem;color:var(--tinta-suave)}
.pie p{margin:0 0 8px}
.pronto{background:var(--tarjeta);border:1px dashed var(--linea);border-radius:5px;
  padding:30px 24px;text-align:center;color:var(--tinta-suave);font-size:.93rem}
.pronto b{color:var(--tinta);display:block;font-family:var(--display);font-size:1.25rem;margin-bottom:8px}

dialog.copia{border:1px solid var(--linea);border-radius:7px;background:var(--tarjeta);color:var(--tinta);
  max-width:34rem;width:calc(100% - 36px);padding:22px}
dialog.copia::backdrop{background:rgba(0,0,0,.45)}
dialog.copia h3{font-size:1.2rem;margin-bottom:8px}
dialog.copia textarea{width:100%;min-height:10rem;font-size:.85rem;margin-top:12px}
dialog.copia .acciones{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.aviso-flota{position:fixed;left:50%;transform:translateX(-50%);bottom:74px;z-index:60;
  background:var(--tinta);color:var(--papel);border-radius:999px;padding:10px 20px;font-size:.86rem;
  font-weight:600;box-shadow:0 4px 18px rgba(0,0,0,.18);display:none}
.aviso-flota.on{display:block}

/* ---- lo que falta por contestar ---- */
.campo.falta{border-left:3px solid var(--rojo);background:var(--rojo-suave);
  border-radius:0 5px 5px 0;padding:13px 14px;margin-left:-2px}
.campo.falta .rot{color:var(--rojo)}
.campo.falta .obl{color:var(--rojo)}
section.paso.conFalta>header{background:var(--rojo-suave)}
section.paso .faltan{margin-left:auto;font-size:.72rem;font-weight:800;letter-spacing:.06em;color:var(--rojo)}
.barra .verFalta{background:none;border:0;font:inherit;font-size:.85rem;color:var(--rojo);
  font-weight:700;cursor:pointer;text-decoration:underline;padding:0;margin-left:8px}
.barra .verFalta:focus-visible{outline:2px solid var(--acento);outline-offset:2px}

/* ═══ MI PLAN ═══ */
.plan-cab{background:var(--tarjeta);border:1px solid var(--linea);border-left:4px solid var(--acento);
  border-radius:4px;padding:18px 20px;margin-bottom:26px}
.plan-cab .fecha{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--tinta-suave)}
.plan-cab p{margin:9px 0 0;font-size:.92rem}
.bloque{margin-bottom:30px}
.bloque>header{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;
  border-bottom:1px solid var(--tinta);padding-bottom:8px;margin-bottom:6px}
.bloque h3{font-size:1.3rem}
.bloque .cuantos{font-size:.76rem;color:var(--tinta-suave);font-weight:700;margin-left:auto}
.bloque>p.q{font-size:.86rem;color:var(--tinta-suave);margin:10px 0 14px}
.frasco{border:1px solid var(--linea);background:var(--tarjeta);border-radius:5px;
  padding:14px 16px;margin-bottom:9px}
.frasco.verde{border-left:4px solid var(--verde)}
.frasco.mueve{border-left:4px solid var(--acento)}
.frasco.pausa{border-left:4px solid var(--hueco);background:var(--hueco-suave)}
.frasco .n{font-weight:700;font-size:1rem}
.frasco .r{font-size:.87rem;color:var(--tinta-suave);margin-top:4px}
.frasco .cuando{font-family:var(--display);font-size:1.02rem;margin-top:6px;color:var(--acento)}
.frasco .prot{display:inline-block;font-size:.68rem;font-weight:800;background:var(--verde-suave);
  color:var(--verde);border-radius:4px;padding:2px 8px;margin-left:7px;vertical-align:middle}
.corta{background:var(--tinta);color:var(--papel);border-radius:5px;padding:22px 20px;margin-top:8px}
.corta h3{font-size:1.3rem;margin-bottom:4px}
.corta p.q{font-size:.86rem;opacity:.72;margin:0 0 14px}
.corta ol{margin:0;padding-left:1.3em;font-size:.97rem}
.corta li+li{margin-top:10px}
.plan-pie{margin-top:26px;font-size:.87rem;color:var(--tinta-suave);
  border-top:1px solid var(--linea);padding-top:16px}

/* ═══ MI AVANCE ═══ */
.suyo{background:var(--tarjeta);border:1px solid var(--linea);border-left:4px solid var(--acento);
  border-radius:4px;padding:22px 20px;margin-bottom:32px}
.suyo blockquote{margin:9px 0 0;font-family:var(--display);font-size:clamp(1.15rem,4.4vw,1.5rem);
  line-height:1.35;font-style:italic}
.suyo .pie2{margin:13px 0 0;font-size:.85rem;color:var(--tinta-suave)}
.av{margin-bottom:34px}
.av>h3{font-size:1.28rem;margin-bottom:4px}
.av>p.q{font-size:.85rem;color:var(--tinta-suave);margin:0 0 15px}
.grafica{background:var(--tarjeta);border:1px solid var(--linea);border-radius:4px;padding:16px 14px 10px}
.grafica svg{display:block;width:100%;height:auto}
.leyg{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:11px;font-size:.77rem;color:var(--tinta-suave)}
.llave{display:inline-flex;align-items:center;gap:7px}
.sw{width:18px;height:3px;border-radius:2px;background:var(--acento);flex:none}
.sw.banda{height:11px;background:var(--verde-suave);border:1px solid var(--verde)}
.sw.punto{width:9px;height:9px;border-radius:50%;background:var(--acento)}
.cajon{background:var(--verde-suave);border:1px solid var(--verde);border-radius:4px;
  padding:19px;display:flex;flex-wrap:wrap;gap:16px 26px;align-items:center}
.cajon .cifra{font-family:var(--display);font-size:2.5rem;line-height:1;color:var(--verde);flex:none}
.cajon p{margin:0;flex:1 1 14rem;font-size:.94rem}
.cajon strong{display:block;font-size:1rem;margin-bottom:3px}
.sems{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.4rem,1fr));gap:10px;list-style:none;padding:0;margin:0}
.sems li{background:var(--tarjeta);border:1px solid var(--linea);border-radius:4px;padding:13px}
.sems .rot2{font-size:.69rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-suave);font-weight:800}
.sems .val{font-family:var(--display);font-size:1.55rem;line-height:1.1;margin-top:5px}
.sems .val small{font-size:.8rem;font-family:var(--cuerpo);color:var(--tinta-suave)}
.sems .est{font-size:.77rem;color:var(--tinta-suave);margin-top:4px}
.sems .pend .val{color:var(--tinta-suave)}
.notas{list-style:none;padding:0;margin:0}
.notas li{display:grid;grid-template-columns:5.3rem 1fr;gap:14px;padding:13px 0;border-top:1px solid var(--linea)}
.notas li:last-child{border-bottom:1px solid var(--linea)}
.notas .cuando2{font-size:.73rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-suave);font-weight:800;padding-top:3px}
.notas .dicho{margin:0;font-family:var(--display);font-size:1.02rem;font-style:italic;line-height:1.4}
.notas .vacio{font-family:var(--cuerpo);font-style:normal;color:var(--tinta-suave);font-size:.89rem}
.abiertos{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.abiertos li{border:1px solid var(--linea);border-radius:999px;padding:5px 13px;font-size:.85rem;background:var(--tarjeta)}
.cierre{border:2px solid var(--tinta);border-radius:4px;padding:22px 20px;background:var(--tarjeta)}
.cierre h3{font-size:1.3rem}
.cotejo{display:grid;grid-template-columns:1fr;gap:14px;margin-top:17px}
@media (min-width:34rem){.cotejo{grid-template-columns:1fr 1fr}}
.cotejo>div{padding:15px;border-radius:4px;border:1px solid var(--linea)}
.cotejo .si{background:var(--verde-suave);border-color:var(--verde)}
.cotejo h4{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--cuerpo);
  font-weight:800;color:var(--tinta-suave);margin:0 0 8px}
.cotejo .si h4{color:var(--verde)}
.cotejo ul{margin:0;padding-left:1.1em;font-size:.92rem}
.cotejo li+li{margin-top:5px}
.hueco2{margin-top:19px;border:1px dashed var(--acento);border-radius:4px;padding:15px;
  font-size:.91rem;color:var(--tinta-suave)}
.hueco2 b{display:block;color:var(--acento);font-size:.74rem;letter-spacing:.1em;
  text-transform:uppercase;margin-bottom:6px}

/* ═══ el plan de verdad ═══ */
.prosa p{font-size:.97rem;margin:0 0 14px}
.prosa h3{font-family:var(--display);font-size:1.3rem;margin:28px 0 12px;
  padding-bottom:7px;border-bottom:1px solid var(--tinta)}
.sem-linea{border-radius:5px;padding:13px 15px;margin-bottom:9px;font-size:.93rem;border:1px solid var(--linea)}
.sem-linea b{display:block;font-size:1rem;margin-bottom:3px}
.sem-linea span{color:var(--tinta-suave)}
.sem-linea.v{border-left:4px solid var(--verde);background:var(--verde-suave)}
.sem-linea.am{border-left:4px solid var(--hueco);background:var(--hueco-suave)}
.sem-linea.ro{border-left:4px solid var(--rojo);background:var(--rojo-suave)}
.dias{margin:26px 0}
.dias>header{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;
  border-bottom:1px solid var(--tinta);padding-bottom:8px;margin-bottom:6px}
.dias h3{font-size:1.3rem}
.dias .cuantos{font-size:.76rem;color:var(--tinta-suave);font-weight:700;margin-left:auto}
.dias>p.q{font-size:.86rem;color:var(--tinta-suave);margin:10px 0 14px}
.dia{border:1px solid var(--linea);background:var(--tarjeta);border-radius:5px;margin-bottom:9px;overflow:hidden}
.dia-cab{width:100%;text-align:left;font:inherit;cursor:pointer;background:none;border:0;
  padding:15px 16px;display:flex;gap:12px;align-items:baseline;color:inherit}
.dia-cab:focus-visible{outline:2px solid var(--acento);outline-offset:-2px}
.dia-cab .dn{font-family:var(--display);font-size:1.1rem;color:var(--acento);flex:none}
.dia-cab .dt{font-weight:600;flex:1 1 auto;min-width:0}
.dia-cab .flecha{flex:none;margin:0}
.dia.abierto .flecha{transform:rotate(180deg)}
.dia-cuerpo{display:none;padding:0 16px 16px}
.dia.abierto .dia-cuerpo{display:block}
.bloq{border-radius:4px;padding:12px 14px;margin-bottom:9px;font-size:.93rem;background:var(--papel)}
.bloq .et{display:block;font-size:.68rem;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;margin-bottom:5px;color:var(--tinta-suave)}
.bloq.haz{border-left:3px solid var(--acento)} .bloq.haz .et{color:var(--acento)}
.bloq.porq{border-left:3px solid var(--linea)}
.bloq.cuesta{border-left:3px solid var(--hueco);background:var(--hueco-suave)} .bloq.cuesta .et{color:var(--hueco)}
.termo{background:var(--tinta);color:var(--papel);border-radius:6px;padding:24px 20px;margin:26px 0}
.termo .eyebrow{color:var(--papel);opacity:.62}
.termo h3{font-size:1.4rem;margin:7px 0 0}
.termo p.q{font-size:.88rem;opacity:.74;margin:9px 0 16px}
.escala{display:flex;flex-wrap:wrap;gap:7px}
.termo .num{font:inherit;font-size:1rem;font-weight:700;cursor:pointer;width:2.7rem;height:2.7rem;
  border-radius:50%;background:transparent;color:var(--papel);border:1px solid rgba(255,255,255,.34)}
.termo .num:hover{border-color:var(--papel)}
.termo .num[aria-pressed="true"]{background:var(--papel);color:var(--tinta);border-color:var(--papel)}
.termo .num:focus-visible{outline:2px solid var(--papel);outline-offset:2px}
.termo .racha{font-size:.85rem;opacity:.74;margin:15px 0 0}

/* ═══ Miranda adentro ═══ */
.marco-chat{border:1px solid var(--linea);border-radius:6px;overflow:hidden;background:var(--tarjeta)}
.marco-chat iframe{display:block;width:100%;height:min(74vh,720px);border:0}

/* ── §14: la semana que vive · la lista corta · lo que ya no toma ── */
.plan-sem{border-left:3px solid var(--acento);padding:2px 0 2px 14px;margin:0 0 22px}
.plan-sem .eyebrow{color:var(--acento)}
.plan-sem p.q{font-size:.86rem;color:var(--tinta-suave);margin:4px 0 0}

.lista-corta{border:1px solid var(--linea);background:var(--tarjeta);border-radius:5px;
  margin:0 0 26px;overflow:hidden}
.lista-corta.abierto .flecha{transform:rotate(180deg)}
.lista-corta .dia-cuerpo{display:none;padding:0 16px 16px}
.lista-corta.abierto .dia-cuerpo{display:block}
.lista-corta .prosa p{font-size:.92rem;margin:7px 0}
.lista-corta .btn{margin-top:12px}

.fuera-prod{margin-top:18px;padding-top:16px;border-top:1px dashed var(--linea)}
.fuera-prod .mini{display:block;font-size:.8rem;color:var(--tinta-suave);margin-bottom:9px}
.fuera-prod .op{opacity:.6;text-decoration:line-through}
.fuera-prod .op:hover{opacity:1;text-decoration:none}

.prod .fila1 .confirma{margin-left:0}
.prod .quita{margin-left:auto}

/* ── el alcance de Miranda: se le dice antes de que abra el chat ── */
.alcance{display:grid;gap:12px;margin:0 0 20px}
.alc{border-radius:5px;padding:16px 18px;border:1px solid var(--linea);background:var(--tarjeta)}
.alc h3{font-family:var(--display);font-size:1.08rem;margin:0 0 9px;font-weight:400}
.alc ul{margin:0;padding-left:19px;display:grid;gap:6px}
.alc li{font-size:.9rem;line-height:1.45}
.alc.si{border-left:3px solid var(--verde,#4a7a52)}
.alc.si h3{color:var(--verde,#4a7a52)}
.alc.no{border-left:3px solid var(--hueco);background:var(--hueco-suave)}
.alc.no h3{color:var(--hueco)}
.alcance>p.q{font-size:.84rem;color:var(--tinta-suave);margin:2px 0 0}
@media(min-width:620px){.alcance{grid-template-columns:1fr 1fr}.alcance>p.q{grid-column:1/-1}}

/* el serif se guarda para las cifras grandes, que es donde sí aporta */
.termo h3,.dias h3,.lista-corta .dt{font-family:var(--cuerpo)}
.cifra,.termo .num,.big{font-family:var(--display)}

/* ── el plan: que se lea como una carta cuidada, no como un volcado ── */
.prosa{font-size:.935rem;line-height:1.63;color:var(--tinta)}
.prosa p{margin:0 0 .85em}
.prosa h3{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--acento);
  font-weight:750;margin:30px 0 11px;padding-bottom:8px;border-bottom:1px solid var(--linea)}
.plan-cab{background:var(--tarjeta);border:1px solid var(--linea);border-radius:var(--r);
  box-shadow:var(--sombra);padding:17px 18px;margin:0 0 22px}
.plan-cab p{margin:0}
.pc-tit{font-weight:720;font-size:1.02rem;letter-spacing:-.022em;line-height:1.25}
.pc-quien{font-size:.85rem;color:var(--tinta-suave);margin-top:4px!important}
.pc-pie{font-size:.72rem;color:var(--tinta-suave);margin-top:9px!important;
  padding-top:9px;border-top:1px solid var(--linea);letter-spacing:-.003em}
.cita{margin:0 0 22px;padding:0 0 0 16px;border-left:2px solid var(--acento)}
.cita p{font-family:var(--display);font-size:1.12rem;line-height:1.4;margin:0;
  letter-spacing:-.005em}
.cita .cita-pie{font-family:var(--cuerpo);font-size:.8rem;color:var(--tinta-suave);
  margin-top:7px!important;letter-spacing:0}
.sem-linea{border-radius:var(--r-ch);padding:12px 14px;margin:0 0 8px;font-size:.9rem;
  background:var(--tarjeta);border:1px solid var(--linea);border-left-width:3px}
.sem-linea b{display:block;margin-bottom:2px}
.sem-linea span{color:var(--tinta-suave);font-size:.86rem}
.sem-linea.v{border-left-color:var(--verde)} .sem-linea.v b{color:var(--verde)}
.sem-linea.am{border-left-color:var(--hueco)} .sem-linea.am b{color:var(--hueco)}
.sem-linea.ro{border-left-color:var(--rojo)} .sem-linea.ro b{color:var(--rojo)}
.dia{border-radius:var(--r);box-shadow:var(--sombra)}
.dias h3{font-size:1.02rem;font-weight:700;letter-spacing:-.02em}
.plan-sem{border-left:0;background:var(--tarjeta);border:1px solid var(--linea);
  border-radius:var(--r);box-shadow:var(--sombra);padding:13px 15px;margin:0 0 20px}
.plan-sem .eyebrow{color:var(--acento)}
.pc-nota{font-size:.78rem;color:var(--tinta-suave);margin-top:10px!important;line-height:1.45}

/* ── el semáforo, que es el corazón del plan ── */
.sem-tit{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:26px 0 10px}
.sem-tit .punto{width:9px;height:9px;border-radius:999px;flex:none}
.sem-tit .t{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;font-weight:780}
.sem-tit .d{font-size:.78rem;color:var(--tinta-suave);flex:1 1 100%;margin-left:18px}
.sem-tit.v .punto{background:var(--verde)} .sem-tit.v .t{color:var(--verde)}
.sem-tit.am .punto{background:var(--hueco)} .sem-tit.am .t{color:var(--hueco)}
.sem-tit.ro .punto{background:var(--rojo)} .sem-tit.ro .t{color:var(--rojo)}
.sem-leyenda{font-size:.87rem;padding:9px 13px;border-radius:var(--r-ch);margin:0 0 7px!important}
.sem-leyenda.v{background:var(--verde-suave);color:var(--verde)}
.sem-leyenda.am{background:var(--hueco-suave);color:var(--hueco)}
.sem-leyenda.ro{background:var(--rojo-suave);color:var(--rojo)}
.sem-leyenda b{font-weight:750}
.sem-linea{box-shadow:var(--sombra)}
.sem-linea b{font-size:.93rem;letter-spacing:-.01em}
/* las fichas del semáforo van en blanco con su riel de color: nueve tarjetas teñidas gritan */
.prosa .sem-linea{background:var(--tarjeta);border-color:var(--linea)}
.prosa .sem-linea span{color:var(--tinta-suave);display:block;margin-top:3px;line-height:1.5}

/* ── Mi semana: los seis deslizadores, los días y las metas ── */
.desl{display:flex;align-items:center;gap:14px;margin:9px 0 3px}
.desl input[type=range]{flex:1 1 auto;min-width:0;height:28px;background:none;
  -webkit-appearance:none;appearance:none;margin:0;cursor:pointer}
.desl input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;
  background:linear-gradient(to right,var(--acento) var(--pc,50%),var(--linea) var(--pc,50%))}
.desl input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:var(--linea)}
.desl input[type=range]::-moz-range-progress{height:6px;border-radius:999px;background:var(--acento)}
.desl input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;
  width:26px;height:26px;border-radius:999px;background:var(--tarjeta);
  border:1px solid var(--linea);box-shadow:var(--sombra-alta);margin-top:-10px;
  transition:transform .12s}
.desl input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:999px;
  background:var(--tarjeta);border:1px solid var(--linea);box-shadow:var(--sombra-alta)}
.desl input[type=range]:active::-webkit-slider-thumb{transform:scale(1.14)}
.desl input[type=range]:focus-visible{outline:2px solid var(--acento);outline-offset:4px;border-radius:999px}
.desl-n{font-family:var(--display);font-size:1.6rem;line-height:1;width:1.7em;text-align:right;
  flex:none;font-variant-numeric:tabular-nums;color:var(--acento)}
.desl.sin .desl-n{color:var(--tinta-suave);opacity:.5}
.desl.sin input[type=range]::-webkit-slider-runnable-track{background:var(--linea)}
.desl-ext{font-size:.72rem;color:var(--tinta-suave);display:block}

.dias-chip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:4px 0 9px}
.dias-chip .chip{font:inherit;cursor:pointer;background:var(--papel);color:var(--tinta-suave);
  border:1px solid var(--linea);border-radius:var(--r-ch);padding:8px 2px 7px;
  display:flex;flex-direction:column;align-items:center;gap:2px;
  -webkit-tap-highlight-color:transparent;transition:all .14s}
.dias-chip .chip .dw{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.dias-chip .chip .dd{font-size:.95rem;font-weight:650;font-variant-numeric:tabular-nums}
.dias-chip .chip[aria-pressed="true"]{background:var(--verde);border-color:var(--verde);color:#fff}
.dias-chip .chip:active{transform:scale(.93)}
.dias-chip .chip:focus-visible{outline:2px solid var(--acento);outline-offset:2px}
.cuenta-dias{font-size:.8rem;color:var(--tinta-suave);margin:0;font-weight:600}

.metas{display:grid;gap:7px;margin-top:4px}
.meta{font:inherit;font-size:.89rem;text-align:left;cursor:pointer;background:var(--papel);
  color:var(--tinta);border:1px solid var(--linea);border-radius:var(--r-ch);
  padding:11px 13px;display:flex;gap:11px;align-items:flex-start;line-height:1.42;
  -webkit-tap-highlight-color:transparent;transition:all .14s}
.meta .tick{width:19px;height:19px;border-radius:6px;border:1.5px solid var(--linea);
  flex:none;margin-top:1px;display:grid;place-items:center;transition:all .14s}
.meta[aria-pressed="true"]{background:var(--verde-suave);border-color:var(--verde)}
.meta[aria-pressed="true"] .tick{background:var(--verde);border-color:var(--verde)}
.meta[aria-pressed="true"] .tick::after{content:"";width:9px;height:5px;margin-top:-2px;
  border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.meta[aria-pressed="true"] .mt{color:var(--tinta-suave)}
.meta:active{transform:scale(.985)}
.meta:focus-visible{outline:2px solid var(--acento);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.desl.sin .desl-n{font-size:.95rem;font-family:var(--cuerpo);font-weight:600}
.desl{margin-bottom:2px}
.campo .desl + .desl-ext{margin-top:3px}


/* ═══════════ CAPA DE APP · bloques de color, cifras grandes, esquinas suaves ═══════════ */
:root{
  --fill-verde:#2f6b4a; --fill-verde-c:#e8f2ec;
  --fill-ambar:#e0a93c; --fill-ambar-c:#fbf0d9;
  --fill-rosa:#c4705c;  --fill-rosa-c:#f8e7e2;
  --fill-azul:#4a6b7c;  --fill-azul-c:#e6eef2;
  --sobre:#ffffff;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --fill-verde:#4d9b73; --fill-verde-c:#1b2d24;
  --fill-ambar:#d9a447; --fill-ambar-c:#2c2415;
  --fill-rosa:#cf8370;  --fill-rosa-c:#2d1f1b;
  --fill-azul:#6f94a6;  --fill-azul-c:#1a242a;
  --sobre:#1d2420;
}}
:root[data-theme="dark"]{
  --fill-verde:#4d9b73; --fill-verde-c:#1b2d24;
  --fill-ambar:#d9a447; --fill-ambar-c:#2c2415;
  --fill-rosa:#cf8370;  --fill-rosa-c:#2d1f1b;
  --fill-azul:#6f94a6;  --fill-azul-c:#1a242a;
  --sobre:#1d2420;
}

/* la hoja respira más */
.hoja{padding-inline:16px;padding-block:8px 130px}

/* cabecera: saludo grande y inicial, como las apps de la referencia */
header.marca{border-bottom:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;
  position:static;margin-inline:0;padding:14px 2px 4px;margin-bottom:4px;align-items:center}
header.marca h1{font-size:1.5rem;letter-spacing:-.03em;font-weight:740}
header.marca .saludo{background:none;border:0;padding:0;font-size:0;
  width:40px;height:40px;border-radius:999px;display:grid;place-items:center;
  background:var(--fill-verde);color:#fff;flex:none}
header.marca .saludo::first-letter{font-size:1.05rem;font-weight:700}

/* barra de abajo: píldora flotante */
nav.pest{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));
  border-radius:999px;border:0;padding:7px 6px;
  background:var(--sobre);box-shadow:0 2px 6px rgba(31,42,36,.06),0 14px 36px -10px rgba(31,42,36,.26);
  -webkit-backdrop-filter:none;backdrop-filter:none}
nav.pest button{padding:7px 0 5px;font-size:.55rem;border-radius:999px;letter-spacing:-.02em}
/* con siete pestañas el rótulo no se puede partir en dos renglones: la barra crecería */
nav.pest button span{white-space:nowrap}
nav.pest button svg{width:20px;height:20px}
nav.pest button[aria-current="page"]{color:var(--fill-verde)}
@media(min-width:760px){nav.pest{position:sticky;left:auto;right:auto;bottom:auto;border-radius:var(--r);
  top:calc(env(safe-area-inset-top,0px) + 8px);margin-inline:0;padding:5px}}

/* tarjetas: esquinas grandes, sin línea, sombra suave */
section.paso,.cargando,.paro,.plan-cab,.dia,.lista-corta,.termo,.sem-linea,.prosa .sem-linea{
  border:0!important;border-radius:var(--r)!important;background:var(--sobre);
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 10px 26px -12px rgba(31,42,36,.17)}
section.paso>header{border-bottom:0;padding:17px 18px 3px}
section.paso h3{font-size:1.1rem;font-weight:720;letter-spacing:-.022em}
section.paso .np{display:none}
section.paso .cuerpo{padding:12px 18px 20px}
.sem-linea{padding:15px 17px!important;margin-bottom:10px!important}
.sem-linea{border-left:0!important;position:relative;padding-left:17px!important}
.prosa .sem-linea b{display:flex;align-items:center;gap:8px}
.prosa .sem-linea b::before{content:"";width:10px;height:10px;border-radius:999px;flex:none}
.prosa .sem-linea.v b::before{background:var(--fill-verde)}
.prosa .sem-linea.am b::before{background:var(--fill-ambar)}
.prosa .sem-linea.ro b::before{background:var(--fill-rosa)}
.prosa .sem-linea.v b{color:var(--fill-verde)}
.prosa .sem-linea.am b{color:var(--fill-ambar)}
.prosa .sem-linea.ro b{color:var(--fill-rosa)}
.abre{border-left:0;padding-left:0}

/* ── el termómetro como pieza principal: tira de días, anillo y cifra grande ── */
.termo{background:var(--fill-verde)!important;color:#fff;padding:20px 18px 24px!important;
  margin:0 0 18px;border-radius:var(--r-xl)!important;
  box-shadow:0 3px 8px rgba(47,107,74,.18),0 18px 40px -14px rgba(47,107,74,.5)!important}
.termo .eyebrow{display:none}
.tira{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:18px}
.td{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 0 8px;
  border-radius:999px;color:rgba(255,255,255,.62)}
.td .tdw{font-size:.58rem;font-weight:700;letter-spacing:.04em}
.td .tdn{font-size:.86rem;font-weight:650;font-variant-numeric:tabular-nums}
.td.lleno{color:#fff;background:rgba(255,255,255,.14)}
.td.hoy{background:#fff;color:var(--fill-verde)}
.cifra-caja{position:relative;width:150px;height:150px;margin:0 auto 4px}
.anillo{width:100%;height:100%;transform:rotate(-90deg)}
.ar-fondo{stroke:rgba(255,255,255,.2)}
.ar-valor{stroke:#fff;transition:stroke-dasharray .45s cubic-bezier(.3,.9,.3,1)}
.cifra-centro{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:0}
.cifra-n{font-family:var(--display);font-size:3.4rem;line-height:.95;font-variant-numeric:tabular-nums}
.cifra-de{font-size:.7rem;opacity:.68;font-weight:600;letter-spacing:.04em}
.termo h3{font-size:1.02rem;font-weight:680;margin:14px 0 0;text-align:center;
  letter-spacing:-.018em;color:#fff}
.termo p.q{font-size:.8rem;opacity:.72;margin:6px 0 16px;text-align:center}
.termo .escala{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}
.termo .num{width:auto;height:34px;font-size:.84rem;border-radius:11px;
  background:rgba(255,255,255,.12);border:0;color:#fff;font-weight:650}
.termo .num:hover{background:rgba(255,255,255,.22);border:0}
.termo .num[aria-pressed="true"]{background:#fff;color:var(--fill-verde)}
.termo .racha{font-size:.78rem;opacity:.72;margin:14px 0 0;text-align:center;color:#fff}

/* ── Mi avance: las seis puertas como barras ── */
.puertas-av{background:var(--sobre);border-radius:var(--r-xl);padding:22px 20px 20px;
  margin:0 0 18px;box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.pa-cab{text-align:center;margin-bottom:22px}
.pa-cifra{font-family:var(--display);font-size:3.1rem;line-height:1;margin:8px 0 0;
  color:var(--fill-verde);font-variant-numeric:tabular-nums}
.pa-cifra span{display:block;font-family:var(--cuerpo);font-size:.72rem;font-weight:650;
  color:var(--tinta-suave);letter-spacing:.03em;margin-top:7px}
.pa-pie{font-size:.83rem;color:var(--tinta-suave);margin:11px auto 0;max-width:30ch;line-height:1.45}
.barras{display:grid;gap:17px}
.pa-barra{display:grid;gap:7px}
.ba-t{display:flex;align-items:baseline;gap:9px}
.ba-n{font-size:.92rem;font-weight:620;letter-spacing:-.012em}
.ba-d{font-size:.7rem;font-weight:750;border-radius:999px;padding:2px 8px;
  background:var(--linea);color:var(--tinta-suave);margin-left:auto}
.ba-d.sube{background:var(--fill-verde-c);color:var(--fill-verde)}
.ba-d.baja{background:var(--fill-rosa-c);color:var(--fill-rosa)}
.ba-pista{position:relative;height:17px;border-radius:999px;background:var(--linea);overflow:visible}
.ba-rel{height:100%;border-radius:999px;transition:width .5s cubic-bezier(.3,.9,.3,1)}
.ba-marca{position:absolute;top:-4px;bottom:-4px;width:2px;border-radius:999px;
  background:var(--tinta);opacity:.42}
.ba-v{font-size:.74rem;color:var(--tinta-suave);font-variant-numeric:tabular-nums;font-weight:600}
.pa-barra.verde .ba-rel{background:var(--fill-verde)}
.pa-barra.ambar .ba-rel{background:var(--fill-ambar)}
.pa-barra.rosa  .ba-rel{background:var(--fill-rosa)}
.pa-barra.azul  .ba-rel{background:var(--fill-azul)}
.pa-leyenda{font-size:.72rem;color:var(--tinta-suave);margin:18px 0 0;text-align:center}

/* ── las puertas hacia Miranda: la app dice CUÁNDO buscarla ── */
.llamado{background:var(--fill-verde);color:#fff;border-radius:var(--r-xl);
  padding:26px 22px 24px;margin:0 0 18px;
  box-shadow:0 3px 8px rgba(47,107,74,.18),0 18px 40px -14px rgba(47,107,74,.45)}
.llamado .eyebrow{color:rgba(255,255,255,.7)}
.llamado h3{color:#fff;font-size:1.3rem;margin:9px 0 13px;letter-spacing:-.025em;line-height:1.2}
.ll-t{font-size:.9rem;line-height:1.55;opacity:.88;margin:0 0 11px}
.btn-grande{font:inherit;font-size:.95rem;font-weight:680;cursor:pointer;width:100%;
  border:0;border-radius:999px;padding:14px 18px;margin-top:9px;
  background:#fff;color:var(--fill-verde);letter-spacing:-.012em;
  -webkit-tap-highlight-color:transparent;transition:transform .14s}
.btn-grande:active{transform:scale(.98)}
.btn-grande:focus-visible{outline:2px solid #fff;outline-offset:3px}
.btn-grande.claro{background:var(--fill-verde);color:#fff}
/* el segundo botón del llamado: mismo tamaño, sin competirle al primero */
.btn-lineas{font:inherit;font-size:.9rem;font-weight:620;cursor:pointer;width:100%;
  border:1.5px solid rgba(255,255,255,.55);border-radius:999px;padding:12px 18px;margin-top:8px;
  background:transparent;color:#fff;letter-spacing:-.012em;
  -webkit-tap-highlight-color:transparent;transition:transform .14s,background .14s}
.btn-lineas:active{transform:scale(.98)}
.btn-lineas:hover{background:rgba(255,255,255,.1)}
.btn-lineas:focus-visible{outline:2px solid #fff;outline-offset:3px}
.btn-lineas[disabled]{opacity:.65;cursor:default}

/* ═══════════ TUS AUDIOS CON LA DOCTORA ═══════════ */
a.btn-grande{display:block;text-align:center;text-decoration:none}
.audio-lista{margin:0 0 12px;padding:0 0 0 18px;font-size:.9rem;line-height:1.55;opacity:.9}
.audio-lista li{margin:0 0 9px}
.audio-lista li b{opacity:1}
.audio-ya{margin:0 0 16px}
.audio-ya .eyebrow{color:var(--fill-verde)}
.audio-ya h3{font-size:1.35rem;margin:6px 0 0;letter-spacing:-.025em}
.audio-pieza{background:var(--sobre);border-radius:var(--r-xl);padding:20px 18px;margin:0 0 14px;
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.audio-pieza header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 4px}
.audio-pieza h3{font-size:1.02rem;font-weight:700;margin:0;letter-spacing:-.02em}
.audio-fecha{font-size:.74rem;color:var(--tinta-suave);white-space:nowrap}
.audio-cuando{font-size:.86rem;color:var(--tinta-suave);line-height:1.5;margin:0 0 12px}
.audio-pieza audio{width:100%;display:block;margin:0 0 12px}
.audio-espera{font-size:.86rem;line-height:1.5;margin:0;border-radius:12px;padding:11px 13px;
  /* el ámbar sobre ámbar claro no se lee: el texto va en tinta, nunca en el color del fondo */
  background:var(--fill-ambar-c);color:var(--tinta);border-left:3px solid var(--fill-ambar)}
.audio-texto{font-size:.9rem;line-height:1.6;margin:0 0 10px}
.audio-texto p{margin:0 0 9px}
a.audio-pdf{display:inline-block;font-size:.85rem;font-weight:650;text-decoration:none;
  color:var(--fill-verde);background:var(--fill-verde-c);border-radius:999px;padding:9px 16px}
a.audio-pdf:active{transform:scale(.98)}

/* ═══════════ SOPORTE POR WHATSAPP ═══════════ */
.soporte{background:var(--sobre);border-radius:var(--r-xl);padding:18px;margin:14px 0 0;
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.soporte h3{font-size:.95rem;font-weight:700;margin:0 0 6px;letter-spacing:-.02em}
.soporte .q{margin:0 0 12px}
a.btn-wa{display:flex;align-items:center;justify-content:center;gap:8px;
  font:inherit;font-size:.9rem;font-weight:680;text-decoration:none;
  border-radius:999px;padding:12px 18px;letter-spacing:-.012em;
  background:#1f8f4e;color:#fff;-webkit-tap-highlight-color:transparent;transition:transform .14s}
a.btn-wa::before{content:"";width:17px;height:17px;flex:0 0 17px;background:currentColor;
  -webkit-mask:var(--wa) center/contain no-repeat;mask:var(--wa) center/contain no-repeat}
a.btn-wa:active{transform:scale(.98)}
a.btn-wa:focus-visible{outline:2px solid #1f8f4e;outline-offset:3px}
#paroWa{margin-top:18px}
#paroWa a.btn-wa{max-width:340px;margin-inline:auto}
:root{--wa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.04 2a9.9 9.9 0 0 0-8.5 14.95L2 22l5.2-1.5A9.9 9.9 0 1 0 12.04 2Zm5.5 14.05c-.24.67-1.4 1.3-1.93 1.34-.5.05-1.12.07-1.8-.11-.42-.12-.95-.3-1.64-.6-2.9-1.25-4.78-4.15-4.93-4.35-.14-.2-1.17-1.55-1.17-2.96 0-1.4.74-2.1 1-2.38.26-.29.57-.36.76-.36h.54c.18 0 .42-.07.65.5.24.58.8 2 .87 2.14.07.15.12.32.02.51-.1.2-.15.32-.3.49-.14.17-.3.38-.44.51-.14.14-.29.3-.12.58.17.29.75 1.24 1.6 2 1.11.99 2.05 1.3 2.34 1.44.29.15.46.12.63-.07.17-.2.72-.84.92-1.13.19-.29.38-.24.64-.14.26.09 1.66.78 1.95.93.29.14.48.21.55.33.07.12.07.69-.17 1.36Z'/%3E%3C/svg%3E")}
.btn-grande.claro:focus-visible{outline-color:var(--fill-verde)}
.plan-pie{background:var(--sobre);border-radius:var(--r-xl);padding:22px 20px;margin-top:26px;
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2);border:0;text-align:left}
.pp-t{font-size:1rem;font-weight:680;margin:0 0 8px;letter-spacing:-.018em}
.pp-s{font-size:.86rem;color:var(--tinta-suave);margin:0;line-height:1.5}
.alc.cuando{background:var(--fill-verde-c);border-left:3px solid var(--fill-verde)}
.alc.cuando h3{color:var(--fill-verde)}
.alc.cuando li b{color:var(--fill-verde)}
.alcance{gap:10px}
@media(min-width:620px){.alcance{grid-template-columns:1fr 1fr}.alc.cuando{grid-column:1/-1}}
[hidden]{display:none!important}

/* ═══════════ BARRIDO · la misma cara en toda la app ═══════════ */

/* toda sección es una tarjeta del mismo sistema */
.av,.reglas,.alc,.sems li,.notas,.hueco2,.semana,.marco-chat,.fuera-prod,.llamado,
.puertas-av,.plan-pie{border:0!important}
.av{background:var(--sobre);border-radius:var(--r-xl);padding:22px 20px;margin-bottom:16px;
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.av>h3{font-size:1.12rem;font-weight:720;letter-spacing:-.022em;margin-bottom:5px}
.av>p.q{font-size:.83rem;margin:0 0 17px;line-height:1.45}

/* los días de cada semana: fichas con la cifra grande */
.sems{gap:9px;grid-template-columns:repeat(auto-fit,minmax(7.4rem,1fr))}
.sems li{background:var(--fill-verde-c);border-radius:var(--r-ch);padding:14px 14px 13px;
  display:grid;gap:3px}
.sems .rot2{font-size:.63rem;letter-spacing:.09em;color:var(--fill-verde);font-weight:800}
.sems .val{font-family:var(--display);line-height:1;margin-top:3px;display:flex;
  align-items:baseline;gap:6px;color:var(--fill-verde)}
.sems .val b{font-size:2rem;font-weight:400;font-variant-numeric:tabular-nums}
.sems .val small{font-size:.72rem;font-family:var(--cuerpo);font-weight:650;
  color:var(--tinta-suave);letter-spacing:-.01em}
.sems .est{font-size:.71rem;color:var(--tinta-suave);margin-top:2px;line-height:1.35}
.sems .pend{background:var(--linea)}
.sems .pend .rot2,.sems .pend .val{color:var(--tinta-suave)}

/* sus palabras: la pieza que más importa de Mi avance */
.notas li{grid-template-columns:1fr;gap:6px;padding:15px 16px;border:0!important;
  background:var(--fill-ambar-c);border-radius:var(--r-ch);margin-bottom:9px}
.notas li:last-child{border:0!important;margin-bottom:0}
.notas .cuando2{font-size:.63rem;letter-spacing:.09em;color:var(--fill-ambar);
  font-weight:800;padding:0}
.notas .dicho{font-family:var(--display);font-size:1.12rem;font-style:normal;line-height:1.35;
  letter-spacing:-.008em}
.notas .vacio{background:none;font-family:var(--cuerpo);font-size:.85rem}
.notas li:has(.vacio){background:var(--linea);opacity:.7}

/* las dos definiciones de cada deslizador, una por extremo */
.desl-ext{display:grid;gap:3px;margin-top:5px}
.dx-b,.dx-a{font-size:.74rem;line-height:1.38;color:var(--tinta-suave);
  padding-left:13px;position:relative}
.dx-b::before,.dx-a::before{content:"";position:absolute;left:0;top:.44em;
  width:6px;height:6px;border-radius:999px}
.dx-b::before{background:var(--fill-rosa)}
.dx-a::before{background:var(--fill-verde)}

/* recetas: que se vea del mismo sistema */
.barrita{border-bottom:0;background:var(--sobre);border-radius:999px;padding:9px 10px 9px 18px;
  margin-bottom:16px;box-shadow:0 1px 3px rgba(31,42,36,.045),0 10px 26px -14px rgba(31,42,36,.22);
  top:8px;display:flex;align-items:center;gap:9px}
.cuenta{font-family:var(--cuerpo);font-size:.82rem;font-weight:650;color:var(--tinta-suave)}
.cuenta b{font-family:var(--display);font-size:1.5rem;color:var(--fill-verde);margin-right:3px}
.reglas{background:var(--fill-verde);color:#fff;border-radius:var(--r-xl);padding:22px 20px;
  margin-bottom:16px;box-shadow:0 3px 8px rgba(47,107,74,.16),0 16px 36px -16px rgba(47,107,74,.4)}
.reglas h3{color:#fff;font-size:1.1rem;font-weight:720;letter-spacing:-.022em}
.reglas ul{padding-left:1.1em;font-size:.88rem;line-height:1.5}
.reglas strong{font-weight:720}
.reglas .forma{color:rgba(255,255,255,.78);font-weight:600}
.chip{border:0;background:var(--sobre);border-radius:999px;padding:7px 13px;
  box-shadow:0 1px 2px rgba(31,42,36,.05)}
.leyenda{margin-bottom:22px}
.semana{background:var(--sobre);border-radius:var(--r-xl);padding:22px 20px;margin-top:20px;
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.pie{margin-top:22px;padding:20px;border-top:0;background:var(--fill-verde-c);
  border-radius:var(--r-xl);font-size:.84rem;color:var(--tinta-suave)}
.hueco2{border:0!important;background:var(--fill-ambar-c);border-radius:var(--r-ch);padding:16px}
.hueco2 b{color:var(--fill-ambar)}
.alc{border-radius:var(--r-xl);padding:20px;background:var(--sobre);
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 10px 26px -14px rgba(31,42,36,.2)}
.alc h3{font-family:var(--cuerpo);font-size:1rem;font-weight:700;letter-spacing:-.02em;margin-bottom:11px}
.alc.no{background:var(--fill-ambar-c)} .alc.no h3{color:var(--fill-ambar)}
.alc.si h3{color:var(--fill-verde)}
.alc.cuando{background:var(--fill-verde)!important;color:#fff}
.alc.cuando h3,.alc.cuando li b{color:#fff}
.alc.cuando li{opacity:.92}
.marco-chat{border-radius:var(--r-xl);overflow:hidden;background:var(--sobre);
  box-shadow:0 1px 3px rgba(31,42,36,.045),0 12px 30px -14px rgba(31,42,36,.2)}
.aviso-flota{bottom:92px;border-radius:999px}
.hoja .vista>header.v{padding-inline:2px}
.sems .val .nd{font-size:.8rem;font-weight:650;color:var(--tinta-suave);padding:4px 0}
/* la barrita de recetas se desbordaba de la píldora: va como tarjeta que envuelve bien */
.barrita{border-radius:var(--r)!important;padding:12px 14px!important;flex-wrap:wrap;
  justify-content:space-between}
.barrita .cuenta{flex:1 1 100%;margin-bottom:2px}
.btn{font:inherit;font-size:.82rem;font-weight:650;cursor:pointer;border-radius:999px;
  padding:9px 15px;border:1px solid var(--linea);background:var(--papel);color:var(--tinta);
  -webkit-tap-highlight-color:transparent;transition:all .14s;letter-spacing:-.01em}
.btn:active{transform:scale(.97)}
.btn.primario{background:var(--fill-verde);border-color:var(--fill-verde);color:#fff}
.btn:disabled{opacity:.42;cursor:default;background:var(--linea);border-color:transparent;color:var(--tinta-suave)}
.btn:focus-visible{outline:2px solid var(--fill-verde);outline-offset:2px}
.leyenda .chip{font-size:.72rem;padding:6px 12px}
.barra{background:color-mix(in srgb,var(--papel) 92%,transparent);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--linea)}


/* ═══════════ CAPA COMBINADA · el diseño nuevo (colores combinados, serif en títulos) ═══════════
   Va al final para mandar sobre todo lo de arriba. No toca nada de la lógica. */
:root{
  --papel:#F5F0E8; --tinta:#1F1A17; --tinta-suave:#6E625A; --linea:#E6DDD0; --tarjeta:#FFFFFF;
  --acento:#B4502F; --verde:#2F6B4A; --verde-suave:#DDEADF; --rojo:#8E3A2C; --rojo-suave:#F7DED2;
  --hueco:#7A5B12; --hueco-suave:#FBEDC4; --sobre:#FFFFFF;
  --amarillo:#F4C553; --lila:#E3DDF3; --lila-f:#C3BAE6; --lila-t:#3F3770; --durazno:#F2B59E; --salvia:#A9CDB6;
  --fill-verde:#2F6B4A; --fill-verde-c:#DDEADF; --fill-ambar:#7A5B12; --fill-ambar-c:#FBEDC4;
  --fill-rosa:#B4502F; --fill-rosa-c:#F7DED2; --fill-azul:#3F3770; --fill-azul-c:#E3DDF3;
  --display:'Instrument Serif',Georgia,serif;
  --cuerpo:'Figtree',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --sombra:0 1px 3px rgba(31,26,23,.04),0 12px 26px -16px rgba(31,26,23,.2);
  --r:24px; --r-ch:16px; --r-xl:28px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --papel:#171311; --tinta:#F3ECE4; --tinta-suave:#B3A69C; --linea:#352C27; --tarjeta:#221C19; --sobre:#221C19;
  --acento:#D9805F; --verde:#7FC3A0; --verde-suave:#1D2E26; --rojo:#E89A82; --rojo-suave:#33211C;
  --hueco:#F4C553; --hueco-suave:#2E2614; --lila:#2A2540; --lila-t:#CFC7F0;
  --fill-verde:#2F6B4A; --fill-verde-c:#1D2E26; --fill-ambar:#F4C553; --fill-ambar-c:#2E2614;
  --fill-rosa:#B4502F; --fill-rosa-c:#33211C; --fill-azul:#5A51A0; --fill-azul-c:#2A2540;
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --papel:#171311; --tinta:#F3ECE4; --tinta-suave:#B3A69C; --linea:#352C27; --tarjeta:#221C19; --sobre:#221C19;
  --acento:#D9805F; --verde:#7FC3A0; --verde-suave:#1D2E26; --rojo:#E89A82; --rojo-suave:#33211C;
  --hueco:#F4C553; --hueco-suave:#2E2614; --lila:#2A2540; --lila-t:#CFC7F0;
  --fill-verde:#2F6B4A; --fill-verde-c:#1D2E26; --fill-ambar:#F4C553; --fill-ambar-c:#2E2614;
  --fill-rosa:#B4502F; --fill-rosa-c:#33211C; --fill-azul:#5A51A0; --fill-azul-c:#2A2540;
  color-scheme:dark;
}
body{font-family:var(--cuerpo);background:var(--papel);color:var(--tinta)}
h1,h2,h3{font-family:var(--cuerpo)}

/* cabecera: el saludo grande en serif, la marca chiquita */
header.marca{padding:18px 2px 6px;margin-bottom:6px}
header.marca .saludo{order:-1;width:auto!important;height:auto!important;background:none!important;
  color:var(--tinta)!important;font-family:var(--display);font-size:2.3rem!important;line-height:1;
  margin:0!important;padding:0!important;display:block!important;border:0!important}
header.marca .saludo::first-letter{font-size:inherit!important;font-weight:400!important}
header.marca h1{margin-left:auto;font-size:.68rem!important;letter-spacing:.1em;text-transform:uppercase;
  font-weight:800!important;color:var(--tinta-suave);background:var(--lila);border-radius:999px;padding:8px 12px}

/* títulos de cada pantalla */
.vista>header.v h2{font-family:var(--display);font-weight:400!important;font-size:clamp(2.3rem,9vw,2.8rem)!important;
  line-height:1!important;letter-spacing:-.01em!important}
.vista>header.v p.sub{font-size:.9rem}
.eyebrow{font-size:.68rem;letter-spacing:.09em;font-weight:800;opacity:1}

/* la barra de abajo: píldora blanca, la pestaña activa en amarillo, Miranda en terracota */
nav.pest{background:var(--sobre)!important;box-shadow:0 2px 6px rgba(31,26,23,.06),0 18px 36px -12px rgba(31,26,23,.32)!important}
nav.pest button{color:var(--tinta-suave);font-weight:650}
nav.pest button svg{box-sizing:content-box;padding:4px 11px;border-radius:999px;transition:background .16s}
nav.pest button[aria-current="page"]{color:var(--tinta)!important;font-weight:800}
nav.pest button[aria-current="page"] svg{background:var(--amarillo);stroke:#1F1A17;opacity:1}
nav.pest button[data-v="miranda"] svg{background:var(--acento);stroke:#fff;padding:6px 11px;opacity:1}
nav.pest button[data-v="miranda"][aria-current="page"] svg{background:#1F1A17;stroke:var(--amarillo)}
@media(min-width:760px){nav.pest button[aria-current="page"]{border-bottom-color:transparent}}

/* tarjetas */
section.paso,.cargando,.paro,.dia,.lista-corta,.av,.puertas-av,.semana,.alc,.marco-chat,.plan-pie{
  border-radius:var(--r-xl)!important;box-shadow:var(--sombra)!important}
.cargando{font-size:1rem}
.paro{border-left:0!important;background:var(--rojo-suave)!important}
.paro h2{font-family:var(--display);font-weight:400;font-size:1.7rem}
.ensayo{background:var(--hueco-suave);color:var(--hueco)}

/* MI INVENTARIO */
section.paso h3{font-size:1.08rem;font-weight:800}
section.paso .np{display:grid!important;width:30px;height:30px;font-size:.8rem;font-weight:800;border:0;
  color:#1F1A17;background:var(--amarillo)}
section.paso:nth-child(4n+2) .np{background:var(--lila-f)}
section.paso:nth-child(4n+3) .np{background:var(--salvia)}
section.paso:nth-child(4n) .np{background:var(--durazno)}
section.paso .listo{color:var(--verde)}
.rot{font-size:.95rem;font-weight:750}
.textual{background:var(--hueco-suave)!important;border-left:0!important;border-radius:14px!important;
  color:var(--tinta);font-size:.88rem;padding:12px 14px}
.confirma{background:var(--hueco-suave);color:var(--hueco)}
.op{background:var(--tarjeta);border:1.5px solid var(--linea);font-size:.92rem;min-height:44px}
.ops.col .op{border-radius:16px}
.op[aria-pressed="true"]{background:#1F1A17;color:#fff;border-color:#1F1A17}
.op .orden{color:var(--amarillo)}
input[type=text],input[type=number],textarea,select{background:var(--tarjeta);border:1.5px solid var(--linea);border-radius:14px}
input[type=text],input[type=number],select{min-height:46px}
.abre.on{background:var(--papel);border-radius:16px;padding:14px!important;border-left:3px solid var(--amarillo)!important}
.pausa{background:var(--rojo-suave);border-left:0;border-radius:14px}
.prod{background:var(--tarjeta);border:1.5px solid var(--linea);border-radius:18px;padding:14px}
.chip-v{background:var(--verde-suave);color:var(--verde)}
.chip-h{background:var(--hueco-suave);color:var(--hueco)}
.campo.falta{background:var(--rojo-suave);border-left:0;border-radius:16px}
section.paso.conFalta>header{background:var(--rojo-suave)}
.barra{background:var(--sobre)!important;border-top:0!important;border-radius:28px 28px 0 0;
  box-shadow:0 -10px 30px -14px rgba(31,26,23,.3)}
.barra .txt b{font-family:var(--display);font-weight:400;font-size:1.6rem}
.btn.primario,.barra .btn.primario{background:#1F1A17;border-color:#1F1A17;color:#fff}
.btn{border-radius:999px;min-height:42px}

/* MI PLAN */
.termo{background:var(--amarillo)!important;color:#1F1A17!important;
  box-shadow:0 16px 34px -18px rgba(122,91,18,.55)!important}
.termo h3,.termo .racha,.termo p.q{color:#1F1A17!important;opacity:1!important}
.termo p.q,.termo .racha{color:#5A4310!important}
.td{color:#5A4310}
.td.lleno{background:rgba(255,255,255,.5);color:#1F1A17}
.td.hoy{background:#1F1A17;color:#fff}
.ar-fondo{stroke:rgba(31,26,23,.12)}
.ar-valor{stroke:#1F1A17}
.cifra-de{color:#5A4310;opacity:1}
.termo .num{background:rgba(255,255,255,.6);color:#1F1A17;height:42px}
.termo .num:hover{background:#fff}
.termo .num[aria-pressed="true"]{background:#1F1A17;color:#fff}
.plan-cab{background:var(--fill-rosa)!important;color:#fff;box-shadow:0 16px 30px -18px rgba(140,58,30,.7)!important}
.pc-tit{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:#FBE0D3}
.pc-quien{font-family:var(--display);font-size:1.45rem!important;line-height:1.05;color:#fff!important}
.pc-pie,.pc-nota{color:#FBE0D3!important;border-top-color:rgba(255,255,255,.22)!important}
.cita{background:var(--tarjeta);border-left:0;border-radius:22px;padding:18px 20px;box-shadow:var(--sombra)}
.cita p{font-style:italic;font-size:1.35rem;line-height:1.2}
.prosa h3{font-family:var(--cuerpo)!important;font-weight:800!important;font-size:1.02rem!important;
  letter-spacing:.02em!important;color:var(--acento)!important;
  border-bottom:0!important;margin:34px 0 12px!important;line-height:1.25}
.prosa p{font-size:.97rem}
.sem-tit .t{font-size:.74rem}
.sem-tit.v .punto,.sem-tit.v .t{color:var(--verde)} .sem-tit.v .punto{background:var(--verde)}
.sem-tit.am .punto{background:var(--amarillo)} .sem-tit.am .t{color:var(--hueco)}
.sem-tit.ro .punto{background:var(--acento)} .sem-tit.ro .t{color:var(--acento)}
.sem-leyenda{border-radius:14px}
.sem-leyenda.v{background:var(--verde-suave);color:#1F3D2B}
.sem-leyenda.am{background:var(--hueco-suave);color:#4A3A10}
.sem-leyenda.ro{background:var(--rojo-suave);color:#6B2C20}
.prosa .sem-linea{border:0!important;border-radius:18px!important;box-shadow:none!important}
.prosa .sem-linea.v{background:var(--fill-verde)!important}
.prosa .sem-linea.am{background:var(--amarillo)!important}
.prosa .sem-linea.ro{background:var(--fill-rosa)!important}
.prosa .sem-linea.v b,.prosa .sem-linea.ro b,.prosa .sem-linea.v span,.prosa .sem-linea.ro span{color:#fff!important}
.prosa .sem-linea.am b,.prosa .sem-linea.am span{color:#1F1A17!important}
.prosa .sem-linea span{opacity:.92}
.prosa .sem-linea b::before{background:currentColor!important}
.dias h3{font-family:var(--display);font-weight:400;font-size:1.65rem}
.dias>header{border-bottom:0}
.dia{border:0;background:var(--tarjeta)}
.dia-cab{min-height:56px;align-items:center}
.dia-cab .dn{font-family:var(--cuerpo);font-size:.75rem;font-weight:800;background:var(--papel);color:var(--tinta);
  border-radius:999px;padding:6px 10px}
.dia.abierto .dia-cab .dn{background:var(--fill-verde);color:#fff}
.dia-cab .dt{font-weight:800}
.bloq{border-left:0!important;border-radius:14px;background:var(--papel)}
.bloq.haz{background:var(--verde-suave)} .bloq.haz .et{color:var(--verde)}
.bloq.cuesta{background:var(--hueco-suave)} .bloq.cuesta .et{color:var(--hueco)}
.lista-corta{border:0;background:var(--tarjeta)}
.lista-corta>.dia-cab{background:var(--hueco-suave)}
.plan-pie{background:var(--lila)!important}
.pp-t{font-family:var(--display);font-weight:400;font-size:1.5rem;line-height:1.1}
.pp-s{color:var(--lila-t)}
.btn-grande{background:#fff;color:#1F1A17}
.btn-grande.claro{background:#1F1A17;color:#fff}
.llamado{box-shadow:0 16px 34px -18px rgba(47,107,74,.6)}
.llamado h3{font-family:var(--display);font-weight:400;font-size:1.8rem;line-height:1.05}

/* MI SEMANA */
.desl input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--acento) var(--pc,50%),var(--linea) var(--pc,50%))}
.desl-n{color:var(--tinta)}
.dias-chip .chip{background:var(--papel);border:0;border-radius:18px;min-height:56px}
.dias-chip .chip[aria-pressed="true"]{background:#1F1A17;color:#fff}
.meta{background:var(--papel);border:1.5px solid var(--papel)}
.meta[aria-pressed="true"]{background:var(--verde-suave);border-color:var(--verde)}
.dx-b::before{background:var(--acento)} .dx-a::before{background:var(--verde)}

/* MI AVANCE */
.pa-cifra{font-size:3.6rem;color:var(--fill-verde)}
.ba-pista{height:20px;background:var(--papel)}
.pa-barra.verde .ba-rel{background:var(--amarillo)}
.pa-barra.ambar .ba-rel{background:var(--lila-f)}
.pa-barra.rosa .ba-rel{background:var(--durazno)}
.pa-barra.azul .ba-rel{background:var(--salvia)}
.pa-barra:nth-child(5) .ba-rel{background:var(--lila-t)}
.pa-barra:nth-child(6) .ba-rel{background:#D9805F}
.ba-marca{background:#1F1A17;opacity:.55;width:3px}
.suyo{background:var(--fill-verde)!important;color:#fff;border:0!important;border-radius:var(--r-xl)!important;box-shadow:var(--sombra)}
.suyo .eyebrow,.suyo .pie2{color:#CFE3D6!important}
.suyo blockquote{font-style:normal;font-size:clamp(1.5rem,6vw,2rem);line-height:1.1}
.av>h3{font-family:var(--display);font-weight:400!important;font-size:1.6rem!important}
.grafica{border:0;background:var(--papel);border-radius:18px}
.cajon{background:var(--lila)!important;border:0!important;border-radius:20px!important}
.cajon .cifra{color:var(--tinta)}
.sems li{background:var(--hueco-suave)}
.sems .rot2,.sems .val{color:var(--tinta)}
.sems .pend{background:var(--papel);border:1.5px dashed var(--linea)!important}
.notas li{background:var(--papel)}
.notas .cuando2{color:var(--acento)}
.abiertos li{background:var(--rojo-suave);border:0;font-weight:700}
.cierre{background:#1F1A17!important;color:#fff;border:0!important}
.cierre>h3{color:#fff}
.cierre .eyebrow{color:var(--amarillo)}
.cotejo>div{border:0;background:rgba(255,255,255,.08);border-radius:18px}
.cotejo .no h4{color:#D9CFC6}
.cotejo .si{background:var(--amarillo)!important;color:#1F1A17}
.cotejo .si h4{color:#1F1A17}
.cierre .hueco2{background:transparent!important;border:1.5px dashed rgba(255,255,255,.35)!important;color:#D9CFC6}
.cierre .hueco2 b{color:#fff}
.pronto{border-radius:var(--r-xl);border:1.5px dashed var(--linea)}
.pronto b{font-family:var(--display);font-weight:400;font-size:1.6rem}

/* RECETAS */
.barrita{background:var(--fill-verde)!important;color:#fff}
.barrita .cuenta{color:#E4F0E8}
.barrita .cuenta b{color:#fff}
.barrita .sem{color:var(--amarillo)}
.barrita .btn{background:transparent;border:1.5px solid rgba(255,255,255,.4);color:#fff}
.barrita .btn.primario{background:var(--amarillo);border-color:var(--amarillo);color:#1F1A17}
.barrita .btn:disabled{background:rgba(255,255,255,.12);color:rgba(255,255,255,.6);border-color:transparent}
.reglas{background:var(--amarillo)!important;color:#1F1A17!important}
.reglas h3{color:#1F1A17!important;font-family:var(--display);font-weight:400!important;font-size:1.6rem!important}
.reglas li{background:rgba(255,255,255,.5);border-radius:14px;padding:10px 12px;list-style:none}
.reglas ul{padding-left:0!important;display:grid;gap:8px}
.reglas li+li{margin-top:0}
.reglas .forma{background:#1F1A17!important;color:var(--amarillo)!important;font-weight:700}
.leyenda .chip:nth-child(1){background:var(--verde-suave);color:#25573B}
.leyenda .chip:nth-child(2){background:var(--rojo-suave);color:var(--rojo)}
.leyenda .chip:nth-child(3){background:var(--hueco-suave);color:#5A4310}
.leyenda .chip:nth-child(4){background:var(--lila);color:#4E4870}
.leyenda .chip{font-weight:800}
section.cat>header{border-bottom:0}
section.cat h3{font-family:var(--display);font-weight:400;font-size:1.9rem}
section.cat .n{color:var(--verde);font-weight:800}
ul.lista{gap:10px}
li.rec{background:var(--tarjeta);border:0;border-radius:22px;box-shadow:var(--sombra);padding:2px 10px 2px 12px}
li.rec:hover{background:var(--tarjeta)}
li.rec.quiero{background:var(--verde-suave)}
.tiempo{font-family:var(--display)}
button.quiero{width:44px;height:44px;border:1.5px solid var(--linea);background:var(--tarjeta)}
button.quiero[aria-pressed="true"]{background:#1F1A17;border-color:#1F1A17;color:var(--amarillo)}
.m{border-radius:999px;padding:3px 9px;font-weight:800}
.m.grasa{background:var(--verde-suave);color:#25573B}
.m.hierro{background:var(--rojo-suave);color:var(--rojo)}
.m.lleva{background:var(--lila);color:#4E4870}
.prep .linea{border:0!important;border-radius:14px}
.prep .linea.primero{background:var(--fill-rosa);color:#fff}
.prep .linea.extra{background:var(--verde-suave)}
.prep .linea.pais{background:var(--papel)}
.semana{border-top:0}
.semana h3{font-family:var(--display);font-weight:400;font-size:1.9rem}
.el{background:var(--verde-suave);border:0;color:#25573B}
.ing{background:var(--papel);border:0;border-radius:10px}
.pie{background:var(--lila)}
dialog.copia{border:0;border-radius:28px;padding:24px}
dialog.copia h3{font-family:var(--display);font-weight:400;font-size:1.8rem}

/* MIRANDA */
.alc h3{font-family:var(--display)!important;font-weight:400!important;font-size:1.45rem!important}
.alc.cuando{background:var(--amarillo)!important;color:#1F1A17!important}
.alc.cuando h3,.alc.cuando li b{color:#1F1A17!important}
.alc.si{background:var(--fill-verde)!important;color:#fff;border-left:0!important}
.alc.si h3{color:#fff!important}
.alc.no{background:var(--rojo-suave)!important;border-left:0!important}
.alc.no h3{color:var(--tinta)!important}

/* avisos */
.aviso-flota{background:#1F1A17;color:#fff}


/* ── el porqué del menú: es la Ruta Inversa en el plato, nunca una dieta ── */
.porque{background:var(--fill-ambar-c,#f6edd8);border-radius:var(--r-xl,28px);padding:20px 19px;margin:0 0 16px}
.pq-t{font-size:1.02rem;font-weight:720;letter-spacing:-.02em;margin:0 0 8px;color:var(--fill-ambar,#b8860b)}
.pq-s{font-size:.89rem;line-height:1.55;margin:0;color:var(--tinta)}
.pq-s strong{font-weight:700}
.reglas .rg-q{font-size:.83rem;opacity:.74;margin:0 0 13px;color:inherit}
[hidden]{display:none!important}

/* la etiqueta del primer día de la semana: «primer día de tu semana 3» */
.dia-cab{flex-wrap:wrap}
.dia-cab .de{flex:0 0 100%;order:3;font-size:.7rem;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--tinta-suave);margin-top:4px}

/* ── Receta: rinde, ingredientes y el punto de cocción (5-oct) ── */
.prep .linea.rinde{margin:0 0 10px;font-size:.92rem;color:var(--tinta-suave)}
.prep .sub-ing{margin:14px 0 6px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-suave)}
.prep ul.ing{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px}
.prep ul.ing li{font-size:.95rem;line-height:1.45}
.prep .linea.ya{margin-top:12px;font-size:.95rem;line-height:1.5}

.prep .linea.rinde .base{color:var(--tinta-suave);font-size:.86rem}

/* la línea del micrófono: pista, nunca instrucción (5-oct) */
.campo .dictar{font-size:.8rem;line-height:1.5;color:var(--tinta-suave);margin:8px 0 0}

/* ── La puerta del mapa, entre los dos tramos del inventario (5-oct) ──
   Cerrada es una promesa, abierta es lo que ya se ve de ella. */
.puerta-mapa{border:1px dashed var(--linea);border-radius:var(--r);
  padding:22px 20px;margin:26px 0 8px;background:var(--hueco-suave)}
.puerta-mapa h3{font-family:var(--display);font-size:1.22rem;line-height:1.25;margin:0 0 8px}
.puerta-mapa p.q{margin:0;font-size:.9rem;line-height:1.55;color:var(--tinta-suave)}
.puerta-mapa p.q+*{margin-top:14px}
.puerta-mapa.abierta{border-style:solid;border-width:2px;border-color:var(--fill-verde);
  background:var(--fill-verde);color:var(--fill-verde-c)}
.puerta-mapa.abierta h3,
.puerta-mapa.abierta ul.mapa-datos li,
.puerta-mapa.abierta .mapa-texto p{color:var(--fill-verde-c)}
.puerta-mapa.abierta p.q{color:var(--fill-verde-c);opacity:.82}
.puerta-mapa.abierta ul.mapa-datos li::before{background:var(--fill-verde-c);opacity:.6}
.puerta-mapa .mapa-texto{margin:4px 0 16px}
.puerta-mapa .mapa-texto p{font-size:.95rem;line-height:1.6;margin:0 0 10px}
ul.mapa-datos{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:9px}
ul.mapa-datos li{font-size:.93rem;line-height:1.5;padding-left:17px;position:relative}
ul.mapa-datos li::before{content:'';position:absolute;left:0;top:.56em;
  width:7px;height:7px;border-radius:50%;background:var(--salvia)}
ul.mapa-datos b{font-weight:600}
@media (max-width:420px){.puerta-mapa{padding:18px 16px}}

/* ── El aviso de las alarmas: se enciende solo, sin Miranda y sin costo (6-oct).
   Serio sin ser alarmista, porque la que lo ve acaba de contestar que sí. */
.alarma-aviso{margin:12px 0 0;padding:15px 16px;border-radius:var(--r-ch);
  background:var(--fill-ambar);color:var(--fill-ambar-c);
  border-left:4px solid var(--fill-ambar-c)}
.alarma-aviso b{display:block;font-size:.84rem;letter-spacing:.02em;margin-bottom:7px;
  color:var(--fill-ambar-c)}
.alarma-aviso span{display:block;font-size:.9rem;line-height:1.55;color:var(--fill-ambar-c)}
.alarma-aviso span+span{margin-top:9px}

/* la nota de embarazo en la receta: solo se pinta si lo está (6-oct) */
.prep .linea.emb{background:var(--fill-rosa);color:var(--fill-rosa-c);
  border-radius:var(--r-ch);padding:9px 12px;margin-top:9px}
.prep .linea.emb b{color:inherit}

/* ═══════════ CAPA PREMIUM · estructura común (la paleta la pone el tema de arriba) ═══════════ */
html,body{background:var(--p-bg)!important;color:var(--p-ink)!important}
body{font-family:'Figtree',-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:-.006em}
.hoja{padding-inline:20px!important;padding-top:6px!important}
:root:not(#_){--tinta:var(--p-ink);--tinta-suave:var(--p-muted);--linea:var(--p-hair);--papel:var(--p-bg);
  --tarjeta:var(--p-card);--sobre:var(--p-card);--acento:var(--p-accent)}

/* cabecera */
header.marca{padding:22px 0 10px!important;margin-bottom:8px!important;align-items:center}
header.marca .saludo{font-family:var(--display)!important;font-size:2.15rem!important;color:var(--p-ink)!important;letter-spacing:-.01em}
header.marca h1{background:transparent!important;border:1px solid var(--p-hair-2)!important;color:var(--p-muted)!important;
  font-size:.62rem!important;letter-spacing:.16em!important;padding:7px 12px!important}
.ensayo{background:transparent!important;border:1px solid var(--p-hair-2)!important;color:var(--p-muted)!important;font-weight:600!important}
.ensayo::before{background:var(--p-accent)!important}

/* títulos de pantalla */
.vista>header.v{margin:6px 0 26px!important}
.vista>header.v .eyebrow,.eyebrow{font-size:.62rem!important;letter-spacing:.16em!important;font-weight:700!important;color:var(--p-muted)!important}
.vista>header.v h2{font-family:var(--display)!important;font-weight:400!important;font-size:2.9rem!important;line-height:.98!important;
  letter-spacing:-.02em!important;color:var(--p-ink)!important;margin-top:8px!important}
.vista>header.v p.sub{font-size:.9rem!important;line-height:1.55!important;color:var(--p-muted)!important;margin-top:12px!important;max-width:34ch}

/* tarjetas: una sola familia */
section.paso,.dia,.lista-corta,.av,.puertas-av,.semana,.alc,.plan-pie,.cita,.cargando,.paro,
.audio-pieza,.soporte,.notas li,.sems li,.prod,.marco-chat,.pronto{
  background:var(--p-card)!important;color:var(--p-ink)!important;border:1px solid var(--p-hair)!important;
  box-shadow:var(--p-shadow)!important;border-radius:24px!important}
.av>h3,.semana h3,section.cat h3,.dias h3,.pp-t,.alc h3,.audio-ya h3,.soporte h3{
  font-family:var(--display)!important;font-weight:400!important;font-size:1.7rem!important;letter-spacing:-.01em!important;
  line-height:1.05!important;color:var(--p-ink)!important}
.av>p.q,.semana p.q,section.cat>p.nota,.dias>p.q,.pp-s,.audio-cuando,.soporte .q{color:var(--p-muted)!important}

/* barra de abajo: cristal, íconos finos, la activa con píldora */
nav.pest{background:var(--p-nav)!important;-webkit-backdrop-filter:saturate(170%) blur(22px)!important;backdrop-filter:saturate(170%) blur(22px)!important;
  border:1px solid var(--p-hair)!important;box-shadow:0 20px 40px -18px rgba(0,0,0,.35)!important;left:10px!important;right:10px!important;padding:6px 4px!important}
nav.pest button{color:var(--p-muted)!important;font-size:.52rem!important;font-weight:600!important;letter-spacing:0!important}
nav.pest button svg{stroke-width:1.5!important;padding:4px 10px!important;background:transparent!important;stroke:currentColor!important}
nav.pest button[aria-current="page"]{color:var(--p-ink)!important;font-weight:750!important}
nav.pest button[aria-current="page"] svg{background:var(--p-nav-on)!important;stroke:var(--p-nav-on-fg)!important}
nav.pest button[data-v="miranda"] svg{background:var(--p-accent)!important;stroke:#fff!important}

/* botones */
.btn{border-radius:999px!important;border:1px solid var(--p-hair-2)!important;background:transparent!important;color:var(--p-ink)!important;font-weight:650!important}
.btn.primario,.barra .btn.primario{background:var(--p-ink)!important;border-color:var(--p-ink)!important;color:var(--p-bg)!important}
.btn:disabled{opacity:.4!important}
.btn-grande{background:var(--p-cta)!important;color:var(--p-cta-fg)!important;border-radius:999px!important;font-weight:700!important}
.btn-grande.claro{background:var(--p-ink)!important;color:var(--p-bg)!important}

/* opciones y campos */
.op{background:var(--p-card)!important;border:1px solid var(--p-hair-2)!important;color:var(--p-ink)!important}
.op[aria-pressed="true"]{background:var(--p-ink)!important;border-color:var(--p-ink)!important;color:var(--p-bg)!important}
input[type=text],input[type=number],textarea,select{background:var(--p-field)!important;border:1px solid var(--p-hair-2)!important;color:var(--p-ink)!important}
.textual{background:var(--p-tint-1)!important;color:var(--p-ink)!important}
section.paso .np{background:var(--p-tint-1)!important;color:var(--p-ink)!important;font-family:var(--display);font-weight:400!important;font-size:1rem!important}
section.paso:nth-child(4n+2) .np{background:var(--p-tint-2)!important}
section.paso:nth-child(4n+3) .np{background:var(--p-tint-3)!important}
section.paso:nth-child(4n) .np{background:var(--p-tint-4)!important}
.barra{background:var(--p-nav)!important;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-top:1px solid var(--p-hair)!important}
.barra .txt,.barra .txt b{color:var(--p-ink)!important}
.confirma{background:var(--p-tint-1)!important;color:var(--p-ink)!important}

/* MI PLAN */
.plan-cab{background:var(--p-hero)!important;color:var(--p-hero-fg)!important;border:0!important;border-radius:26px!important;box-shadow:var(--p-shadow-hero)!important}
.pc-tit,.pc-pie,.pc-nota{color:var(--p-hero-muted)!important;border-top-color:var(--p-hero-line)!important}
.pc-quien{color:var(--p-hero-fg)!important}
.cita{background:transparent!important;box-shadow:none!important;border:0!important;border-left:2px solid var(--p-accent)!important;border-radius:0!important;padding:4px 0 4px 18px!important}
.cita p{color:var(--p-ink)!important;font-size:1.45rem!important}
.prosa{color:var(--p-ink)!important}
.prosa h3{color:var(--p-accent)!important;font-size:.7rem!important;letter-spacing:.16em!important}
.prosa p{color:var(--p-ink-2)!important}
.prosa .sem-linea.v{background:var(--p-v)!important}
.prosa .sem-linea.am{background:var(--p-am)!important}
.prosa .sem-linea.ro{background:var(--p-ro)!important}
.prosa .sem-linea.v b,.prosa .sem-linea.v span{color:var(--p-v-fg)!important}
.prosa .sem-linea.am b,.prosa .sem-linea.am span{color:var(--p-am-fg)!important}
.prosa .sem-linea.ro b,.prosa .sem-linea.ro span{color:var(--p-ro-fg)!important}
.sem-leyenda.v{background:var(--p-v-soft)!important;color:var(--p-ink)!important}
.sem-leyenda.am{background:var(--p-am-soft)!important;color:var(--p-ink)!important}
.sem-leyenda.ro{background:var(--p-ro-soft)!important;color:var(--p-ink)!important}
.dia-cab .dn{background:var(--p-tint-1)!important;color:var(--p-ink)!important}
.dia.abierto .dia-cab .dn{background:var(--p-ink)!important;color:var(--p-bg)!important}
.bloq{background:var(--p-field)!important;color:var(--p-ink)!important}
.bloq.haz{background:var(--p-v-soft)!important}
.bloq.cuesta{background:var(--p-am-soft)!important}
.bloq .et{color:var(--p-muted)!important}
.lista-corta>.dia-cab{background:transparent!important}
.plan-pie{background:var(--p-tint-2)!important}
.llamado{background:var(--p-hero-2)!important;color:var(--p-hero-2-fg)!important;border:0!important;box-shadow:var(--p-shadow-hero)!important}
.llamado h3,.llamado .eyebrow,.llamado li,.llamado p{color:var(--p-hero-2-fg)!important}

/* termómetro */
.termo{background:var(--p-termo)!important;color:var(--p-termo-fg)!important;border:1px solid var(--p-hair)!important;box-shadow:var(--p-shadow)!important;border-radius:28px!important}
.termo h3,.termo p.q,.termo .racha,.cifra-de,.cifra-n{color:var(--p-termo-fg)!important}
.termo p.q,.termo .racha,.cifra-de{opacity:.7!important}
.td{color:var(--p-termo-fg)!important;opacity:.7}
.td.lleno{background:var(--p-termo-chip)!important;opacity:1}
.td.hoy{background:var(--p-termo-fg)!important;color:var(--p-termo)!important;opacity:1}
.ar-fondo{stroke:var(--p-termo-track)!important}
.ar-valor{stroke:var(--p-termo-ring)!important}
.termo .num{background:var(--p-termo-chip)!important;color:var(--p-termo-fg)!important;border:0!important}
.termo .num[aria-pressed="true"]{background:var(--p-termo-ring)!important;color:var(--p-termo-on-fg)!important}

/* MI AVANCE */
.pa-cifra{color:var(--p-accent)!important}
.ba-pista{background:var(--p-field)!important}
.pa-barra.verde .ba-rel{background:var(--p-c1)!important}
.pa-barra.ambar .ba-rel{background:var(--p-c2)!important}
.pa-barra.rosa .ba-rel{background:var(--p-c3)!important}
.pa-barra.azul .ba-rel{background:var(--p-c4)!important}
.pa-barra:nth-child(5) .ba-rel{background:var(--p-c5)!important}
.pa-barra:nth-child(6) .ba-rel{background:var(--p-c6)!important}
.ba-marca{background:var(--p-ink)!important}
.ba-d{background:var(--p-field)!important;color:var(--p-muted)!important}
.ba-d.sube{background:var(--p-v-soft)!important;color:var(--p-ink)!important}
.suyo{background:var(--p-hero-2)!important;color:var(--p-hero-2-fg)!important;box-shadow:var(--p-shadow-hero)!important}
.suyo .eyebrow,.suyo .pie2,.suyo blockquote{color:var(--p-hero-2-fg)!important}
.grafica{background:var(--p-field)!important}
.cajon{background:var(--p-tint-2)!important;color:var(--p-ink)!important}
.cajon .cifra{color:var(--p-ink)!important}
.sems li{background:var(--p-tint-1)!important}
.sems .pend{background:transparent!important;border:1px dashed var(--p-hair-2)!important;box-shadow:none!important}
.notas li{background:var(--p-card)!important}
.notas .cuando2{color:var(--p-accent)!important}
.cierre{background:var(--p-hero)!important;color:var(--p-hero-fg)!important}
.cierre>h3,.cierre .eyebrow{color:var(--p-hero-fg)!important}
.cotejo .si{background:var(--p-cta)!important;color:var(--p-cta-fg)!important}
.cotejo .si h4{color:var(--p-cta-fg)!important}

/* RECETAS */
.porque{background:var(--p-tint-1)!important;color:var(--p-ink)!important;border:1px solid var(--p-hair)!important}
.porque *{color:var(--p-ink)!important}
.pq-t{font-family:var(--display)!important;font-weight:400!important;font-size:1.55rem!important;line-height:1.1!important}
.barrita{background:var(--p-hero-2)!important;color:var(--p-hero-2-fg)!important;border:0!important;box-shadow:var(--p-shadow-hero)!important}
.barrita .cuenta,.barrita .cuenta b{color:var(--p-hero-2-fg)!important}
.barrita .btn{border-color:var(--p-hero-line)!important;color:var(--p-hero-2-fg)!important}
.barrita .btn.primario{background:var(--p-cta)!important;border-color:var(--p-cta)!important;color:var(--p-cta-fg)!important}
.reglas{background:var(--p-card)!important;color:var(--p-ink)!important;border:1px solid var(--p-hair)!important;box-shadow:var(--p-shadow)!important}
.reglas h3,.reglas li,.reglas p{color:var(--p-ink)!important}
.reglas li{background:var(--p-field)!important}
.reglas .forma{background:var(--p-ink)!important;color:var(--p-bg)!important}
.leyenda .chip{background:var(--p-card)!important;color:var(--p-ink)!important;border:1px solid var(--p-hair)!important;box-shadow:none!important}
li.rec{background:var(--p-card)!important;border:1px solid var(--p-hair)!important;box-shadow:var(--p-shadow)!important}
li.rec.quiero{background:var(--p-v-soft)!important}
button.quiero{background:var(--p-field)!important;border-color:var(--p-hair-2)!important;color:var(--p-ink)!important}
button.quiero[aria-pressed="true"]{background:var(--p-ink)!important;color:var(--p-bg)!important}
.m.grasa{background:var(--p-v-soft)!important;color:var(--p-ink)!important}
.m.hierro{background:var(--p-ro-soft)!important;color:var(--p-ink)!important}
.m.lleva{background:var(--p-tint-2)!important;color:var(--p-ink)!important}
.prep .linea.primero{background:var(--p-hero)!important;color:var(--p-hero-fg)!important}
.prep .linea.extra{background:var(--p-v-soft)!important;color:var(--p-ink)!important}
.ing,.el{background:var(--p-field)!important;color:var(--p-ink)!important}
.pie{background:var(--p-tint-2)!important;color:var(--p-ink)!important}
.tiempo,.nombre{color:var(--p-ink)!important}

/* MIRANDA */
.alc.cuando{background:var(--p-hero-2)!important;color:var(--p-hero-2-fg)!important}
.alc.cuando h3,.alc.cuando li,.alc.cuando li b{color:var(--p-hero-2-fg)!important}
.alc.si{background:var(--p-card)!important;color:var(--p-ink)!important}
.alc.si h3{color:var(--p-ink)!important}
.alc.no{background:var(--p-ro-soft)!important}
.alc li{color:inherit}

.aviso-flota{background:var(--p-ink)!important;color:var(--p-bg)!important}
dialog.copia{background:var(--p-card)!important;color:var(--p-ink)!important}
.prosa .plan-cab p,.plan-cab .pc-quien{color:var(--p-hero-fg)!important}
.prosa .plan-cab .pc-tit,.prosa .plan-cab .pc-pie,.prosa .plan-cab .pc-nota{color:var(--p-hero-muted)!important}
.prosa .cita p{font-size:1.2rem!important;line-height:1.35!important}
.prosa .cita .cita-pie{font-size:.8rem!important;color:var(--p-muted)!important;font-family:'Figtree',sans-serif!important;font-style:normal!important}
.termo .td.hoy{color:#fff!important}

/* ═══════════ CAPA VISUAL · LAVANDA · fondo de color, ilustraciones, tarjetas de cristal ═══════════ */
:root:not(#_){
  --p-bg:#F7F5FC; --p-card:rgba(255,255,255,.7); --p-field:rgba(255,255,255,.55); --p-ink:#26233F; --p-ink-2:#26233F; --p-muted:#76728F;
  --p-hair:rgba(255,255,255,.75); --p-hair-2:rgba(42,34,48,.1); --p-accent:#6C62B8;
  --p-shadow:0 1px 1px rgba(255,255,255,.6) inset,0 20px 40px -26px rgba(60,40,60,.35);
  --p-shadow-hero:0 26px 50px -24px rgba(60,40,60,.45);
  --p-nav:rgba(255,255,255,.72); --p-nav-on:#26233F; --p-nav-on-fg:#fff;
  --p-hero:linear-gradient(135deg,#6C62B8 0%,#E9B949 100%); --p-hero-fg:#fff; --p-hero-muted:rgba(255,255,255,.82); --p-hero-line:rgba(255,255,255,.3);
  --p-hero-2:#2C2852; --p-hero-2-fg:#F1EFFF;
  --p-cta:#26233F; --p-cta-fg:#fff;
  --p-termo:linear-gradient(160deg,#fff 0%,#EEF0FB 100%); --p-termo-fg:#26233F; --p-termo-chip:rgba(255,255,255,.8); --p-termo-track:#E7E2F7; --p-termo-ring:#6C62B8; --p-termo-on-fg:#fff;
  --p-tint-1:#EEF0FB; --p-tint-2:#FBF1D9; --p-tint-3:#F3E3B8; --p-tint-4:#E7E2F7;
  --p-v:#F3E3B8; --p-v-fg:#26233F; --p-v-soft:rgba(255,255,255,.6); --p-am:#F6D477; --p-am-fg:#26233F; --p-am-soft:#EEF0FB;
  --p-ro:#6C62B8; --p-ro-fg:#fff; --p-ro-soft:#E7E2F7;
  --p-c1:#F6D477; --p-c2:#C9C2EC; --p-c3:#E9B949; --p-c4:#F3E3B8; --p-c5:#2C2852; --p-c6:#6C62B8;
  color-scheme:light;
}
html,body{background:#F7F5FC!important}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 40% at 100% 0%,#E7E2F7 0%,transparent 70%),
             radial-gradient(55% 45% at 0% 35%,#FBF1D9 0%,transparent 70%),
             radial-gradient(60% 40% at 90% 95%,#EEF0FB 0%,transparent 70%),#F7F5FC}
.hoja{position:relative;z-index:0}
section.paso,.dia,.lista-corta,.av,.puertas-av,.semana,.alc.si,.alc.no,.plan-pie,.cargando,.paro,.audio-pieza,.soporte,
.notas li,.sems li,.prod,.marco-chat,.pronto,li.rec,.reglas,.termo,.porque,.leyenda .chip{
  -webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%)}

/* cada pantalla abre con su ilustración */
.vista>header.v{position:relative}
.vista>header.v .eyebrow,.vista>header.v h2{padding-right:112px}
.vista>header.v::after{content:"";position:absolute;right:-4px;top:-6px;width:112px;height:84px;background:center/contain no-repeat}
#v-plan>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='112' cy='42' r='24' fill='%23F6D477'/%3E%3Cpath d='M0 120 C30 70 70 70 100 100 C120 80 140 78 160 90 V120Z' fill='%23DCD6F3'/%3E%3Cpath d='M40 120 C70 88 110 86 160 108 V120Z' fill='%23F3E3B8'/%3E%3Cpath d='M28 92 C26 70 34 56 48 48 C46 64 42 78 28 92Z' fill='%237E8C6A'/%3E%3Cpath d='M28 92 C36 76 48 70 60 70 C52 82 42 90 28 92Z' fill='%237E8C6A' opacity='.7'/%3E%3C/svg%3E")}
#v-avance>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='120' cy='34' r='16' fill='%23F6D477'/%3E%3Crect x='18' y='78' width='18' height='42' rx='9' fill='%23C9C2EC'/%3E%3Crect x='46' y='62' width='18' height='58' rx='9' fill='%23DCD6F3'/%3E%3Crect x='74' y='48' width='18' height='72' rx='9' fill='%23E9B949'/%3E%3Crect x='102' y='70' width='18' height='50' rx='9' fill='%23F3E3B8'/%3E%3Cpath d='M18 60 L56 44 L84 30 L130 12' fill='none' stroke='%236C62B8' stroke-width='3' stroke-linecap='round' stroke-dasharray='1 8'/%3E%3C/svg%3E")}
#v-recetas>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='120' cy='30' r='14' fill='%23F6D477' opacity='.8'/%3E%3Cpath d='M22 70 H138 C138 100 112 116 80 116 C48 116 22 100 22 70Z' fill='%23DCD6F3'/%3E%3Cpath d='M22 70 H138' stroke='%236C62B8' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='60' cy='62' r='12' fill='%23E9B949'/%3E%3Ccircle cx='84' cy='58' r='14' fill='%23F3E3B8'/%3E%3Cpath d='M100 66 C104 46 118 40 130 40 C128 54 118 64 100 66Z' fill='%237E8C6A'/%3E%3Cpath d='M66 40 C62 32 70 26 66 18 M82 40 C78 32 86 26 82 18' stroke='%2376728F' stroke-width='2.5' fill='none' stroke-linecap='round' opacity='.5'/%3E%3C/svg%3E")}
#v-semana>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Cpath d='M118 20 A22 22 0 1 0 140 52 A18 18 0 1 1 118 20Z' fill='%23F6D477'/%3E%3Ccircle cx='40' cy='26' r='2.5' fill='%23E9B949'/%3E%3Ccircle cx='70' cy='14' r='2' fill='%23E9B949'/%3E%3Ccircle cx='92' cy='34' r='1.8' fill='%23E9B949'/%3E%3Cpath d='M0 120 C40 84 90 84 160 104 V120Z' fill='%23C9C2EC'/%3E%3Cpath d='M30 120 C70 98 110 96 160 116 V120Z' fill='%23DCD6F3'/%3E%3C/svg%3E")}
#v-inventario>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Crect x='34' y='44' width='40' height='64' rx='12' fill='%23DCD6F3'/%3E%3Crect x='38' y='34' width='32' height='14' rx='5' fill='%23E9B949'/%3E%3Crect x='84' y='60' width='34' height='48' rx='11' fill='%23C9C2EC'/%3E%3Crect x='88' y='52' width='26' height='12' rx='4' fill='%23F6D477'/%3E%3Cpath d='M120 108 C118 84 128 70 146 62 C144 82 136 98 120 108Z' fill='%237E8C6A'/%3E%3Crect x='42' y='66' width='24' height='3' rx='1.5' fill='white' opacity='.7'/%3E%3Crect x='42' y='74' width='16' height='3' rx='1.5' fill='white' opacity='.7'/%3E%3C/svg%3E")}
#v-audios>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='80' cy='62' r='44' fill='%23C9C2EC'/%3E%3Ccircle cx='80' cy='62' r='28' fill='%23DCD6F3'/%3E%3Crect x='30' y='54' width='6' height='16' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='42' y='46' width='6' height='32' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='54' y='36' width='6' height='52' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='66' y='48' width='6' height='28' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='78' y='32' width='6' height='60' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='90' y='42' width='6' height='40' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='102' y='52' width='6' height='20' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='114' y='44' width='6' height='36' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='126' y='56' width='6' height='12' rx='3' fill='%236C62B8' opacity='.85'/%3E%3C/svg%3E")}
#v-miranda>header.v::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Crect x='16' y='26' width='86' height='46' rx='22' fill='%23DCD6F3'/%3E%3Cpath d='M34 70 L28 86 L50 72Z' fill='%23DCD6F3'/%3E%3Crect x='62' y='60' width='82' height='42' rx='21' fill='%232C2852'/%3E%3Cpath d='M128 100 L136 114 L114 102Z' fill='%232C2852'/%3E%3Ccircle cx='42' cy='49' r='4' fill='%236C62B8'/%3E%3Ccircle cx='59' cy='49' r='4' fill='%236C62B8'/%3E%3Ccircle cx='76' cy='49' r='4' fill='%236C62B8'/%3E%3Crect x='80' y='76' width='46' height='4' rx='2' fill='%23F1EFFF' opacity='.7'/%3E%3Crect x='80' y='86' width='30' height='4' rx='2' fill='%23F1EFFF' opacity='.5'/%3E%3C/svg%3E")}
.vista>header.v p.sub{max-width:none!important}

/* saludo con avatar */
header.marca{gap:12px}
header.marca::before{content:"";order:-2;width:44px;height:44px;border-radius:999px;flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='112' cy='42' r='24' fill='%23F6D477'/%3E%3Cpath d='M0 120 C30 70 70 70 100 100 C120 80 140 78 160 90 V120Z' fill='%23DCD6F3'/%3E%3Cpath d='M40 120 C70 88 110 86 160 108 V120Z' fill='%23F3E3B8'/%3E%3Cpath d='M28 92 C26 70 34 56 48 48 C46 64 42 78 28 92Z' fill='%237E8C6A'/%3E%3Cpath d='M28 92 C36 76 48 70 60 70 C52 82 42 90 28 92Z' fill='%237E8C6A' opacity='.7'/%3E%3C/svg%3E") center/160% no-repeat,linear-gradient(135deg,#E7E2F7,#FBF1D9);border:2px solid #fff;box-shadow:0 6px 16px -8px rgba(0,0,0,.3)}

/* tarjetas protagonistas con dibujo de fondo */
.plan-cab{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='112' cy='42' r='24' fill='%23F6D477'/%3E%3Cpath d='M0 120 C30 70 70 70 100 100 C120 80 140 78 160 90 V120Z' fill='%23DCD6F3'/%3E%3Cpath d='M40 120 C70 88 110 86 160 108 V120Z' fill='%23F3E3B8'/%3E%3Cpath d='M28 92 C26 70 34 56 48 48 C46 64 42 78 28 92Z' fill='%237E8C6A'/%3E%3Cpath d='M28 92 C36 76 48 70 60 70 C52 82 42 90 28 92Z' fill='%237E8C6A' opacity='.7'/%3E%3C/svg%3E"),linear-gradient(135deg,#6C62B8 0%,#E9B949 100%)!important;
  background-repeat:no-repeat!important;background-position:right -20px bottom -18px,0 0!important;background-size:170px auto,cover!important;padding-bottom:70px!important}
.llamado,.suyo,.barrita,.alc.cuando{position:relative;overflow:hidden}
.llamado::after,.suyo::after,.alc.cuando::after{content:"";position:absolute;right:-30px;bottom:-30px;width:150px;height:150px;border-radius:999px;
  background:radial-gradient(circle,#E9B94955 0%,transparent 70%);pointer-events:none}
#v-audios .llamado{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 120'%3E%3Ccircle cx='80' cy='62' r='44' fill='%23C9C2EC'/%3E%3Ccircle cx='80' cy='62' r='28' fill='%23DCD6F3'/%3E%3Crect x='30' y='54' width='6' height='16' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='42' y='46' width='6' height='32' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='54' y='36' width='6' height='52' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='66' y='48' width='6' height='28' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='78' y='32' width='6' height='60' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='90' y='42' width='6' height='40' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='102' y='52' width='6' height='20' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='114' y='44' width='6' height='36' rx='3' fill='%236C62B8' opacity='.85'/%3E%3Crect x='126' y='56' width='6' height='12' rx='3' fill='%236C62B8' opacity='.85'/%3E%3C/svg%3E"),linear-gradient(160deg,#2C2852,#2C2852)!important;background-repeat:no-repeat!important;
  background-position:right -30px bottom -26px,0 0!important;background-size:130px auto,cover!important}
.termo{position:relative;overflow:hidden}
.termo::before{content:"";position:absolute;left:-50px;bottom:-60px;width:170px;height:170px;border-radius:999px;background:#F6D477;opacity:.28;pointer-events:none}
.cifra-caja{width:170px!important;height:170px!important}
.cifra-n{font-size:3.8rem!important}
.pa-cifra{font-size:4.2rem!important}
.puertas-av{background-image:linear-gradient(180deg,rgba(255,255,255,.8),rgba(255,255,255,.55))!important}
.ba-pista{height:14px!important;background:rgba(255,255,255,.7)!important}

/* pestaña activa y barra */
nav.pest button[aria-current="page"] svg{background:linear-gradient(135deg,#6C62B8,#E9B949)!important;stroke:#fff!important}
nav.pest button[data-v="miranda"] svg{background:#2C2852!important}

/* inventario: cada paso con su ícono en mosaico de color */
section.paso>header{gap:12px!important}
section.paso .np{width:42px!important;height:42px!important;border-radius:14px!important;font-size:0!important;position:relative}
section.paso .np::after{content:"";position:absolute;inset:10px;background:#26233F;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
#formInv section.paso:nth-of-type(1) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c1-4 4-6 7-6s6 2 7 6'/%3E%3C/svg%3E");background:#EEF0FB!important}
#formInv section.paso:nth-of-type(2) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16M3 21h18M14 12h.01'/%3E%3C/svg%3E");background:#FBF1D9!important}
#formInv section.paso:nth-of-type(3) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8M9 3v3l-3 3v10a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V9l-3-3V3M6 13h12'/%3E%3C/svg%3E");background:#F3E3B8!important}
#formInv section.paso:nth-of-type(4) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l1.8 4.2L18 9l-4.2 1.8L12 15l-1.8-4.2L6 9l4.2-1.8z'/%3E%3Cpath d='M18 15l.8 1.7 1.7.8-1.7.8L18 20l-.8-1.7-1.7-.8 1.7-.8z'/%3E%3C/svg%3E");background:#E7E2F7!important}
#formInv section.paso:nth-of-type(5) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9h12v5a5 5 0 0 1-5 5H9a5 5 0 0 1-5-5zM16 10h2a2.5 2.5 0 0 1 0 5h-2M8 3c0 2 2 2 2 4M12 3c0 2 2 2 2 4'/%3E%3C/svg%3E");background:#EEF0FB!important}
#formInv section.paso:nth-of-type(6) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.5 9a2.5 2.5 0 1 1 3.5 2.3c-.6.3-1 .8-1 1.5V14M12 17h.01'/%3E%3C/svg%3E");background:#FBF1D9!important}
#formInv section.paso:nth-of-type(7) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 0 1-11.6 7.1L4 20l1-4.2A8 8 0 1 1 20 12z'/%3E%3Cpath d='M8.5 12h7M8.5 9h4'/%3E%3C/svg%3E");background:#F3E3B8!important}
#formInv section.paso:nth-of-type(8) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M3 4v5M5 4v5M4 9v11M21 4c-1.5 1.5-2 3-2 6h2v10'/%3E%3C/svg%3E");background:#E7E2F7!important}
#formSem section.paso:nth-of-type(1) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19C5 10 11 4 20 4c0 9-6 15-15 15z'/%3E%3Cpath d='M5 19L14 10'/%3E%3C/svg%3E");background:#EEF0FB!important}
#formSem section.paso:nth-of-type(2) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5z'/%3E%3C/svg%3E");background:#FBF1D9!important}
#formSem section.paso:nth-of-type(3) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3h8M9 3v3l-3 3v10a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V9l-3-3V3M6 13h12'/%3E%3C/svg%3E");background:#F3E3B8!important}
#formSem section.paso:nth-of-type(4) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c1-4 4-6 7-6s6 2 7 6'/%3E%3C/svg%3E");background:#E7E2F7!important}
#formSem section.paso:nth-of-type(5) .np{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7c-3-2-8-1-8 5s3 9 5 9c1.5 0 2-.7 3-.7s1.5.7 3 .7c2 0 5-3 5-9s-5-7-8-5z'/%3E%3Cpath d='M12 7c0-2 1-4 3-4'/%3E%3C/svg%3E");background:#EEF0FB!important}

li.rec{border-radius:22px!important;padding:6px 8px 6px 8px!important}
li.rec .cabeza{align-items:center}
li.rec .cabeza::before{content:"";flex:0 0 60px;height:60px;border-radius:18px;background:var(--tile);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);margin-right:6px;
  background-image:var(--tileico);background-repeat:no-repeat;background-position:center;background-size:28px}
section.cat>header{align-items:center!important;gap:12px!important}
section.cat>header::before{content:"";width:46px;height:46px;border-radius:16px;flex:none;background:var(--tile);
  background-image:var(--tileico);background-repeat:no-repeat;background-position:center;background-size:24px}
#cats section.cat:nth-of-type(1){--tile:linear-gradient(135deg,#E7E2F7,#FBF1D9);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10h16v6a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4zM2 10h20M9 6c0-1.5 1-2 1-3.5M14 6c0-1.5 1-2 1-3.5'/%3E%3C/svg%3E")}
#cats section.cat:nth-of-type(2){--tile:linear-gradient(135deg,#F3E3B8,#E7E2F7);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19C5 10 11 4 20 4c0 9-6 15-15 15z'/%3E%3Cpath d='M5 19L14 10'/%3E%3C/svg%3E")}
#cats section.cat:nth-of-type(3){--tile:linear-gradient(135deg,#EEF0FB,#FBF1D9);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 8h11v6a5 5 0 0 1-5 5h-1a5 5 0 0 1-5-5zM16 9h1.5a2.5 2.5 0 0 1 0 5H16'/%3E%3C/svg%3E")}
#cats section.cat:nth-of-type(4){--tile:linear-gradient(135deg,#FBF1D9,#E7E2F7);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5z'/%3E%3C/svg%3E")}
#cats section.cat:nth-of-type(5){--tile:linear-gradient(135deg,#E7E2F7,#FBF1D9);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3a5 5 0 0 1 5 5c0 3-5 9-5 9s-5-6-5-9a5 5 0 0 1 5-5z'/%3E%3Cpath d='M12 17v4'/%3E%3C/svg%3E")}
#cats section.cat:nth-of-type(6){--tile:linear-gradient(135deg,#EEF0FB,#E7E2F7);--tileico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2326233F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7c-3-2-8-1-8 5s3 9 5 9c1.5 0 2-.7 3-.7s1.5.7 3 .7c2 0 5-3 5-9s-5-7-8-5z'/%3E%3Cpath d='M12 7c0-2 1-4 3-4'/%3E%3C/svg%3E")}

.porque{background:linear-gradient(160deg,rgba(255,255,255,.75),#EEF0FB)!important}
.reglas li{background:rgba(255,255,255,.7)!important}
.leyenda .chip{background:rgba(255,255,255,.7)!important}
.dia.abierto{background:rgba(255,255,255,.85)!important}
.prosa .sem-linea{border:1px solid rgba(255,255,255,.7)!important}


/* ═══════════ ESTRUCTURA VISUAL · menos texto a la vista, más fichas ═══════════ */

/* accesos rápidos de Mi plan */
.v-accesos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:-6px 0 22px}
.v-acc{font:inherit;text-align:left;cursor:pointer;border:1px solid rgba(255,255,255,.8);border-radius:22px;
  padding:14px 14px 13px;display:flex;flex-direction:column;gap:2px;min-height:112px;color:var(--p-ink);
  box-shadow:var(--p-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);-webkit-tap-highlight-color:transparent;transition:transform .14s}
.v-acc:active{transform:scale(.97)}
.v-acc .v-ico{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.75);margin-bottom:auto}
.v-acc .v-ico svg{width:20px;height:20px}
.v-acc .v-t{font-family:var(--display);font-size:1.35rem;line-height:1.05;margin-top:12px}
.v-acc .v-s{font-size:.74rem;color:var(--p-muted);font-weight:600}
.v-acc1{background:linear-gradient(150deg,var(--p-tint-1),rgba(255,255,255,.7))}
.v-acc2{background:linear-gradient(150deg,var(--p-tint-2),rgba(255,255,255,.7))}
.v-acc3{background:linear-gradient(150deg,var(--p-tint-4),rgba(255,255,255,.7))}
.v-acc4{background:linear-gradient(150deg,var(--p-tint-3),rgba(255,255,255,.7))}

/* cada sección del plan es una tarjeta */
.v-bloque{background:var(--p-card);border:1px solid var(--p-hair);border-radius:24px;padding:18px 18px 16px;margin:0 0 14px;
  box-shadow:var(--p-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.prosa .v-bloque>h3{margin:0 0 10px!important}
.prosa .v-bloque>p{font-size:.93rem!important;line-height:1.6!important}
.v-oculto{display:none}
.v-abierta .v-oculto{display:block}
.v-mas{font:inherit;font-size:.82rem;font-weight:750;cursor:pointer;border:0;border-radius:999px;padding:9px 16px;margin-top:4px;
  background:var(--p-ink);color:#fff}
/* los datos con negritas: fichas con punto de color */
.prosa p.v-dato{background:rgba(255,255,255,.65);border-radius:18px;padding:13px 14px 13px 46px!important;position:relative;margin:0 0 8px!important}
.prosa p.v-dato::before{content:"";position:absolute;left:14px;top:14px;width:20px;height:20px;border-radius:7px;
  background:linear-gradient(135deg,var(--p-accent),var(--p-c3))}
.prosa .v-bloque p.v-dato:nth-of-type(3n+2)::before{background:linear-gradient(135deg,var(--p-c2),var(--p-c5))}
.prosa .v-bloque p.v-dato:nth-of-type(3n)::before{background:linear-gradient(135deg,var(--p-c4),var(--p-c1))}
.prosa p.v-dato b{display:block;font-size:.95rem;margin-bottom:2px;color:var(--p-ink)}

/* el semáforo: fichas en dos columnas, el porqué al tocar */
.v-bloque .sem-linea{display:inline-flex!important;flex-direction:column;vertical-align:top;width:calc(50% - 5px);box-sizing:border-box;
  margin:0 0 10px!important;min-height:76px;cursor:pointer;padding:13px 14px!important}
.v-bloque .sem-linea:nth-of-type(odd){margin-right:10px!important}
.v-bloque .sem-linea span{display:none!important}
.v-bloque .sem-linea.v-abre{width:100%;margin-right:0!important}
.v-bloque .sem-linea.v-abre span{display:block!important}
.v-bloque .sem-linea::after{content:"Tocar para ver por qué";font-size:.66rem;font-weight:700;opacity:.65;margin-top:auto;padding-top:8px}
.v-bloque .sem-linea.v-abre::after{content:none}

/* los días: mosaico de fichas con el número grande */
#planCont .dias{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#planCont .dias>header,#planCont .dias>p.q,#planCont .dias>.lista-corta{grid-column:1/-1}
#planCont .dia{margin:0!important;min-height:118px;display:flex;flex-direction:column}
#planCont .dia .dia-cab{flex-direction:column;align-items:flex-start!important;gap:6px;height:100%;padding:14px!important}
#planCont .dia .dia-cab .dn{font-family:var(--display)!important;font-size:1.9rem!important;background:none!important;padding:0!important;color:var(--p-accent)!important;line-height:1}
#planCont .dia .dia-cab .dt{font-size:.88rem;line-height:1.3}
#planCont .dia .dia-cab .flecha{display:none}
#planCont .dia.abierto{grid-column:1/-1}
#planCont .dia:nth-of-type(4n+1){background:linear-gradient(160deg,var(--p-tint-1),rgba(255,255,255,.75))!important}
#planCont .dia:nth-of-type(4n+2){background:linear-gradient(160deg,var(--p-tint-2),rgba(255,255,255,.75))!important}
#planCont .dia:nth-of-type(4n+3){background:linear-gradient(160deg,var(--p-tint-4),rgba(255,255,255,.75))!important}
#planCont .dia:nth-of-type(4n){background:linear-gradient(160deg,var(--p-tint-3),rgba(255,255,255,.75))!important}
#planCont .dia.abierto .dia-cab .dn{color:var(--p-ink)!important;background:none!important}

/* RECETAS · tarjetas con imagen en dos columnas */
ul.lista{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
li.rec{padding:0!important;overflow:hidden;display:flex;flex-direction:column}
li.rec.abierta{grid-column:1/-1}
li.rec .cabeza{flex-direction:column!important;align-items:stretch!important;position:relative;gap:0!important}
li.rec .cabeza::before{flex:0 0 112px!important;height:112px!important;width:100%!important;border-radius:0!important;margin:0!important;
  background-size:44px!important;box-shadow:none!important}
li.rec button.fila{display:flex!important;flex-direction:column;padding:11px 12px 13px!important;gap:4px!important}
li.rec .nombre{font-size:.95rem!important;line-height:1.25!important;font-weight:750!important}
li.rec .detalle{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.76rem!important;line-height:1.4}
li.rec.abierta .detalle{-webkit-line-clamp:unset}
li.rec .cabeza>button.fila>span:first-child br{display:none}
li.rec .tiempo{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.9);border-radius:999px;padding:4px 10px 3px;
  font-size:.95rem!important;line-height:1!important;display:flex;align-items:baseline;gap:3px}
li.rec .tiempo small{display:inline!important;font-size:.55rem!important}
li.rec .tiempo .flecha{display:none!important}
li.rec button.quiero{position:absolute;right:10px;top:10px;width:40px!important;height:40px!important;background:rgba(255,255,255,.92)!important;border:0!important}
li.rec .marcas{margin-top:4px}
li.rec .prep{padding:0 14px 16px!important}
section.cat{margin-bottom:26px!important}

/* el «por qué» de recetas: corto, con su Leer más */
.porque .pq-s{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.porque.v-abierta .pq-s{display:block}

/* tres reglas como fichas con número */
.reglas ul{counter-reset:r}
.reglas li:not(.forma){position:relative;padding-left:52px!important;counter-increment:r}
.reglas li:not(.forma)::before{content:counter(r);position:absolute;left:12px;top:10px;width:28px;height:28px;border-radius:10px;
  display:grid;place-items:center;font-family:var(--display);font-size:1.1rem;color:#fff;background:linear-gradient(135deg,var(--p-accent),var(--p-c3))}


.prosa p.v-dato .v-dato-tx{display:block;font-size:.88rem;line-height:1.55;color:var(--p-muted);margin-top:4px}
.prosa p.v-dato br{display:none}
.porque .v-mas,.v-bloque .v-mas{color:#fff!important;background:var(--p-ink)!important}
li.rec .cabeza::before{background-size:50px!important;filter:saturate(1.2)}
li.rec .cabeza::before{background:var(--tileico) center/50px no-repeat,var(--tile)!important}
section.cat>header::before{background:var(--tileico) center/24px no-repeat,var(--tile)!important}
