/* Área de miembros · Flores Eternas en Crochet */
:root{
  --bordo:#5B2333; --bordo-2:#74303f; --crema:#FDF8F0; --rosa:#FDF1F3; --rosa-2:#F3C9D1;
  --verde:#22C55E; --verde-2:#16a34a; --txt:#3a2a2e; --suave:#7b6a6e; --borde:#f0e4e1;
  --sombra:0 4px 16px rgba(91,35,51,.08); --radio:16px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--crema);color:var(--txt);font-size:16px;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3{margin:0;line-height:1.2}
.serif{font-family:'Playfair Display',Georgia,serif}

/* ---------- estructura ---------- */
.layout{min-height:100vh}
.side{display:none}
.topbar{position:sticky;top:0;z-index:30;background:var(--bordo);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top))}
.tb-logo{display:flex;align-items:center;gap:10px;font-family:'Playfair Display',serif;font-size:15px;line-height:1.1}
.tb-logo img{width:40px;height:40px;border-radius:50%;background:#fff}
.tb-prog{font-size:12.5px;text-align:right;opacity:.95;min-width:96px}
.tb-prog .bar{margin-top:5px}
main{padding:20px 16px 110px;max-width:1240px;outline:none}
.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--borde);display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 18px rgba(91,35,51,.06)}
.tabs a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 9px;font-size:11.5px;font-weight:600;color:var(--suave)}
.tabs a i{font-style:normal;font-size:21px;line-height:1.2;filter:grayscale(.6);opacity:.75}
.tabs a.on{color:var(--bordo)}
.tabs a.on i{filter:none;opacity:1}

@media(min-width:960px){
  .layout{display:grid;grid-template-columns:320px 1fr}
  .topbar,.tabs{display:none}
  .side{display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--bordo);color:#fff;padding:26px 18px}
  main{padding:34px 40px 60px}
}
.s-logo{display:flex;align-items:center;gap:12px;margin:0 4px 24px}
.s-logo img{width:58px;height:58px;border-radius:50%;background:#fff}
.s-logo b{font-family:'Playfair Display',serif;font-size:19px;line-height:1.15}
.s-link{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:12px;font-weight:600;font-size:15.5px;opacity:.9;transition:background .15s}
.s-link i{font-style:normal;width:22px;text-align:center}
.s-link:hover{background:rgba(255,255,255,.08);opacity:1}
.s-link.on{background:rgba(255,255,255,.17);opacity:1}
.s-sep{height:1px;background:rgba(255,255,255,.18);margin:10px 4px}
.s-prog{margin-top:auto;background:rgba(255,255,255,.12);border-radius:14px;padding:15px 16px}
.s-prog small{opacity:.85;font-size:13px}
.s-prog b{display:block;font-size:17px;margin-top:2px}
.bar{height:8px;border-radius:9px;background:rgba(255,255,255,.25);overflow:hidden;margin-top:9px}
.bar span{display:block;height:100%;background:var(--rosa-2);border-radius:9px;transition:width .3s}
.bar.claro{background:#f1e6e3}
.bar.claro span{background:var(--verde)}

/* ---------- títulos ---------- */
.saludo{font-family:Caveat,cursive;color:#b4506a;font-size:24px;line-height:1}
.h1{font-family:'Playfair Display',serif;color:var(--bordo);font-size:27px;margin:2px 0 18px}
@media(min-width:960px){.h1{font-size:33px}}
.h2{font-size:19px;color:var(--bordo);font-weight:800;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:30px 0 4px}
.h2 small{font-weight:500;color:var(--suave);font-size:14px}
.bajada{color:var(--suave);font-size:15px;margin:0 0 14px}
.volver{display:inline-flex;align-items:center;gap:6px;color:var(--suave);font-weight:600;font-size:14.5px;margin-bottom:14px}

/* ---------- inicio ---------- */
.top{display:grid;gap:16px}
@media(min-width:1100px){.top{grid-template-columns:1.6fr 1fr}}
.seguir{position:relative;display:block;min-height:230px;border-radius:20px;overflow:hidden;background:#3a1a22 center 62%/cover;box-shadow:0 10px 26px rgba(91,35,51,.18)}
@media(min-width:600px){.seguir{min-height:320px}}
.seguir:after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,0) 35%,rgba(40,14,22,.82))}
.seguir .play{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);z-index:2}
.seguir .info{position:absolute;left:20px;right:20px;bottom:18px;color:#fff;z-index:2}
.seguir .info small{font-size:13.5px;opacity:.9}
.seguir .info b{display:block;font-size:24px;line-height:1.15;margin:2px 0 10px}
.seguir .bar{background:rgba(255,255,255,.3)}
.seguir .bar span{background:var(--verde)}
.play{width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 6px 20px rgba(0,0,0,.25)}
.play:before{content:"";position:absolute;left:31px;top:23px;border-left:25px solid var(--bordo);border-top:16px solid transparent;border-bottom:16px solid transparent}
.cajas{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:1100px){.cajas{grid-template-columns:1fr}}
.caja{background:#fff;border-radius:var(--radio);padding:14px;box-shadow:var(--sombra);display:flex;gap:12px;align-items:center;transition:transform .15s}
.caja:hover{transform:translateY(-2px)}
.caja .ic{flex:0 0 44px;height:44px;border-radius:12px;background:var(--rosa);display:flex;align-items:center;justify-content:center;font-size:22px}
.caja b{display:block;color:var(--bordo);font-size:15px;line-height:1.25}
.caja small{color:var(--suave);font-size:13px;line-height:1.3;display:block}
.aviso{background:var(--rosa);border:1px dashed var(--rosa-2);border-radius:var(--radio);padding:14px 16px;font-size:15px;margin:0 0 18px}
.aviso b{color:var(--bordo)}

/* ---------- tarjetas de clase ---------- */
.fila{display:grid;grid-auto-flow:column;grid-auto-columns:44%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:none}
.fila::-webkit-scrollbar{display:none}
.fila>*{scroll-snap-align:start}
@media(min-width:600px){.fila{grid-auto-columns:30%}}
@media(min-width:960px){.fila{grid-auto-flow:row;grid-template-columns:repeat(4,1fr);gap:16px;overflow:visible;margin:0;padding:4px 0 8px}}
.grilla{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:600px){.grilla{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){.grilla{grid-template-columns:repeat(4,1fr);gap:16px}}
.card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column;transition:transform .15s}
.card:hover{transform:translateY(-3px)}
.th{position:relative;aspect-ratio:1/.84;background:var(--rosa) 50% 78%/118% no-repeat}
.th.sinfoto{display:flex;align-items:center;justify-content:center;font-size:44px;background:linear-gradient(150deg,var(--rosa),var(--rosa-2))}
.pl{position:absolute;right:9px;bottom:9px;width:32px;height:32px;border-radius:50%;background:var(--bordo)}
.pl:before{content:"";position:absolute;left:12px;top:9px;border-left:11px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}
.ok{position:absolute;left:9px;top:9px;background:var(--verde);color:#fff;border-radius:20px;font-size:12px;font-weight:800;padding:3px 9px}
.card .tx{padding:9px 11px 12px}
.card b{display:block;font-size:13px;color:var(--bordo);letter-spacing:.03em}
.card span{display:block;font-size:14.5px;font-weight:600;line-height:1.25}

/* ---------- bonos ---------- */
.bonos{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:960px){.bonos{grid-template-columns:repeat(4,1fr);gap:16px}}
.bono{background:#fff;border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column}
.bono img{aspect-ratio:1/1.1;object-fit:cover;object-position:top;width:100%}
.bono .tx{padding:12px 13px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.tag{display:inline-block;align-self:flex-start;background:var(--rosa-2);color:var(--bordo);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:99px}
.bono h3{font-size:15.5px;color:var(--bordo)}
.bono p{margin:0;color:var(--suave);font-size:13.5px;line-height:1.4;flex:1}
.mini{display:flex;gap:10px;align-items:center;background:#fff;border-radius:14px;padding:9px;box-shadow:var(--sombra)}
.mini img{width:48px;height:66px;object-fit:cover;border-radius:5px}
.mini b{font-size:14px;color:var(--bordo);line-height:1.25}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 16px;font-weight:700;font-size:15px;background:var(--bordo);color:#fff;transition:filter .15s}
.btn:hover{filter:brightness(1.1)}
.btn.verde{background:var(--verde-2)}
.btn.suave{background:#fff;color:var(--bordo);border:1.5px solid var(--rosa-2)}
.btn.chico{padding:9px 13px;font-size:14px}
.btn.hecho{background:var(--verde)}

/* ---------- clase ---------- */
.clase{max-width:1000px}
.video{position:relative;aspect-ratio:16/9;background:#1e0e13;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(91,35,51,.18)}
.caps{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0 2px}
.caps span{font-size:13px;font-weight:700;color:var(--bordo);margin-right:2px}
.caps button{font:inherit;font-size:13px;border:1px solid var(--rosa-2);background:#fff;color:var(--bordo);border-radius:999px;padding:5px 11px;cursor:pointer}
.caps button small{opacity:.65;font-variant-numeric:tabular-nums}
.caps button:hover,.caps button:focus-visible{background:var(--rosa);outline:none}
.video.vertical{aspect-ratio:9/16;max-width:420px;margin:0 auto}
.video iframe,.video video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.video.vacio{display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:linear-gradient(rgba(40,14,22,.72),rgba(40,14,22,.85)) center/cover;padding:20px}
.video.vacio span{font-size:40px;display:block}
.video.vacio b{display:block;font-size:18px;margin-top:6px}
.video.vacio small{opacity:.85}
.c-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin:18px 0 6px}
.c-head .chip{font-size:13px;font-weight:700;color:var(--suave)}
.c-head h1{font-family:'Playfair Display',serif;color:var(--bordo);font-size:26px;margin-top:2px}
@media(min-width:960px){.c-head h1{font-size:31px}}
.acciones{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}
.pestanas{display:flex;gap:6px;background:#fff;border-radius:14px;padding:5px;box-shadow:var(--sombra);margin:20px 0 14px;position:sticky;top:64px;z-index:5}
@media(min-width:960px){.pestanas{top:10px}}
.pestanas button{flex:1;border:0;background:none;border-radius:10px;padding:11px 8px;font-weight:700;font-size:14.5px;color:var(--suave)}
.pestanas button.on{background:var(--bordo);color:#fff}
.panel[hidden]{display:none}
.bloque{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:18px 18px 8px;margin-bottom:14px}
.bloque h3{font-size:18px;color:var(--bordo);display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.bloque h3 small{font-size:13px;font-weight:700;color:var(--suave);background:var(--rosa);border-radius:99px;padding:3px 10px;white-space:nowrap}
.bloque .nota{color:var(--suave);font-size:14.5px;margin:0 0 10px}
.mat{list-style:none;margin:0;padding:0}
.mat li{border-top:1px solid var(--borde)}
.mat li:first-child{border-top:0}
.mat label{display:flex;gap:12px;align-items:flex-start;padding:11px 2px;cursor:pointer}
.mat input{position:absolute;opacity:0;pointer-events:none}
.mat .cb{flex:0 0 24px;height:24px;border-radius:7px;border:2px solid var(--rosa-2);display:flex;align-items:center;justify-content:center;margin-top:1px;color:#fff;font-size:15px;font-weight:800}
.mat input:checked+.cb{background:var(--verde);border-color:var(--verde)}
.mat input:checked+.cb:after{content:"✓"}
.mat input:focus-visible+.cb{outline:3px solid var(--rosa-2);outline-offset:2px}
.mat .em{flex:0 0 26px;font-size:19px;line-height:1.3}
.mat .t{font-size:15.5px}
.mat input:checked~.t{color:var(--suave)}
.pasos{list-style:none;margin:0;padding:0}
.pasos>li{display:flex;gap:12px;padding:11px 2px;border-top:1px solid var(--borde);cursor:pointer;-webkit-tap-highlight-color:transparent}
.pasos>li:first-child{border-top:0}
.pasos .num{flex:0 0 30px;height:30px;border-radius:50%;background:var(--rosa);color:var(--bordo);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}
.pasos .t{font-size:15.5px;padding-top:3px}
.pasos ul{margin:6px 0 0;padding-left:18px;color:var(--txt)}
.pasos ul li{margin:3px 0}
.pasos>li.hecho{opacity:.5}
.pasos>li.hecho .num{background:var(--verde);color:#fff}
.pasos>li.hecho .num:after{content:"✓"}
.pasos>li.hecho .num span{display:none}
.ayuda-pasos{font-size:13.5px;color:var(--suave);margin:-4px 0 12px}
.mat .acl{display:block;font-size:13.5px;color:var(--suave);margin-top:3px}
.bloque.info{background:var(--rosa);box-shadow:none;border:1px solid var(--rosa-2)}
.lista{margin:0 0 10px;padding-left:20px}
.lista li{margin:5px 0;font-size:15px}
.pasos>li.subt{cursor:default;border-top:0;padding:14px 2px 2px;font-weight:800;color:var(--bordo);font-size:15px}
.pasos>li.subt .t{padding-top:0}
.pasos>li.subt ul{font-weight:400;color:var(--txt)}
.pasos>li.notap{cursor:default;background:#fffaf2;border-radius:10px;border-top:0;margin:6px 0;padding:10px}
.pasos>li.notap .num{background:none;font-size:18px}
.pasos>li.notap .t{font-size:14.5px}
.h2.secc{margin:26px 0 12px}
.vacio-txt{background:#fff;border-radius:var(--radio);padding:22px;text-align:center;color:var(--suave);box-shadow:var(--sombra)}
.navclase{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
.navclase a{background:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--sombra);font-size:13px;color:var(--suave)}
.navclase a b{display:block;color:var(--bordo);font-size:15px}
.navclase a.sig{text-align:right}

/* ---------- materiales (bono 1) ---------- */
details.acc{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);margin-bottom:10px;overflow:hidden}
details.acc summary{list-style:none;display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer}
details.acc summary::-webkit-details-marker{display:none}
details.acc summary img{width:52px;height:52px;border-radius:10px;object-fit:cover;object-position:50% 78%}
details.acc summary .x{flex:1}
details.acc summary b{display:block;color:var(--bordo);font-size:13px}
details.acc summary span{font-weight:600}
details.acc summary:after{content:"›";font-size:26px;color:var(--suave);transform:rotate(90deg);transition:transform .2s}
details.acc[open] summary:after{transform:rotate(-90deg)}
details.acc .in{padding:0 16px 8px}

/* ---------- consultas ---------- */
.tarjeta{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:20px;max-width:640px}
.tarjeta ul{padding-left:20px;margin:10px 0 16px}
.tarjeta li{margin:5px 0}
.cargando{color:var(--suave)}

/* ---------- imprimir ---------- */
@media print{
  .side,.topbar,.tabs,.video,.acciones,.pestanas,.navclase,.volver,.ayuda-pasos{display:none!important}
  body,main{background:#fff;padding:0}
  .panel[hidden]{display:block!important}
  .bloque,details.acc{box-shadow:none;border:1px solid #ddd;break-inside:avoid-page}
  details.acc .in{display:block}
  .pasos>li.hecho{opacity:1}
}

/* ---------- mapa visual de la clase ---------- */
.mapa{--tej:#F3C9D1;--arm:#B9D79A;--hoja:#5E8B3A;--crem2:#FFF7EC}
.pt{display:inline-block;border-radius:8px;padding:1px 8px;margin:2px 1px;font-size:13.5px;font-weight:500;white-space:nowrap;line-height:1.55;border:1px solid transparent;color:#3a2a2e}
.pt b{font-weight:800;margin-right:1px}
.pt.cad{background:#EFE7DA}.pt.pe{background:#E6DDF0}.pt.mp{background:#FCE7A9}.pt.mv{background:#F8D2B0}.pt.v{background:#F3BEC4}.pt.vd{background:#D8C9EC}
.pt.pic{background:#fff;border-color:var(--bordo-2);color:var(--bordo)}.pt.aum{border:1.5px dashed rgba(58,42,46,.5)}
.hilo{display:inline-block;width:13px;height:13px;border-radius:50%;margin-right:3px;vertical-align:-2px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14),0 1px 2px rgba(0,0,0,.12)}
.m-hero{display:flex;gap:18px;align-items:center;background:linear-gradient(135deg,#fff 0%,var(--crem2) 100%);border-radius:22px;box-shadow:var(--sombra);padding:18px;position:relative;overflow:hidden}
.m-hero::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,var(--rosa-2) 0,transparent 70%);opacity:.55}
.m-foto{--p:0;flex:none;width:112px;height:112px;border-radius:50%;padding:5px;background:conic-gradient(var(--verde) calc(var(--p)*1%),var(--rosa-2) 0);position:relative;z-index:1}
.m-foto img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:4px solid #fff}
.m-datos{position:relative;z-index:1;min-width:0}
.m-datos small{font-size:13px;color:var(--suave);font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.m-datos>b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:30px;color:var(--bordo);line-height:1.05;margin:2px 0 8px}
.m-filas{display:flex;flex-wrap:wrap;gap:6px}
.m-filas span{background:#fff;border:1px solid var(--borde);border-radius:99px;padding:4px 11px;font-size:13px;font-weight:600;white-space:nowrap}
.m-filas .m-prog{background:#EAF7EE;border-color:#cdebd6;color:var(--verde-2)}
.m-prog em{font-style:normal}
.ag{display:inline-block;width:14px;height:3px;background:var(--bordo);border-radius:2px;transform:rotate(-40deg);vertical-align:3px;margin-right:2px;box-shadow:-5px 0 0 0 #E8743B}
.m-ley{display:flex;gap:4px;overflow-x:auto;align-items:center;margin:14px -16px 6px;padding:4px 16px 8px;scrollbar-width:none}
.m-ley::-webkit-scrollbar{display:none}
.m-ley small{font-size:12px;font-weight:700;color:var(--suave);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;margin-right:4px}
.ruta{list-style:none;margin:10px 0 0;padding:0 0 0 0;position:relative}
.ruta::before{content:"";position:absolute;left:27px;top:20px;bottom:40px;width:4px;border-radius:4px;background:repeating-linear-gradient(180deg,var(--hoja) 0 14px,transparent 14px 22px);opacity:.45}
.nodo{display:grid;grid-template-columns:58px 1fr;gap:10px;margin-bottom:16px;position:relative}
.bola{width:58px;height:58px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px var(--tej),0 6px 14px rgba(91,35,51,.14);display:flex;align-items:center;justify-content:center;font-size:28px;position:relative;z-index:1;margin-top:6px}
.nodo.arm .bola{box-shadow:0 0 0 4px var(--arm),0 6px 14px rgba(91,35,51,.14)}
.bola i{position:absolute;right:-4px;bottom:-4px;min-width:22px;height:22px;border-radius:11px;background:var(--bordo);color:#fff;font-style:normal;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #fff;padding:0 4px}
.nodo.listo .bola{box-shadow:0 0 0 4px var(--verde),0 6px 14px rgba(34,197,94,.25)}
.nodo.listo .bola i{background:var(--verde-2);font-size:0}.nodo.listo .bola i::after{content:"✓";font-size:12px}
.ficha{background:#fff;border-radius:20px;box-shadow:var(--sombra);overflow:hidden;min-width:0}
.ficha>summary{list-style:none;display:flex;gap:12px;align-items:center;padding:14px;cursor:pointer;position:relative}
.ficha>summary::-webkit-details-marker{display:none}
.fz{width:74px;height:74px;border-radius:14px;object-fit:cover;flex:none;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.cab{flex:1;min-width:0}
.cab>b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:19px;color:var(--bordo);line-height:1.15}
.tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}
.cant{background:var(--bordo);color:#fff;border-radius:99px;padding:2px 10px;font-size:12.5px;font-weight:700}
.np{font-size:12.5px;color:var(--suave);font-weight:600}
.np em{font-style:normal;color:var(--verde-2);font-weight:800}
.aviso-n{margin:6px 0 0;font-size:13px;color:#8a5a12;background:#FFF3D6;border-radius:8px;padding:4px 8px}
.abrir{flex:none;align-self:flex-start;font-size:12px;font-weight:700;color:var(--bordo);background:var(--rosa);border-radius:99px;padding:5px 10px}
.abrir::after{content:" ▾";display:inline-block;transition:transform .2s}
.ficha[open] .abrir::after{transform:rotate(180deg)}
.ficha[open]>summary{border-bottom:1px dashed var(--borde)}
.filas{list-style:none;margin:0;padding:8px 10px 12px}
.filas li{display:grid;grid-template-columns:46px 1fr auto;gap:8px;align-items:center;padding:8px 6px;border-radius:12px;font-size:15px;cursor:pointer;transition:background .15s}
.filas li:nth-child(odd){background:#FBF7F1}
.filas li .et{justify-self:center;min-width:38px;text-align:center;background:var(--hoja);color:#fff;font-weight:800;font-size:13px;border-radius:99px;padding:3px 6px}
.filas li .to{background:var(--rosa);color:var(--bordo);font-weight:800;font-size:14px;border-radius:10px;padding:3px 9px;white-space:nowrap}
.filas li .to::before{content:"= "}
.filas li .sb{margin-top:3px}
.filas li.hecho .tx{opacity:.45;text-decoration:line-through}
.filas li.hecho .et{background:var(--verde)}
.filas li.hecho .et{font-size:0}.filas li.hecho .et::after{content:"✓";font-size:14px}
.filas li.nt,.filas li.st{display:block;cursor:default;background:#FFF3D6 !important;font-size:14px;color:#6b4a12}
.filas li.st{background:var(--rosa) !important;color:var(--bordo);font-weight:700}
.cruce{list-style:none;display:flex;flex-direction:column;align-items:center;text-align:center;margin:6px 0 20px;position:relative;z-index:1}
.cruce span{width:46px;height:46px;border-radius:50%;background:var(--arm);display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 0 0 6px var(--crema)}
.cruce b{font-family:'Playfair Display',Georgia,serif;color:var(--hoja);font-size:20px;margin-top:6px}
.cruce small{color:var(--suave);font-size:13px}
.nodo.meta .bola{box-shadow:0 0 0 4px #F2B70F,0 6px 14px rgba(242,183,15,.3)}
.ficha.fin{display:flex;flex-direction:column}
.ficha.fin img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ficha.fin div{padding:14px 16px 16px}
.ficha.fin b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:22px;color:var(--bordo)}
.ficha.fin small{color:var(--suave);font-size:14px}
@media(min-width:960px){.ruta::before{left:31px}.nodo{grid-template-columns:66px 1fr;gap:14px}.bola{width:66px;height:66px;font-size:32px}.ficha.fin{flex-direction:row}.ficha.fin img{width:46%;aspect-ratio:1}.ficha.fin div{align-self:center}}
@media print{.mapa .ficha{break-inside:avoid}.ficha:not([open]) .filas{display:block}}
