/* Modo Tora v2 · plan.css · #/plan "Mi plan" · prefijo obligatorio .rc- */
.rc-view{gap:28px}
.rc-view>.mt-demo{margin-top:-10px}
.rc-head{display:flex;flex-direction:column;gap:6px}
.rc-head .mt-display{font-size:clamp(34px,9.6vw,48px);line-height:1}
.rc-head__sub{font-size:15px;line-height:1.4;color:var(--muted);max-width:40ch}
.rc-sec-t{font-size:21px;font-weight:700;letter-spacing:-.015em;line-height:1.2;margin-bottom:14px}

/* ---------- hero: fase actual + semanas ---------- */
.rc-hero{position:relative;padding:18px 20px 20px;border-radius:var(--r-xl);color:#fff;background:radial-gradient(130% 85% at 100% 0%,rgba(142,31,47,.72) 0%,rgba(142,31,47,0) 60%),var(--ink);box-shadow:var(--sh-2);overflow:hidden;isolation:isolate}
.rc-hero__tags{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:26px}
.rc-hero__tags .mt-badge{height:26px;font-size:11px}
.rc-hero__ej{background:transparent;color:rgba(255,255,255,.74);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.rc-hero__eyebrow{margin-top:26px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.64)}
.rc-hero__title{margin-top:8px;font-size:clamp(40px,11vw,52px);font-weight:800;line-height:.94;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere}
.rc-hero__stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14)}
.rc-hero__stat{display:flex;flex-direction:column;gap:6px;min-width:0}
.rc-hero__stat span{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.rc-hero__stat b{font-size:46px;font-weight:800;letter-spacing:-.05em;line-height:.9;white-space:nowrap}
.rc-hero__stat small{font-size:16px;font-weight:600;letter-spacing:-.01em;color:rgba(255,255,255,.6)}
.rc-segs{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:8px;margin-top:18px}
.rc-segs__g{display:flex;flex-direction:column;gap:8px;min-width:0}
.rc-segs__bars{display:flex;gap:4px}
.rc-seg{position:relative;flex:1;height:10px;border-radius:5px;background:rgba(255,255,255,.16);overflow:hidden}
.rc-seg i{position:absolute;left:0;top:0;bottom:0;background:var(--cream);border-radius:inherit}
.rc-seg.is-part i{opacity:.55}
.rc-seg.is-cur{background:rgba(255,255,255,.3);outline:2px solid #fff;outline-offset:2px}
.rc-segs__l{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);white-space:nowrap}
.rc-segs__g.is-cur .rc-segs__l{color:#fff}

/* ---------- hoy te toca (enlace a Hoy) ---------- */
.rc-today{display:flex;flex-direction:column;gap:8px;padding:18px 20px 16px;border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--sh-1);color:var(--ink);transition:transform .12s var(--ease),box-shadow var(--dur-1)}
.rc-today:hover{box-shadow:var(--sh-2)}
.rc-today:active{transform:scale(.99)}
.rc-today:focus-visible{outline-offset:3px;border-radius:var(--r-xl)}
.rc-today__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rc-today__min{font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1}
.rc-today__t{font-size:clamp(28px,8vw,36px);font-weight:800;line-height:.98;letter-spacing:-.04em;text-wrap:balance;overflow-wrap:break-word}
.rc-today__meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--muted)}
.rc-today__meta svg{width:17px;height:17px}
.rc-today__meta i{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.7}
.rc-today__go{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;font-weight:700;color:var(--acc)}
.rc-today__go svg{width:20px;height:20px}

.rc-done{display:flex;flex-direction:column;gap:6px;padding:22px 20px;border-radius:var(--r-xl);background:var(--cream)}
.rc-done__ic{width:48px;height:48px;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center;margin-bottom:8px}
.rc-done__ic svg{width:24px;height:24px;stroke-width:2.6}
.rc-done__t{font-size:clamp(30px,8.6vw,40px);font-weight:800;letter-spacing:-.04em;line-height:.95}
.rc-done__p{font-size:15px;color:var(--ink-2)}

/* ---------- tarjetas ---------- */
.rc-card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-1);padding:20px}
.rc-card__t{font-size:21px;font-weight:700;letter-spacing:-.015em;line-height:1.2}

/* criterios para pasar de fase */
.rc-crit__head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}
.rc-crit__t{margin-top:8px;font-size:clamp(26px,7.4vw,32px);font-weight:800;letter-spacing:-.04em;line-height:.98}
.rc-checks{margin-top:14px}
.rc-check{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line)}
.rc-check:last-child{padding-bottom:0}
.rc-check__txt{display:flex;flex-direction:column;gap:4px;min-width:0}
.rc-check__txt b{font-size:15.5px;font-weight:600;line-height:1.35}
.rc-check__txt small{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}
.rc-check__txt small svg{width:14px;height:14px;flex:none}
.rc-check__txt .mt-progress{margin-top:6px;max-width:210px}
.rc-check__box{width:30px;height:30px;border-radius:6px;box-shadow:inset 0 0 0 1.5px rgba(29,29,31,.38);display:grid;place-items:center;color:transparent;background:var(--surface)}
.rc-check__box svg{width:19px;height:19px;stroke-width:2.6}
.rc-check.is-done .rc-check__box{background:var(--acc);color:#fff;box-shadow:none}

/* lo que viene */
.rc-next__list{display:flex;flex-direction:column;margin-bottom:14px;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}
.rc-next__i{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:74px;padding:12px 16px}
.rc-next__i+.rc-next__i{border-top:1px solid var(--line)}
.rc-next__k{width:48px;height:48px;border-radius:12px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.rc-next__k small{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.rc-next__k b{margin-top:3px;font-size:20px;font-weight:800;letter-spacing:-.03em}
.rc-next__txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.rc-next__txt b{font-size:15px;font-weight:600;line-height:1.3}
.rc-next__txt small{font-size:12.5px;color:var(--muted)}
.rc-next__min{font-size:18px;font-weight:800;letter-spacing:-.02em}
.rc-next__none{margin-bottom:14px;font-size:14.5px;color:var(--muted)}

/* ---------- hoja: plan completo ---------- */
.rc-plan{display:flex;flex-direction:column;gap:24px;padding-bottom:8px}
.rc-plan__desc{font-size:15px;line-height:1.5;color:var(--muted)}
.rc-plan__pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:-12px}
.rc-plan__fase{display:flex;flex-direction:column;gap:10px}
.rc-plan__fh{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.rc-plan__fase.is-cur .mt-round{background:var(--acc);color:#fff}
.rc-plan__ft{font-size:28px;font-weight:800;letter-spacing:-.04em;line-height:1}
.rc-plan__crit{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.rc-plan__crit svg{width:18px;height:18px;margin-top:1px}
.rc-plan__wk{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-1)}
.rc-plan__wk.is-cur{background:var(--cream);box-shadow:none}
.rc-plan__wl{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:26px;padding:0 4px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.rc-plan__wl small{font-size:12.5px;font-weight:600;letter-spacing:0;color:var(--muted)}
.rc-plan__days{display:flex;flex-direction:column;gap:6px}
.rc-pday{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:8px 14px 8px 8px;border-radius:14px;background:var(--surface-2)}
.rc-plan__wk.is-cur .rc-pday{background:var(--surface)}
.rc-pday__ic{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px var(--line-2);color:var(--ink)}
.rc-pday__ic b{font-size:15px;font-weight:700}
.rc-pday__ic svg{width:18px;height:18px;stroke-width:2.4}
.rc-pday__txt{display:flex;flex-direction:column;gap:1px;min-width:0}
.rc-pday__txt b{font-size:15px;font-weight:600;line-height:1.3}
.rc-pday__txt small{font-size:12.5px;color:var(--muted)}
.rc-pday__end{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.rc-pday.is-done .rc-pday__ic{background:var(--ink);color:#fff;box-shadow:none}
.rc-plan__wk .rc-pday.is-today{background:var(--acc);color:#fff}
.rc-pday.is-today .rc-pday__ic{background:#fff;color:var(--acc);box-shadow:none}
.rc-pday.is-today small,.rc-pday.is-today .rc-pday__end{color:rgba(255,255,255,.85)}

/* ---------- sin plan ---------- */
.rc-empty{display:flex;flex-direction:column;gap:10px;padding:24px 22px 26px;border-radius:var(--r-xl);color:#fff;background:radial-gradient(130% 85% at 100% 0%,rgba(142,31,47,.72) 0%,rgba(142,31,47,0) 60%),var(--ink);box-shadow:var(--sh-2)}
.rc-empty__ic{width:56px;height:56px;border-radius:50%;background:var(--cream);color:var(--acc);display:grid;place-items:center;margin-bottom:8px}
.rc-empty__ic svg{width:28px;height:28px}
.rc-empty__t{font-size:clamp(30px,8.6vw,40px);font-weight:800;letter-spacing:-.045em;line-height:.96;text-wrap:balance}
.rc-empty__p{font-size:15px;line-height:1.5;color:rgba(255,255,255,.74)}
.rc-how{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}
.rc-how li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:14px 16px}
.rc-how li+li{border-top:1px solid var(--line)}
.rc-how b{width:42px;height:42px;border-radius:50%;background:var(--cream);display:grid;place-items:center;font-size:18px;font-weight:800}
.rc-how span{display:flex;flex-direction:column;gap:2px}
.rc-how strong{font-size:15px;font-weight:600}
.rc-how small{font-size:13px;line-height:1.4;color:var(--muted)}

/* escritorio: hoy te toca y criterios lado a lado */
@media (min-width:1100px){
  .rc-view{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0;align-items:start}
  .rc-view>*{grid-column:1 / -1}
  .rc-view>.rc-half{grid-column:auto;height:100%}
  .rc-view>.rc-half>*{height:100%}
  .rc-view>.rc-half+.rc-half{padding-left:4px}
  .rc-view>.mt-demo{margin-top:0}
}
