/* Capta · 03-septiembre.css — preinscripción, ranking, Cómo se puntúa, reseñas, embajadores, cafés, ficha del curso por grupos, FEM, buscador, EstudiaEnADF.
   Fase 3 (21/10/2026): styles.css partido en tramos SEGUIDOS, en el orden de siempre (index.html los carga así).
   Las reglas de un fichero posterior mandan sobre las anteriores: lo nuevo, al final del último (06-octubre-3.css o uno nuevo detrás). */
/* ===== 🗓 Próxima convocatoria · preinscripción ===== */
.prev-intro{display:flex;flex-direction:column;gap:4px;background:linear-gradient(135deg,#E4F1F9,#F0F6FA);border:1px solid #cfe3f1;border-radius:14px;padding:12px 14px;margin-bottom:12px;font-size:13.5px;color:#23384d}
.prev-intro b:first-child{color:#0F6A9C;font-size:14px}
.prev-kpis{margin-bottom:12px}
.prev-filtros{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.prev-chips{display:flex;flex-wrap:wrap;gap:6px}
.prev-busca{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.prev-busca input[type=search]{flex:1 1 220px;min-height:44px;border:1px solid var(--linea);border-radius:10px;padding:8px 12px;font:inherit}
.prev-dem{background:#fff;border:1px solid var(--linea);border-radius:14px;padding:10px 14px;margin-bottom:12px}
.prev-dem summary{cursor:pointer;font-weight:700;color:#0D1B2A;min-height:28px;display:flex;align-items:center}
.prev-dem-l{display:flex;flex-direction:column;gap:8px;margin:10px 0 6px}
.prev-dem-f{display:grid;grid-template-columns:minmax(0,1.4fr) 1fr 36px;gap:10px;align-items:center;font-size:13px}
.prev-dem-f span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prev-dem-f small{color:var(--tinta-suave)}
.prev-dem-f i,.prev-num i{display:block;height:8px;border-radius:999px;background:#E4EDF4;overflow:hidden}
.prev-dem-f em,.prev-num em{display:block;height:100%;background:linear-gradient(90deg,#1A8CC4,#0F6A9C);border-radius:999px}
.prev-dem-f b{text-align:right;color:#0F6A9C}.prev-dem-n{color:var(--tinta-suave);font-size:12px}
.prev-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.prev-card{background:#fff;border:1px solid var(--linea);border-left:4px solid #1A8CC4;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;animation:prevIn .3s ease-out both}
.prev-card.conv{border-left-color:#1f9d55;background:#fbfefc}.prev-card.cerr{border-left-color:#9aa9b6;opacity:.8}
@keyframes prevIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.prev-top{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}.prev-top b{font-size:15px;line-height:1.25;color:#0D1B2A}
.prev-mas{flex:0 0 36px;height:36px;border-radius:10px;border:1px solid var(--linea);background:#F8FAFC;font-size:18px;cursor:pointer;color:#35506a}
.prev-tags{display:flex;flex-wrap:wrap;gap:6px}.prev-tags span{font-size:12px;font-weight:700;background:#F0F6FA;color:#35506a;border-radius:999px;padding:4px 9px}
.prev-tags span.on{background:#EFE8FA;color:#5a3e9b}.prev-tags span.esp{background:#FFF6E4;color:#8a5a00}
.prev-num{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:4px;align-items:baseline}
.prev-num b{grid-row:1/3;font-size:32px;line-height:1;color:#0F6A9C;font-weight:800}.prev-num span{font-size:13px;color:#35506a}.prev-num .prev-tuyos{color:#1f9d55;font-weight:700}
.prev-conv{font-size:13px;background:#E8F5EE;color:#17693a;border-radius:10px;padding:8px 10px}.prev-conv.cerr{background:#F1F4F7;color:#5b7285}
.prev-acc{display:flex;flex-wrap:wrap;gap:6px}.prev-acc .btn{min-height:40px}
.prev-pag{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px 0 4px;flex-wrap:wrap}.prev-pag span{font-size:13px;color:var(--tinta-suave)}.prev-pag .btn{min-height:44px;min-width:44px}
.prev-pag.solo{margin-top:10px}
.prev-vacio{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:26px 16px;background:#fff;border:1px dashed #cfdde8;border-radius:14px;color:#35506a}
.prev-vacio div{font-size:34px}.prev-vacio b{color:#0D1B2A;font-size:15px}.prev-vacio span{font-size:13.5px;max-width:460px}
.prev-esq{display:flex;flex-direction:column;gap:10px;padding:6px 0}.prev-esq i{display:block;height:74px;border-radius:14px;background:linear-gradient(100deg,#eef3f7 30%,#f7fafc 50%,#eef3f7 70%);background-size:300% 100%;animation:anuEsq 1.2s linear infinite}
.prev-g2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.prev-ant{display:flex;flex-direction:column;gap:6px;max-height:min(46vh,420px);overflow-y:auto;border:1px solid var(--linea);border-radius:12px;padding:6px;margin:6px 0}
.prev-ant-f{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;min-height:48px}
.prev-ant-f:hover{background:#F0F6FA}.prev-ant-f input{width:20px;height:20px;flex:0 0 20px}.prev-ant-f span{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.prev-ant-f b{font-size:13.5px}.prev-ant-f small{font-size:12px;color:var(--tinta-suave)}.prev-ant-f.ya{opacity:.55;cursor:default}
.prev-url{display:flex;gap:8px;margin:8px 0}.prev-url input{flex:1;min-width:0;min-height:44px;border:1px solid var(--linea);border-radius:10px;padding:8px 10px;font:inherit;font-size:13.5px;background:#F8FAFC}
.prev-mh{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:8px}.prev-mh small{color:var(--tinta-suave)}
.prev-pl{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.prev-pf{display:flex;align-items:center;gap:10px;border:1px solid var(--linea);border-radius:12px;padding:8px 10px;background:#fff}
.prev-pf-d{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.prev-pf-d b{cursor:pointer;color:#0D1B2A}.prev-pf-d small{font-size:12px;color:var(--tinta-suave)}
.prev-pf-a{display:flex;gap:6px}.prev-pf-a .pa-b{flex:0 0 auto;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center}
.prev-quitar{color:#b42323!important}.prev-quitar.conf{background:#fdecec!important;border-color:#f3b9b9!important;font-size:12px}
.prev-ok{text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}.prev-ok>div{font-size:40px}
.prev-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;background:#FFF6E4;border:1px solid #f2d59a;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:13.5px;color:#5c3d00}
.prev-menu{flex-wrap:wrap}
.fa-prev{background:#FFF6E4;border-color:#F2B23E}
@media (max-width:620px){.prev-g2{grid-template-columns:1fr}.prev-lista{grid-template-columns:1fr}.prev-dem-f{grid-template-columns:minmax(0,1fr) 70px 30px}.prev-acc .btn{flex:1 1 auto}}

.prev-f input:not([type=checkbox]):not([type=radio]),.prev-f select,.prev-f textarea{width:100%;min-height:44px;box-sizing:border-box}
.prev-f textarea{min-height:88px}
.prev-pie{display:flex;flex-wrap:wrap;gap:8px}.prev-pie .btn{flex:1 1 auto;min-height:46px;justify-content:center;text-align:center}

.prev-pie a.btn{text-decoration:none;display:inline-flex;align-items:center}

.prev-num-c{font-size:12px;font-weight:700;color:#5b7285;letter-spacing:.02em;margin-top:-4px}
.prev-gemelo{font-size:11.5px;color:#8a5a00;background:#FFF6E4;border-radius:8px;padding:6px 8px}
.prev-otras{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;background:#fff;border:1px dashed #b9cbd9;border-radius:14px;padding:12px 14px}
.prev-otras div{display:flex;flex-direction:column;gap:3px;flex:1 1 260px}.prev-otras span{font-size:13px;color:#35506a}
.prev-file{display:flex;align-items:center;justify-content:center;min-height:64px;border:2px dashed #b9cbd9;border-radius:12px;cursor:pointer;margin:8px 0;font-weight:700;color:#0F6A9C;background:#F8FAFC}
.prev-file input{position:absolute;opacity:0;width:1px;height:1px}
.prev-file:hover{border-color:#1A8CC4}

/* ventana «Preinscribir» desde la ficha */
.prev-ant-f{flex-shrink:0}
.modal-caja.pax-modal{max-width:880px;padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:min(92dvh,900px)}
.pax{display:flex;flex-direction:column;min-height:0;flex:1}
.pax-cab{display:flex;gap:12px;align-items:flex-start;padding:18px 20px 14px;background:linear-gradient(135deg,#0F6A9C,#1A8CC4);color:#fff}
.pax-cab h3{margin:0;font-size:18px;color:#fff}.pax-cab small{display:block;margin-top:3px;font-size:12.5px;color:#dcecf7;line-height:1.35}
.pax-cab>div{flex:1;min-width:0}
.pax-av{flex:0 0 44px;height:44px;border-radius:50%;background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}
.pax-x{flex:0 0 38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:17px;cursor:pointer}
.pax-x:hover{background:rgba(255,255,255,.3)}
.pax .prev-esq{padding:16px 20px}
.pax>.al{margin:12px 20px 0}
.pax-ya{margin:12px 20px 0;background:#E8F5EE;border:1px solid #bfe6cf;border-radius:12px;padding:10px 12px;font-size:13px;color:#17693a}
.pax-ya div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.pax-ya span{background:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}
.pax-fil{padding:12px 20px 8px;display:flex;flex-direction:column;gap:10px;position:sticky;top:0;background:#fff;z-index:1;box-shadow:0 6px 8px -8px rgba(13,27,42,.15)}
.pax-busca input{width:100%;box-sizing:border-box;min-height:46px;border:1.5px solid #cfdde8;border-radius:12px;padding:10px 14px;font:inherit;font-size:15px}
.pax-busca input:focus{outline:none;border-color:#1A8CC4;box-shadow:0 0 0 3px rgba(26,140,196,.15)}
.pax-chips{display:flex;flex-wrap:wrap;gap:6px}.pax-chips .chip em{font-style:normal;opacity:.65;font-size:11.5px;margin-left:2px}
.pax-cuenta{padding:6px 20px 0;font-size:12.5px;color:#5b7285;font-weight:700}
.pax-cuerpo{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.pax-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;padding:10px 20px}
.pax-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--linea,#d9e3ec);border-radius:14px;padding:12px;background:#fff;animation:prevIn .25s ease-out both;transition:border-color .15s,box-shadow .15s}
.pax-card:hover{border-color:#9cc8e3;box-shadow:0 4px 14px rgba(13,27,42,.06)}
.pax-card.hecho{background:#F4FBF7;border-color:#bfe6cf}
.pax-card-t b{display:block;font-size:14px;line-height:1.3;color:#0D1B2A}.pax-card-t small{font-size:11.5px;color:#7a8fa1;font-weight:700}
.pax-card-m{display:flex;flex-wrap:wrap;gap:5px}.pax-card-m span{font-size:11.5px;font-weight:700;background:#F0F6FA;color:#35506a;border-radius:999px;padding:3px 8px}
.pax-card-m span.on{background:#EFE8FA;color:#5a3e9b}.pax-card-m span.t{background:#FFF6E4;color:#8a5a00}
.pax-card-p{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.pax-card-p small{font-size:12px;color:#5b7285}
.pax-card-p .btn{min-height:40px;padding:0 14px}
.pax-ok{font-size:13px;font-weight:800;color:#1f9d55;padding:8px 4px}
.pax-vermas{display:block;margin:4px auto 10px;min-height:44px}
.pax-pie{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--linea,#d9e3ec);background:#fff}
.pax-pie span{font-size:13px;font-weight:700;color:#1f9d55}.pax-pie .btn{min-height:46px;min-width:120px}
@media (max-width:620px){.pax-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.pax-chips .chip{flex:0 0 auto}.modal-caja.pax-modal{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.pax-grid{grid-template-columns:1fr}.pax-cab{padding:14px 14px 12px}.pax-fil,.pax-grid,.pax-cuenta{padding-left:14px;padding-right:14px}.pax-ya,.pax>.al{margin-left:14px;margin-right:14px}}

/* invitación de Estrellita (novedad de la preinscripción) */
.est-inv{position:fixed;right:18px;bottom:18px;z-index:7000;display:flex;gap:12px;align-items:flex-start;width:min(420px,calc(100vw - 24px));background:#fff;border-radius:18px;padding:14px 14px 14px 12px;box-shadow:0 18px 50px rgba(13,27,42,.28);border:1px solid #cfe3f1;transform:translateY(20px);opacity:0;transition:transform .25s,opacity .25s}
.est-inv.on{transform:none;opacity:1}
.est-inv-av{flex:0 0 64px;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#FFF6E4,#E4F1F9);display:flex;align-items:center;justify-content:center;overflow:hidden}.est-inv-av svg{width:60px;height:60px}
.est-inv-t{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.est-inv-t small{font-size:11.5px;font-weight:800;color:#b7791f;text-transform:uppercase;letter-spacing:.04em}
.est-inv-t b{font-size:15.5px;line-height:1.25;color:#0D1B2A}.est-inv-t span{font-size:13px;color:#35506a;line-height:1.35}
.est-inv-b{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.est-inv-b .btn{min-height:44px}
.est-inv-x{flex:0 0 32px;height:32px;border-radius:50%;border:0;background:#F0F6FA;color:#35506a;cursor:pointer;font-size:14px}
.pax-decir{margin:12px 20px 0;background:#FFF6E4;border:1px solid #f2d59a;border-radius:12px;padding:10px 12px;font-size:13px;color:#5c3d00;line-height:1.4}
@media (max-width:620px){.est-inv{left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));width:auto}.pax-decir{margin-left:14px;margin-right:14px}}

.pax-fams{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pax-fams-t{font-size:11.5px;font-weight:800;color:#5b7285;text-transform:uppercase;letter-spacing:.04em;margin-right:2px}
.pax-fam{border:1px solid #d9e3ec;background:#fff;border-radius:999px;padding:6px 11px;min-height:34px;font:inherit;font-size:12.5px;font-weight:700;color:#35506a;cursor:pointer;white-space:nowrap}
.pax-fam em{font-style:normal;opacity:.6;font-size:11px;margin-left:2px}.pax-fam:hover{border-color:#1A8CC4}
.pax-fam.activo{background:#0D1B2A;border-color:#0D1B2A;color:#fff}
.pax-card-m span.fam{background:#EAF2FF;color:#1d4f91}
@media (max-width:620px){.pax-fams{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.pax-fam{flex:0 0 auto}}

/* ===== 🏆 Ranking rehecho: pestañas y una sola clasificación ===== */
.rk2-tabs{display:flex;gap:4px;background:#E7EEF4;border-radius:14px;padding:4px;margin:0 0 14px;overflow-x:auto}
.rk2-tabs button{flex:1 0 auto;border:0;background:transparent;border-radius:10px;padding:10px 14px;min-height:44px;font:inherit;font-weight:800;font-size:14px;color:#4a6275;cursor:pointer;white-space:nowrap}
.rk2-tabs button.on{background:#fff;color:#0F6A9C;box-shadow:0 1px 4px rgba(13,27,42,.12)}
.rk2-per{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.rk2-seg{display:flex;gap:6px;flex-wrap:wrap}
.rk2-seg button{border:1.5px solid #d4e1ec;background:#fff;border-radius:12px;padding:8px 12px;min-height:50px;font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:1px}
.rk2-seg button b{font-size:13.5px;color:#0D1B2A}.rk2-seg button small{font-size:11.5px;color:#6a8195}
.rk2-seg button.on{border-color:#0F6A9C;background:#0F6A9C}.rk2-seg button.on b,.rk2-seg button.on small{color:#fff}
.rk2-otro{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#4a6275}.rk2-otro select{min-height:44px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 10px;font:inherit}
.rk2-res{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--linea,#d9e3ec);border-radius:16px;padding:14px 16px;margin-bottom:10px}
.rk2-res-t h3{margin:0;font-size:18px;color:#0D1B2A}.rk2-res-t small{color:#6a8195;font-size:12.5px}
.rk2-kpis{display:flex;gap:8px;flex-wrap:wrap}.rk2-kpis div{background:#F0F6FA;border-radius:12px;padding:8px 12px;min-width:90px}
.rk2-kpis b{display:block;font-size:20px;color:#0D1B2A;line-height:1.1}.rk2-kpis small{font-size:11.5px;color:#6a8195}
.rk2-kpis div.eur{background:#E8F5EE}.rk2-kpis div.eur b{color:#17693a}
.rk2-acc{display:flex;gap:6px;flex-wrap:wrap}.rk2-acc .btn{min-height:42px}
.rk2-aviso{font-size:12.5px;color:#6a8195;margin:0 2px 10px}.rk2-aviso .btn-link{font-size:12.5px}
.rk2-sub{display:contents}
.rk2-tabla{background:#fff;border:1px solid var(--linea,#d9e3ec);border-radius:16px;overflow:hidden}
.rk2-cab,.rk2-fila{display:grid;grid-template-columns:44px minmax(0,1.6fr) 90px 90px 140px 80px 24px;gap:8px;align-items:center;padding:0 14px}
.rk2-cab{min-height:40px;background:#F6F9FB;font-size:11.5px;font-weight:800;color:#6a8195;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--linea,#d9e3ec)}
.rk2-cab .n,.rk2-fila .n{text-align:right;justify-self:end}
.rk2-fila{width:100%;min-height:60px;border:0;border-bottom:1px solid #eef3f7;background:#fff;font:inherit;text-align:left;cursor:pointer;transition:background .12s}
.rk2-fila:last-child{border-bottom:0}.rk2-fila:hover{background:#F6FAFD}.rk2-fila.yo{background:#FFF8E8}.rk2-fila.top .rk2-pos{font-size:20px}
.rk2-pos{font-weight:800;color:#6a8195;font-size:15px;text-align:center}
.rk2-per-c{display:flex;align-items:center;gap:10px;min-width:0}.rk2-per-c>span:last-child{display:flex;flex-direction:column;min-width:0}
.rk2-per-c b{font-size:14px;color:#0D1B2A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rk2-per-c small{font-size:12px;color:#6a8195}
.rk2-av{flex:0 0 36px;width:36px;height:36px;font-size:13px}.rk2-av.g{flex-basis:48px;width:48px;height:48px;font-size:17px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;border:2px solid rgba(255,255,255,.5)}
.rk2-pts b{font-size:17px;color:#0F6A9C}.rk2-fila .n small{color:#6a8195;font-size:11.5px}
.rk2-eur{font-size:16px;color:#17693a}
.rk2-chip{display:inline-block;font-size:11.5px;font-weight:700;border-radius:999px;padding:4px 9px;white-space:nowrap}
.rk2-chip.gris{background:#F0F3F6;color:#6a8195}.rk2-chip.ambar{background:#FFF6E4;color:#8a5a00}
.rk2-al{display:inline-block;font-size:12px;font-weight:800;border-radius:999px;padding:4px 9px;background:#FFF6E4;color:#8a5a00}.rk2-al.roja{background:#fdecec;color:#b42323}
.rk2-ok{color:#1f9d55;font-weight:800}.rk2-flecha{color:#9fb2c2;font-size:22px;text-align:right}
.rk2-sin{margin-top:10px;background:#fff;border:1px dashed #cfdde8;border-radius:14px;padding:10px 14px}.rk2-sin summary{cursor:pointer;font-weight:700;color:#4a6275;min-height:28px}
.rk2-sin-l{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.rk2-sin-l span{font-size:12px;background:#F0F3F6;border-radius:999px;padding:4px 10px;color:#4a6275}
.rk2-fuera{margin-top:10px;background:#FFF6E4;border:1px solid #f2d59a;border-radius:14px;padding:10px 14px;font-size:13px;color:#5c3d00;display:flex;flex-direction:column;gap:5px}
.rk2-esq{display:flex;flex-direction:column;gap:8px}.rk2-esq i{display:block;height:58px;border-radius:12px;background:linear-gradient(100deg,#eef3f7 30%,#f7fafc 50%,#eef3f7 70%);background-size:300% 100%;animation:anuEsq 1.2s linear infinite}
.modal-caja.rk2-modal{max-width:760px;padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:min(92dvh,900px)}
.rk2-ficha{display:flex;flex-direction:column;min-height:0;flex:1;overflow-y:auto}
.rk2-fcab{display:flex;gap:12px;align-items:center;padding:16px 18px;background:linear-gradient(135deg,#0F6A9C,#1A8CC4);color:#fff;position:sticky;top:0;z-index:1}
.rk2-fcab h3{margin:0;color:#fff;font-size:18px}.rk2-fcab small{color:#dcecf7}.rk2-fcab>div{flex:1;min-width:0}
.rk2-ftabs{display:flex;gap:6px;padding:12px 18px 0;flex-wrap:wrap}
.rk2-ftabs button{border:1.5px solid #d4e1ec;background:#fff;border-radius:999px;padding:7px 14px;min-height:40px;font:inherit;font-weight:800;font-size:13px;color:#4a6275;cursor:pointer}
.rk2-ftabs button.on{background:#0D1B2A;border-color:#0D1B2A;color:#fff}
.rk2-fsec{padding:12px 18px 18px}.rk2-fsec .rk-tabla{width:100%}
.rk2-eur-big{display:flex;align-items:baseline;gap:10px;background:#E8F5EE;border-radius:14px;padding:12px 16px;margin-bottom:10px}.rk2-eur-big b{font-size:30px;color:#17693a}.rk2-eur-big small{color:#35506a}
.rk2-eur-big.cero{background:#F0F3F6}.rk2-eur-big.cero b{color:#6a8195}
.rk2-al-l{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
@media (max-width:760px){
  .rk2-cab{display:none}
  .rk2-fila{grid-template-columns:34px minmax(0,1fr) auto 18px;grid-template-rows:auto auto;row-gap:6px;padding:10px 12px}
  .rk2-fila .rk2-pos{grid-row:1 / 3}.rk2-fila .rk2-per-c{grid-column:2}.rk2-fila .rk2-pts{grid-column:3;grid-row:1}.rk2-flecha{grid-column:4;grid-row:1 / 3}
  .rk2-sub{grid-column:2 / 4;grid-row:2;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
  .rk2-sub .n{text-align:left;justify-self:auto;display:flex;align-items:center;gap:4px;font-size:13px}
  .rk2-sub .n::before{content:attr(data-th);font-size:11px;color:#8aa0b2;font-weight:700}
  .rk2-seg button{flex:1 1 45%}.rk2-otro{width:100%}.rk2-otro select{flex:1}
  .rk2-kpis div{flex:1 1 40%}
  .modal-caja.rk2-modal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}
}

/* ===== 🎮 Cómo se puntúa (academia gamificada) ===== */
#vAprende{--neon:#00B8EE;--oro:#F2B23E;--navy:#0D1B2A;--navy2:#13283d}
.apr-hero{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;background:radial-gradient(120% 140% at 0% 0%,#1d4a6e 0%,#0D1B2A 55%);color:#fff;border-radius:20px;padding:20px 22px;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(13,27,42,.25)}
.apr-hero::after{content:"";position:absolute;inset:auto -40px -60px auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(0,184,238,.35),transparent 70%);animation:aprLatir 4s ease-in-out infinite}
@keyframes aprLatir{50%{transform:scale(1.15);opacity:.7}}
.apr-kick{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--oro)}
.apr-hero h2{margin:2px 0 4px;font-size:28px;color:#fff;letter-spacing:-.01em}.apr-hero p{margin:0;color:#c7dcea;font-size:14px;max-width:520px}
.apr-mimes{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;font-size:13px}.apr-mimes:empty{display:none}
.apr-mimes span{color:#c7dcea}.apr-mimes b{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 10px}.apr-mimes b.eur{color:var(--oro)}.apr-mimes em{font-style:normal;color:#ffb4b4}.apr-mimes em.ok{color:#8ff0b3}
.apr-xp{position:relative;z-index:1;min-width:200px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.apr-xp-n b{font-size:30px;color:var(--neon);line-height:1}.apr-xp-n small{color:#c7dcea;margin-left:4px}
.apr-xp-bar{height:10px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}.apr-xp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--neon),var(--oro));border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 12px rgba(0,184,238,.7)}
.apr-xp small{color:#c7dcea;font-size:12px}
.apr-niv{display:flex;gap:8px;overflow-x:auto;padding:14px 2px 6px;scroll-snap-type:x mandatory}
.apr-niv button{flex:0 0 auto;scroll-snap-align:start;display:flex;align-items:center;gap:8px;border:1.5px solid #d4e1ec;background:#fff;border-radius:14px;padding:8px 12px 8px 8px;min-height:52px;font:inherit;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}
.apr-niv button:hover{transform:translateY(-2px);border-color:var(--neon)}
.apr-niv-i{width:34px;height:34px;border-radius:10px;background:#F0F6FA;display:flex;align-items:center;justify-content:center;font-size:18px}
.apr-niv-t{display:flex;flex-direction:column;text-align:left;font-weight:800;font-size:13px;color:#0D1B2A}.apr-niv-t small{font-size:10.5px;color:#7a8fa1;text-transform:uppercase;letter-spacing:.06em}
.apr-niv button.on{background:var(--navy);border-color:var(--navy);box-shadow:0 6px 16px rgba(13,27,42,.25)}.apr-niv button.on .apr-niv-t{color:#fff}.apr-niv button.on .apr-niv-i{background:var(--neon)}
.apr-niv button.ok .apr-niv-i{background:#1f9d55;color:#fff;font-weight:800}
.apr-sec{animation:aprEntra .35s ease-out both;margin-top:6px}
@keyframes aprEntra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.apr-intro{background:#fff;border:1px solid #e1e9f0;border-left:4px solid var(--neon);border-radius:14px;padding:12px 14px;margin-bottom:12px}.apr-intro b{font-size:16px;color:#0D1B2A}.apr-intro p{margin:4px 0 0;color:#4a6275;font-size:14px}
.apr-pie{display:flex;justify-content:space-between;gap:10px;margin:18px 0 6px;flex-wrap:wrap}.apr-pie .btn{min-height:48px}
.apr-sig{box-shadow:0 0 0 0 rgba(0,184,238,.6);animation:aprPulso 2.2s infinite}@keyframes aprPulso{70%{box-shadow:0 0 0 12px rgba(0,184,238,0)}}
/* nivel 1: camino */
.apr-camino{display:flex;align-items:center;gap:0;overflow-x:auto;padding:10px 4px 14px}
.apr-parada{flex:0 0 auto;width:118px;min-height:118px;border:2px solid #d4e1ec;background:#fff;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:inherit;cursor:pointer;animation:aprPop .45s both;animation-delay:var(--d);transition:transform .15s,border-color .15s}
.apr-parada:hover{transform:translateY(-3px)}.apr-parada.on{border-color:var(--neon);box-shadow:0 0 0 4px rgba(0,184,238,.18)}
@keyframes aprPop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}
.apr-p-ico{font-size:30px}.apr-parada b{font-size:13.5px;color:#0D1B2A}.apr-p-pts{font-weight:900;color:#0F6A9C;font-size:16px;background:#E4F1F9;border-radius:999px;padding:2px 10px}
.apr-flecha{flex:0 0 26px;height:4px;background:repeating-linear-gradient(90deg,var(--neon) 0 6px,transparent 6px 10px);animation:aprPop .4s both;animation-delay:var(--d);position:relative}
.apr-flecha::after{content:"";position:absolute;right:-2px;top:-5px;border:7px solid transparent;border-left-color:var(--neon)}
.apr-parada-det{background:var(--navy);color:#e8f1f8;border-radius:14px;padding:12px 14px;min-height:64px;font-size:14px}.apr-parada-det b{color:var(--neon)}.apr-parada-det p{margin:4px 0 0}
.apr-parada-det.pop{animation:aprEntra .3s both}
.apr-camino-alt{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.apr-trampa,.apr-bonus{border-radius:14px;padding:12px 14px;font-size:13.5px}.apr-trampa{background:#fdecec;color:#7a1d1d}.apr-bonus{background:#E8F5EE;color:#14532d}
/* nivel 2: cartas */
.apr-mazo h4{margin:14px 0 8px;font-size:14px;color:var(--c);text-transform:uppercase;letter-spacing:.06em}
.apr-cartas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.apr-carta{position:relative;height:150px;border:0;background:transparent;perspective:900px;cursor:pointer;padding:0;font:inherit;animation:aprPop .4s both;animation-delay:var(--d)}
.apr-cara,.apr-dorso{position:absolute;inset:0;border-radius:16px;backface-visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;text-align:center}
.apr-cara{background:#fff;border:2px solid color-mix(in srgb,var(--c) 30%,#fff);box-shadow:0 6px 14px rgba(13,27,42,.06)}
.apr-dorso{background:var(--c);color:#fff;transform:rotateY(180deg);font-size:13px}.apr-dorso b{font-size:13.5px}
.apr-carta.gira .apr-cara{transform:rotateY(180deg)}.apr-carta.gira .apr-dorso{transform:rotateY(360deg)}
.apr-c-ico{font-size:28px}.apr-cara b{font-size:13px;color:#0D1B2A;line-height:1.2}.apr-c-pts{font-size:20px;font-weight:900;color:var(--c)}
/* nivel 3: reglas */
.apr-regla{background:#fff;border:1px solid #e1e9f0;border-radius:16px;padding:14px;margin-bottom:12px}
.apr-r-cab{display:flex;gap:10px;align-items:center;margin-bottom:10px}.apr-r-cab>span{font-size:26px;width:46px;height:46px;border-radius:12px;background:#F0F6FA;display:flex;align-items:center;justify-content:center}.apr-r-cab b{display:block;color:#0D1B2A}.apr-r-cab small{color:#6a8195}
.apr-slider{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#35506a}.apr-slider b{color:#0F6A9C}
input[type=range]{accent-color:#00B8EE;width:100%;height:32px}
.apr-cubo{position:relative;height:90px;border:2px solid #cfdde8;border-top:0;border-radius:0 0 14px 14px;margin:8px 0;width:120px;overflow:hidden;background:#F6FAFD}
.apr-cubo-in{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(0deg,#1A8CC4,#00B8EE);transition:height .25s}.apr-cubo-in.rebosa{background:linear-gradient(0deg,#1A8CC4 0%,#1A8CC4 70%,#e0457b 100%)}
.apr-cubo-lim{position:absolute;left:0;right:0;top:33.3%;border-top:2px dashed #e0457b;font-size:10px;color:#e0457b;font-weight:800;text-align:right;padding-right:4px}
.apr-r-res{font-size:14.5px;color:#0D1B2A;margin:6px 0 0}
.apr-motivos{display:flex;flex-wrap:wrap;gap:6px}.apr-motivo{border:1.5px solid #d4e1ec;background:#fff;border-radius:999px;padding:7px 12px;min-height:38px;font:inherit;font-size:13px;font-weight:700;color:#35506a;cursor:pointer}
.apr-motivo.on[data-q=entera]{background:#fdecec;border-color:#e0457b;color:#b42323}.apr-motivo.on[data-q=mitad]{background:#FFF6E4;border-color:#F2B23E;color:#8a5a00}.apr-motivo.on[data-q=nada]{background:#E8F5EE;border-color:#1f9d55;color:#17693a}
.apr-nota{font-size:12.5px;color:#6a8195;margin:8px 0 0}.am-txt{color:#8a5a00;font-weight:800}
/* nivel 4 */
.apr-sino{display:grid;grid-template-columns:1fr 1fr;gap:12px}.apr-si,.apr-no{border-radius:16px;padding:12px}.apr-si{background:#E8F5EE}.apr-no{background:#fdecec}
.apr-si h4,.apr-no h4{margin:0 0 8px}.apr-sn{display:flex;gap:8px;align-items:flex-start;background:#fff;border-radius:12px;padding:9px 10px;margin-bottom:6px;font-size:13.5px;animation:aprEntra .35s both;animation-delay:var(--d)}
.apr-sn span{flex:0 0 22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:12px;color:#fff}.apr-si .apr-sn span{background:#1f9d55}.apr-no .apr-sn span{background:#e0457b}
.apr-alerta{margin-top:12px;background:var(--navy);color:#e8f1f8;border-radius:14px;padding:12px 14px;font-size:13.5px}
/* nivel 5: simulador */
.apr-sim{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;align-items:start}
.apr-sg{background:#fff;border:1px solid #e1e9f0;border-radius:14px;padding:10px 12px;margin-bottom:10px}.apr-sg h5{margin:0 0 6px;font-size:13px;color:#0F6A9C;text-transform:uppercase;letter-spacing:.05em}
.apr-sc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px;align-items:center;font-size:13px;color:#35506a;min-height:40px}
.apr-sc div{display:flex;align-items:center;gap:8px}.apr-sc output{min-width:34px;text-align:right;font-weight:800;color:#0D1B2A}.apr-sc select,.apr-sc input[type=number]{width:100%;min-height:40px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 10px;font:inherit}
.apr-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.apr-presets .btn{min-height:40px}
.apr-sim-res{position:sticky;top:10px;background:var(--navy);color:#fff;border-radius:20px;padding:16px;box-shadow:0 12px 30px rgba(13,27,42,.3)}
.apr-marcador{display:grid;grid-template-columns:1fr 1fr;gap:10px}.apr-marcador>div{background:rgba(255,255,255,.07);border-radius:14px;padding:10px 12px}.apr-marcador small{color:#9fc0d8;font-size:12px}
.apr-m-pts b{display:block;font-size:34px;color:var(--neon);font-variant-numeric:tabular-nums;text-shadow:0 0 16px rgba(0,184,238,.6)}
.apr-m-eur b{display:block;font-size:34px;color:var(--oro);font-variant-numeric:tabular-nums;text-shadow:0 0 16px rgba(242,178,62,.5)}.apr-m-eur.cero b{color:#8aa0b2;text-shadow:none}
.apr-estado{margin:10px 0;border-radius:12px;padding:8px 12px;font-weight:800;font-size:13.5px}.apr-estado.ok{background:rgba(31,157,85,.25);color:#8ff0b3}.apr-estado.med{background:rgba(242,178,62,.2);color:#ffd88a}.apr-estado.ko{background:rgba(224,69,123,.2);color:#ffb4c8}
.apr-barra{display:flex;height:14px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.1)}.apr-barra i{display:block;height:100%;transition:width .4s}
.apr-leyenda{display:flex;flex-wrap:wrap;gap:6px 12px;margin:8px 0;font-size:12px;color:#c7dcea}.apr-leyenda i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:4px}.apr-leyenda b{color:#fff}
.apr-escalera{display:flex;align-items:flex-end;gap:6px;height:110px;margin:10px 0}.apr-esc{flex:1;height:var(--h);border-radius:10px 10px 4px 4px;background:rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:6px 2px;transition:background .3s}
.apr-esc b{font-size:13px}.apr-esc small{font-size:10px;color:#9fc0d8}.apr-esc.on{background:rgba(0,184,238,.28)}.apr-esc.yo{background:linear-gradient(0deg,#1A8CC4,#00B8EE);box-shadow:0 0 16px rgba(0,184,238,.6)}.apr-esc.yo small{color:#fff}
.apr-cuentas{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.apr-cuentas div{background:rgba(255,255,255,.07);border-radius:10px;padding:6px;text-align:center}.apr-cuentas span{display:block;font-size:11px;color:#9fc0d8}.apr-cuentas b{font-size:15px}
.apr-sim-res .apr-nota{color:#9fc0d8}
.apr-consejo{margin-top:10px;background:rgba(242,178,62,.12);border:1px solid rgba(242,178,62,.35);border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5;color:#ffe7b8}.apr-consejo b{color:#fff}
/* nivel 6 */
.apr-var{background:#fff;border:1px solid #e1e9f0;border-radius:18px;padding:14px}
.apr-llave{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.apr-ll{background:#F0F6FA;border-radius:16px;padding:10px 16px;display:flex;flex-direction:column;align-items:center;min-width:110px}.apr-ll span{font-size:26px}.apr-ll b{font-size:17px;color:#0D1B2A}.apr-ll small{color:#6a8195}.apr-ll.gold{background:linear-gradient(135deg,#FFE7A8,#F2B23E)}.apr-mas{font-size:26px;font-weight:900;color:#0F6A9C}
.apr-h{margin:16px 0 8px;font-size:14px;color:#0D1B2A}
.apr-graf{display:flex;align-items:flex-end;gap:10px;height:180px;padding:8px 4px;border-bottom:2px solid #d4e1ec}
.apr-col{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px}
.apr-col i{display:block;width:100%;max-width:70px;height:var(--h);border-radius:10px 10px 0 0;background:linear-gradient(0deg,#0F6A9C,#00B8EE);transform-origin:bottom;animation:aprCrece .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--d)}
@keyframes aprCrece{from{transform:scaleY(0)}to{transform:none}}
.apr-col b{font-size:15px;color:#0F6A9C;order:-1}.apr-col small{font-size:11.5px;color:#6a8195}
.apr-sem{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.apr-sem div{border-radius:14px;padding:10px;text-align:center}.apr-sem b{display:block;font-size:20px}.apr-sem small{color:#4a6275}.apr-sem .r{background:#fdecec}.apr-sem .a{background:#FFF6E4}.apr-sem .v{background:#E8F5EE}
.apr-podio{display:flex;align-items:flex-end;justify-content:center;gap:8px;height:150px}.apr-podio div{width:90px;border-radius:12px 12px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:8px;color:#fff;font-weight:900}
.apr-podio span{font-size:26px}.apr-podio .p1{height:100%;background:linear-gradient(180deg,#F2B23E,#d9942a)}.apr-podio .p2{height:75%;background:linear-gradient(180deg,#9fb3c4,#7a8fa1)}.apr-podio .p3{height:58%;background:linear-gradient(180deg,#d69a6a,#b8794a)}
.apr-tope{display:flex;align-items:center;gap:12px;background:#F0F6FA;border-radius:14px;padding:12px}.apr-tope b{font-size:30px;color:#0F6A9C}.apr-tope span{font-size:13.5px;color:#35506a}
.apr-suma{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.apr-suma>div{background:#F0F6FA;border-radius:14px;padding:8px 12px;text-align:center;min-width:90px}.apr-suma small{display:block;font-size:11px;color:#6a8195}.apr-suma b{font-size:18px;color:#0D1B2A}.apr-suma span{display:block;font-size:11px;color:#6a8195}.apr-suma em{font-style:normal;font-weight:900;color:#0F6A9C;font-size:20px}
.apr-suma .t{background:linear-gradient(135deg,#FFE7A8,#F2B23E)}
/* nivel 7 */
.apr-reto{background:var(--navy);border-radius:20px;padding:18px;color:#fff;min-height:260px}
.apr-q-top{display:flex;justify-content:space-between;font-size:13px;color:#9fc0d8}.apr-q-bar{height:6px;border-radius:999px;background:rgba(255,255,255,.12);margin:8px 0 14px;overflow:hidden}.apr-q-bar i{display:block;height:100%;background:var(--neon);transition:width .4s}
.apr-q h3{margin:0 0 12px;color:#fff;font-size:19px}.apr-q-ops{display:grid;gap:8px}
.apr-q-ops button{border:2px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:14px;padding:12px 14px;min-height:50px;font:inherit;font-size:15px;font-weight:700;text-align:left;cursor:pointer;transition:transform .12s,border-color .12s}
.apr-q-ops button:hover{transform:translateX(4px);border-color:var(--neon)}.apr-q-ops.hecho button{cursor:default;transform:none}
.apr-q-ops button.bien{border-color:#1f9d55;background:rgba(31,157,85,.3)}.apr-q-ops button.mal{border-color:#e0457b;background:rgba(224,69,123,.25);animation:aprTiembla .35s}.apr-q-ops button.no{opacity:.45}
@keyframes aprTiembla{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.apr-q-exp{margin-top:12px;font-size:14px;color:#e8f1f8;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.apr-fin{text-align:center;padding:10px}.apr-fin-i{font-size:64px;animation:aprPop .6s both}.apr-fin h3{font-size:32px;color:var(--neon);margin:4px 0}.apr-fin.ok h3{color:var(--oro)}
.apr-confeti{position:fixed;inset:0;pointer-events:none;z-index:9500;overflow:hidden}.apr-confeti i{position:absolute;top:-12px;width:9px;height:14px;border-radius:2px;animation:aprCae 2.6s cubic-bezier(.25,.6,.4,1) forwards}
@keyframes aprCae{to{top:105%;transform:rotate(720deg)}}
@media (max-width:820px){.apr-sim{grid-template-columns:1fr}.apr-sim-res{position:static;order:-1}.apr-sim-ctl{order:1}}
@media (max-width:620px){.apr-hero{grid-template-columns:1fr;padding:16px}.apr-hero h2{font-size:24px}.apr-camino-alt,.apr-sino{grid-template-columns:1fr}.apr-parada{width:100px;min-height:104px}.apr-cartas{grid-template-columns:repeat(2,1fr)}.apr-carta{height:140px}.apr-cuentas{grid-template-columns:repeat(2,1fr)}.apr-pie .btn{flex:1 1 100%}.apr-sc{grid-template-columns:1fr}.apr-graf{height:150px;gap:6px}.apr-col b{font-size:13px}}

@media (max-width:620px){.apr-hero.mini{padding:10px 14px;gap:8px}.apr-hero.mini p,.apr-hero.mini .apr-kick{display:none}.apr-hero.mini h2{font-size:18px;margin:0}.apr-hero.mini .apr-mimes{margin-top:6px}.apr-hero.mini .apr-xp{min-width:0;flex-direction:row;align-items:center;padding:6px 10px}.apr-hero.mini .apr-xp-n b{font-size:18px}.apr-hero.mini .apr-xp>small{display:none}.apr-hero.mini .apr-xp-bar{flex:1}}

.apr-sg-enl{border-color:#bfe9cf;background:linear-gradient(180deg,#F1FBF5,#fff)}.apr-sg-enl h5{color:#128C4A}.apr-sg-ayuda{font-size:12.5px;color:#35506a;margin:2px 0 6px;line-height:1.4}

.apr-sc{align-items:start;padding:6px 0;border-bottom:1px dashed #e6eef4}.apr-sc:last-of-type{border-bottom:0}
.apr-sc>span{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-weight:700;color:#0D1B2A}
.apr-cuenta{flex-basis:100%;font-weight:400;font-size:11.8px;color:#6a8195;line-height:1.35}
.apr-aporta{font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px}.apr-aporta:empty{display:none}.apr-aporta.mas{background:#E4F1F9;color:#0F6A9C}.apr-aporta.menos{background:#fdecec;color:#b42323}
.apr-sc>div{padding-top:4px}

/* ===== Mi trabajo rehecho (23/09/2026): pestañas, «Toca hacer hoy» por grupos y «Registrar acción» destacada ===== */
.mio-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px}.mio-head h2{margin:0}.mio-sub{margin:2px 0 0;color:#6a8195;font-size:13.5px}
.mio-tabs{display:flex;gap:6px;overflow-x:auto;background:#E7EEF4;border-radius:16px;padding:5px;margin-bottom:14px;position:sticky;top:0;z-index:5;scrollbar-width:none}
.mio-tabs::-webkit-scrollbar{display:none}
.mio-tabs a{flex:1 0 auto;display:flex;align-items:center;gap:8px;text-decoration:none;border-radius:12px;padding:8px 12px;min-height:50px;color:#4a6275;position:relative;transition:background .15s,box-shadow .15s}
.mio-tabs a:hover{background:rgba(255,255,255,.6)}
.mt-i{font-size:19px}.mt-t{display:flex;flex-direction:column;font-weight:800;font-size:13.5px;line-height:1.15;white-space:nowrap}.mt-t small{font-weight:600;font-size:11px;color:#7a8fa1}
.mio-tabs a.activo{background:#fff;color:#0F6A9C;box-shadow:0 1px 6px rgba(13,27,42,.12)}
.mio-tabs a.mt-cta{background:linear-gradient(135deg,#1f9d55,#23b863);color:#fff}.mio-tabs a.mt-cta small{color:#d9f7e5}.mio-tabs a.mt-cta.activo{box-shadow:0 0 0 3px #bfe9cf,0 4px 12px rgba(31,157,85,.35)}
.mio-tabs .mio-nav-n{position:absolute;top:4px;right:4px}
#vMio .mio-sec{animation:aprEntra .3s ease-out both}
/* Toca hacer hoy */
.th-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.th-cab b{font-size:16px}.th-cab small{display:block;color:#6a8195;font-size:12.5px;margin-top:2px}
.th-filtros{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:8px}
.th-filtros button{flex:0 0 auto;border:1.5px solid #d4e1ec;background:#fff;border-radius:999px;padding:6px 12px;min-height:38px;font:inherit;font-size:13px;font-weight:700;color:#35506a;cursor:pointer}
.th-filtros button em{font-style:normal;font-size:11.5px;opacity:.7;margin-left:3px}.th-filtros button.on{background:#0D1B2A;border-color:#0D1B2A;color:#fff}
.th-grupo{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6a8195;margin:10px 0 4px;display:flex;align-items:center;gap:6px}.th-grupo span{background:#F0F3F6;border-radius:999px;padding:1px 8px;font-size:11px}
.th-grupo.th-1{color:#b42323}.th-grupo.th-2{color:#8a5a00}
.th-item{animation:aprEntra .3s both;animation-delay:var(--d)}
.th-mas{display:block;width:100%;margin-top:8px;min-height:46px}
.th-vacio{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px}.th-vacio-i{font-size:34px}.th-vacio span{color:#4a6275;font-size:14px}.th-vacio-b{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}
/* Registrar acción */
.acc-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px;background:radial-gradient(120% 140% at 0% 0%,#1f9d55 0%,#156e3c 60%,#0f4f2c 100%);color:#fff;border-radius:20px;padding:20px;box-shadow:0 10px 26px rgba(21,110,60,.3);margin-bottom:12px;position:relative;overflow:hidden}
.acc-hero::after{content:"🚶";position:absolute;right:-10px;bottom:-30px;font-size:150px;opacity:.08}
.acc-hero-k{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#bff3d3}.acc-hero h3{margin:2px 0 6px;font-size:24px;color:#fff}.acc-hero p{margin:0 0 10px;color:#e0f7ea;font-size:14px;line-height:1.45}
.acc-hero-pts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.acc-hero-pts span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:4px 10px;font-size:12.5px}.acc-hero-pts b{color:#fff3c4}.acc-hero-pts .gris{opacity:.75}
.acc-hero-cta{background:#fff;color:#156e3c;font-weight:900;font-size:16px;min-height:54px;padding:0 22px;border-radius:14px;border:0;box-shadow:0 6px 16px rgba(0,0,0,.18);cursor:pointer;animation:aprPulso 2.4s infinite}
.acc-hero-cta:hover{transform:translateY(-1px)}
.acc-hero-lim{display:block;margin-top:8px;color:#ffe7a8;font-size:12.5px}
.acc-hero-m{display:flex;flex-direction:column;gap:8px;justify-content:center;position:relative;z-index:1}.acc-hero-m div{background:rgba(255,255,255,.12);border-radius:14px;padding:10px 12px}.acc-hero-m b{display:block;font-size:26px;line-height:1}.acc-hero-m small{color:#d8f5e3;font-size:12px}
.acc-online{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #d4e1ec;border-radius:16px;padding:12px 14px;margin-bottom:12px}.acc-online>span{font-size:26px}.acc-online div{flex:1}.acc-online div>b{display:block;color:#0D1B2A}.acc-online small{color:#4a6275;font-size:13px}
@media (max-width:760px){.mt-t small{display:none}.mio-tabs a{min-height:44px;padding:6px 10px}.acc-hero{grid-template-columns:1fr;padding:16px}.acc-hero h3{font-size:21px}.acc-hero-m{flex-direction:row}.acc-hero-m div{flex:1;padding:8px}.acc-hero-m b{font-size:20px}.acc-hero-cta{width:100%}.acc-online{flex-wrap:wrap}.acc-online .btn{width:100%}}

@media (max-width:760px){.th-ref span{display:none}.th-ref{min-width:44px}.acc-online small{display:block}}

/* enlaces: buscador, páginas y quitar */
.enl-cab2{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.enl-cab2 input{min-height:40px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 12px;font:inherit;flex:1 1 220px;max-width:320px}
.enl-mas{display:block;width:100%;margin-top:8px;min-height:44px}
.enl-item-acc{display:flex;gap:6px;align-items:center}.enl-quitar,.th-quitar{color:#b42323}
@media (max-width:760px){.enl-item{flex-wrap:wrap}.enl-item-acc{width:100%}.enl-item-acc .btn-primario{flex:1}}

.vp-desg{display:block;font-size:11.5px;color:#0F6A9C;font-weight:700;margin-top:2px}

/* ===== Registrar acción (ventana rehecha 24/09/2026) ===== */
.modal-caja.ra-modal{max-width:880px;padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:min(94dvh,960px)}
.ra{display:flex;flex-direction:column;min-height:0;flex:1}
.ra-cab{display:flex;gap:12px;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#1f9d55,#23b863);color:#fff}
.ra-cab-i{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:24px;flex:0 0 46px}
.ra-cab>div{flex:1;min-width:0}.ra-cab h3{margin:0;color:#fff;font-size:19px}.ra-cab small{color:#d9f7e5;font-size:13px}
.ra-cuerpo{flex:1;min-height:0;overflow-y:auto;padding:6px 20px 12px;overscroll-behavior:contain}
.ra-sec{padding:12px 0;border-bottom:1px solid #eef3f7}.ra-sec:last-child{border-bottom:0}
.ra-sec h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:15px;color:#0D1B2A}.ra-sec h4>span{width:24px;height:24px;border-radius:50%;background:#1f9d55;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px}
.ra-n{font-style:normal;background:#E8F5EE;color:#17693a;border-radius:999px;padding:1px 9px;font-size:12.5px}
.ra-tipos{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.ra-tipo{display:flex;align-items:center;gap:8px;text-align:left;border:1.5px solid #d4e1ec;background:#fff;border-radius:12px;padding:10px 12px;min-height:52px;font:inherit;font-size:13.5px;font-weight:700;color:#0D1B2A;cursor:pointer;transition:border-color .12s,background .12s}
.ra-tipo span{font-size:20px}.ra-tipo:hover{border-color:#1f9d55}.ra-tipo.on{border-color:#1f9d55;background:#E8F5EE;box-shadow:0 0 0 3px rgba(31,157,85,.15)}
.ra-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ra-f{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:700;color:#35506a}.ra-f b{color:#b42323}.ra-f2{grid-column:span 2}
.ra-f input,.ra-f select,#accNotas,.ra-add input,.ra-pegar textarea{width:100%;box-sizing:border-box;min-height:46px;border:1.5px solid #d4e1ec;border-radius:12px;padding:10px 12px;font:inherit;font-size:15px;font-weight:400;color:#0D1B2A;background:#fff}
.ra-f input:focus,#accNotas:focus,.ra-add input:focus{outline:none;border-color:#1f9d55;box-shadow:0 0 0 3px rgba(31,157,85,.15)}
.ra-add{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:8px;background:#F4FBF7;border:1.5px dashed #bfe6cf;border-radius:14px;padding:10px}
.ra-add .btn{min-height:46px}
.ra-pegar{margin:8px 0;font-size:13px}.ra-pegar summary{cursor:pointer;color:#0F6A9C;font-weight:700;min-height:30px}.ra-pegar textarea{min-height:90px;margin:6px 0}
.ra-leads{margin-top:8px}.ra-lead-cab,.ra-lead{display:grid;grid-template-columns:28px minmax(0,2fr) minmax(0,1fr) 40px;gap:8px;align-items:center}
.ra-lead{background:#fff;border:1px solid #e1e9f0;border-radius:14px;padding:10px;margin-bottom:8px}.ra-lead-cur{grid-column:2 / 4;display:flex;flex-direction:column;gap:4px}.ra-lead-cur-t{font-size:11.5px;font-weight:800;color:#6a8195;text-transform:uppercase;letter-spacing:.04em}.ra-lead .bc-input{min-height:40px}.ra-ayuda{font-size:12.5px;color:#4a6275;margin:0 0 8px}
.ra-lead-cab{font-size:11px;font-weight:800;color:#8aa0b2;text-transform:uppercase;letter-spacing:.04em;padding:0 2px 4px}
.ra-lead{padding:10px}.ra-lead input{min-height:42px;border:1.5px solid #e1e9f0;border-radius:10px;padding:8px 10px;font:inherit;font-size:14.5px;width:100%;box-sizing:border-box}
.ra-lead input.mal{border-color:#e0457b;background:#fff5f7}.ra-lead-n{font-weight:800;color:#6a8195;text-align:center}
.ra-lead>button{width:40px;height:40px;border-radius:10px;border:0;background:#fdecec;color:#b42323;font-weight:900;cursor:pointer}
.ra-lead-vacio{font-size:13px;color:#6a8195;background:#F6F9FB;border-radius:12px;padding:12px}
.ra-pie{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid #e1e9f0;background:#fff}
.ra-pie>div{display:flex;gap:8px}.ra-pie .btn{min-height:48px}.ra-res{font-size:13.5px;color:#17693a}
@media (max-width:760px){.modal-caja.ra-modal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.ra-cab{padding:12px 14px}.ra-cuerpo{padding:4px 14px 10px}.ra-g{grid-template-columns:1fr 1fr}.ra-f2{grid-column:1 / -1}.ra-tipos{grid-template-columns:1fr 1fr}.ra-add{grid-template-columns:1fr 1fr}.ra-add input:first-child{grid-column:1 / -1}.ra-lead-cab{display:none}.ra-lead{grid-template-columns:22px minmax(0,1fr) 40px;grid-template-rows:auto auto;row-gap:4px}.ra-lead-n{grid-row:1 / 3}.ra-lead input[data-lnom]{grid-column:2}.ra-lead input[data-ltel]{grid-column:2}.ra-lead>button{grid-column:3;grid-row:1 / 3}.ra-lead-cur{grid-column:1 / -1}.ra-lead{grid-template-rows:auto auto auto}.ra-lead-n{grid-row:1 / 3}.ra-pie{padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))}.ra-pie>div{width:100%}.ra-pie .btn{flex:1}.ra-res{width:100%}}
.apr-sg-ins{border-color:#b9e3e6;background:linear-gradient(180deg,#F0FAFB,#fff)}.apr-sg-ins h5{color:#0e7c86}
.apr-enc.on{background:#E4F1F9;border-color:#0F6A9C;color:#0F6A9C}

/* 🔔 Novedades sin leer */
.nov-pend{background:#fff;border:2px solid #F2B23E;border-radius:16px;padding:14px;margin-bottom:14px;box-shadow:0 6px 18px rgba(242,178,62,.18)}
.nov-pend-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:8px}.nov-pend-cab b{font-size:16px}.nov-pend-cab small{display:block;color:#6a8195;font-size:12.5px}
.nov-pend-it{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;border-top:1px solid #f1e6cc;padding:10px 0;animation:aprEntra .3s both;transition:opacity .25s,transform .25s}
.nov-pend-it.leida{opacity:0;transform:translateX(30px)}
.nov-pend-it b{display:block;font-size:14.5px;color:#0D1B2A;margin:2px 0}.nov-pend-it p{margin:2px 0;font-size:13.5px;color:#35506a;line-height:1.45}
.nov-pend-f{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8a5a00;background:#FFF6E4;border-radius:999px;padding:2px 8px}
.nov-pend-it .btn{flex:0 0 auto;min-height:40px}
.nov-todo{background:#E8F5EE;color:#17693a;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:700}
@media (max-width:620px){.nov-pend-it{flex-direction:column}.nov-pend-it .btn{width:100%}}

/* 🎓 Diplomas de EstudiaEnADF */
.dp-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid #e1e9f0;border-radius:16px;padding:14px;margin:10px 0}.dp-cab b{font-size:16px}.dp-cab small{display:block;color:#4a6275;font-size:13px;margin-top:3px;max-width:720px}
.dp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.dp-kpis div{background:#fff;border:1px solid #e1e9f0;border-radius:12px;padding:10px}.dp-kpis b{display:block;font-size:22px}.dp-kpis small{color:#6a8195;font-size:12px}.dp-kpis .malo b{color:#b7791f}.dp-kpis .bueno b{color:#17693a}
.dp-h{margin:14px 0 8px;font-size:14px}.dp-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.dp-card{background:#fff;border:1px solid #e1e9f0;border-left:4px solid #1f9d55;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:6px}
.dp-t{display:flex;justify-content:space-between;align-items:center;gap:8px}.dp-t b{font-size:15px}.dp-nota{font-size:22px;font-weight:900;color:#0F6A9C}.dp-nota small{font-size:12px;color:#6a8195}
.dp-cur{font-size:13.5px;color:#0D1B2A;font-weight:700}.dp-m{font-size:12.5px;color:#6a8195}
.dp-mail{display:flex;flex-direction:column;gap:3px;font-size:11.5px;font-weight:700;color:#6a8195}.dp-mail input{min-height:40px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 10px;font:inherit;font-size:14px}
.dp-acc{display:flex;gap:6px;flex-wrap:wrap}.dp-acc .btn{min-height:40px}.dp-desc{color:#6a8195}
.dp-viejos{margin-top:12px;background:#fff;border:1px dashed #cfdde8;border-radius:14px;padding:10px 12px}.dp-viejos summary{cursor:pointer;font-weight:700;color:#4a6275}.dp-viejos .dp-lista{margin-top:10px}
.dp-env{display:flex;flex-direction:column;gap:6px;margin-top:8px;font-size:13px}
@media (max-width:620px){.dp-kpis{grid-template-columns:1fr 1fr}.dp-acc .btn{flex:1}}

/* 🧾 recibos de beca */
.bca-botones{display:flex;gap:8px;flex-wrap:wrap}.bca-todos{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#4a6275;margin:8px 2px}
.bca-it{display:flex;align-items:flex-start;gap:10px}.bca-chk{flex:0 0 auto;padding-top:4px}.bca-chk input,.bca-todos input{width:20px;height:20px;accent-color:#0F6A9C}
.rbc-g{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.rbc-f{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:700;color:#35506a}.rbc-f input,.rbc-f select{min-height:44px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 10px;font:inherit}
.rbc-l{display:flex;flex-direction:column;gap:6px;max-height:48vh;overflow-y:auto}.rbc-it{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#F6F9FB;border-radius:12px;padding:8px 10px}.rbc-it small{display:block;color:#6a8195;font-size:12px}.rbc-ya{color:#8a5a00;font-weight:700}
.rbc-imp{display:flex;align-items:center;gap:4px;font-weight:800}.rbc-imp input{width:90px;min-height:40px;border:1.5px solid #d4e1ec;border-radius:10px;padding:0 8px;font:inherit;font-weight:800;text-align:right}
@media (max-width:620px){.rbc-g{grid-template-columns:1fr}}

/* alumno que ya existe: cargar su ficha en «Nuevo alumno» */
.na-exist{display:block;background:#FFF6E4;border:1px solid #f2d59a;border-radius:12px;padding:10px 12px;margin-top:6px;color:#5c3d00;font-size:13px}.na-exist.ok{background:#E8F5EE;border-color:#bfe6cf;color:#17693a}
.na-exist>b{display:block;margin-bottom:6px}.na-exist small{display:block;margin-top:6px;color:inherit;opacity:.85}
.na-exist-it{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border-radius:10px;padding:8px 10px;margin:4px 0}.na-exist-it>span:last-child{display:flex;gap:6px;flex-wrap:wrap}
.na-exist.na-exist-dni{background:#FDECEC;border-color:#f3b9b9;color:#8a1c1c}.na-exist-otra{margin-top:8px;width:100%;min-height:42px}
.na-cambia input,.na-cambia select,.na-cambia textarea{background:#FFF8DB;border-color:#F2B23E!important}

/* 📅 agenda de las orientadoras en «Pedir cita» */
.ct-agenda{background:#F6F9FB;border:1px solid #e1e9f0;border-radius:14px;padding:10px 12px}.ct-ag-cab{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.ct-ag-cab small{color:#4a6275;font-size:12.5px}
.ct-ag-rej{display:grid;grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px;margin-top:8px}
.ct-slot{min-height:38px;border-radius:10px;border:1.5px solid #cfe7d8;background:#fff;color:#17693a;font:inherit;font-weight:800;font-size:13px;cursor:pointer}
.ct-slot.ocup{background:#fdecec;border-color:#f3c4c4;color:#b42323;text-decoration:line-through;opacity:.8}.ct-slot.sel{outline:3px solid #0F6A9C;outline-offset:1px}.ct-slot.libre:hover{background:#E8F5EE}
.ct-ag-items{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ct-ag-items span{font-size:12px;background:#fff;border:1px solid #f3c4c4;color:#8a2a2a;border-radius:999px;padding:3px 9px}

.ct-ag-aus{margin-top:8px;background:#FFF1E6;border:1px solid #f5c9a3;color:#8a4a12;border-radius:10px;padding:8px 10px;font-weight:700;font-size:13px}

.ct-ag-info{margin-top:8px;background:#E4F1F9;border:1px solid #bcdcef;color:#0F4F75;border-radius:10px;padding:8px 10px;font-size:12.5px}

/* 🧩 beca por módulo */
.bm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.bm-kpis div{background:#F6F9FB;border-radius:12px;padding:10px}.bm-kpis b{display:block;font-size:18px}.bm-kpis small{color:#6a8195;font-size:11.5px}.bm-kpis .ok b{color:#17693a}.bm-kpis .pagar b{color:#b7791f}
.bm-lista{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow-y:auto}
.bm-it{display:flex;align-items:center;gap:10px;border:1px solid #e1e9f0;border-left:4px solid #cfd8e0;border-radius:12px;padding:8px 10px;background:#fff}
.bm-it>div{flex:1;min-width:0}.bm-it b{font-size:13.5px;display:block}.bm-it small{display:block;color:#6a8195;font-size:12px}.bm-t{font-weight:700;color:#35506a!important}
.bm-ico{font-size:20px}.bm-imp{font-weight:900;white-space:nowrap}
.bm-it.ok{border-left-color:#1f9d55}.bm-it.pagar{border-left-color:#F2B23E;background:#FFFBF0}.bm-it.curso{border-left-color:#1A8CC4}.bm-it.no{opacity:.6}
@media (max-width:620px){.bm-kpis{grid-template-columns:1fr 1fr}}

/* 24/09: filas con acciones (Mi trabajo → Resultados, cartera…) en el móvil: los botones nunca se aplastan; si no caben, bajan de línea */
.cart-acc { flex-wrap: wrap; align-items: center; }
.cart-acc .btn, .cart-acc a.btn { flex: 0 0 auto; white-space: nowrap; width: auto; min-width: 0; }
.cart-acc .btn-tel { width: 42px; height: 42px; min-width: 42px; min-height: 42px; padding: 0; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; }
.cart-acc .tel-copia { flex: 0 0 auto; white-space: nowrap; margin-left: 0; min-height: 40px; }
@media (max-width: 760px) {
  .cart-row { align-items: flex-start; }
  .cart-row .cart-acc { width: 100%; justify-content: flex-start; padding-left: 30px; gap: 8px; }
  .cart-acc .btn, .cart-acc a.btn { min-height: 42px; padding: 0 14px; font-size: 14px; }
  .cart-acc .btn-borrar { margin-left: auto; }
  .cart-main small.cart-apunte { white-space: normal; }
}

/* 🎯 aviso al compartir sin curso */
.sc-aviso{margin:12px 0;background:#FFF6E4;border:1.5px solid #F2B23E;border-radius:16px;padding:14px;animation:aprEntra .25s both}
.sc-cab{display:flex;gap:10px;align-items:flex-start}.sc-cab>span{font-size:24px}.sc-cab b{display:block;font-size:15.5px;color:#5c3d00}.sc-cab small{display:block;color:#6b4a0a;font-size:13px;line-height:1.45;margin-top:2px}
.sc-sub{margin:12px 0 6px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a5a00}
.sc-cursos{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.sc-curso{text-align:left;background:#fff;border:1.5px solid #f2d59a;border-radius:12px;padding:10px 12px;min-height:54px;font:inherit;cursor:pointer;transition:border-color .12s,box-shadow .12s}.sc-curso:hover{border-color:#F2B23E;box-shadow:0 4px 12px rgba(242,178,62,.25)}
.sc-curso b{display:block;font-size:13.5px;color:#0D1B2A}.sc-curso small{color:#6a8195;font-size:12px}
.sc-acc{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}.sc-acc .btn{min-height:44px}.sc-igual{color:#8a5a00;font-size:13px;margin-left:auto}
.cp-vera{display:block;margin:4px 0 8px;color:#17693a;font-size:13px}
.enl-gen{border-left-color:#F2B23E!important;background:#FFFBF0}.enl-gen-aviso{display:block;color:#8a5a00!important;font-weight:700;margin:2px 0}
@media (max-width:620px){.sc-acc .btn{flex:1}.sc-igual{margin:4px auto 0;width:100%;text-align:center}}

/* ===== ⭐ Reseñas de Google (24/09/2026) ===== */
.rs-cab { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap }
.rs-sub { margin: 4px 0 0; color: var(--tinta-suave); font-size: 13.5px; max-width: 720px }
.rs-sedes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 14px 0 }
@media (max-width: 1100px) { .rs-sedes { grid-template-columns: repeat(2, minmax(0, 1fr)) } }
@media (max-width: 560px) { .rs-sedes { grid-template-columns: 1fr } }
.rs-sede { text-align: left; font: inherit; color: var(--tinta); background: var(--papel); border: 1.5px solid var(--linea); border-radius: 16px; padding: 14px; box-shadow: var(--sombra); cursor: pointer; display: flex; flex-direction: column; gap: 10px; transition: border-color .2s, transform .2s }
.rs-sede:hover { transform: translateY(-1px) } .rs-sede.activa { border-color: var(--oceano); box-shadow: 0 0 0 3px rgba(15, 106, 156, .15) }
.rs-sede-top { display: flex; gap: 12px; align-items: center } .rs-sede-top b { display: block; font-size: 14.5px } .rs-sede-top small { display: block; color: var(--tinta-suave); font-size: 12px; margin-top: 2px }
.rs-nota { font-size: 34px; font-weight: 800; color: var(--oceano-osc); line-height: 1 }
.rs-stars { display: inline-flex; gap: 1px; font-size: 15px; line-height: 1 } .rs-st { color: #D5DEE6 } .rs-st.on { color: var(--guagua) }
.rs-dist { display: flex; flex-direction: column; gap: 3px } .rs-dist div { display: grid; grid-template-columns: 26px 1fr 22px; align-items: center; gap: 6px; font-size: 11.5px; color: var(--tinta-suave) }
.rs-dist i { height: 6px; background: var(--arena); border-radius: 99px; overflow: hidden; display: block } .rs-dist em { display: block; height: 100%; background: var(--guagua); border-radius: 99px }
.rs-sede-pie { display: flex; justify-content: space-between; align-items: center; gap: 8px } .rs-sede-pie small { color: var(--tinta-suave); font-size: 12px }
.chip-est { font-size: 11.5px; font-weight: 800; border-radius: 999px; padding: 4px 10px; white-space: nowrap } .chip-est.pend { background: var(--gestion-fondo); color: var(--guagua-tinta) } .chip-est.ok { background: var(--alta-fondo); color: var(--alta) }
.rs-filtros { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; justify-content: space-between; margin: 4px 0 12px }
.rs-chips { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none } .rs-chips .chip { flex: 0 0 auto; min-height: 40px }
.rs-filtros select { min-height: 44px; border-radius: 12px; border: 1.5px solid var(--linea); padding: 0 12px; font: inherit; background: var(--papel) }
@media (max-width: 560px) { .rs-filtros select { width: 100% } }
.rs-analisis { margin-bottom: 14px } .rs-an-cab { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap } .rs-an-cab small { display: block; color: var(--tinta-suave); font-size: 12.5px; margin-top: 2px }
.rs-an-txt { margin-top: 10px; font-size: 14px; line-height: 1.55 } .rs-an-txt ul { margin: 4px 0 8px; padding-left: 20px }
.rs-lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px } @media (max-width: 900px) { .rs-lista { grid-template-columns: 1fr } }
.rs-item { background: var(--papel); border: 1px solid var(--linea); border-left: 4px solid var(--linea); border-radius: 14px; padding: 14px; box-shadow: var(--sombra); display: flex; flex-direction: column; gap: 8px; opacity: 0; transform: translateY(6px); animation: rsEnt .35s ease forwards }
@keyframes rsEnt { to { opacity: 1; transform: none } }
.rs-item.nueva { border-left-color: var(--oceano) } .rs-item.mala { border-left-color: var(--baja) }
.rs-item-cab { display: flex; align-items: center; gap: 10px } .rs-quien { flex: 1; min-width: 0 } .rs-quien b { display: block; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap } .rs-quien small { color: var(--tinta-suave); font-size: 12px }
.rs-av { width: 38px; height: 38px; border-radius: 50%; object-fit: cover; flex: 0 0 38px; background: var(--arena); color: var(--oceano); font-weight: 800; display: flex; align-items: center; justify-content: center }
.rs-nueva { font-size: 11px; font-weight: 800; color: #fff; background: var(--oceano); border-radius: 999px; padding: 2px 8px; vertical-align: middle }
.rs-texto { margin: 0; font-size: 14px; line-height: 1.5; white-space: pre-line }
.rs-resp { background: var(--arena); border-radius: 10px; padding: 10px 12px } .rs-resp small { color: var(--tinta-suave); font-size: 11.5px; font-weight: 700 } .rs-resp p { margin: 4px 0 0; font-size: 13.5px; white-space: pre-line }
.rs-acc { display: flex; gap: 8px; flex-wrap: wrap; margin-top: auto } .rs-acc .btn { min-height: 42px; text-decoration: none; display: inline-flex; align-items: center }
.btn-tenue { background: transparent; border: 0; color: var(--tinta-suave); font-weight: 700 }
@media (max-width: 560px) { .rs-acc .btn { flex: 1 1 auto; justify-content: center } }
.rs-pag { display: flex; justify-content: center; align-items: center; gap: 12px; margin: 16px 0 30px; color: var(--tinta-suave); font-size: 13.5px; flex-wrap: wrap } .rs-pag .btn { min-height: 44px }
.rs-vacio { grid-column: 1 / -1; text-align: center; padding: 34px 16px; background: var(--papel); border-radius: 16px; border: 1px dashed var(--linea) } .rs-vacio span { font-size: 34px; display: block } .rs-vacio small { display: block; color: var(--tinta-suave); margin-top: 4px }
.rs-sk, .rs-sk-l { border-radius: 16px; background: linear-gradient(90deg, #eef3f7 25%, #f7fafc 50%, #eef3f7 75%); background-size: 200% 100%; animation: rsSk 1.2s infinite } .rs-sk { height: 150px } .rs-sk-l { height: 120px; margin-bottom: 10px }
@keyframes rsSk { to { background-position: -200% 0 } }
.rs-modal h3 { margin: 0 0 10px; font-size: 18px; padding-right: 40px } .rs-modal label { display: block; font-weight: 800; font-size: 13.5px; margin: 12px 0 6px }
.rs-modal-rev { background: var(--arena); border-radius: 12px; padding: 12px } .rs-modal-rev small { margin-left: 6px; color: var(--tinta-suave); font-size: 12px } .rs-modal-rev p { margin: 6px 0 0; font-size: 14px; max-height: 160px; overflow: auto; white-space: pre-line }
.rs-modal textarea { width: 100%; border: 1.5px solid var(--linea); border-radius: 12px; padding: 12px; font: inherit; font-size: 15px; resize: vertical; min-height: 130px }
.rs-cuenta { text-align: right; font-size: 11.5px; color: var(--tinta-suave) }
.rs-ia { display: flex; gap: 8px; margin-top: 6px; flex-wrap: wrap } .rs-ia input { flex: 1 1 220px; min-height: 44px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 0 12px; font: inherit } .rs-ia .btn { min-height: 44px }
.rs-modal-pie { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-top: 14px } .rs-modal-pie .btn { min-height: 46px }
.rs-solo, .rs-como { display: block; color: var(--tinta-suave); font-size: 12.5px; margin-top: 8px }
@media (max-width: 560px) { .rs-modal-pie .btn { flex: 1 1 100% } }

/* ===== 👫 Embajadores (24/09/2026) ===== */
.em-tabs { margin: 12px 0 14px } .em-cuerpo .tarjeta { margin-bottom: 14px }
.em-barra { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 12px } .em-barra label { font-weight: 700; font-size: 13.5px; display: flex; gap: 8px; align-items: center }
.em-barra input[type=month], .em-cab select { min-height: 42px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 0 10px; font: inherit; background: var(--papel) }
.em-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px } @media (max-width: 620px) { .em-kpis { grid-template-columns: 1fr } }
.em-kpi { background: linear-gradient(135deg, var(--oceano-osc), var(--oceano)); color: #fff; border-radius: 16px; padding: 16px } .em-kpi b { display: block; font-size: 34px; line-height: 1 } .em-kpi span { font-size: 13px; opacity: .9 }
.em-h3 { margin: 0 0 10px; font-size: 16px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap }
.em-rank, .em-refs { display: flex; flex-direction: column; gap: 6px }
.em-fila { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--linea); border-radius: 12px; background: var(--papel) } .em-fila.top { background: #FFF9EC; border-color: #F6DDA6 }
.em-pos { width: 38px; text-align: center; font-weight: 800; font-size: 18px; flex: 0 0 38px } .em-nom { flex: 1; min-width: 0 } .em-nom b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap } .em-nom small { color: var(--tinta-suave); font-size: 12.5px }
.em-pts { font-weight: 800; color: var(--guagua-tinta); background: var(--gestion-fondo); border-radius: 999px; padding: 4px 10px; font-size: 13px; white-space: nowrap }
.em-ref { display: flex; justify-content: space-between; gap: 10px; padding: 10px 12px; border-bottom: 1px solid var(--linea) } .em-ref b { display: block; font-size: 14px } .em-ref small { color: var(--tinta-suave); font-size: 12.5px; display: block } .em-ref-der { text-align: right; flex: 0 0 auto }
@media (max-width: 560px) { .em-ref { flex-direction: column } .em-ref-der { text-align: left } }
.em-ayuda p { margin: 6px 0 0 }
.em-sw { display: flex; gap: 12px; align-items: flex-start; margin: 10px 0; cursor: pointer } .em-sw input { display: none } .em-sw small { display: block; color: var(--tinta-suave); font-size: 12.5px; font-weight: 400 }
.em-sw .t { width: 46px; height: 26px; border-radius: 99px; background: #CBD5DF; position: relative; flex: 0 0 46px; transition: .2s; margin-top: 1px } .em-sw .t::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: .2s; box-shadow: 0 1px 3px rgba(0,0,0,.2) }
.em-sw input:checked + .t { background: var(--alta) } .em-sw input:checked + .t::after { left: 23px } .em-sw.peq { align-items: center; margin: 6px 0 }
.em-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px } @media (max-width: 620px) { .em-grid2 { grid-template-columns: 1fr } }
.em-cuerpo label { display: block; font-weight: 700; font-size: 13px; margin: 8px 0 0 } .em-cuerpo label.btn { display: inline-flex; margin: 0 }
.em-cuerpo input:not([type=checkbox]):not([type=file]), .em-cuerpo textarea, .em-cuerpo select { width: 100%; min-height: 44px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 8px 12px; font: inherit; font-size: 15px; background: var(--papel); margin-top: 4px }
.em-cuerpo textarea { resize: vertical } .em-barra input[type=month] { width: auto; margin: 0 }
.em-cab { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap } .em-cab select { width: auto; margin: 0 }
.em-premios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 8px } @media (max-width: 1000px) { .em-premios { grid-template-columns: 1fr } }
.em-premio { border: 1.5px solid var(--linea); border-radius: 16px; padding: 12px; background: #FBFDFE } .em-premio-cab { display: flex; justify-content: space-between; align-items: center; gap: 8px } .em-premio-cab select { width: auto; min-height: 36px; margin: 0; font-size: 13px }
.em-foto { margin-top: 8px; aspect-ratio: 16/10; border-radius: 12px; overflow: hidden; background: linear-gradient(135deg, #FFE7B0, #F2B23E); display: flex; align-items: center; justify-content: center; font-size: 46px } .em-foto img { width: 100%; height: 100%; object-fit: cover }
.em-foto-acc { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; align-items: center }
.em-niveles { display: flex; flex-direction: column; gap: 8px } .em-nivel { display: grid; grid-template-columns: 56px 1fr 120px 2fr; gap: 8px; align-items: center } .em-nivel input { margin: 0 !important } .em-ico { text-align: center; font-size: 20px !important }
.em-altas { display: flex !important; align-items: center; gap: 6px; margin: 0 !important; font-weight: 600 } .em-altas input { width: 64px !important }
@media (max-width: 700px) { .em-nivel { grid-template-columns: 56px 1fr; } .em-altas, .em-niv-premio { grid-column: span 2 } }
.em-test { border: 1px solid var(--linea); border-radius: 12px; padding: 10px; margin-bottom: 8px }
.em-guardar { display: flex; gap: 10px; justify-content: flex-end; margin: 12px 0 4px; flex-wrap: wrap } .em-guardar .btn { min-height: 46px }
@media (max-width: 760px) { .em-guardar { position: sticky; bottom: 70px; background: rgba(240,246,250,.95); padding: 10px; border-radius: 14px; z-index: 3 } .em-guardar .btn { flex: 1 } }
.em-ganador { display: grid; grid-template-columns: 1fr 1.3fr; gap: 10px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--linea) } .em-ganador small { display: block; color: var(--tinta-suave); font-size: 12.5px } .em-ganador select { margin: 0 !important }
@media (max-width: 620px) { .em-ganador { grid-template-columns: 1fr } }
.em-gans { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px } @media (max-width: 900px) { .em-gans { grid-template-columns: 1fr } }
.em-gan-cab { display: flex; align-items: center; gap: 8px } .em-gan p { margin: 8px 0 4px } .em-gan-acc { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 8px }
.em-buscar { display: flex; gap: 8px; margin: 8px 0 } .em-buscar input { flex: 1; min-height: 44px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 0 12px; font: inherit }
.em-fotos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; max-height: 60vh; overflow: auto } .em-fotos button { border: 0; padding: 0; border-radius: 10px; overflow: hidden; cursor: pointer; aspect-ratio: 4/3 } .em-fotos img { width: 100%; height: 100%; object-fit: cover; display: block } .em-fotos button:hover { outline: 3px solid var(--oceano) }
.em-cuerpo label.em-sw { display: flex; margin: 10px 0; font-weight: 400; font-size: 14px } .em-cuerpo label.em-sw.peq { margin: 6px 0 } .em-cuerpo label.em-sw > span:last-child { flex: 1; min-width: 0 }
@media (max-width: 620px) { .em-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px } .em-kpi { padding: 12px 10px } .em-kpi b { font-size: 26px } .em-kpi span { font-size: 11.5px; display: block; line-height: 1.3 } }
.em-alts { margin-top: 10px; border-top: 1px dashed var(--linea); padding-top: 8px } .em-alts > b { font-size: 12.5px; display: block; margin-bottom: 4px }
.em-alt { display: grid; grid-template-columns: 40px 1fr auto; gap: 6px; align-items: center; margin-top: 6px } .em-alt input { margin: 0 !important; min-height: 40px !important; font-size: 14px !important }
.em-alt-foto { width: 40px; height: 40px; border-radius: 10px; overflow: hidden; background: var(--gestion-fondo); display: flex; align-items: center; justify-content: center } .em-alt-foto img { width: 100%; height: 100%; object-fit: cover }
.em-cuerpo label.em-elige { display: flex; align-items: center; gap: 8px; font-size: 13px; margin: 8px 0 } .em-elige select { margin: 0 !important; min-height: 40px !important }
.em-cuerpo label.em-desde { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0; font-weight: 700 } .em-desde input { width: auto !important; margin: 0 !important } .em-desde small { flex-basis: 100%; color: var(--tinta-suave); font-weight: 400; font-size: 12px }
.em-momentos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 4px 0 10px 58px } @media (max-width: 760px) { .em-momentos { grid-template-columns: 1fr; margin-left: 0 } }
.em-cuerpo label.em-mom { display: flex; gap: 8px; align-items: flex-start; border: 1.5px solid var(--linea); border-radius: 12px; padding: 10px; margin: 0; font-weight: 400; cursor: pointer; background: var(--papel) } .em-mom input { width: 20px; height: 20px; margin: 2px 0 0 !important; accent-color: var(--oceano); flex: 0 0 20px; min-height: 0 !important }
.em-mom b { display: block; font-size: 13.5px } .em-mom small { display: block; color: var(--tinta-suave); font-size: 12px; margin-top: 2px } .em-mom:has(input:checked) { border-color: var(--oceano); background: #F1F8FC }
.emv h3 { margin: 0 0 4px; padding-right: 40px } .emv video { width: 100%; border-radius: 14px; margin: 10px 0; background: #0D1B2A; aspect-ratio: 16/9 }
.em-cab-acc { display: flex; gap: 8px; flex-wrap: wrap }

/* ===== 📲 Info del curso por WhatsApp (25/09/2026) ===== */
.btn-winfo { background: var(--guagua); color: var(--oceano-osc); font-weight: 800; border: 0; box-shadow: 0 2px 8px rgba(242, 178, 62, .35); white-space: nowrap }
.btn-winfo:hover { filter: brightness(1.05) } .btn-winfo:active { transform: translateY(1px) }
.pa-acc .btn-winfo, .ins-acc .btn-winfo, .prev-pf-a .btn-winfo { padding: 6px 10px; font-size: 12.5px; border-radius: 10px; min-height: 34px }
.fa-btn.fa-winfo { background: linear-gradient(135deg, #FFF3DA, #FFE3A6); border-color: #F2C66B }
.wi h3 { margin: 0 0 4px; padding-right: 40px } .wi label { display: block; font-weight: 800; font-size: 13.5px; margin: 12px 0 6px } .wi-ayuda { font-weight: 400; color: var(--tinta-suave) }
.wi-chips { display: flex; flex-wrap: wrap; gap: 6px } .wi-chip { display: inline-flex; align-items: center; gap: 6px; background: var(--oceano); color: #fff; border-radius: 999px; padding: 6px 6px 6px 12px; font-size: 13px; font-weight: 700 }
.wi-chip button { border: 0; background: rgba(255,255,255,.2); color: #fff; width: 24px; height: 24px; border-radius: 50%; cursor: pointer } .wi-chip.car { background: var(--arena); color: var(--tinta-suave); padding: 6px 12px }
.wi-vacio { color: var(--tinta-suave); font-size: 13px; padding: 6px 0 } .wi-busca { position: relative; margin-top: 8px }
.wi-busca input { width: 100%; min-height: 44px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 0 12px; font: inherit }
.wi-sug { display: flex; flex-direction: column; gap: 4px; margin-top: 4px; max-height: 220px; overflow: auto } .wi-sug button { text-align: left; border: 1px solid var(--linea); background: var(--papel); border-radius: 10px; padding: 8px 10px; cursor: pointer; font: inherit }
.wi-sug button:hover { border-color: var(--oceano) } .wi-sug b { display: block; font-size: 13.5px } .wi-sug small { color: var(--tinta-suave); font-size: 12px }
.wi textarea { width: 100%; border: 1.5px solid var(--linea); border-radius: 12px; padding: 12px; font: inherit; font-size: 14px; line-height: 1.45; resize: vertical; min-height: 220px }
.wi-dest { margin-top: 8px; font-size: 13px; color: var(--tinta-suave) } .wi-aviso { color: var(--baja); font-weight: 700 }
.wi-pie { display: flex; gap: 8px; flex-wrap: wrap } .wi-pie .btn { min-height: 46px }
@media (max-width: 560px) { .wi-pie .btn { flex: 1 1 100% } }

.em-est{font-weight:700;font-size:.85rem;padding:4px 10px;border-radius:999px}.em-est.si{background:#dcfce7;color:#166534}.em-est.no{background:#fef3c7;color:#92400e}

/* ===== ☕ Cafés de presentación (25/09/2026) ===== */
#vCafes .rs-cab { align-items: center } .cf-vistas { width: 100%; margin: 4px 0 0 }
.cf-total { color: var(--tinta-suave); font-size: 13px; font-weight: 600; margin: 4px 0 10px }
.cf-rejilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 14px }
.cf-rejilla .cf-card { display: flex; gap: 14px; background: var(--papel); border-radius: 16px; padding: 16px; box-shadow: var(--sombra); border: 1px solid var(--linea); opacity: 0; transform: translateY(8px); animation: cfEntra .45s ease forwards; min-width: 0 }
.cf-rejilla .cf-card.cf-sk, .cf-rejilla .cf-sk { min-height: 170px; opacity: 1; transform: none; animation: cfSk 1.2s infinite linear; background: linear-gradient(90deg, #EEF3F7, #F8FAFC, #EEF3F7); background-size: 200% 100%; border-radius: 14px }
@keyframes cfEntra { to { opacity: 1; transform: none } } @keyframes cfSk { to { background-position: -200% 0 } }
.cf-card-c, .cf-det-c { flex: 1; min-width: 0 } .cf-rejilla .cf-card h3 { font-size: 17px; margin: 0 0 2px; line-height: 1.25 }
.cf-cur { margin: 0; color: var(--oceano); font-weight: 700; font-size: 13.5px; overflow-wrap: anywhere } .cf-lugar { margin: 4px 0 8px; color: var(--tinta-suave); font-size: 13px }
.cf-dia { flex: 0 0 64px; height: 84px; border-radius: 14px; background: linear-gradient(160deg, #6B3F24, #9A5B2E); color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.05; text-transform: capitalize }
.cf-dia b { font-size: 28px; font-family: Fraunces, Georgia, serif } .cf-dia small { font-size: 11.5px; opacity: .9; font-weight: 700 } .cf-dia i { font-style: normal; font-size: 12px; margin-top: 4px; background: rgba(255,255,255,.18); border-radius: 99px; padding: 1px 7px }
.cf-nums { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 13px; color: var(--tinta-suave) } .cf-nums b { color: var(--tinta); font-size: 16px }
.cf-barra { height: 8px; border-radius: 99px; background: #EAF0F4; overflow: hidden; margin: 10px 0 4px } .cf-barra i { display: block; height: 100%; background: linear-gradient(90deg, #F2B23E, #1F8A5B); border-radius: 99px; transition: width .4s }
.cf-aforo { color: var(--tinta-suave); font-size: 12px }
.cf-rejilla .cf-card-pie { display: flex; gap: 8px; margin-top: 12px } .cf-rejilla .cf-card-pie .btn:first-child { flex: 1 }
.cf-pag { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 16px 0 4px; flex-wrap: wrap } .cf-pag span { font-weight: 700; font-size: 13.5px; color: var(--tinta-suave) } .cf-pag .btn { min-height: 44px }
.cf-vacio { text-align: center; padding: 34px 18px; background: var(--papel); border: 2px dashed var(--linea); border-radius: 18px } .cf-vacio > div { font-size: 52px } .cf-vacio b { display: block; font-size: 18px; margin: 6px 0 } .cf-vacio p { color: var(--tinta-suave); max-width: 520px; margin: 0 auto 14px } .cf-vacio.peq { padding: 20px; border-width: 1.5px } .cf-vacio.peq b { font-size: 15px }
.cf-form { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px } .cf-form .cf-full { grid-column: 1 / -1 } @media (max-width: 620px) { .cf-form { grid-template-columns: 1fr } }
.cf-form textarea { width: 100%; resize: vertical } .cf-form label small { font-weight: 500; color: var(--tinta-suave) }
.cf-ideas-caja { margin-top: 12px; background: #FFF8EC; border: 1.5px solid #F4DDB2; border-radius: 16px; padding: 14px } .cf-ideas-cab { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px } .cf-ideas-caja > input { width: 100%; margin-bottom: 8px }
.cf-ideas { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 10px; margin-bottom: 12px }
.cf-idea { text-align: left; background: #fff; border: 2px solid var(--linea); border-radius: 14px; padding: 12px; cursor: pointer; font: inherit; color: var(--tinta); display: flex; flex-direction: column; gap: 4px; transition: .15s } .cf-idea:hover { border-color: var(--guagua) } .cf-idea.activo { border-color: var(--alta); box-shadow: 0 0 0 3px rgba(31,138,91,.15) }
.cf-idea b { font-size: 14.5px } .cf-idea span { font-size: 13px; color: var(--tinta-suave) } .cf-idea small { font-size: 12px; color: var(--guagua-tinta) } .cf-idea.cf-sk { min-height: 110px }
.cf-nota { color: var(--tinta-suave); font-size: 12.5px; margin: 4px 0 8px }
.cf-volver { margin-bottom: 12px }
.cf-det-cab { display: flex; gap: 16px; margin-bottom: 12px } .cf-det-cab h2 { font-size: 22px; margin: 0 0 2px }
.cf-enlace { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px } .cf-enlace input { flex: 1 1 240px; min-width: 0; font-size: 13px; color: var(--tinta-suave) }
@media (max-width: 620px) { .cf-det-cab { flex-direction: column } .cf-det-cab .cf-dia { flex-direction: row; gap: 8px; height: auto; padding: 8px 12px; width: max-content } .cf-dia b { font-size: 22px } .cf-dia i { margin: 0 } .cf-enlace .btn { flex: 1 1 auto } }
.cf-idea-det { margin-bottom: 12px } .cf-idea-det summary { cursor: pointer; font-weight: 700 } .cf-dos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 10px; font-size: 14px } .cf-dos ol, .cf-dos ul { margin: 6px 0; padding-left: 20px } @media (max-width: 620px) { .cf-dos { grid-template-columns: 1fr } }
.cf-filtros { display: flex; flex-direction: column; gap: 10px; margin-bottom: 10px } .cf-filtros input[type=search] { width: 100%; min-height: 46px }
.cf-selbar { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--tinta-suave); padding: 6px 2px 10px; border-bottom: 1px solid var(--linea) } .cf-selbar .check { font-weight: 700; color: var(--tinta) }
.cf-lista { display: flex; flex-direction: column }
.cf-per { display: flex; align-items: center; gap: 12px; padding: 12px 4px; border-bottom: 1px solid var(--linea); cursor: pointer; min-width: 0 } .cf-per:last-child { border: 0 } .cf-per.sel { background: #F2F9FD } .cf-per.vino { background: #F1FAF5 } .cf-per.hecho { opacity: .65 }
.cf-per > input[type=checkbox] { width: 22px; height: 22px; flex: 0 0 22px } .cf-per-c { flex: 1; min-width: 0 } .cf-per-c b { display: block; font-size: 14.5px } .cf-per-c small { display: block; color: var(--tinta-suave); font-size: 12.5px; overflow-wrap: anywhere }
.cf-per-t { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px } .cf-per-acc { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end }
.cf-o, .cf-e { font-size: 11px; font-weight: 800; border-radius: 99px; padding: 2px 8px; background: #EEF2F5; color: var(--tinta-suave) } .cf-o-ins { background: #E2F0FA; color: var(--oceano) } .cf-o-int { background: #FCF1DA; color: var(--guagua-tinta) } .cf-o-vv { background: #EDE7F6; color: #5B3F99 }
.cf-e-ok { background: var(--alta-fondo); color: var(--alta) } .cf-e-vino { background: var(--alta); color: #fff } .cf-e-no { background: var(--baja-fondo); color: var(--baja) }
.cf-ficha { min-height: 38px; padding: 6px 12px; font-size: 13px }
.cf-accion { position: sticky; bottom: 10px; z-index: 6; margin-top: 12px; background: var(--oceano-osc); color: #fff; border-radius: 16px; padding: 12px 14px; display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; box-shadow: 0 12px 30px rgba(13,27,42,.3); animation: cfEntra .25s ease forwards }
.cf-accion > div { display: flex; gap: 8px; flex-wrap: wrap } .cf-accion .btn-suave { background: rgba(255,255,255,.12); color: #fff; border-color: rgba(255,255,255,.3) } .cf-accion .btn-primario { background: #1FA855 }
@media (max-width: 760px) { .cf-accion { bottom: calc(70px + env(safe-area-inset-bottom)) } .cf-accion > div { width: 100% } .cf-accion .btn { flex: 1 1 45%; min-height: 46px } }
.cf-versiones { display: grid; gap: 8px; margin-bottom: 10px } .cf-ver { text-align: left; font: inherit; background: #fff; border: 2px solid var(--linea); border-radius: 12px; padding: 10px 12px; cursor: pointer; display: flex; flex-direction: column; gap: 3px; color: var(--tinta) } .cf-ver.activo { border-color: var(--alta); box-shadow: 0 0 0 3px rgba(31,138,91,.12) } .cf-ver span { font-size: 13.5px; white-space: pre-wrap; overflow-wrap: anywhere } .cf-ver small { color: var(--tinta-suave); font-size: 12px }
#cfTxtEd { width: 100%; font-size: 14px }
.cf-al { background: #E2F0FA; color: var(--oceano); border-radius: 12px; padding: 10px 12px; font-weight: 600; font-size: 13.5px; margin-bottom: 10px }
.cf-fin { display: flex; justify-content: flex-end; margin-top: 12px }
.cf-form input:not([type=checkbox]), .cf-form select, .cf-form textarea { width: 100%; max-width: 100% }
body:has(.cf-accion:not(.oculto)) .capta-fab { display: none }
.cf-ver span { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden } .cf-ver.activo span { -webkit-line-clamp: unset; display: block }

/* Por atender: botones de la tarjeta en rejilla (no se salen) y buscador para asignar (25/09) */
.pa-card { min-width: 0; }
.pa-acc { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; margin-top: 4px; }
.pa-acc > * { min-width: 0; min-height: 42px; display: flex; align-items: center; justify-content: center; gap: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 13px; line-height: 1.1; padding: 6px 6px; border-radius: 10px; flex: none !important; }
.pa-acc > .btn-winfo { grid-column: span 3; } .pa-acc > .pa-llamar { grid-column: span 3; background: #e9f8ef; border-color: #bfe6cf; color: #17693a; }
.pa-acc > .pa-wa, .pa-acc > .pa-cita, .pa-acc > .pa-fic { grid-column: span 2; }
.pa-acc > .pa-b:first-child { background: #f8fafc; border-color: var(--linea); color: var(--tinta); }
.pa-acc.sintel > .btn-winfo { grid-column: span 6; } .pa-acc.sintel > .pa-cita, .pa-acc.sintel > .pa-fic { grid-column: span 3; }
.pa-acc > .pa-wa { background: #eafaf0; border-color: #c4ebd3; color: #127a3e; }
@media (max-width: 380px) { .pa-acc > * { font-size: 12px; } }
.as1-actual { background: var(--arena); border-radius: 10px; padding: 8px 12px; font-size: 13.5px; margin-bottom: 10px; }
.as1-busca { display: flex; align-items: center; gap: 8px; border: 1.5px solid var(--linea); border-radius: 12px; padding: 0 12px; background: #fff; } .as1-busca:focus-within { border-color: var(--oceano); box-shadow: 0 0 0 3px rgba(26,140,196,.2); }
.as1-busca input { border: 0; box-shadow: none !important; flex: 1; min-height: 48px; font-size: 16px; padding: 0; background: transparent; }
.as1-lista { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; max-height: 50vh; overflow-y: auto; } .as1-tit { color: var(--tinta-suave); font-size: 12.5px; font-weight: 600; margin: 2px 2px 2px; }
.as1-p { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; background: #fff; border: 1.5px solid var(--linea); border-radius: 12px; padding: 10px 12px; font: inherit; cursor: pointer; color: var(--tinta); min-height: 56px; transition: .12s; }
.as1-p:hover, .as1-p.activo { border-color: var(--oceano-claro); background: #F2F9FD; } .as1-p.on { border-color: var(--alta); background: var(--alta-fondo); }
.as1-ini { flex: 0 0 38px; height: 38px; border-radius: 50%; background: var(--oceano); color: #fff; font-weight: 800; font-size: 13px; display: flex; align-items: center; justify-content: center; text-transform: uppercase; }
.as1-n { flex: 1; min-width: 0; } .as1-n b { display: block; font-size: 14.5px; } .as1-n small { color: var(--tinta-suave); font-size: 12.5px; }
.as1-go { font-size: 12.5px; font-weight: 800; color: var(--oceano); background: #E2F0FA; border-radius: 99px; padding: 4px 10px; } .as1-vacio { color: var(--tinta-suave); text-align: center; padding: 14px; }

/* ☕ difundir en redes */
.cfr { display: grid; grid-template-columns: minmax(0, 380px) minmax(0, 1fr); gap: 18px; } @media (max-width: 760px) { .cfr { grid-template-columns: 1fr; } }
.cfr-lienzo { margin: 10px 0; border-radius: 14px; overflow: hidden; box-shadow: var(--sombra); background: #2A160B; } .cfr-lienzo img { width: 100%; display: block; }
.cfr-bts { display: flex; gap: 8px; flex-wrap: wrap; margin: 8px 0; } .cfr-bts .btn { flex: 1 1 auto; min-height: 44px; }
.cfr-txt textarea { width: 100%; margin-top: 10px; font-size: 14px; line-height: 1.45; resize: vertical; }
.cfr-enlace { display: flex; gap: 8px; margin-top: 6px; } .cfr-enlace input { flex: 1; min-width: 0; font-size: 13px; color: var(--tinta-suave); }
.cfr > div { min-width: 0 } @media (max-width: 760px) { .cfr { grid-template-columns: minmax(0, 1fr) } }

/* ⭐ sede del mes (reseñas) */
.rs-mes { margin-bottom: 12px } .rs-mes-cab small { display: block; color: var(--tinta-suave); font-size: 12.5px; margin-top: 2px }
.rs-mes-rej { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; margin: 12px 0 }
.rs-mes-s { border: 1.5px solid var(--linea); border-radius: 14px; padding: 12px; display: flex; flex-direction: column; gap: 4px; min-width: 0 } .rs-mes-s.top { border-color: var(--guagua); background: #FFF8EC }
.rs-mes-n { font-weight: 800; font-size: 14px } .rs-mes-s b { font-size: 24px; font-family: Fraunces, Georgia, serif } .rs-mes-s b small { font-size: 12px; font-family: inherit; color: var(--tinta-suave); font-weight: 600 } .rs-mes-s > small { color: var(--tinta-suave); font-size: 12.5px } .rs-mes-s .btn { align-self: flex-start; margin-top: 4px }
.rs-pet { border-top: 1px dashed var(--linea); padding-top: 8px } .rs-pet small { display: block; font-weight: 500 }
.rs-pts { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 4px 0 8px } .rs-pt { font-size: 12px; font-weight: 800; border-radius: 99px; padding: 3px 10px; background: #EDE7F6; color: #5B3F99 } .rs-pt.ok { background: var(--alta-fondo); color: var(--alta) }
/* 🎓 Tutoriales de Estrellita (25/09) */
#vTutoriales{max-width:1180px}
.tut-hero{display:flex;gap:18px;align-items:center;background:linear-gradient(135deg,var(--oceano-osc),#16466b 70%,var(--oceano));color:#fff;border-radius:22px;padding:22px 24px;margin-bottom:14px;overflow:hidden;position:relative}
.tut-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(242,178,62,.35),transparent 70%)}
.tut-av{flex:0 0 86px;width:86px;height:86px;background:#fff;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 4px var(--guagua)}.tut-av svg{width:74px;height:74px}
.tut-hero-t{min-width:0;position:relative;z-index:1}.tut-kick{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--guagua)}
.tut-hero h2{margin:2px 0 4px;font-size:24px;color:#fff}.tut-hero p{margin:0;opacity:.9;max-width:620px;line-height:1.45}
.tut-prog{display:flex;align-items:center;gap:10px;margin-top:10px}.tut-prog-bar{flex:0 1 220px;height:8px;background:rgba(255,255,255,.2);border-radius:9px;overflow:hidden}.tut-prog-bar i{display:block;height:100%;background:var(--guagua);border-radius:9px}.tut-prog small{opacity:.85}
.tut-busca{display:flex;align-items:center;gap:8px;background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:0 14px;margin-bottom:6px}.tut-busca svg{width:20px;height:20px;color:var(--tinta-suave);flex:0 0 20px}
.tut-busca input{border:0!important;box-shadow:none!important;background:transparent;min-height:48px;font-size:16px;flex:1;min-width:0;outline:0}
.tut-bloque{margin:18px 2px 10px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--tinta-suave)}
.tut-rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.tut-card{background:var(--papel);border:1px solid var(--linea);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(13,27,42,.05);animation:tutEntra .35s ease both;animation-delay:var(--d);transition:transform .15s,box-shadow .15s}
.tut-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,27,42,.1)}
@keyframes tutEntra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tut-portada{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background:linear-gradient(135deg,#1A8CC4,#0D1B2A);overflow:hidden}
.tut-portada.tut-paseo{background:linear-gradient(135deg,#F2B23E,#e07b39)}.tut-portada.tut-juego{background:linear-gradient(135deg,#7b5cd6,#0F6A9C)}
.tut-portada img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.tut-portada:hover img{transform:scale(1.03)}
.tut-ico{position:absolute;inset:0;display:grid;place-items:center;font-size:64px}
.tut-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--oceano-osc);display:grid;place-items:center;font-size:22px;padding-left:4px;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:transform .15s}
.tut-portada:hover .tut-play{transform:translate(-50%,-50%) scale(1.08)}
.tut-portada.tut-paseo .tut-play,.tut-portada.tut-juego .tut-play{left:auto;right:12px;top:auto;bottom:12px;transform:none;width:44px;height:44px;font-size:17px}
.tut-chips{position:absolute;left:10px;top:10px;display:flex;gap:6px;flex-wrap:wrap}
.tut-chip{background:rgba(13,27,42,.78);color:#fff;font-size:12px;font-weight:700;padding:4px 9px;border-radius:99px}.tut-chip.nuevo{background:var(--guagua);color:#3d2800}.tut-chip.visto{background:var(--alta)}
.tut-txt{padding:14px 16px 6px;flex:1}.tut-txt h4{margin:0 0 6px;font-size:17px}.tut-txt p{margin:0;color:var(--tinta-suave);line-height:1.45;font-size:14px}
.tut-pasos{margin-top:10px;background:var(--arena);border-radius:12px;padding:0 12px}.tut-pasos summary{cursor:pointer;font-weight:700;padding:10px 0;min-height:24px;color:var(--oceano)}
.tut-pasos ol{margin:0 0 10px;padding-left:20px;font-size:14px;line-height:1.45}.tut-pasos li{margin:4px 0}
.tut-pie{display:flex;gap:8px;flex-wrap:wrap;padding:10px 16px 16px}.tut-pie .btn{min-height:44px;flex:1 1 auto}
.tut-vacio{background:var(--papel);border:1px dashed var(--linea);border-radius:16px;padding:24px;text-align:center;margin-top:10px}.tut-vacio p{margin:6px 0 0;color:var(--tinta-suave)}
@media(max-width:640px){.tut-hero{padding:16px;gap:12px;border-radius:18px}.tut-av{flex-basis:58px;width:58px;height:58px}.tut-av svg{width:50px;height:50px}.tut-hero h2{font-size:19px}.tut-hero p{font-size:14px}.tut-rejilla{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.tut-card{animation:none}}
/* 🔄 Pueden volver: ya contactados (25/09) */
.kb-vv-hechos{display:block;width:calc(100% - 16px);margin:0 8px 8px;border:1px dashed #9fd3b6;background:#EEF8F2;color:#17693a;border-radius:10px;padding:8px 10px;font:inherit;font-size:12.5px;font-weight:700;text-align:left;cursor:pointer;min-height:36px}
.kb-vv-hechos:hover{background:#E1F3E8}.kb-vv-hechos u{float:right}
.vvc-lista{display:flex;flex-direction:column;gap:8px;margin-top:12px;max-height:46vh;overflow:auto}
.vvc-it{flex-shrink:0;height:auto;white-space:normal;line-height:1.35;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px;align-items:center;text-align:left;background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:10px 12px;font:inherit;cursor:pointer;min-height:48px}
.vvc-it:hover{border-color:var(--oceano-claro)}.vvc-it small{display:block;color:var(--tinta-suave);font-size:12px;margin-top:2px}
.vvc-n,.vvc-u{min-width:0;overflow-wrap:anywhere}.vvc-u em{font-style:normal;font-size:13px}
.vvc-pag{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;flex-wrap:wrap}.vvc-pag .btn{min-height:44px}
@media(max-width:640px){.vvc-it{grid-template-columns:1fr}.vvc-pag span{order:-1;width:100%;text-align:center}}
/* 🎬 Vídeo diario de novedades (25/09) */
.nvp-modal{max-width:980px!important}
.nvp{position:relative}
.nvp-esc{position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:radial-gradient(circle at 85% 15%,rgba(242,178,62,.35),transparent 40%),linear-gradient(135deg,var(--oceano-osc),#16466b 60%,var(--oceano));color:#fff;display:flex;align-items:center;gap:3%;padding:3% 4%}
.nvp-cargando{margin:auto;text-align:center}.nvp-cargando .nvp-av{margin:0 auto 10px}
.nvp-av{flex:0 0 22%;max-width:190px;aspect-ratio:1;background:#fff;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 5px var(--guagua),0 14px 30px rgba(0,0,0,.3)}
.nvp-cargando .nvp-av{width:110px;flex:none}
.nvp-av svg{width:86%;height:86%}
.nvp-av.habla{animation:nvHabla .5s ease-in-out infinite alternate}
@keyframes nvHabla{from{transform:translateY(0) scale(1)}to{transform:translateY(-3px) scale(1.025)}}
.nvp-card{flex:1;min-width:0;animation:nvEntra .45s ease both}
@keyframes nvEntra{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.nvp-kick{font-size:clamp(10px,1.4vw,13px);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--guagua)}
.nvp-portada h2{margin:4px 0 10px;font-size:clamp(18px,3.2vw,34px);color:#fff;line-height:1.1}
.nvp-portada ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}.nvp-portada li{display:flex;gap:8px;align-items:center;font-size:clamp(12px,1.6vw,16px);background:rgba(255,255,255,.1);border-radius:10px;padding:5px 10px}
.nvp-portada p{font-size:clamp(13px,1.8vw,18px);opacity:.92}.nvp-fin{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.nvp-slide{position:relative}.nvp-num{font-size:12px;font-weight:700;opacity:.75}
.nvp-ico{font-size:clamp(28px,5vw,54px);line-height:1;margin:4px 0}
.nvp-slide h3{margin:0 0 10px;font-size:clamp(17px,2.8vw,30px);color:#fff;line-height:1.15}
.nvp-slide ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.nvp-slide li{position:relative;padding:6px 10px 6px 30px;background:rgba(255,255,255,.12);border-radius:10px;font-size:clamp(12px,1.7vw,17px);opacity:0;animation:nvPunto .4s ease forwards;animation-delay:var(--d)}
.nvp-slide li::before{content:"✓";position:absolute;left:10px;color:var(--guagua);font-weight:800}
@keyframes nvPunto{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.nvp-sub{min-height:3.2em;margin:10px 2px 6px;font-size:15px;line-height:1.45;color:var(--tinta)}
.nvp-barra{display:flex;gap:4px;margin:4px 0 10px}.nvp-seg{height:8px;border:0;padding:0;border-radius:6px;background:var(--linea);cursor:pointer;overflow:hidden;min-width:10px}
.nvp-seg i{display:block;height:100%;width:0;background:var(--oceano-claro);transition:width .25s linear}.nvp-seg.hecho i{width:100%}
.nvp-ctl{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nvp-ctl .btn{min-height:44px}.nvp-sep{flex:1}
@media(max-width:640px){.nvp-esc{aspect-ratio:auto;min-height:62vw;flex-direction:column;align-items:flex-start;padding:16px}.nvp-av{flex:none;width:64px;position:absolute;right:12px;top:12px;box-shadow:0 0 0 3px var(--guagua)}.nvp-card{width:100%;padding-right:70px}.nvp-slide ul{padding-right:0}.nvp-sub{font-size:14px}.nvp-ctl .nvp-sep{display:none}.nvp-ctl #nvpIr{width:100%}}
@media (prefers-reduced-motion:reduce){.nvp-av.habla,.nvp-card,.nvp-slide li{animation:none;opacity:1}}
.tut-bq-cab{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.tut-bq-cab .tut-bloque{margin-bottom:10px}
.tut-nv{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.tut-nv-it{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;gap:2px 12px;align-items:center;text-align:left;background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:12px 14px;font:inherit;cursor:pointer;min-height:64px;animation:tutEntra .35s ease both;animation-delay:var(--d)}
.tut-nv-it:hover{border-color:var(--oceano-claro);box-shadow:0 6px 16px rgba(13,27,42,.08)}
.tut-nv-it.nuevo{border-color:var(--guagua);background:#FFFBF2}
.tut-nv-play{grid-row:1/3;width:48px;height:48px;border-radius:50%;background:var(--oceano-osc);color:#fff;display:grid;place-items:center;font-size:17px;padding-left:3px}
.tut-nv-t{min-width:0}.tut-nv-t b{display:block}.tut-nv-t small{display:block;color:var(--tinta-suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tut-nv-m{font-size:12px;color:var(--tinta-suave)}.tut-nv-m em{font-style:normal;color:var(--alta);font-weight:700}.tut-nv-m strong{color:var(--guagua-tinta)}
/* Control de campañas: cursos cubiertos ocultos (25/09) */
.ctl-cub{display:inline-block;margin:8px 0 4px;border:1px dashed #9fd3b6;background:#EEF8F2;color:#17693a;border-radius:10px;padding:8px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;min-height:40px}
.ctl-cub.on{background:#fff;border-color:var(--linea);color:var(--tinta-suave)}
.ctl-cod{display:block;font-size:12px;color:var(--tinta-suave);margin:2px 0}.ctl-tele{display:inline-block;background:#EDE7FB;color:#5b3fb0;border-radius:99px;padding:2px 8px;font-weight:800;font-size:11.5px;margin-right:4px}
/* Spotify por islas (25/09) */
.spot-islas{margin-top:10px;background:#F4FBF6;border:1px solid #cfe9d8;border-radius:12px;padding:10px 12px}.spot-islas>b{display:block;font-size:14px}.spot-islas>b small{display:block;font-weight:500;color:var(--tinta-suave);font-size:12px}
.spot-islas-l{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.spot-isla{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--linea);border-radius:99px;padding:6px 12px;min-height:38px;cursor:pointer;font-size:14px}
.spot-isla input{width:18px;height:18px;accent-color:#1db954}.spot-isla:has(input:checked){border-color:#1db954;background:#EAF8EF}
/* 🏝 Islas y plazas (teleformación) en la ficha del curso (25/09) */
.cfi-sub{font-size:12px;font-weight:700;color:#5b3fb0;background:#EDE7FB;border-radius:99px;padding:2px 8px;margin-left:6px;vertical-align:middle}
.cfi-ayuda{margin:0 0 10px;font-size:13.5px;color:var(--tinta-suave);line-height:1.45}
.cfi-rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.cfi-isla{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--arena);border:1px solid var(--linea);border-radius:12px;padding:6px 6px 6px 12px;font-weight:700;font-size:14px;min-width:0}
.cfi-isla input{width:74px!important;min-height:40px;text-align:center;font-weight:800}
.cfi-pie{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0 6px}.cfi-pie .btn{min-height:44px}
.cfi-mal{color:#b42318;font-style:normal;font-weight:800}.cfi-quien{display:block;color:var(--tinta-suave);font-size:12px;margin-bottom:6px}
.cfi-isla span{min-width:0;line-height:1.2}
@media(max-width:640px){.cfi-rejilla{grid-template-columns:1fr 1fr}.cfi-isla{font-size:13px;padding-left:10px;flex-direction:column;align-items:stretch;gap:4px;padding:8px}.cfi-isla input{width:100%!important}}
/* 🖼 Banner de la web (25/09) */
.wb-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:10px}.wb-col{min-width:0}.wb-col h4{margin:0 0 8px;font-size:15px}.wb-col h4 small{font-weight:500;color:var(--tinta-suave)}
.wb-sel{display:flex;flex-direction:column;gap:6px}.wb-sel-it{position:relative;display:flex;align-items:center;gap:10px;background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:8px 10px 8px 14px;overflow:hidden}
.wb-sel-it>i{position:absolute;left:0;top:0;bottom:0;width:4px}.wb-n{width:24px;height:24px;border-radius:50%;background:var(--oceano-osc);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;flex:0 0 24px}
.wb-t{flex:1;min-width:0}.wb-t b{display:block;font-size:14px}.wb-t small{color:var(--tinta-suave);font-size:12px}.wb-mal{color:#b42318;font-style:normal;font-weight:700}
.wb-acc{display:flex;gap:4px}.wb-acc button{width:34px;height:34px;border:1px solid var(--linea);background:#fff;border-radius:8px;cursor:pointer;font-weight:800}.wb-acc button:disabled{opacity:.35;cursor:default}
.wb-sw{display:flex;gap:8px;align-items:flex-start;margin:12px 0;font-size:13.5px;line-height:1.4}.wb-sw input{margin-top:3px;width:18px;height:18px}.wb-sw select{padding:2px 6px;border-radius:6px;border:1px solid var(--linea)}
.wb-nota{display:block;color:var(--tinta-suave);margin-top:6px}
.wb-lista{display:flex;flex-direction:column;gap:6px;margin-top:8px}.wb-it{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:8px 12px;font:inherit;cursor:pointer;min-height:48px}
.wb-it span{min-width:0}.wb-it b{display:block;font-size:13.5px}.wb-it small{color:var(--tinta-suave);font-size:12px}.wb-it em{font-style:normal;font-weight:800;font-size:18px;color:var(--oceano)}.wb-it.on{border-color:#1F8A5B;background:#EEF8F2}.wb-it.on em{color:#1F8A5B}.wb-it:disabled{opacity:.55;cursor:default}
.wb-vh{margin:14px 0 8px!important}.wb-vista{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.wb-v{display:flex;flex-direction:column;justify-content:flex-end;min-height:100px;border-radius:12px;padding:10px;background:#0D1B2A center/cover;color:#fff;text-decoration:none}.wb-v small{font-size:11px;opacity:.9}.wb-v b{font-size:13px;line-height:1.2}
.wb-codigo{margin-top:14px;background:var(--arena);border-radius:12px;padding:10px 14px}.wb-codigo summary{cursor:pointer;font-weight:700}.wb-codigo pre{white-space:pre-wrap;word-break:break-all;background:#0D1B2A;color:#e8f1f7;border-radius:10px;padding:10px;font-size:12.5px}
@media(max-width:760px){.wb-cols{grid-template-columns:1fr}}

/* 🔔 Campañas masivas → origen «Suscritos en la web» (25/09/2026) */
.sus-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 12px}.sus-kpis div{background:var(--fondo2,#f3f6f9);border-radius:12px;padding:10px 8px;text-align:center}.sus-kpis b{display:block;font-size:20px;color:var(--acento,#1A8CC4)}.sus-kpis span{font-size:12px;color:#667}
@media(max-width:560px){.sus-kpis{grid-template-columns:repeat(2,1fr)}}
/* 🔔 17/10/2026: suscritos a los avisos — procedencia (club, entidad, enlace, academiadf.com, Expofuturo) */
.sus-tab { padding: 20px; }
.sus-cab { display: flex; gap: 18px; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; margin-bottom: 14px; }
.sus-cab h3 { margin: 0 0 4px; font-size: 18px; } .sus-cab > div:first-child { flex: 1 1 280px; } .sus-cab small { color: var(--tinta-suave); line-height: 1.4; }
.sus-cab .sus-kpis { flex: 1 1 380px; margin: 0; }
.sus-sec { background: var(--arena); border-radius: 14px; padding: 12px 14px; margin: 10px 0 12px; }
.sus-sec h4 { margin: 0 0 8px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--tinta-suave); }
.sus-barra { display: flex; height: 10px; border-radius: 99px; overflow: hidden; gap: 2px; background: var(--linea); }
.sus-barra span { background: var(--c); min-width: 6px; }
.sus-leyenda { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 8px 0 10px; font-size: 13px; }
.sus-leyenda i { display: inline-block; width: 9px; height: 9px; border-radius: 3px; background: var(--c); margin-right: 6px; }
.sus-leyenda small { color: var(--tinta-suave); }
.sus-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.sus-chip { border: 1.5px solid color-mix(in srgb, var(--c) 30%, transparent); background: var(--papel); color: var(--tinta); border-radius: 99px; padding: 5px 11px; font-size: 12.5px; cursor: pointer; font-family: inherit; }
.sus-chip b { color: var(--c); margin-left: 3px; } .sus-chip:hover { border-color: var(--c); }
.sus-chip.activo { background: var(--c); border-color: var(--c); color: #fff; } .sus-chip.activo b { color: #fff; }
.sus-nota { display: block; margin-top: 8px; color: var(--tinta-suave); }
.sus-herr { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin: 6px 0 8px; }
.sus-herr input[type=search] { flex: 1 1 260px; padding: 10px 14px; border: 1.5px solid var(--linea); border-radius: 10px; font-size: 14px; }
.sus-seg { display: inline-flex; background: var(--arena); border-radius: 10px; padding: 3px; }
.sus-seg button { border: 0; background: none; padding: 7px 13px; border-radius: 8px; font: inherit; font-size: 13px; color: var(--tinta-suave); cursor: pointer; }
.sus-seg button.activo { background: var(--papel); color: var(--tinta); font-weight: 700; box-shadow: 0 1px 3px rgba(13, 27, 42, .12); }
.sus-mas { margin: 4px 0 10px; } .sus-mas summary { cursor: pointer; font-size: 13px; color: var(--oceano); font-weight: 600; padding: 4px 0; }
.sus-cuenta { font-size: 12.5px; color: var(--tinta-suave); margin: 6px 2px; }
.sus-lista { border: 1px solid var(--linea); border-radius: 14px; overflow: hidden; }
.sus-fila { display: grid; grid-template-columns: 38px minmax(0, 1fr) auto 84px; grid-template-areas: "av main proc cuando" "av contacto contacto tags"; gap: 2px 12px; align-items: center; padding: 11px 14px; border-bottom: 1px solid var(--linea); background: var(--papel); }
.sus-fila:last-child { border-bottom: 0; }
.sus-click { cursor: pointer; } .sus-click:hover, .sus-click:focus { background: var(--arena); outline: none; }
.sus-baja { opacity: .6; }
.sus-av { grid-area: av; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: 13px; color: var(--c); background: color-mix(in srgb, var(--c) 14%, var(--papel)); }
.sus-main { grid-area: main; min-width: 0; display: flex; flex-direction: column; } .sus-main b { font-size: 14px; }
.sus-main small { color: var(--tinta-suave); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sus-proc { grid-area: proc; justify-self: end; display: inline-flex; align-items: center; gap: 5px; max-width: 260px; padding: 4px 10px 4px 7px; border-radius: 99px; font-size: 12px; font-weight: 600; color: var(--c); background: color-mix(in srgb, var(--c) 11%, var(--papel)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sus-proc i { font-style: normal; }
.sus-cuando { grid-area: cuando; justify-self: end; font-size: 12px; color: var(--tinta-suave); white-space: nowrap; }
.sus-contacto { grid-area: contacto; display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12.5px; color: var(--tinta-suave); font-variant-numeric: tabular-nums; }
.sus-tags { grid-area: tags; justify-self: end; display: flex; gap: 4px; }
.sus-tag { font-size: 11px; padding: 2px 8px; border-radius: 99px; background: var(--alta-fondo); color: var(--alta); white-space: nowrap; } .sus-tag-baja { background: var(--baja-fondo); color: var(--baja); }
.sus-pie { margin: 12px 2px 0; font-size: 12.5px; color: var(--tinta-suave); }
/* en «Destinatarios» de la campaña: casilla + la misma fila */
.wa-fila.sus-dest { grid-template-columns: 24px 38px minmax(0, 1fr) auto 84px 110px; grid-template-areas: none; gap: 10px; border-bottom: 1px solid var(--linea); padding: 9px 14px; }
.wa-fila.sus-dest > * { grid-area: auto; } .wa-fila.sus-dest .al { grid-column: 3 / -1; justify-self: start; }
@media (max-width: 760px) {
  .sus-fila { grid-template-columns: 38px minmax(0, 1fr) auto; grid-template-areas: "av main cuando" "av proc proc" "av contacto contacto" "av tags tags"; }
  .sus-proc, .sus-tags { justify-self: start; }
  .sus-main small { white-space: normal; } .sus-av { align-self: start; }
  .wa-fila.sus-dest { grid-template-columns: 24px 38px minmax(0, 1fr); } .wa-fila.sus-dest .sus-proc { grid-column: 3; } .wa-fila.sus-dest .sus-cuando, .wa-fila.sus-dest .wa-tel { display: none; }
}
.res-chip small{opacity:.7;margin-left:4px}

/* 26/09 · altas de empresas desde la web */
.emp-web-aviso{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 12px;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#0D1B2A,#12466b 62%,#1A8CC4);color:#fff;box-shadow:0 8px 22px rgba(13,27,42,.16)}
.emp-web-aviso.oculto{display:none}
.ewa-ic{font-size:26px}.ewa-t{flex:1 1 260px;min-width:0}.ewa-t b{display:block;font-size:15px}.ewa-t small{display:block;color:rgba(255,255,255,.82);line-height:1.45;margin-top:3px}
.ewa-b{display:flex;gap:8px;flex-wrap:wrap}.emp-web-aviso .btn-suave{background:rgba(255,255,255,.14);color:#fff;border-color:transparent}
@media(max-width:600px){.ewa-b{width:100%}.ewa-b .btn{flex:1}}

.ins-otra { margin-top: 8px; } .ins-otra input { width: 100%; } .ins-otra .ins-gente { margin-top: 6px; }

.rec-sw{display:flex;align-items:center;gap:10px;margin:10px 0 14px;font-weight:700}.rec-sw small{font-weight:400;color:#7a8794}
.rec-casos{display:grid;gap:10px;margin-bottom:12px}.rec-casos>div{background:#f4f8fb;border-radius:12px;padding:10px 12px}.rec-casos p{margin:4px 0 0;font-family:ui-monospace,monospace;font-size:12.5px;color:#334}
.rec-fila{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:8px 0;border-bottom:1px solid #eef2f5}.rec-fila span{font-size:13px;color:#445}.rec-fila small{font-size:12px;color:#7a8794}

/* ---- 📈 Analítica web (GA4) · 26/09/2026 ---- */
.gaw { margin-bottom: 16px; }
.gaw h3 { margin: 0; font-size: 17px; } .gaw h3 small { font-weight: 600; color: var(--tinta-suave); font-size: 12.5px; margin-left: 6px; }
.gaw-cab { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; flex-wrap: wrap; }
.gaw-sub { color: var(--tinta-suave); font-size: 13px; margin: 3px 0 0; }
.gaw-bar { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; margin: 12px 0 14px; }
.gaw-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px; }
.gaw-k { background: var(--arena); border-radius: 12px; padding: 10px 12px; } .gaw-k small { display: block; color: var(--tinta-suave); font-size: 12px; font-weight: 600; }
.gaw-k b { font-size: 22px; color: var(--oceano-osc); } .gaw-k.bueno b { color: var(--alta); } .gaw-k.mal b { color: var(--baja, #B42318); }
.gaw-h { font-size: 14px; margin: 18px 0 8px; color: var(--oceano-osc); }
.gaw-can { display: grid; gap: 10px; }
.gaw-cr { border: 1px solid var(--linea); border-radius: 12px; padding: 10px 12px; }
.gaw-cr-t { display: flex; justify-content: space-between; gap: 8px; font-size: 14px; } .gaw-cr-t span { color: var(--tinta-suave); white-space: nowrap; }
.gaw-barra { height: 8px; background: var(--arena); border-radius: 99px; margin: 7px 0; overflow: hidden; } .gaw-barra i { display: block; height: 100%; background: linear-gradient(90deg, var(--oceano-claro), var(--oceano)); border-radius: 99px; transition: width .5s; }
.gaw-cr-m { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 12.5px; color: var(--tinta-suave); } .gaw-cr-m .bueno { color: var(--alta); font-weight: 700; }
.gaw-tabla { overflow-x: auto; border: 1px solid var(--linea); border-radius: 12px; }
.gaw-tabla table { width: 100%; border-collapse: collapse; font-size: 13.5px; } .gaw-tabla th { text-align: left; background: var(--arena); padding: 8px 10px; font-size: 12px; color: var(--tinta-suave); white-space: nowrap; }
.gaw-tabla td { padding: 8px 10px; border-top: 1px solid var(--linea); } .gaw-mal { color: var(--baja, #B42318); font-weight: 700; }
.gaw-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; } .gaw-chips span { background: var(--arena); border-radius: 99px; padding: 6px 12px; font-size: 13px; }
.gaw-nota { color: var(--tinta-suave); font-size: 12px; margin: 14px 0 0; }
.gaw-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.gaw-bq { display: grid; gap: 6px; } .gaw-bq-i { display: flex; justify-content: space-between; gap: 10px; border: 1px solid var(--linea); border-radius: 10px; padding: 8px 12px; font-size: 13.5px; }
.gaw-bq-i span { color: var(--tinta-suave); white-space: nowrap; } .gaw-bq-i.sin { border-color: #F6DDA8; background: #FFF8EA; } .gaw-bq-i.sin span { color: var(--guagua-tinta); font-weight: 700; }
.gaw-emb { display: grid; gap: 8px; } .gaw-emb-p span { display: block; font-size: 12.5px; color: var(--tinta-suave); margin-top: 3px; }
.gaw-emb-b { background: linear-gradient(90deg, var(--oceano), var(--oceano-claro)); color: #fff; border-radius: 10px; padding: 8px 12px; min-width: 48px; transition: width .5s; }
.gaw-spark { display: flex; align-items: flex-end; gap: 3px; height: 70px; background: var(--arena); border-radius: 10px; padding: 8px; } .gaw-spark i { flex: 1; background: var(--oceano-claro); border-radius: 3px 3px 0 0; min-width: 3px; }
.gaw-skw { display: grid; gap: 10px; margin-top: 6px; } .gaw-sk { height: 54px; border-radius: 12px; background: linear-gradient(90deg, #eef3f7 25%, #f7fafc 50%, #eef3f7 75%); background-size: 200% 100%; animation: gawSk 1.2s infinite linear; }
@keyframes gawSk { to { background-position: -200% 0; } }
.gaw-ifr { width: 100%; height: 60vh; border: 1px solid var(--linea); border-radius: 12px; background: #fff; } .gaw-asunto { font-size: 13.5px; margin: 0 0 8px; }
.gac { margin-bottom: 14px; } .gac-cab b { display: block; font-size: 15.5px; } .gac-cab small { color: var(--tinta-suave); }
.gac-g { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-top: 10px; }
.gac-b h4 { margin: 0; font-size: 14px; } .gac-b p { margin: 2px 0 8px; font-size: 12.5px; color: var(--tinta-suave); }
.gac-it { display: block; width: 100%; text-align: left; background: var(--papel); border: 1px solid var(--linea); border-radius: 12px; padding: 9px 12px; margin-bottom: 6px; cursor: pointer; min-height: 48px; transition: border-color .2s, transform .2s; }
.gac-it:hover { border-color: var(--oceano-claro); transform: translateY(-1px); } .gac-it b { display: block; font-size: 13.5px; } .gac-it small { color: var(--tinta-suave); font-size: 12px; }
.gac-n { display: inline-block; margin-top: 4px; font-size: 12px; font-weight: 700; border-radius: 99px; padding: 2px 9px; } .gac-n.caliente { background: #FDECEC; color: #B42318; } .gac-n.frio { background: #E8F2FA; color: var(--oceano); } .gac-n.estrella { background: var(--alta-fondo); color: var(--alta); }
@media (max-width: 760px) {
  .gaw-2 { grid-template-columns: 1fr; }
  .gaw-tabla { border: 0; } .gaw-tabla table, .gaw-tabla tbody, .gaw-tabla tr, .gaw-tabla td { display: block; width: 100%; } .gaw-tabla thead { display: none; }
  .gaw-tabla tr { border: 1px solid var(--linea); border-radius: 12px; padding: 8px 12px; margin-bottom: 8px; } .gaw-tabla td { border: 0; padding: 3px 0; display: flex; justify-content: space-between; gap: 10px; }
  .gaw-tabla td::before { content: attr(data-l); color: var(--tinta-suave); font-size: 12px; flex-shrink: 0; white-space: nowrap; } .gaw-tabla td { text-align: right; }
  .gaw-bar .presets { width: 100%; overflow-x: auto; flex-wrap: nowrap; }
}

/* ---- Control de campañas por curso: filas con el curso a la izquierda y sus campañas a la derecha (26/09/2026) ---- */
.ctl-filas { display: flex; flex-direction: column; gap: 14px; }
.ctl-fila { display: grid; grid-template-columns: minmax(280px, 360px) 1fr; background: var(--papel); border-radius: 16px; box-shadow: 0 2px 10px rgba(13,27,42,.06); border: 1px solid var(--linea); overflow: hidden; animation: ctlIn .25s ease both; }
@keyframes ctlIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.ctl-fila.urge { border-left: 5px solid #e05a2b; } .ctl-fila.vacia { border-left: 5px solid #e5484d; } .ctl-fila.cerrado { opacity: .78; }
.ctl-fcurso { padding: 4px 4px 12px; border-right: 1px solid var(--linea); }
.ctl-fcurso .ctl-colcab b { font-size: 15.5px; }
.ctl-fcurso .ctl-rapida { margin: 6px 0 0; align-self: flex-start; }
.ctl-fcamp { background: #F6F9FC; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ctl-fcamp-cab { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; }
.ctl-fcamp-cab > b { font-size: 13px; color: var(--tinta-suave); text-transform: uppercase; letter-spacing: .03em; }
.ctl-fcamp-cab > b span { display: inline-block; background: var(--oceano); color: #fff; border-radius: 99px; padding: 0 8px; margin-left: 4px; font-size: 12px; letter-spacing: 0; }
.ctl-crs { display: flex; flex-direction: column; gap: 6px; }
.ctl-cr { display: grid; grid-template-columns: 120px minmax(0, 1fr) auto 46px; gap: 10px; align-items: center; background: #fff; border: 1px solid var(--linea); border-left: 4px solid var(--c, #64748b); border-radius: 10px; padding: 7px 10px; }
.ctl-cr .ic-tipo { justify-self: start; }
.ctl-cr-t { min-width: 0; } .ctl-cr-t b { display: block; font-size: 13px; line-height: 1.3; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .ctl-cr-t small { color: var(--tinta-suave); font-size: 11.5px; }
.ctl-cr .ic-met { margin: 0; justify-content: flex-end; } .ctl-cr-f { color: var(--tinta-suave); font-size: 12px; text-align: right; }
.ctl-vermas { align-self: flex-start; background: none; border: 0; color: var(--oceano); font: inherit; font-weight: 700; font-size: 13px; cursor: pointer; padding: 4px 2px; min-height: 36px; }
.ctl-nada { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; background: #fff3f3; border: 1px dashed #f1b0b0; border-radius: 10px; padding: 10px 12px; } .ctl-nada span { color: #b42323; font-weight: 700; font-size: 13px; }
@media (max-width: 900px) {
  .ctl-fila { grid-template-columns: 1fr; } .ctl-fcurso { border-right: 0; border-bottom: 1px solid var(--linea); }
  .ctl-cr { grid-template-columns: 1fr auto; } .ctl-cr .ic-tipo { grid-column: 1; } .ctl-cr-f { grid-column: 2; grid-row: 1; } .ctl-cr-t { grid-column: 1 / -1; } .ctl-cr .ic-met { grid-column: 1 / -1; justify-content: flex-start; }
  .ctl-cr-t b { white-space: normal; }
}
#vControl .ctl-cr.t-whatsapp { --c: var(--t-whatsapp); }

/* ---- 🎞 Presentación del curso con Gamma (26/09/2026) ---- */
.gam h3 { margin: 0; font-size: 17px; }
.gam-acc { display: flex; gap: 10px; flex-wrap: wrap; margin: 14px 0 6px; } .gam-acc .btn { min-height: 48px; }
.gam-l { display: grid; gap: 8px; }
.gam-i { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; border: 1px solid var(--linea); border-radius: 12px; padding: 10px 12px; background: #fff; }
.gam-i b { display: block; font-size: 14px; } .gam-i small { color: var(--tinta-suave); font-size: 12px; }
.gam-b { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; } .gam-b .btn { min-height: 40px; text-decoration: none; }
.gam-est { font-size: 13px; color: var(--oceano); font-weight: 700; display: inline-flex; align-items: center; gap: 8px; } .gam-est.mal { color: var(--baja); }
.gam-spin { width: 16px; height: 16px; border-radius: 50%; border: 2.5px solid var(--linea); border-top-color: var(--oceano); animation: gamGira .8s linear infinite; display: inline-block; }
@keyframes gamGira { to { transform: rotate(360deg); } }
@media (max-width: 600px) { .gam-acc .btn, .gam-b .btn { flex: 1 1 100%; } }

/* ---- 🔄 Objeción → cursos alternativos (26/09/2026) ---- */
.fa-btn.fa-alt { background: #FFF1EA; border-color: #F6C3A6; }
.alt-f { margin: 12px 0; } .alt-f .ct-lbl { display: block; margin-bottom: 6px; }
.alt-chips { display: flex; flex-wrap: wrap; gap: 6px; } .alt-chips .chip { min-height: 40px; }
.alt-f select, .alt-f textarea { width: 100%; font: inherit; font-size: 15px; padding: 10px 12px; border: 1.5px solid var(--linea); border-radius: 10px; background: #fff; }
.alt-resp { background: #EEF6FB; border-radius: 12px; padding: 10px 12px; margin: 14px 0 10px; font-size: 14px; }
.alt-l { display: grid; gap: 8px; margin-top: 8px; }
.alt-c { border: 1px solid var(--linea); border-radius: 12px; padding: 10px 12px; background: #fff; display: flex; flex-direction: column; gap: 8px; animation: ctlIn .25s ease both; }
.alt-c-t b { display: block; font-size: 14.5px; } .alt-c-t small { color: var(--tinta-suave); font-size: 12.5px; } .alt-c-t p { margin: 6px 0 0; font-size: 13.5px; background: #FFF8EA; border-radius: 8px; padding: 6px 10px; }
.alt-c-b { display: flex; flex-wrap: wrap; gap: 6px; } .alt-c-b .btn { min-height: 40px; text-decoration: none; } .alt-ok { background: var(--alta) !important; color: #fff !important; }
@media (max-width: 600px) { .alt-c-b .btn { flex: 1 1 auto; } }

/* ---- Ficha a pantalla completa y navegación ‹ › (26/09/2026) ---- */
#ficha.ficha-full { padding: 0; }
#ficha.ficha-full > div { width: 100%; max-width: none; height: 100dvh; max-height: 100dvh; border-radius: 0; }
#ficha.ficha-full .ficha-cuerpo { padding: 20px max(24px, calc((100vw - 1400px) / 2)); }
@media (min-width: 1100px) { #ficha.ficha-full .ficha-acciones { grid-template-columns: repeat(6, 1fr); } }
.fnav { display: inline-flex; align-items: center; gap: 4px; margin-right: 4px; } .fnav-b span { font-size: 22px; line-height: 1; } .fnav-b { min-width: 40px; min-height: 40px; justify-content: center; }
.fnav-b:disabled { opacity: .35; cursor: default; } .fnav-n { color: rgba(255,255,255,.85); font-size: 12.5px; font-weight: 700; min-width: 46px; text-align: center; }
@media (max-width: 600px) { .ficha-cab { flex-wrap: wrap; } .ficha-cab-acc { width: 100%; justify-content: flex-end; flex-wrap: wrap; } .fnav { margin-right: auto; } }

/* ---- «Otras opciones»: ventana ancha en dos columnas (26/09/2026) ---- */
.modal-caja.alt-modal { max-width: min(1080px, 96vw); width: 100%; padding: 0; overflow: hidden; display: flex; flex-direction: column; max-height: 92dvh; }
.alt-cab { display: flex; justify-content: space-between; align-items: center; gap: 10px; background: var(--oceano-osc); color: #fff; padding: 14px 20px; }
.alt-cab h3 { margin: 0; color: #fff; font-size: 18px; } .alt-cab h3 small { font-weight: 600; opacity: .75; font-size: 13px; margin-left: 6px; }
.alt-x { width: 36px; height: 36px; border-radius: 50%; border: 1px solid rgba(255,255,255,.3); background: rgba(255,255,255,.14); color: #fff; font-size: 16px; cursor: pointer; }
.alt-grid { display: grid; grid-template-columns: minmax(300px, 400px) 1fr; min-height: 0; flex: 1; }
.alt-izq { padding: 16px 20px; overflow-y: auto; border-right: 1px solid var(--linea); }
.alt-der { padding: 16px 20px; overflow-y: auto; background: #F6F9FC; }
.alt-der #altRes .alt-resp { margin-top: 0; }
.alt-pie { display: flex; gap: 8px; margin-top: 14px; } .alt-pie .btn { flex: 1; min-height: 48px; }
.alt-vacio { height: 100%; min-height: 240px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: var(--tinta-suave); gap: 6px; padding: 20px; }
.alt-vacio span { font-size: 40px; } .alt-vacio b { color: var(--tinta); }
@media (min-width: 901px) { .alt-l { grid-template-columns: 1fr 1fr; } }
@media (max-width: 900px) {
  .modal-caja.alt-modal { max-width: 100%; max-height: 96dvh; border-radius: 16px 16px 0 0; }
  .alt-grid { grid-template-columns: 1fr; overflow-y: auto; } .alt-izq, .alt-der { overflow: visible; } .alt-izq { border-right: 0; border-bottom: 1px solid var(--linea); }
  .alt-vacio { min-height: 120px; }
}
/* alternativas: modalidad, beca y próxima convocatoria (26/09/2026) */
.alt-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 5px; }
.alt-mod, .alt-tag, .alt-beca { font-size: 11.5px; font-weight: 800; border-radius: 99px; padding: 3px 9px; }
.alt-mod.on { background: #EDE7FB; color: #5b34b8; } .alt-mod.pre { background: #E4F1FA; color: var(--oceano); }
.alt-tag { background: #F1F4F8; color: var(--tinta-suave); } .alt-beca { background: var(--alta-fondo); color: var(--alta); }
.alt-h { margin: 18px 0 8px; font-size: 14.5px; } .alt-h small { font-weight: 600; color: var(--tinta-suave); font-size: 12px; margin-left: 4px; }
.alt-prev { border-style: dashed; }

/* ---- 📌 Tablón de anuncios digital (27/09/2026) ---- */
.tab h3 { margin: 0; font-size: 17px; }
.tab-carp { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; background: #F6F9FC; border: 1px solid var(--linea); border-radius: 12px; padding: 10px 12px; margin: 12px 0; }
.tab-carp > div { flex: 1; min-width: 200px; } .tab-carp b { display: block; font-size: 14px; } .tab-carp small { color: var(--tinta-suave); font-size: 12px; word-break: break-word; }
.tab-ok { font-size: 12px; font-weight: 800; background: var(--alta-fondo); color: var(--alta); border-radius: 99px; padding: 3px 10px; }
.tab-acc { display: flex; flex-wrap: wrap; gap: 8px; } .tab-acc .btn { min-height: 46px; text-decoration: none; }
.tab-docs { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 8px; }
.tab-doc { display: flex; gap: 10px; align-items: center; border: 1px solid var(--linea); border-radius: 10px; padding: 8px 10px; background: #fff; } .tab-doc span { font-size: 20px; } .tab-doc b { display: block; font-size: 13px; word-break: break-word; } .tab-doc small { color: var(--tinta-suave); font-size: 11.5px; }
.tab-cambiar { margin-top: 14px; } .tab-cambiar summary { cursor: pointer; font-weight: 700; color: var(--oceano); font-size: 13.5px; }
.tab-sel { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 8px; } .tab-sel select { flex: 1 1 320px; min-width: 0; font: inherit; font-size: 14px; padding: 9px 10px; border: 1.5px solid var(--linea); border-radius: 10px; }
@media (max-width: 600px) { .tab-acc .btn { flex: 1 1 100%; } }

/* ---- 📥 Importar cursos de una resolución (27/09/2026) ---- */
.imp-subir { border: 2.5px dashed #9cc9e4; border-radius: 18px; padding: 36px 16px; text-align: center; cursor: pointer; background: #F6FAFD; transition: background .2s, border-color .2s; display: flex; flex-direction: column; gap: 6px; align-items: center; }
.imp-subir.sobre, .imp-subir:hover { background: #EAF4FB; border-color: var(--oceano-claro); } .imp-subir span { font-size: 42px; } .imp-subir b { font-size: 17px; } .imp-subir small { color: var(--tinta-suave); }
.imp-pasos-txt { margin: 16px 0 0; padding-left: 20px; color: var(--tinta-suave); font-size: 14px; line-height: 1.6; }
.imp-ant { display: flex; flex-wrap: wrap; gap: 6px; }
.imp-leyendo { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 40px 10px; text-align: center; } .imp-leyendo .gam-spin { width: 34px; height: 34px; border-width: 4px; } .imp-leyendo small { color: var(--tinta-suave); }
.imp-stepper { display: flex; gap: 6px; margin-bottom: 12px; overflow-x: auto; } .imp-st { flex: 1; min-width: 120px; display: flex; align-items: center; gap: 8px; border: 1.5px solid var(--linea); background: #fff; border-radius: 12px; padding: 8px 10px; font: inherit; font-weight: 700; color: var(--tinta-suave); cursor: pointer; }
.imp-st i { font-style: normal; width: 24px; height: 24px; border-radius: 50%; background: var(--arena); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; } .imp-st.on { border-color: var(--oceano); color: var(--oceano); } .imp-st.on i { background: var(--oceano); color: #fff; } .imp-st.ok i { background: var(--alta); color: #fff; }
.imp-res { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; } .imp-res small { display: block; color: var(--tinta-suave); font-size: 12px; } .imp-res b { display: block; font-size: 16px; } .imp-res span { font-size: 13px; color: var(--tinta-suave); }
.imp-l { display: grid; gap: 10px; margin-top: 10px; }
.imp-c { border: 1px solid var(--linea); border-radius: 14px; padding: 12px; background: #fff; } .imp-c.off { opacity: .55; background: #F6F9FC; }
.imp-inc { display: inline-flex; align-items: center; gap: 8px; font-weight: 800; font-size: 13px; color: var(--oceano); margin-bottom: 8px; } .imp-inc input { width: 20px; height: 20px; }
.imp-c-cab { display: flex; gap: 12px; align-items: flex-start; } .imp-foto { flex: 0 0 96px; height: 64px; border-radius: 10px; background: #E4F1FA center/cover; display: flex; align-items: center; justify-content: center; }
.imp-c-tit { flex: 1; min-width: 0; } .imp-c-tit input { width: 100%; font: inherit; font-weight: 800; font-size: 15px; border: 1.5px solid transparent; border-radius: 8px; padding: 4px 6px; } .imp-c-tit input:focus { border-color: var(--linea); outline: none; } .imp-c-tit small { display: block; color: var(--tinta-suave); font-size: 12.5px; padding: 0 6px; }
.imp-no { color: var(--baja); } .imp-f { display: inline-flex; align-items: center; gap: 6px; margin: 6px 6px 0; font-size: 12px; font-weight: 700; color: var(--oceano); } .imp-f.ok { color: var(--alta); } .imp-f.mal { color: var(--baja); } .imp-f .gam-spin { width: 12px; height: 12px; border-width: 2px; }
.imp-campos { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 8px; margin-top: 10px; } .imp-campos label, .imp-cfg label, .imp-cal-f label { display: flex; flex-direction: column; gap: 3px; font-size: 11.5px; font-weight: 700; color: var(--tinta-suave); }
.imp-campos input, .imp-campos select, .imp-cfg input, .imp-cal-f input { font: inherit; font-size: 14px; padding: 8px; border: 1.5px solid var(--linea); border-radius: 8px; background: #fff; color: var(--tinta); min-width: 0; } .imp-h { display: flex; gap: 4px; } .imp-h input { flex: 1; }
.imp-prev { display: flex; gap: 8px; align-items: center; margin-top: 10px; font-size: 13px; background: #EEF8F2; border-radius: 10px; padding: 8px 10px; } .imp-prev input { width: 18px; height: 18px; }
.imp-pie { display: flex; justify-content: flex-end; gap: 8px; margin-top: 14px; position: sticky; bottom: 0; background: linear-gradient(transparent, var(--papel) 30%); padding-top: 10px; } .imp-pie .btn { min-height: 48px; }
.imp-meses { display: grid; grid-template-columns: repeat(auto-fill, minmax(88px, 1fr)); gap: 8px; margin: 12px 0; } .imp-mes { border: 2px solid; border-radius: 12px; padding: 8px; font: inherit; cursor: pointer; display: flex; flex-direction: column; align-items: center; gap: 1px; }
.imp-mes.si { border-color: #9fd3b6; background: #EEF8F2; color: #17693a; } .imp-mes.no { border-color: #f1b0b0; background: #FDF0F0; color: #b42323; } .imp-mes small { font-size: 11px; opacity: .8; } .imp-mes i { font-style: normal; font-size: 12px; font-weight: 800; }
.imp-cfg { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; margin-bottom: 12px; } .imp-cfg .btn { min-height: 44px; }
.imp-cal { display: grid; gap: 8px; } .imp-cal-f { display: grid; grid-template-columns: 1fr 160px 160px; gap: 10px; align-items: end; border: 1px solid var(--linea); border-radius: 12px; padding: 10px; } .imp-cal-f b { display: block; font-size: 14px; } .imp-cal-f small { color: var(--tinta-suave); font-size: 12px; }
.imp-pub { display: flex; gap: 8px; align-items: center; font-weight: 700; font-size: 14px; } .imp-pub input { width: 20px; height: 20px; }
.imp-prevs { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 14px; margin-top: 12px; }
.imp-pv { border: 1px solid var(--linea); border-radius: 16px; overflow: hidden; background: #fff; box-shadow: 0 4px 14px rgba(13,27,42,.06); display: flex; flex-direction: column; animation: ctlIn .3s ease both; }
.imp-pv-foto { aspect-ratio: 16/8; background: linear-gradient(135deg, #12466b, #1A8CC4) center/cover; position: relative; } .imp-pv-foto span { position: absolute; left: 10px; bottom: 10px; background: rgba(13,27,42,.7); color: #fff; font-size: 12px; font-weight: 700; border-radius: 8px; padding: 4px 8px; }
.imp-pv-b { padding: 12px 14px 14px; } .imp-pv-b h4 { margin: 6px 0 2px; font-size: 16px; } .imp-pv-b > small { color: var(--tinta-suave); font-size: 12.5px; }
.imp-ifr { width: 100%; height: 300px; border: 1px solid var(--linea); border-radius: 10px; margin-top: 10px; background: #fff; } .imp-nota { margin-top: 10px; font-size: 13px; background: #F6F9FC; border-radius: 10px; padding: 10px; display: flex; gap: 8px; align-items: center; }
.imp-ok { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; border: 1px solid var(--linea); border-radius: 10px; padding: 8px 12px; } .imp-ok span { flex: 1; font-size: 13px; color: var(--tinta-suave); } .imp-ok.no { background: #FDF0F0; }
@media (max-width: 700px) { .imp-cal-f { grid-template-columns: 1fr 1fr; } .imp-cal-f > div { grid-column: 1 / -1; } .imp-prevs { grid-template-columns: 1fr; } .imp-pie .btn { flex: 1; } }
.imp-foto { position: relative; border: 0; cursor: pointer; overflow: hidden; } .imp-foto span { position: absolute; left: 0; right: 0; bottom: 0; background: rgba(13,27,42,.65); color: #fff; font-size: 11px; font-weight: 700; padding: 3px; text-align: center; opacity: 0; transition: opacity .2s; } .imp-foto:hover span, .imp-foto:focus span { opacity: 1; }
@media (hover: none) { .imp-foto span { opacity: 1; } }
.imp-campos label:last-child { grid-column: span 2; } .imp-h input { min-width: 110px; }
.imp-nota { display: block; } .imp-nota .gam-spin { vertical-align: middle; margin-right: 6px; }
.imp-noad { background: none; border: 1.5px dashed var(--linea); border-radius: 12px; padding: 10px; font: inherit; font-weight: 700; color: var(--tinta-suave); cursor: pointer; }
.imp-fb { display: flex; gap: 8px; margin: 10px 0; } .imp-fb input { flex: 1; font: inherit; padding: 9px 10px; border: 1.5px solid var(--linea); border-radius: 10px; }
.imp-fg { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; max-height: 60vh; overflow-y: auto; }
.imp-fo { aspect-ratio: 16/10; border: 2px solid transparent; border-radius: 12px; background: #eef3f7 center/cover; cursor: pointer; position: relative; } .imp-fo:hover { border-color: var(--oceano-claro); } .imp-fo small { position: absolute; left: 6px; bottom: 6px; right: 6px; font-size: 10px; color: #fff; text-shadow: 0 1px 2px #000; text-align: left; }
.imp-conv { display: flex; flex-direction: column; gap: 4px; flex: 1 1 100%; } .imp-conv span { font-size: 11.5px; font-weight: 800; color: var(--tinta-suave); text-transform: uppercase; letter-spacing: .03em; }
.imp-conv select { font: inherit; font-size: 15px; padding: 9px 10px; border: 1.5px solid var(--linea); border-radius: 10px; max-width: 460px; } .imp-conv small { font-size: 12px; }
#impConvN { width: 100%; font: inherit; font-size: 15px; padding: 10px 12px; border: 1.5px solid var(--linea); border-radius: 10px; }
.imp-cita { font-weight: 600; color: var(--alta); font-size: 11px; }
/* importación: acción que ya está en tizo */
.imp-c.imp-ya{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;opacity:1;background:#F2FAF5;border-color:#BFE3CC}
.imp-ya-t{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 260px}
.imp-ya-t b{color:#14232F}.imp-ya-t span{color:#1F6B3A;font-size:.92rem;line-height:1.4}
/* ¿se ve el curso en la web? */
.web-chip{font-size:11.5px;font-weight:800;border-radius:99px;padding:3px 9px;white-space:nowrap}
.web-chip.si{background:#E3F6EA;color:#1F7A43}.web-chip.no{background:#FDE8E8;color:#B42318}

/* interruptor «En la web» de la tarjeta del curso */
.web-sw{display:inline-flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:99px;padding:4px 11px 4px 5px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;min-height:30px;white-space:nowrap;transition:background .2s,filter .2s}
.web-sw i{position:relative;width:30px;height:18px;border-radius:99px;flex:0 0 auto;transition:background .2s}
.web-sw i::after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .2s}
.web-sw.si{background:#E3F6EA;color:#1F7A43;border-color:#BFE3CC}.web-sw.si i{background:#2E9E5B}.web-sw.si i::after{transform:translateX(12px)}
.web-sw.no{background:#FDE8E8;color:#B42318;border-color:#F6C9C9}.web-sw.no i{background:#C9CFD6}
.web-sw:hover{filter:brightness(.97)}.web-sw:focus-visible{outline:2px solid var(--oceano,#0F6A9C);outline-offset:2px}.web-sw.cargando{opacity:.65;cursor:wait}
/* ===== Ficha del curso: franja de estado + navegación por grupos (27/09) ===== */
#cursoResumen .curso-estado{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;background:#fff;border:1px solid var(--linea);border-left:4px solid var(--oceano,#1A8CC4);border-radius:12px;padding:10px 14px;margin:6px 0 0;font-size:14px;color:#37506a}
#cursoResumen .curso-estado > span{display:inline-flex;align-items:center}
#cursoResumen .curso-estado > span + span:not(.ce-k)::before{content:'';width:4px;height:4px;border-radius:50%;background:#c3cfda;margin-right:14px}
#cursoResumen .curso-estado .ce-k{width:100%;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7b8ea3}
#cursoResumen .curso-estado > span:nth-child(2)::before{display:none}
.ctabs{background:#fff;border:1px solid var(--linea);border-radius:14px;margin:12px 0 14px;overflow:hidden}
.ctabs-g{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid var(--linea);background:#f7fafc}
.ctabs-gb{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;font:inherit;font-size:14.5px;font-weight:800;color:#51667c;padding:12px 8px;cursor:pointer;min-height:48px;transition:color .15s,background .15s}
.ctabs-gb svg{width:18px;height:18px;flex:0 0 auto}
.ctabs-gb:hover{color:var(--marino,#0D1B2A);background:#eef4f9}
.ctabs-gb.on{color:var(--oceano,#1A8CC4);background:#fff}
.ctabs-gb.on::after{content:'';position:absolute;left:14px;right:14px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--oceano,#1A8CC4)}
.ctabs-gb .badge{background:#F2B23E;color:#4a3500;border-radius:999px;font-size:11px;font-weight:800;padding:1px 7px}
.ctabs-gb:focus-visible,.ctabs .tab:focus-visible{outline:2px solid var(--oceano,#1A8CC4);outline-offset:-2px}
#cursoTabs.tabs-curso{border:0;border-radius:0;margin:0;padding:8px 10px;gap:4px;background:#fff;box-shadow:none;-webkit-mask-image:none;mask-image:none;flex-wrap:wrap}
#cursoTabs .tab{display:none;padding:7px 11px;font-size:13.5px;border-radius:9px;gap:7px;color:#51667c}
#cursoTabs[data-grupo-activo="gestion"] .tab[data-grupo="gestion"],#cursoTabs[data-grupo-activo="seguimiento"] .tab[data-grupo="seguimiento"],#cursoTabs[data-grupo-activo="captacion"] .tab[data-grupo="captacion"],#cursoTabs[data-grupo-activo="contenido"] .tab[data-grupo="contenido"]{display:inline-flex}
#cursoTabs .tab.oculto{display:none!important}
#cursoTabs .tab-ico svg{width:16px;height:16px;display:block}
#cursoTabs .tab:hover{background:#f0f6fa;color:var(--marino,#0D1B2A)}
#cursoTabs .tab.activa{background:#E6F2FA;color:var(--oceano,#0F6A9C);box-shadow:inset 0 0 0 1px #bcdcf0}
#cursoTabs .tab.activa .badge{background:#F2B23E;color:#4a3500}
@media (max-width:700px){
  .ctabs{margin:10px 0 12px}
  .ctabs-gb{flex-direction:column;gap:3px;font-size:12px;padding:9px 4px;min-height:58px}
  .ctabs-gb .badge{position:absolute;top:5px;right:10%}
  #cursoTabs.tabs-curso{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding:8px}
  #cursoTabs .tab{flex:0 0 auto;min-height:40px}
  #cursoResumen .curso-estado{font-size:13px;gap:4px 10px}
  #cursoResumen .curso-estado > span + span:not(.ce-k)::before{margin-right:10px}
}
#cursoTabs .tab{border-bottom:0!important;margin:0}
/* tablón: buscador de carpetas */
.tab-busca{margin:10px 0 8px}.tab-busca input{width:100%;font:inherit;font-size:15px;padding:11px 14px;border:1px solid var(--linea);border-radius:10px;min-height:46px}
.tab-res{display:flex;flex-direction:column;gap:6px;margin-top:8px;max-height:360px;overflow-y:auto}
.tab-res-k{color:#7b8ea3;font-size:12px;font-weight:700}
.tab-r{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:1px solid var(--linea);background:#fff;border-radius:10px;padding:9px 12px;font:inherit;cursor:pointer}
.tab-r b{font-size:14px;color:var(--marino,#0D1B2A)}.tab-r small{font-size:12px;color:#7b8ea3;word-break:break-word}
.tab-r:hover{background:#f3f8fc}.tab-r.on{border-color:var(--oceano,#1A8CC4);background:#E6F2FA;box-shadow:inset 0 0 0 1px var(--oceano,#1A8CC4)}.tab-r.actual b::after{content:' ✓';color:#1F7A43}
.tab-res-v{padding:10px 12px;background:#FFF6E3;color:#6b4500;border-radius:10px;font-size:13.5px}
/* tablón en Padlet */
.tab-pad{margin-bottom:14px}.pad-logo{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,#7C3AED,#EC4899);color:#fff;font-weight:900;font-size:14px;margin-right:4px;vertical-align:-3px}
.pad-card{display:flex;gap:16px;align-items:center;flex-wrap:wrap;background:#FAF7FF;border:1px solid #E6DCFB;border-radius:12px;padding:12px}
.pad-qr{width:104px;height:104px;border-radius:8px;background:#fff;padding:4px;border:1px solid #eee}
.pad-inf{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 240px}.pad-inf b{font-size:15.5px;color:var(--marino,#0D1B2A)}.pad-inf small{color:#7b8ea3}
.pad-inf .tab-acc{margin-top:6px}
@media (max-width:600px){.pad-qr{width:88px;height:88px}}
/* 🗺 mapa de empresas */
.emm{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}
.emm-map-w{position:relative;z-index:0;isolation:isolate}.emm-map{position:relative;z-index:0;isolation:isolate;height:min(70vh,640px);border-radius:14px;border:1px solid var(--linea);overflow:hidden;background:#e9eef3}
.emm-ley{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px;color:#51667c;margin-top:8px}.emm-ley i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.emm-pin span{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font:800 12px/1 Archivo,Arial,sans-serif;opacity:.85;border:2px solid #fff;box-shadow:0 2px 6px rgba(13,27,42,.3);box-sizing:border-box}
.emm-pin span:hover{opacity:1}
.emm-lado{background:#fff;border:1px solid var(--linea);border-radius:14px;padding:12px;max-height:min(70vh,640px);overflow-y:auto}
.emm-cab{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px}.emm-cab h4{margin:0;width:100%;font-size:16px}.emm-cab small{color:#7b8ea3;flex:1}
.emm-l{display:flex;flex-direction:column;gap:6px}.emm-e{display:flex;align-items:center;gap:8px;border:1px solid var(--linea);border-radius:10px;padding:7px 9px}
.emm-e input{width:18px;height:18px;flex:0 0 auto}.emm-n{flex:1;min-width:0;text-align:left;border:0;background:none;font:inherit;cursor:pointer;padding:0;display:flex;flex-direction:column}
.emm-n b{font-size:13.5px;color:var(--marino,#0D1B2A);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emm-n small{font-size:12px;color:#7b8ea3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.emm-est{font-size:11px;font-weight:800;border-radius:99px;padding:2px 8px;white-space:nowrap;margin:0}
.emm-vacio{color:#7b8ea3;font-size:14px;padding:18px 6px;text-align:center}
@media (max-width:900px){.emm{grid-template-columns:1fr}.emm-map{height:55vh}.emm-lado{max-height:none}}
/* ✅ documentación obligatoria y 📌 vista Tablón de anuncios */
.tbd{margin-bottom:14px}.tbd-l{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.tbd-l li{display:flex;gap:9px;align-items:flex-start;border-radius:10px;padding:8px 10px;border:1px solid var(--linea)}.tbd-l li span{font-weight:900;flex:0 0 auto;width:20px;text-align:center}
.tbd-l li.si{background:#F2FAF5;border-color:#CDEBD8}.tbd-l li.si span{color:#1F7A43}.tbd-l li.no{background:#FFF4F2;border-color:#F6D2CC}.tbd-l li.no span{color:#B42318}
.tbd-l b{display:block;font-size:13.5px}.tbd-l small{display:block;font-size:12px;color:#7b8ea3;word-break:break-word}
.tbs-qr{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.tbs-qr-img svg{width:150px;height:150px;display:block}.tbs-qr-t{flex:1 1 300px}.tbs-qr-t h3{margin:0 0 4px}
.tbs-res{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tbs-chip{font-size:12px;font-weight:800;border-radius:99px;padding:4px 10px}.tbs-chip.no{background:#FDE8E8;color:#B42318}.tbs-chip.si{background:#E3F6EA;color:#1F7A43}.tbs-chip.gr{background:#EEF2F6;color:#51667c}
.tbs-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.tbs-c{background:#fff;border:1px solid var(--linea);border-left:4px solid #2E9E5B;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.tbs-c.falta{border-left-color:#E8A317}
.tbs-c-cab{display:flex;gap:8px;justify-content:space-between;align-items:flex-start}.tbs-c-cab b{display:block;font-size:14.5px;line-height:1.3}.tbs-c-cab small{color:#7b8ea3;font-size:12px}
.tbs-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.tbs-t{font-size:11px;font-weight:800;border-radius:99px;padding:2px 8px}.tbs-t.pad{background:#F1E9FE;color:#6D28D9}.tbs-t.od{background:#E4F1FA;color:#0F6A9C}
.tbs-f summary{cursor:pointer;font-weight:800;font-size:13px;color:#8a5a00}.tbs-f ul{margin:6px 0 0 18px;padding:0;font-size:13px;color:#51667c}.tbs-ok{font-size:13px;font-weight:700;color:#1F7A43}
.tbs-acc{display:flex;gap:6px;flex-wrap:wrap}.tbs-sin{margin-top:14px}.tbs-sin summary{cursor:pointer}.tbs-sin ul{margin:10px 0 0 18px;padding:0;display:flex;flex-direction:column;gap:4px}
.btn-link{border:0;background:none;color:var(--oceano,#1A8CC4);font:inherit;font-weight:700;cursor:pointer;padding:0;text-align:left}
.tbs-qrs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;margin-top:10px}
.tbs-qrs .tbs-qr{display:flex;gap:12px;align-items:center;border:1px solid var(--linea);border-radius:12px;padding:10px;background:#fff}
.tbs-qrs .tbs-qr-img svg{width:96px;height:96px}.tbs-qrs .tbs-qr-t{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.tbs-qrs .tbs-qr-t small{color:#7b8ea3}
.tbs-bar{display:flex;flex-direction:column;gap:8px;margin:14px 0 4px}.tbs-bar input{font:inherit;font-size:15px;padding:11px 14px;border:1px solid var(--linea);border-radius:10px;min-height:46px;width:100%}
.tbs-chip{border:1px solid transparent;cursor:pointer;font-family:inherit;min-height:34px}.tbs-chip.az{background:#E4F1FA;color:#0F6A9C}.tbs-chip:not(.az):not(.no):not(.gr){background:#fff;border-color:var(--linea);color:#37506a}
.tbs-chip.on{box-shadow:0 0 0 2px var(--oceano,#1A8CC4)}.tbs-c.sin{border-left-color:#9AA9B8;background:#FAFBFC}.tbs-t.sin{background:#EEF2F6;color:#51667c}.tbs-sinx{font-size:13px;color:#51667c}
.gaw-h small{color:#7b8ea3;font-weight:600}

.tbs-cab-b{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}
.imp-vid{margin-top:12px}

/* 🎓 Evaluaciones (28/09/2026) */
#cursoEval{--ev-ok:#1E9E62;--ev-okf:#E3F6EC;--ev-no:#D64545;--ev-nof:#FDECEC;--ev-cv:#2F7FC1;--ev-cvf:#E4F1FA;--ev-pe:#8A97A3;--ev-pef:#F1F4F7;--ev-ab:#8A6A3E;--ev-abf:#F6EFE4}
.ev-cab{display:flex;flex-direction:column;gap:12px;margin:4px 0 12px}
.ev-tit{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.ev-tit h3{margin:0}.ev-tit small{color:var(--tinta-suave)}
.ev-guard{font-size:12.5px;font-weight:700;color:var(--ev-ok);min-height:18px}.ev-guard.mal{color:var(--ev-no)}
.ev-kpis .ev-k-ok b{color:var(--ev-ok)}
.ev-seg{overflow-x:auto}.ev-seg button{white-space:nowrap}
.ev-c{width:40px;height:40px;border-radius:10px;border:0;font:inherit;font-weight:800;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s}
.ev-c:active{transform:scale(.92)}
.ev-ok{background:var(--ev-okf);color:var(--ev-ok)}.ev-no{background:var(--ev-nof);color:var(--ev-no)}.ev-cv{background:var(--ev-cvf);color:var(--ev-cv)}.ev-pe{background:var(--ev-pef);color:var(--ev-pe)}.ev-ab{background:var(--ev-abf);color:var(--ev-ab)}
.ev-ley{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:12.5px;color:var(--tinta-suave);margin:4px 2px 10px}.ev-ley span{display:inline-flex;align-items:center;gap:6px}.ev-ley .ev-c{width:22px;height:22px;font-size:11px;border-radius:6px;cursor:default}.ev-ley small{margin-left:auto}
.ev-grid-w{overflow-x:auto;background:#fff;border:1px solid var(--linea);border-radius:14px;max-width:100%}
.ev-grid{border-collapse:separate;border-spacing:0;min-width:100%;font-size:13px}
.ev-grid th,.ev-grid td{padding:6px;text-align:center;border-bottom:1px solid #EEF2F6}
.ev-grid th{position:sticky;top:0;background:#F8FBFD;font-size:12px;color:var(--tinta-suave)}.ev-grid th span{display:block;font-weight:800;color:var(--tinta)}.ev-grid th small{font-weight:600}
.ev-grid .ev-nom{text-align:left;position:sticky;left:0;background:#fff;min-width:170px;max-width:230px;z-index:1}.ev-grid th.ev-nom{background:#F8FBFD;z-index:2}
.ev-nom b{display:block;font-size:13.5px;line-height:1.25}.ev-nom small,.ev-fila-n small{display:block;font-size:11.5px;color:var(--tinta-suave)}
.ev-asr{color:var(--ev-no)!important;font-weight:700}
.ev-chip{border:0;border-radius:999px;padding:7px 12px;font:inherit;font-weight:800;font-size:12.5px;cursor:pointer;white-space:nowrap}
.ev-chip.on{box-shadow:0 0 0 2px currentColor inset}
.ev-mods{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px}
.ev-mod{display:flex;align-items:center;gap:8px;min-width:210px;max-width:250px;text-align:left;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:8px 10px;cursor:pointer;font:inherit}
.ev-mod.on{border-color:var(--azul,#1A8CC4);box-shadow:0 0 0 2px rgba(26,140,196,.18)}.ev-mod b{display:block;font-size:13.5px}.ev-mod small{display:block;font-size:11.5px;color:var(--tinta-suave);line-height:1.25}
.ev-modc{margin-top:4px}.ev-modcab{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:8px}.ev-modcab h4{margin:0 0 2px}.ev-modcab small{color:var(--tinta-suave)}
.ev-lista{display:flex;flex-direction:column}
.ev-fila{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid #EEF2F6;flex-wrap:wrap}.ev-fila:last-child{border-bottom:0}
.ev-fila-n{flex:1 1 200px;min-width:0}.ev-fila-n b{display:block}
.ev-sug{color:var(--ev-cv)!important;font-weight:700}
.ev-seg2{display:flex;background:#F1F4F7;border-radius:11px;padding:3px;gap:3px;flex-wrap:wrap}
.ev-seg2 button{border:0;background:transparent;border-radius:8px;padding:8px 10px;font:inherit;font-size:12.5px;font-weight:700;color:var(--tinta-suave);cursor:pointer;min-height:36px}
.ev-seg2 button.on.ev-ok{background:var(--ev-ok);color:#fff}.ev-seg2 button.on.ev-no{background:var(--ev-no);color:#fff}.ev-seg2 button.on.ev-cv{background:var(--ev-cv);color:#fff}.ev-seg2 button.on.ev-ab{background:var(--ev-ab);color:#fff}.ev-seg2 button.on.ev-pe{background:#fff;color:var(--tinta);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ev-seg2 button:not(.on){background:transparent!important}
.ev-nota{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--tinta-suave)}.ev-nota input{width:58px;font:inherit;font-size:15px;text-align:center;padding:8px 6px;border:1px solid var(--linea);border-radius:10px}
.ev-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.ev-card{background:#fff;border:1px solid var(--linea);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:10px;animation:evIn .3s ease both;animation-delay:var(--d)}
@keyframes evIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ev-card-cab{display:flex;gap:10px;align-items:center}.ev-card-cab b{display:block;font-size:14px}.ev-card-cab small{display:block;font-size:12px;color:var(--tinta-suave)}
.ev-mini{display:flex;gap:3px}.ev-mini i{flex:1;height:8px;border-radius:4px}
.ev-mini i.ev-ok{background:var(--ev-ok)}.ev-mini i.ev-no{background:var(--ev-no)}.ev-mini i.ev-cv{background:var(--ev-cv)}.ev-mini i.ev-pe{background:#DDE4EA}
.ev-card-pie{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ev-sugb{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ev-res{display:flex;flex-direction:column;gap:12px}.ev-res-big{display:flex;align-items:center;gap:18px}.ev-res-big b{display:block;font-size:26px}.ev-res-big small{display:block;color:var(--tinta-suave)}
.ev-barras{display:flex;flex-direction:column;gap:8px}.ev-barra{display:grid;grid-template-columns:minmax(120px,240px) 1fr;gap:10px;align-items:center}
.ev-barra span b{display:block;font-size:13px}.ev-barra span small{display:block;font-size:11.5px;color:var(--tinta-suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-barra-b{display:flex;height:26px;border-radius:8px;overflow:hidden;background:#F1F4F7}.ev-barra-b i{display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;font-weight:800;color:#fff}
.ev-barra-b i.ev-ok{background:var(--ev-ok)}.ev-barra-b i.ev-no{background:var(--ev-no)}.ev-barra-b i.ev-cv{background:var(--ev-cv)}.ev-barra-b i.ev-pe{background:#C9D2DA}
.ev-opf{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.ev-conf{max-height:40vh;overflow:auto;padding-left:18px}
.ev-bajas{margin-top:12px;color:var(--tinta-suave);font-size:13px}
@media(max-width:640px){.ev-fila{align-items:stretch}.ev-seg2{width:100%}.ev-seg2 button{flex:1}.ev-barra{grid-template-columns:1fr}.ev-res-big{flex-direction:column;text-align:center}.ev-ley small{margin-left:0;width:100%}}
@media(prefers-reduced-motion:reduce){.ev-card{animation:none}}
.ev-seg2 button{white-space:nowrap;word-break:keep-all}
@media(max-width:640px){.ev-seg2{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}.ev-seg2 button{font-size:12px;padding:8px 4px}.ev-grid .ev-nom{min-width:130px}}
.mp-card{border-color:#F5DEAD;background:linear-gradient(135deg,#FFF8EA,#fff)}
.mp-lista{display:flex;flex-direction:column}.mp-fila{display:flex;align-items:center;gap:8px;padding:9px 2px;border-bottom:1px solid #F2E6CC;flex-wrap:wrap}.mp-fila:last-child{border-bottom:0}
.mp-n{flex:1 1 220px;min-width:0}.mp-n b{cursor:pointer;display:block}.mp-n small{display:block;color:var(--tinta-suave);font-size:12px}.mp-sin{font-size:12px;color:var(--tinta-suave)}

/* 🗂 Ficha del alumno por pestañas (28/09/2026) */
.ft-tabs{display:flex;gap:4px;background:#eef2f6;border-radius:14px;padding:4px;margin:0 0 14px;position:sticky;top:0;z-index:5;overflow-x:auto;box-shadow:0 6px 12px -8px rgba(13,27,42,.18)}
.ft-tabs button{flex:1;border:0;background:transparent;border-radius:10px;padding:10px 10px;font:inherit;font-weight:700;font-size:13.5px;color:var(--tinta-suave);cursor:pointer;white-space:nowrap;min-height:42px}
.ft-tabs button.on{background:#fff;color:var(--tinta);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ft-tabs button i{font-style:normal;font-size:11.5px;background:#DCE5EE;color:var(--tinta);border-radius:999px;padding:1px 7px;margin-left:3px}
.ft-tabs button.on i{background:var(--marino,#0D1B2A);color:#fff}
.ft-pane{animation:ftIn .18s ease}@keyframes ftIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.ft-pane[hidden]{display:none!important}
.ft-pane > .ficha-sec,.ft-pane > details.ficha-sec,.ft-pane > #fichaHist{margin-bottom:12px}
/* acciones: 4 a la vista y el resto plegado */
#ficha .ficha-acciones{grid-template-columns:repeat(4,1fr);margin-bottom:8px}
.fa-mas{margin:0 0 14px}
.fa-mas > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;color:var(--tinta-suave);padding:8px 12px;border-radius:10px;background:#F4F7FA;border:1px solid var(--linea)}
.fa-mas > summary::-webkit-details-marker{display:none}.fa-mas > summary span{font-size:16px;line-height:1}.fa-mas[open] > summary{color:var(--tinta);background:#fff}
.fa-mas-rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;margin-top:10px}
.fa-mas-rejilla .fa-btn{min-height:62px}
/* perfil de la IA: plegado para no llenar la ficha de texto */
.perfil-wrap{position:relative;margin-bottom:14px}
.perfil-wrap.plegado .perfil-ia{max-height:230px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}
.perfil-mas{display:block;margin:6px auto 0;border:1px solid var(--linea);background:#fff;border-radius:999px;padding:7px 16px;font:inherit;font-weight:700;font-size:13px;color:var(--tinta);cursor:pointer}
.perfil-wrap .perfil-ia:empty + .perfil-mas{display:none}
/* respiración general */
#ficha .ficha-datos{gap:10px 16px}
#ficha .ficha-sec h4{font-size:15.5px}
#ficha .insc{border-radius:14px}
#ficha .segui{border-radius:12px}
@media(max-width:760px){#ficha .ficha-acciones{grid-template-columns:repeat(4,1fr);gap:6px}#ficha .ficha-acciones .fa-btn small{display:none}#ficha .ficha-acciones .fa-btn{min-height:60px;padding:8px 4px}.ft-tabs button{font-size:12.5px;padding:9px 8px}.fa-mas-rejilla{grid-template-columns:repeat(3,1fr)}}

/* 🗂 Historial de gestiones en tarjetas (28/09/2026) */
.sg-lista{display:flex;flex-direction:column;gap:10px}
.sg-mes{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tinta-suave);margin:8px 2px 0}
.sg-card{background:#fff;border:1px solid var(--linea);border-left:4px solid var(--azul,#1A8CC4);border-radius:14px;padding:12px 14px;box-shadow:0 2px 8px rgba(13,27,42,.04);animation:sgIn .25s ease both;animation-delay:var(--d)}
@keyframes sgIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.sg-card.sg-auto{border-left-color:#B8C4CF;background:#FAFBFC}.sg-card.sg-auto .sg-txt{color:#4a5866;font-weight:500;font-size:14px}
.sg-card.sg-eval{border-left-color:#1E9E62}
.sg-txt{margin:0 0 10px;font-size:15.5px;line-height:1.45;font-weight:600;color:var(--tinta);white-space:normal}
.sg-card footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sg-av{width:28px;height:28px;border-radius:50%;background:#E4F1FA;color:#156E9B;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px}
.sg-quien{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sg-quien b{font-size:12.5px;color:var(--tinta)}.sg-quien small{font-size:11.5px;color:var(--tinta-suave)}
.sg-cur{margin-left:auto;font-size:11.5px;font-weight:700;background:#F1F4F7;color:#4a5866;border-radius:999px;padding:3px 10px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:520px){.sg-cur{margin-left:36px}}
@media(prefers-reduced-motion:reduce){.sg-card{animation:none}}

/* 🎨 Historial con color según el tono (28/09/2026) */
#fichaHist .sg-lista{gap:12px}
.sg-card{display:flex;gap:14px;align-items:flex-start;border:0;border-left:0;border-radius:18px;padding:16px 18px;width:100%;box-shadow:0 4px 14px rgba(13,27,42,.06);background:linear-gradient(135deg,var(--sg-f1),var(--sg-f2));border:1px solid var(--sg-b)}
.sg-card.sg-pos{--sg-f1:#E6F7EE;--sg-f2:#F6FCF8;--sg-b:#BFE7D0;--sg-c:#1B7F4E}
.sg-card.sg-neg{--sg-f1:#FDE9E9;--sg-f2:#FFF7F7;--sg-b:#F4C5C5;--sg-c:#B83232}
.sg-card.sg-pend{--sg-f1:#FFF3DC;--sg-f2:#FFFBF2;--sg-b:#F3DDB0;--sg-c:#9A6206}
.sg-card.sg-info{--sg-f1:#E6F2FB;--sg-f2:#F6FAFE;--sg-b:#C5DEF1;--sg-c:#156E9B}
.sg-card.sg-auto{--sg-f1:#F0EEF8;--sg-f2:#FAF9FD;--sg-b:#DAD4EE;--sg-c:#5B4B99;background:linear-gradient(135deg,var(--sg-f1),var(--sg-f2))}
.sg-card.sg-eval{--sg-f1:#E7F3F7;--sg-f2:#F6FBFC;--sg-b:#BFDDE6;--sg-c:#0F6A7E}
.sg-badge{flex:0 0 44px;height:44px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 2px 6px rgba(13,27,42,.08)}
.sg-body{flex:1;min-width:0}
.sg-tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--sg-c);margin-bottom:4px}
.sg-card .sg-txt{font-size:16px;font-weight:600;color:#14232F;margin:0 0 12px}
.sg-card.sg-auto .sg-txt{font-size:14.5px;font-weight:500;color:#3F4B57}
.sg-card .sg-av{background:#fff;color:var(--sg-c)}
.sg-card .sg-cur{background:rgba(255,255,255,.8);color:var(--sg-c);border:1px solid var(--sg-b)}
.sg-filtros{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}
.sg-f{border:1px solid var(--linea);background:#fff;border-radius:999px;padding:7px 12px;font:inherit;font-size:12.5px;font-weight:700;color:var(--tinta);cursor:pointer;min-height:36px}
.sg-f i{font-style:normal;font-size:11px;background:#EEF2F6;border-radius:999px;padding:1px 7px;margin-left:3px}
.sg-f.on{background:var(--marino,#0D1B2A);color:#fff;border-color:transparent}.sg-f.on i{background:rgba(255,255,255,.2)}
.sg-card[hidden],.sg-mes[hidden]{display:none!important}
@media(max-width:520px){.sg-card{padding:14px;gap:10px}.sg-badge{flex-basis:36px;height:36px;font-size:18px;border-radius:11px}.sg-card .sg-txt{font-size:15px}}

/* 🗂 Acciones de la ficha agrupadas y todas a la vista (28/09/2026) */
.fa-grupos{display:flex;flex-direction:column;gap:12px;margin:0 0 14px}
.fa-grupo{border-radius:16px;padding:10px 12px 12px;border:1px solid var(--linea)}
.fa-grupo h5{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tinta-suave)}
.fa-g-com{background:linear-gradient(135deg,#EEF8F2,#F7FBFF)}.fa-g-com h5{color:#1B7F4E}
.fa-g-ges{background:linear-gradient(135deg,#F4F1FB,#FBFAFE)}.fa-g-ges h5{color:#5B4B99}
.fa-g-emp{background:linear-gradient(135deg,#FFF6E6,#FFFCF6);margin-bottom:12px}.fa-g-emp h5{color:#9A6206}
.fa-rej{display:grid;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:8px}
.fa-rej .fa-btn{min-height:70px}
@media(max-width:760px){.fa-rej{grid-template-columns:repeat(3,1fr);gap:6px}.fa-rej .fa-btn{min-height:62px;padding:8px 4px}.fa-rej .fa-btn small{display:none}.fa-grupo{padding:8px 8px 10px}}

/* ⚠ Incidencias del alumnado (28/09/2026) */
.inc-g1{--ig:#B7791F;--igf:#FFF6E0;--igb:#F1D9A5}.inc-g2{--ig:#D9622B;--igf:#FFEDE3;--igb:#F4C4A8}.inc-g3{--ig:#C62828;--igf:#FDE7E7;--igb:#F0B4B4}
@keyframes incFlash{0%,100%{box-shadow:0 0 0 0 rgba(214,69,69,.55);transform:scale(1)}50%{box-shadow:0 0 0 7px rgba(214,69,69,0);transform:scale(1.08)}}
.ft-tabs button.ft-alerta{color:#B83232}.ft-tabs button i.ft-flash{background:#D64545!important;color:#fff!important;animation:incFlash 1.4s ease-in-out infinite}
.inc-cab{margin-left:10px;vertical-align:middle;border:0;border-radius:999px;padding:4px 11px;font:inherit;font-size:12.5px;font-weight:800;color:#fff;background:var(--ig);cursor:pointer;animation:incFlash 1.4s ease-in-out infinite}
.inc-mini{display:inline-block;margin-left:6px;font-size:11px;font-weight:800;color:#fff;background:var(--ig);border-radius:999px;padding:2px 7px;animation:incFlash 1.6s ease-in-out infinite;vertical-align:middle}
.inc-cab2{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:12px}.inc-cab2 h4{margin:0 0 2px}.inc-cab2 small{color:var(--tinta-suave)}
.inc-lista{display:flex;flex-direction:column;gap:12px}
.inc-card{border-radius:18px;padding:16px 18px;background:linear-gradient(135deg,var(--igf),#fff);border:1px solid var(--igb);border-left:6px solid var(--ig);box-shadow:0 4px 14px rgba(13,27,42,.06);animation:sgIn .25s ease both;animation-delay:var(--d)}
.inc-card.inc-res{--ig:#8A97A3;--igf:#F4F6F8;--igb:#DDE3E8;opacity:.85}
.inc-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.inc-gr{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--ig);border-radius:999px;padding:3px 10px}
.inc-tipo{font-size:12.5px;font-weight:700;color:var(--ig)}
.inc-card h5{margin:0 0 6px;font-size:16.5px;color:#14232F}.inc-card p{margin:0 0 8px;font-size:14.5px;line-height:1.45;color:#34424f;white-space:pre-wrap}.inc-card .inc-nota{color:#1B7F4E;font-weight:600}
.inc-card footer{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--tinta-suave)}.inc-acc{display:flex;gap:6px}
.inc-vacio{text-align:center;padding:26px 12px;border:1px dashed var(--linea);border-radius:18px;background:#FAFCFB}.inc-vacio span{font-size:30px;display:block}.inc-vacio b{display:block;margin:4px 0}.inc-vacio small{color:var(--tinta-suave)}
.inc-gsel{display:flex;gap:6px;flex-wrap:wrap}.inc-gsel button{flex:1;min-width:110px;border:1.5px solid var(--igb);background:#fff;color:var(--ig);border-radius:12px;padding:10px;font:inherit;font-weight:800;cursor:pointer;min-height:44px}.inc-gsel button.on{background:var(--ig);color:#fff;border-color:var(--ig)}
@media(prefers-reduced-motion:reduce){.inc-cab,.inc-mini,.ft-tabs button i.ft-flash{animation:none}}

#modalCaja #incTit,#modalCaja #incTxt{width:100%;box-sizing:border-box}

/* 📋 Entrevista inicial (28/09/2026) */
.en{position:relative}.en .modal-x{position:absolute;right:0;top:0}
.en-cab small{display:block;font-weight:700;color:var(--tinta-suave);margin:0 40px 8px 0}
.en-prog{display:flex;gap:5px;margin-bottom:16px}.en-prog i{flex:1;height:7px;border-radius:4px;background:#E3E9EF;cursor:pointer}.en-prog i.ok{background:#1E9E62}.en-prog i.on{background:var(--azul,#1A8CC4)}
.en-q{margin-bottom:12px}.en-num{display:inline-block;font-size:12px;font-weight:800;color:#fff;background:var(--marino,#0D1B2A);border-radius:999px;padding:3px 10px;margin-bottom:6px}
.en-q h3{margin:0 0 4px;font-size:21px;line-height:1.25}.en-q p{margin:0;color:var(--tinta-suave);font-size:14px}
.en-cuerpo{min-height:150px}.en-cuerpo textarea,.en-cuerpo input:not([type=checkbox]),.en-cuerpo select{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:12px;border:1.5px solid var(--linea);border-radius:12px}
.en-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}
.en-chip{flex:1 1 180px;border:1.5px solid var(--linea);background:#fff;border-radius:14px;padding:14px 12px;font:inherit;font-size:15px;font-weight:700;color:var(--tinta);cursor:pointer;min-height:54px;text-align:center}
.en-chip.on{background:#E4F1FA;border-color:var(--azul,#1A8CC4);color:#0F5C85;box-shadow:0 0 0 2px rgba(26,140,196,.15)}
.en-chip.en-ok.on{background:#E3F6EC;border-color:#1E9E62;color:#1B7F4E}.en-chip.en-no.on{background:#FDECEC;border-color:#D64545;color:#B83232}.en-chip.en-res.on{background:#FFF3DC;border-color:#E09A1B;color:#9A6206}
.en-salud{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.en-rgpd{font-size:12.5px;color:#6b5a44;background:#FFF8EA;border-radius:10px;padding:8px 10px;margin-top:10px}

/* ===== 🏢 FEM · formación en empresa (28/09/2026) ===== */
.fem-cab{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.fem-tit{display:flex;align-items:center;justify-content:space-between;gap:12px}.fem-tit h3{margin:0;font-size:19px}.fem-tit small{color:var(--tinta-suave);font-size:12.5px}
.fem-kpis .fem-k-amb b{color:#b7791f}
.fem-seg{overflow-x:auto}.fem-seg button{white-space:nowrap}
@media(max-width:640px){.fem-seg{display:grid;grid-template-columns:repeat(3,1fr)}.fem-seg button{font-size:12.5px;padding:9px 4px}.fem-kpis{grid-template-columns:repeat(2,1fr)}}
.fem-ch{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;white-space:nowrap}
.fem-ch-gris{background:#eef2f6;color:#566573}.fem-ch-ambar{background:#fff4dd;color:#8a5e0a}.fem-ch-verde{background:#e3f5ec;color:#16734a}.fem-ch-azul{background:#e5f1fa;color:#0f5f8c}.fem-ch-rojo{background:#fdeaea;color:#b42323}
.fem-rojo{color:#c0392b}
.fem-lista,.fem-docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
@media(max-width:640px){.fem-lista,.fem-docs{grid-template-columns:1fr}}
.fem-card,.fem-emp,.fem-curso{background:#fff;border:1px solid var(--linea);border-radius:18px;padding:14px;box-shadow:0 2px 10px rgba(13,27,42,.04);animation:femEntra .35s ease both;animation-delay:calc(var(--i,0) * 35ms)}
@keyframes femEntra{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.fem-card-cab{display:flex;align-items:center;gap:10px}.fem-nom{flex:1;min-width:0}.fem-nom b{display:block;font-size:15px}.fem-nom small{color:var(--tinta-suave);font-size:12.5px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.fem-sub{max-width:150px;border:1px solid var(--linea);border-radius:10px;padding:6px 8px;font:inherit;font-size:12px;background:#f8fafc}
@media(max-width:640px){.fem-card-cab{flex-wrap:wrap}.fem-sub{max-width:none;width:100%}}
.fem-mods{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}
.fem-mod{display:inline-flex;align-items:center;gap:5px;border-radius:10px;padding:4px 9px;font-size:12px;font-weight:600;border:1px solid var(--linea);background:#f8fafc}.fem-mod i,.fem-pmod i,.fem-leyenda i,.fem-res-mods i,.fem-plan-m b i,.fem-vis-m i{width:9px;height:9px;border-radius:3px;display:inline-block;flex:0 0 9px}
.fem-mod-ok{background:#eefaf3;border-color:#bfe6d0;color:#16603f}.fem-mod-no{background:#fdf0f0;border-color:#f3c6c6;color:#a52a2a;text-decoration:line-through}.fem-mod-pe{background:#fffaf0;border-color:#f1dfb8;color:#8a5e0a}
.fem-asig{margin-top:10px;width:100%}
.fem-per{margin-top:10px;border:1px solid var(--linea);border-radius:14px;padding:10px;background:linear-gradient(180deg,#fbfdff,#fff)}
.fem-per-cab{display:flex;flex-direction:column}.fem-per-cab span{font-size:12.5px;color:var(--tinta-suave)}
.fem-barra{height:7px;border-radius:99px;background:#eef2f6;overflow:hidden;margin:8px 0}.fem-barra i{display:block;height:100%;background:linear-gradient(90deg,#1a8cc4,#1f9d55);border-radius:99px}
.fem-per-pie{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px}
.fem-acc{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fem-acc-top{margin:0 0 10px}
.fem-empty{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:linear-gradient(135deg,#e9f4fb,#f4fbf7);border:1px dashed #b9d6e8;border-radius:18px;padding:18px;margin-bottom:12px}.fem-empty span{color:var(--tinta-suave);font-size:13.5px}
.fem-bus{position:relative;margin-bottom:12px}.fem-bus input{width:100%;padding:13px 14px;border:1.5px solid var(--linea);border-radius:14px;font:inherit;font-size:15px}
.fem-busr{display:flex;flex-direction:column;gap:4px;margin-top:6px}.fem-busi{display:grid;grid-template-columns:1fr auto;gap:0 10px;text-align:left;border:1px solid var(--linea);background:#fff;border-radius:12px;padding:10px 12px;font:inherit;cursor:pointer}
.fem-busi small{grid-column:1;color:var(--tinta-suave);font-size:12px}.fem-busi span{grid-row:1/3;grid-column:2;align-self:center;font-weight:800;color:var(--oceano)}.fem-busi:hover:not(:disabled){border-color:var(--oceano-claro);background:#f5fbff}.fem-busi:disabled{opacity:.6;cursor:default}
.fem-emps{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}@media(max-width:640px){.fem-emps{grid-template-columns:1fr}}
.fem-emp-cab{display:flex;gap:10px;align-items:center}.fem-emp-cab>div:nth-child(2){flex:1;min-width:0}.fem-emp-cab b{display:block}.fem-emp-cab small{color:var(--tinta-suave);font-size:12.5px}
.fem-emp-ico{width:42px;height:42px;border-radius:12px;background:#e9f4fb;display:grid;place-items:center;font-size:20px}
.fem-num{text-align:center;font-size:22px;font-weight:800;line-height:1}.fem-num small{display:block;font-size:10.5px;color:var(--tinta-suave);font-weight:600}
.fem-emp-ch{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.fem-quitar{color:#b42323}
.fem-selal{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:8px}.fem-selal button{border:1px solid var(--linea);background:#fff;border-radius:99px;padding:7px 12px;font:inherit;font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer}.fem-selal button.on{background:var(--oceano);border-color:var(--oceano);color:#fff}
.fem-asis-cab{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.fem-asis-cab b{display:block}.fem-asis-cab small{color:var(--tinta-suave);font-size:12.5px}
.fem-cal{background:#fff;border:1px solid var(--linea);border-radius:18px;padding:10px;margin-top:10px}
.fem-cal-h,.fem-cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.fem-cal-h span{text-align:center;font-size:11.5px;font-weight:800;color:var(--tinta-suave);padding:4px 0}
.fem-dia{position:relative;min-height:64px;border-radius:12px;border:1px solid transparent;background:#f6f8fa;padding:6px;text-align:left;font:inherit;display:flex;flex-direction:column;justify-content:space-between}
.fem-dia span{font-size:13px;font-weight:800;color:var(--tinta)}.fem-dia.no span{color:#b3bec8;font-weight:600}.fem-dia.vacio{background:transparent}.fem-dia.fes{background:#fff7e6}
.fem-dia.si{background:#fff;border-color:var(--linea);cursor:pointer;transition:transform .12s,box-shadow .12s}.fem-dia.si:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.08)}
.fem-dia.hoy{outline:2.5px solid var(--oceano-claro);outline-offset:1px}.fem-dia.fut{opacity:.8}
.fem-dia-b{display:flex;gap:2px;height:6px;border-radius:3px;overflow:hidden}.fem-dia-b i{display:block;height:100%}
.fem-dia em{position:absolute;top:5px;right:6px;font-style:normal;font-size:12px}.fem-dia.m-F{background:#fdecec;border-color:#f3c0c0}.fem-dia.m-FJ{background:#fff6e0;border-color:#f1d9a0}
@media(max-width:640px){.fem-dia{min-height:50px;padding:4px}.fem-dia span{font-size:12px}.fem-dia em{font-size:10px;top:3px;right:3px}.fem-cal-g,.fem-cal-h{gap:3px}}
.fem-leyenda{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:10px;font-size:12.5px;color:var(--tinta-suave)}.fem-leyenda span{display:inline-flex;align-items:center;gap:5px}
.fem-doc{display:grid;grid-template-columns:30px 1fr;gap:4px 8px;align-items:center;padding:9px 0;border-top:1px solid #eef2f6}.fem-doc:first-of-type{margin-top:8px}
.fem-doc-i{font-size:18px;text-align:center}.fem-doc-t{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fem-doc-t b{font-size:13.5px}.fem-doc-b{grid-column:2;display:flex;flex-wrap:wrap;gap:6px}
.fem-datos{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}.fem-datos h4{margin:0 0 4px}@media(max-width:640px){.fem-datos{grid-template-columns:1fr}}
.fem-g2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:560px){.fem-g2{grid-template-columns:1fr}}
.fem-ra details{border:1px solid var(--linea);border-radius:12px;padding:8px 10px;margin-bottom:6px}.fem-ra summary{cursor:pointer;font-size:13px}.fem-ra textarea{width:100%;margin:8px 0;font:inherit;font-size:13px;border:1px solid var(--linea);border-radius:10px;padding:8px}
.fem-modal{max-width:720px}
.fem-pmods{display:flex;flex-direction:column;gap:6px}.fem-pmod{display:flex;align-items:center;gap:8px;border:1.5px solid var(--linea);border-radius:12px;padding:9px 10px;cursor:pointer;text-decoration:none}.fem-pmod input{width:20px;height:20px;flex:0 0 20px}.fem-pmod span{display:flex;flex-direction:column}.fem-pmod small{font-size:12px;color:var(--tinta-suave);font-weight:500}
.fem-pmod:has(input:checked){border-color:var(--oceano-claro);background:#f3f9fd}
.fem-dias{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.fem-dias button{border:1.5px solid var(--linea);background:#fff;border-radius:12px;padding:11px 0;font:inherit;font-weight:800;cursor:pointer}.fem-dias button.on{background:var(--oceano);border-color:var(--oceano);color:#fff}
.fem-fadd{display:grid;grid-template-columns:150px 1fr auto;gap:6px;margin-top:6px}@media(max-width:520px){.fem-fadd{grid-template-columns:1fr 1fr auto}}
.fem-fes{display:inline-flex;align-items:center;gap:6px;background:#fff7e6;border-radius:99px;padding:4px 6px 4px 10px;font-size:12.5px;margin:0 6px 6px 0}.fem-fes button{border:0;background:#f1dfb8;border-radius:50%;width:20px;height:20px;cursor:pointer}
.fem-res{margin:12px 0}.fem-res-c{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:linear-gradient(135deg,#0f6a9c,#1a8cc4);color:#fff;border-radius:16px;padding:12px;text-align:center}.fem-res-c b{display:block;font-size:19px}.fem-res-c small{opacity:.85;font-size:11.5px}
.fem-res-mods{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:12.5px;color:var(--tinta-suave)}.fem-res-mods span{display:inline-flex;align-items:center;gap:5px}
.fem-tut{border:1px solid var(--linea);border-radius:14px;padding:8px 12px;margin:10px 0}.fem-tut summary{cursor:pointer;font-weight:700}
.fem-borrar{color:#b42323;margin-right:auto}
.fem-firmas{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.fem-plan-ra{max-height:46vh;overflow:auto;border:1px solid var(--linea);border-radius:14px;padding:6px 10px;margin-bottom:10px}
.fem-plan-m{padding:8px 0;border-bottom:1px solid #eef2f6}.fem-plan-m b{display:flex;align-items:center;gap:6px;font-size:13.5px}.fem-plan-m ul{list-style:none;margin:6px 0 0;padding:0}
.fem-plan-m li{display:flex;gap:8px;align-items:flex-start;font-size:13px;padding:3px 0}.fem-plan-m li button{flex:0 0 30px;height:26px;border-radius:8px;border:0;font-weight:800;cursor:pointer;background:#e3f5ec;color:#16734a}
.fem-ra-C button{background:#e5f1fa!important;color:#0f5f8c!important}.fem-ra-N button{background:#eef2f6!important;color:#8a97a3!important}.fem-ra-N span{text-decoration:line-through;color:#9aa6b1}
.fem-sw{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;margin:8px 0}.fem-sw input{width:20px;height:20px}
.fem-canal{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}@media(max-width:520px){.fem-canal{grid-template-columns:1fr}}
.fem-canal-b{border:1.5px solid var(--linea);background:#fff;border-radius:16px;padding:16px;text-align:left;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:4px}.fem-canal-b b{font-size:16px}.fem-canal-b small{color:var(--tinta-suave)}.fem-canal-b:hover:not(:disabled){border-color:var(--oceano-claro);box-shadow:0 4px 14px rgba(26,140,196,.15)}
.fem-dest{display:flex;flex-direction:column;gap:8px}.fem-dest-i{border:1px solid var(--linea);border-radius:14px;padding:10px 12px}.fem-dest-i small{display:block;color:var(--tinta-suave);font-size:12.5px}
.fem-roles{display:flex;flex-direction:column}
.fem-vis{border:1px solid var(--linea);border-radius:14px;padding:10px 12px;margin-bottom:10px}.fem-vis-m{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fem-vis-m button{display:inline-flex;align-items:center;gap:5px;border:1.5px solid var(--linea);background:#fff;border-radius:10px;padding:6px 10px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}.fem-vis-m button.on{border-color:var(--oceano);background:#eef7fd}
.fem-falta{border-color:#f1b44c!important;background:#fffaf0}
.fem-filtros{display:flex;flex-direction:column;gap:8px}.fem-filtros input{padding:12px 14px;border:1.5px solid var(--linea);border-radius:14px;font:inherit;font-size:15px}
.fem-cursos{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}@media(max-width:640px){.fem-cursos{grid-template-columns:1fr}}
.fem-curso{text-align:left;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:transform .15s,box-shadow .15s}.fem-curso:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(13,27,42,.08)}
.fem-curso-t b{display:block;font-size:15px}.fem-curso-t small{color:var(--tinta-suave);font-size:12.5px}.fem-curso .fem-ch{align-self:flex-start}
.fem-curso-n{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--tinta-suave)}.fem-curso-n b{color:var(--tinta)}
.wa-campo label.fem-pmod,label.fem-pmod{display:flex;flex-direction:row;text-transform:none;letter-spacing:0;font-size:13.5px;color:var(--tinta);margin:0}
.fem-pmod span b{font-size:13.5px}.fem-pmod small{text-transform:none}
label.fem-sw,.wa-campo label.fem-sw{display:flex;flex-direction:row;text-transform:none;letter-spacing:0;font-size:14px;color:var(--tinta)}
.fem-card .as-av,.fem-docs .as-av{background:linear-gradient(135deg,#1a8cc4,#0f6a9c);color:#fff;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;flex:0 0 40px}
.fem-filtro{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}
/* 28/09: modo FEM (entrando desde el menú FEM) — solo la FEM, sin el menú del curso */
#vCurso.modo-fem #cursoNav,#vCurso.modo-fem #prevAvisoCurso,#vCurso.modo-fem #cursoResumen{display:none!important}
.fem-solo{display:none}#vCurso.modo-fem .fem-solo{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--tinta-suave);background:#fff;border:1px solid var(--linea);border-radius:14px;padding:8px 12px}
.ep-pr{border:1px solid var(--linea);border-radius:16px;padding:12px;margin:12px 0;background:linear-gradient(180deg,#fbfdff,#fff)}.ep-pr-cab{margin-bottom:8px}
.ep-pr-seg{margin-bottom:10px}.ep-pr-l{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.ep-pr-i{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid var(--linea);border-radius:12px;padding:8px 10px;background:#fff}.ep-pr-i small{display:block;color:var(--tinta-suave);font-size:12px}.ep-pr-i .fem-acc{margin:0;flex-wrap:nowrap}
.ep-pr-form{border:1.5px dashed #b9d6e8;border-radius:14px;padding:10px;margin-top:6px}
/* ===== ✏️ Editor de empresa renovado (28/09) ===== */
.modal-caja.ee-modal{padding:0;max-width:1080px;display:flex;flex-direction:column;overflow:hidden}
.modal-caja.ee-pc{max-width:none!important;width:100vw!important;height:100dvh;max-height:100dvh!important;border-radius:0}
.modal-caja.ee-pc:not(.ee-modal){padding:22px 28px}
.ee{display:flex;flex-direction:column;min-height:0;height:100%}
.ee-top{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(135deg,#0f6a9c,#1a8cc4);color:#fff}
.ee-av{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.18);display:grid;place-items:center;font-size:22px;font-weight:800;flex:0 0 46px}
.ee-tt{flex:1;min-width:0}.ee-tt h3{margin:0;font-size:19px;color:#fff}.ee-tt small{opacity:.88;font-size:13px}
.ee-full{border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:8px 12px;font:inherit;font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap}
.ee-headr{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.ee-headr .ee-full{border-color:var(--linea);background:#fff;color:var(--oceano)}
.ee-cuerpo{flex:1;overflow-y:auto;padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#f5f8fb}
.ee-sec{background:#fff;border:1px solid var(--linea);border-radius:16px;padding:14px 16px}
.ee-sec header{display:flex;gap:10px;align-items:center;margin-bottom:10px}.ee-sec header b{display:block;font-size:15px}.ee-sec header small{color:var(--tinta-suave);font-size:12.5px}
.ee-ico{width:34px;height:34px;border-radius:10px;background:#e9f4fb;display:grid;place-items:center;font-size:17px}
.ee-g{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.ee-c{display:flex;flex-direction:column;gap:5px}.ee-c span{font-size:12.5px;font-weight:700;color:var(--tinta-suave)}.ee-c span i{color:#c0392b;font-style:normal}
.ee-c input,.ee-c select,.ee-c textarea{width:100%;padding:11px 12px;border:1.5px solid var(--linea);border-radius:12px;font:inherit;font-size:15px;background:#fff;transition:border-color .15s,box-shadow .15s}
.ee-c input:focus,.ee-c select:focus,.ee-c textarea:focus{outline:none;border-color:var(--oceano-claro);box-shadow:0 0 0 3px rgba(26,140,196,.15)}
.ee-ancho{grid-column:1/-1}
.ee-pie{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid var(--linea);background:#fff}
.ee-pc .ee-cuerpo{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));padding:22px 28px}
@media(max-width:760px){.ee-cuerpo{grid-template-columns:1fr;padding:12px}.ee-g{grid-template-columns:1fr}.ee-top{padding:14px}.ee-full{padding:7px 9px;font-size:12px}.ee-pie{position:sticky;bottom:0}.ee-pie .btn{flex:1}.modal-caja.ee-modal{max-height:96dvh}}
.fem-res-tab{display:flex;flex-direction:column;gap:6px;margin-top:8px}.fem-res-tab>div{display:grid;grid-template-columns:12px auto auto 1fr;gap:2px 10px;align-items:center;background:#fff;border:1px solid var(--linea);border-radius:12px;padding:8px 10px;font-size:13px}
.fem-res-tab i{width:10px;height:10px;border-radius:3px}.fem-res-tab small{grid-column:2/-1;color:var(--tinta-suave);font-size:12px}
@media(max-width:520px){.fem-res-tab>div{grid-template-columns:12px auto 1fr}.fem-res-tab>div span:last-of-type{grid-column:2/-1}}
.ee-pc .ee-cuerpo{grid-template-columns:1fr 1fr!important;padding:22px max(28px,calc((100vw - 1300px)/2))!important;align-content:start}
#modal:has(.ee-pc){padding:0!important}
.ep-pr .wa-campo input{width:100%}.ep-pr .fem-g2{gap:0 12px}
@media(max-width:760px){.ee-full{display:none}.modal-caja.ee-modal{width:100vw!important;max-width:none;height:100dvh;max-height:100dvh!important;border-radius:0}#modal:has(.ee-modal){padding:0!important}}
/* ===== 🏢 Ficha de empresa con cabecera en color y pestañas (28/09) ===== */
.modal-caja.emp-ficha{padding:0;background:#f3f7fa}
.emp-ficha .ct-head.emp-hero{margin:0;padding:18px 22px;background:linear-gradient(135deg,#0d1b2a,#0f6a9c 70%,#1a8cc4);color:#fff;border-radius:0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.emp-ficha .emp-hero h3{color:#fff;margin:0;font-size:21px}.emp-ficha .emp-hero small{color:rgba(255,255,255,.8)}
.emp-ficha .emp-hero .ee-full{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.12);color:#fff}
.emp-ficha .emp-hero .ee-headr>span{background:#fff;border-radius:999px}
.emp-ficha .ficha-acciones{margin:14px 22px 0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.emp-ficha .fa-btn{background:#fff;border:1px solid #d6e4ee;box-shadow:0 2px 8px rgba(13,27,42,.05);min-height:74px}
.emp-ficha .fa-btn:hover{border-color:var(--oceano-claro);box-shadow:0 6px 16px rgba(26,140,196,.15)}
.emp-tabs{display:flex;gap:4px;margin:16px 22px 0;border-bottom:2px solid #dce7ef;overflow-x:auto}
.emp-tabs button{border:0;background:transparent;padding:11px 16px;font:inherit;font-weight:800;font-size:14px;color:var(--tinta-suave);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.emp-tabs button.on{color:var(--oceano);border-bottom-color:var(--oceano)}
.emp-tabs button i{font-style:normal;background:#e84f3d;color:#fff;border-radius:999px;font-size:11px;padding:1px 7px}.emp-tabs button:not(.on) i{background:#9fb3c3}
.emp-pane{padding:16px 22px 6px}
.emp-ficha .ficha-datos{background:#fff;border:1px solid #d6e4ee;border-radius:16px;padding:14px 16px;gap:12px 20px}
.emp-ficha .ficha-datos small{display:block;font-size:11.5px;color:var(--tinta-suave);font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}
.emp-ficha .ficha-datos b{font-size:14.5px}
.emp-ficha .ep-pr{margin:0;background:#fff}
.emp-ficha .ei-caja,.emp-ficha .perfil-ia{background:#fff}
.emp-ficha .modal-pie{margin:0;padding:12px 22px;background:#fff;border-top:1px solid #dce7ef}
.emp-ficha .segui{background:#fff;border:1px solid #dce7ef;border-left:4px solid var(--oceano-claro);border-radius:12px;padding:10px 12px;margin-bottom:8px}
@media(max-width:760px){.emp-ficha .ficha-acciones,.emp-tabs{margin-left:12px;margin-right:12px}.emp-pane{padding:12px}.emp-ficha .ct-head.emp-hero{padding:14px}.emp-ficha .ficha-datos{grid-template-columns:1fr}.emp-tabs button{padding:10px 10px;font-size:13px}}
/* ===== 🏢 FEM rediseño: cabecera, menú destacado y documentos (28/09 tarde) ===== */
#vCurso.modo-fem #cursoTitulo{display:none}
.fem-hero{background:linear-gradient(135deg,#0d1b2a 0%,#0f6a9c 65%,#1a8cc4 100%);color:#fff;border-radius:20px;padding:18px 20px;box-shadow:0 8px 24px rgba(13,27,42,.18)}
.fem-hero h3{color:#fff;font-size:20px;margin:2px 0 4px;line-height:1.2}.fem-hero small{color:rgba(255,255,255,.82)}.fem-kick{font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px!important;color:#9fd8ff!important}
.fem-hero-r{display:flex;flex-direction:column;align-items:center;gap:2px}.fem-hero-r small{font-size:11px}
.fem-hero .ev-anillo circle:first-child{stroke:rgba(255,255,255,.18)}.fem-hero .ev-anillo text{fill:#fff}
.fem-kpis .as-kpi{border:0;box-shadow:0 2px 10px rgba(13,27,42,.06);position:relative;overflow:hidden}
.fem-kpis .as-kpi::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:#1a8cc4}
.fem-kpis .as-kpi:nth-child(2)::before{background:#9b51e0}.fem-kpis .as-kpi:nth-child(3)::before{background:#f2994a}.fem-kpis .as-kpi:nth-child(4)::before{background:#27ae60}
.fem-menu{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;position:sticky;top:0;z-index:5;background:linear-gradient(#f0f6fa 70%,rgba(240,246,250,0));padding:6px 0 10px}
.fem-menu button{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;border:2px solid #cfe2ee;background:#fff;border-radius:16px;padding:12px 10px;font:inherit;font-weight:800;font-size:14.5px;color:#0f4f75;cursor:pointer;box-shadow:0 3px 10px rgba(13,27,42,.06);transition:transform .12s,box-shadow .12s,background .15s}
.fem-menu button:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,106,156,.18);border-color:#1a8cc4}
.fem-menu button.on{background:linear-gradient(135deg,#0f6a9c,#1a8cc4);border-color:#0f6a9c;color:#fff;box-shadow:0 8px 20px rgba(15,106,156,.35)}
.fem-menu .fm-i{width:32px;height:32px;border-radius:10px;background:#e6f2fa;display:grid;place-items:center;font-size:17px}.fem-menu button.on .fm-i{background:rgba(255,255,255,.2)}
.fem-menu .fm-n{font-style:normal;background:#e6f2fa;color:#0f5f8c;border-radius:999px;font-size:12px;padding:2px 8px}.fem-menu button.on .fm-n{background:#fff;color:#0f6a9c}.fem-menu .fm-av{background:#f2994a!important;color:#fff!important;animation:incLatido 1.6s infinite}
@keyframes incLatido{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}
@media(max-width:760px){.fem-menu{display:flex;overflow-x:auto;gap:6px;margin:0 -4px;padding:6px 4px 10px}.fem-menu button{flex:0 0 auto;padding:10px 12px;font-size:13.5px}.fem-menu .fm-i{width:28px;height:28px;font-size:15px}.fem-hero h3{font-size:17px}}
.fem-card-cab{display:grid;grid-template-columns:40px 1fr;align-items:center}.fem-card-cab .fem-sub{grid-column:1/-1;max-width:none;width:100%;margin-top:4px}
.fem-card{border-top:4px solid #1a8cc4}
.fem-datos .wa-campo input,.fem-datos .wa-campo select{width:100%;min-width:0;box-sizing:border-box}.fem-datos .fem-g2>*{min-width:0}
/* documentos */
.fd-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.fd-top p{margin:0}
.fd-card{border-top-color:#9b51e0}.fd-card .fem-card-cab{grid-template-columns:40px 1fr auto}
.fd-cnt{font-size:24px;font-weight:800;color:#0f6a9c;line-height:1}.fd-cnt small{font-size:13px;color:var(--tinta-suave)}
.fd-pasos{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:12px 0}
.fd-p{display:flex;flex-direction:column;align-items:center;gap:3px;position:relative}.fd-p i{font-style:normal;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:15px;background:#eef2f6;border:2px solid #d4dde5}
.fd-p small{font-size:10.5px;font-weight:700;color:var(--tinta-suave)}
.fd-p.fd-ok i{background:#e3f5ec;border-color:#27ae60}.fd-p.fd-env i{background:#fff4dd;border-color:#f2b23e}.fd-p.fd-mal i{background:#fdeaea;border-color:#d14343}
.fd-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fd-t{border:1.5px solid #e1e8ee;border-left:5px solid #b9c6d3;border-radius:14px;padding:10px 12px;background:#fbfcfd;display:flex;flex-direction:column;gap:6px}
.fd-t-cab{display:flex;align-items:center;gap:8px}.fd-t-cab b{font-size:13.5px;line-height:1.2}.fd-ico{font-size:18px}
.fd-est{font-size:12px;font-weight:700;color:#566573}
.fd-t.fd-ok{border-left-color:#27ae60;background:#f3fbf6}.fd-t.fd-ok .fd-est{color:#16734a}
.fd-t.fd-env{border-left-color:#f2b23e;background:#fffaf0}.fd-t.fd-env .fd-est{color:#8a5e0a}
.fd-t.fd-mal{border-left-color:#d14343;background:#fdf3f3}.fd-t.fd-mal .fd-est{color:#b42323}
.fd-t.fd-neutro{border-left-color:#9b51e0}
.fd-acc{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.fd-acc .btn{padding:7px 11px;font-size:12.5px}
.fd-pdf{border:1px solid #d6e4ee;background:#fff;border-radius:10px;padding:6px 10px;font:inherit;font-size:12.5px;font-weight:700;color:#0f5f8c;cursor:pointer}.fd-pdf:hover{border-color:#1a8cc4;background:#f3f9fd}
@media(max-width:420px){.fd-grid{grid-template-columns:1fr}.fd-p small{font-size:9.5px}}
/* pestañas de la ficha de empresa igual de visibles */
.emp-tabs{border-bottom:0;gap:8px;padding-bottom:4px}
.emp-tabs button{border:2px solid #cfe2ee;background:#fff;border-radius:14px;margin:0;color:#0f4f75;padding:10px 16px;box-shadow:0 2px 8px rgba(13,27,42,.05)}
.emp-tabs button.on{background:linear-gradient(135deg,#0f6a9c,#1a8cc4);border-color:#0f6a9c;color:#fff;box-shadow:0 6px 16px rgba(15,106,156,.3)}
.emp-tabs button.on i{background:#fff;color:#0f6a9c}
/* control de campañas: bloques en pestañas (28/09) */
.gaw-subt{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px}
.gaw-subt button{border:2px solid #cfe2ee;background:#fff;border-radius:14px;padding:10px 14px;font:inherit;font-weight:800;font-size:14px;color:#0f4f75;cursor:pointer;box-shadow:0 2px 8px rgba(13,27,42,.05);display:inline-flex;align-items:center;gap:6px}
.gaw-subt button:hover{border-color:#1a8cc4}.gaw-subt button.on{background:linear-gradient(135deg,#0f6a9c,#1a8cc4);border-color:#0f6a9c;color:#fff;box-shadow:0 6px 16px rgba(15,106,156,.3)}
.gaw-subt i{font-style:normal;background:#e6f2fa;color:#0f5f8c;border-radius:999px;font-size:11.5px;padding:1px 7px}.gaw-subt button.on i{background:#fff}
@media(max-width:640px){.gaw-subt{flex-wrap:nowrap;overflow-x:auto}.gaw-subt button{flex:0 0 auto;font-size:13px}}
/* ===== Menú del curso arriba y destacado, como el de la FEM (28/09) ===== */
.ctabs{position:sticky;top:0;z-index:6;background:transparent;border:0;border-radius:0;overflow:visible;margin:4px 0 12px;padding:6px 0 8px;background:linear-gradient(#f0f6fa 80%,rgba(240,246,250,0))}
.ctabs-g{background:transparent;border:0;gap:8px}
.ctabs-gb{border:2px solid #cfe2ee;background:#fff;border-radius:16px;color:#0f4f75;min-height:54px;box-shadow:0 3px 10px rgba(13,27,42,.06);transition:transform .12s,box-shadow .12s}
.ctabs-gb svg{width:20px;height:20px;padding:6px;box-sizing:content-box;background:#e6f2fa;border-radius:10px}
.ctabs-gb:hover{border-color:#1a8cc4;background:#fff;transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,106,156,.18)}
.ctabs-gb.on{background:linear-gradient(135deg,#0f6a9c,#1a8cc4);border-color:#0f6a9c;color:#fff;box-shadow:0 8px 20px rgba(15,106,156,.35)}
.ctabs-gb.on svg{background:rgba(255,255,255,.2)}.ctabs-gb.on::after{display:none}
#cursoTabs.tabs-curso{background:#fff;border:1px solid #d6e4ee;border-radius:14px;margin-top:8px;padding:6px;gap:6px;box-shadow:0 2px 8px rgba(13,27,42,.04)}
#cursoTabs .tab{border:1.5px solid transparent;font-weight:700;color:#0f4f75}
#cursoTabs .tab:hover{border-color:#cfe2ee;background:#f3f9fd}
#cursoTabs .tab.activa{background:#0f6a9c;color:#fff;box-shadow:0 4px 12px rgba(15,106,156,.3);border-color:#0f6a9c}
#cursoTabs .tab.activa .tab-ico svg{stroke:#fff}
@media(max-width:700px){.ctabs-g{gap:5px}.ctabs-gb{min-height:62px;border-radius:14px}.ctabs-gb svg{width:17px;height:17px;padding:5px}#cursoTabs.tabs-curso{margin-top:6px}}
/* ===== Salvar el curso · «La web esta semana» en pestañas y tarjetas (28/09) ===== */
.gac2 .gac-cab{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.gac2 .gac-cab b{font-size:17px}.gac2 .gac-cab small{color:var(--tinta-suave)}
.gac-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0 8px}
.gac-tab{display:flex;align-items:center;gap:8px;border:2px solid #e1e8ee;background:#fff;border-radius:16px;padding:10px 12px;font:inherit;cursor:pointer;text-align:left;transition:transform .12s,box-shadow .12s}
.gac-tab span{font-size:20px}.gac-tab b{flex:1;font-size:14px;line-height:1.2;color:var(--tinta)}.gac-tab i{font-style:normal;font-weight:800;font-size:13px;border-radius:999px;padding:2px 9px;background:#eef2f6}
.gac-tab:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(13,27,42,.08)}
.gac-t-caliente.on{background:linear-gradient(135deg,#ff7a45,#e8452c);border-color:#e8452c}.gac-t-frio.on{background:linear-gradient(135deg,#1a8cc4,#0f6a9c);border-color:#0f6a9c}.gac-t-estrella.on{background:linear-gradient(135deg,#27ae60,#16734a);border-color:#16734a}
.gac-tab.on b{color:#fff}.gac-tab.on i{background:#fff;color:var(--tinta)}.gac-tab.on{box-shadow:0 8px 18px rgba(13,27,42,.18)}
.gac-tip{margin:4px 0 10px;font-size:13px;color:var(--tinta-suave);font-weight:600}
.gac-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.gac-c{display:flex;gap:12px;align-items:center;text-align:left;border:1px solid #e1e8ee;border-left:5px solid #b9c6d3;background:#fff;border-radius:14px;padding:12px;font:inherit;cursor:pointer;animation:femEntra .3s ease both;animation-delay:calc(var(--i,0)*40ms);transition:transform .12s,box-shadow .12s}
.gac-c:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(13,27,42,.1)}
.gac-caliente{border-left-color:#e8452c}.gac-frio{border-left-color:#1a8cc4}.gac-estrella{border-left-color:#27ae60}
.gac-num{flex:0 0 64px;height:64px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eef2f6}
.gac-num b{font-size:22px;line-height:1}.gac-num small{font-size:10.5px;font-weight:700;color:var(--tinta-suave)}
.gac-caliente .gac-num{background:#fff0ea;color:#c2410c}.gac-frio .gac-num{background:#e6f2fa;color:#0f5f8c}.gac-estrella .gac-num{background:#e3f5ec;color:#16734a}
.gac-tx{display:flex;flex-direction:column;gap:5px;min-width:0}.gac-tx>b{font-size:13.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gac-meta{display:flex;flex-wrap:wrap;gap:4px}.gac-meta i{font-style:normal;font-size:11.5px;font-weight:700;background:#f3f6f9;color:#566573;border-radius:999px;padding:2px 8px}
@media(max-width:640px){.gac-tabs{grid-template-columns:1fr}.gac-grid{grid-template-columns:1fr}}
details.dup-caja summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none}details.dup-caja summary::-webkit-details-marker{display:none}
details.dup-caja summary span{font-size:12.5px;font-weight:800;color:var(--oceano);background:#fff;border-radius:999px;padding:2px 10px}details.dup-caja[open] summary span{display:none}
details.dup-caja>small{display:block;margin:6px 0}#dupNinguna{margin-top:8px}
/* modal de prácticas: opción de pantalla completa (28/09) */
.fem-mcab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.fem-full{border:1.5px solid #cfe2ee;background:#fff;color:#0f5f8c;border-radius:10px;padding:8px 12px;font:inherit;font-weight:800;font-size:13px;cursor:pointer;white-space:nowrap}.fem-full:hover{border-color:#1a8cc4;background:#f3f9fd}
.modal-caja.fem-pc{padding:22px max(24px,calc((100vw - 1400px)/2))!important;background:#f5f8fb}
.fem-pc .fem-pbody{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.fem-pc .fem-pcol{background:#fff;border:1px solid #dce7ef;border-radius:16px;padding:14px 16px}
.fem-pc .modal-pie{position:sticky;bottom:-22px;background:#fff;margin:14px -8px 0;padding:12px 8px;border-top:1px solid #dce7ef}
@media(max-width:900px){.fem-pc .fem-pbody{grid-template-columns:1fr}}
@media(max-width:760px){.fem-full{display:none}}
/* FEM · buscar docente (28/09) */
.fem-dres{display:flex;flex-direction:column;gap:6px;margin:4px 0 10px}
.fem-dit{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;text-align:left;border:1px solid var(--borde,#dfe3ea);background:var(--tarjeta,#fff);border-radius:10px;padding:10px 12px;cursor:pointer;min-height:48px}
.fem-dit:hover{border-color:var(--acento,#e4007c);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.fem-dit b{grid-column:1}.fem-dit small{grid-column:1;color:var(--tenue,#667);overflow-wrap:anywhere}
.fem-dit span{grid-column:2;grid-row:1/3;font-weight:600;color:var(--acento,#e4007c);font-size:.85rem}
.fem-vinc{display:flex;gap:8px;align-items:center;margin:4px 0 10px;font-size:.9rem}
.cc-ok{font-size:.75rem;font-weight:600;margin-left:6px}.cc-g{color:var(--tenue,#667)}.cc-si{color:#15803d}.cc-no{color:#b45309}
.cc-estado{margin-right:auto;color:#15803d;font-size:.85rem;font-weight:600;align-self:center}
/* FEM · control de visitas (28/09) */
.fvv-cab{display:flex;flex-direction:column;gap:10px;background:linear-gradient(135deg,#eef6fb,#fff)}
.fvv-tut{display:flex;gap:12px;align-items:center}.fvv-ico{font-size:28px;background:#fff;border-radius:14px;width:52px;height:52px;display:grid;place-items:center;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.fvv-tut b{display:block;font-size:1.05rem}.fvv-tut small{color:var(--tenue,#667)}.fvv-cab .btn{align-self:flex-start}
.fvv-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}@media(max-width:900px){.fvv-grid{grid-template-columns:1fr}}
.fvv-col{display:flex;flex-direction:column;gap:12px}.fvv-card{border-left:5px solid #0f6b9b}.fvv-ok{border-left-color:#1f9d55}.fvv-mal{border-left-color:#d14343}.fvv-amb{border-left-color:#e0a106}.fvv-gris{border-left-color:#b9c6d3}
.fvv-est{font-size:.78rem;font-weight:700;white-space:nowrap;padding:4px 10px;border-radius:99px;background:#eef2f6}.fvv-ok .fvv-est{background:#e7f6ed;color:#1f7a43}.fvv-mal .fvv-est{background:#fdecec;color:#b42323}.fvv-amb .fvv-est{background:#fff4d6;color:#8a5a00}
.fvv-bar{height:8px;border-radius:99px;background:#e8eef3;overflow:hidden;margin:10px 0 2px}.fvv-bar i{display:block;height:100%;background:linear-gradient(90deg,#1f9d55,#34c26f)}
.fvv-lista{display:flex;flex-direction:column;gap:6px;margin:8px 0}.fvv-v{border:1px solid var(--borde,#e3e9ef);border-radius:12px;padding:8px 10px}.fvv-hecha{background:#f3faf5;border-color:#cfe9d8}
.fvv-v-cab{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fvv-m{display:inline-flex;gap:4px;align-items:center;font-size:.75rem;font-weight:700;background:#eef2f6;border-radius:99px;padding:2px 8px}.fvv-m i{width:8px;height:8px;border-radius:50%}
.fvv-f{margin-left:auto;font-size:.8rem;font-weight:600;color:var(--tenue,#556)}.fvv-obs{margin:6px 0 0;font-size:.88rem;white-space:pre-wrap;overflow-wrap:anywhere}
.fvv-log{position:sticky;top:12px;max-height:80vh;overflow:auto}.fvv-li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--borde,#eef1f5)}.fvv-li:last-child{border:0}
.fvv-d{flex:0 0 46px;font-weight:800;color:#0f6b9b;font-size:.85rem}.fvv-li b{display:block;font-size:.9rem}.fvv-li small{color:var(--tenue,#667)}.fvv-li p{margin:4px 0 0;font-size:.82rem;color:#334}
/* Control de campañas · cada curso a pantalla completa (28/09) */
.ctl-fcamp-cab{position:relative}.ctl-fullb{flex:0 0 auto;width:36px;height:36px;border-radius:10px;border:1px solid var(--borde,#dfe3ea);background:#fff;font-size:18px;line-height:1;cursor:pointer;color:#0f6b9b;margin-left:8px}
.ctl-fullb:hover{background:#eef6fb;border-color:#0f6b9b}
.ctl-fila.ctl-full{position:fixed;inset:12px;z-index:900;overflow:auto;margin:0;box-shadow:0 20px 60px rgba(0,0,0,.35);background:var(--tarjeta,#fff);align-items:start}
.ctl-fila.ctl-full .ctl-fcurso{position:sticky;top:0}
body.ctl-full-on{overflow:hidden}body.ctl-full-on::after{content:'';position:fixed;inset:0;background:rgba(15,30,45,.55);z-index:899}
@media(max-width:700px){.ctl-fila.ctl-full{inset:0;border-radius:0}.ctl-fila.ctl-full .ctl-fcurso{position:static}}
/* periodo FEM · tutor/a y centro sin repetir datos (28/09) */
.fem-tut{margin-top:18px!important}
.fem-tut .wa-campo input,.fem-tut .wa-campo select{width:100%;max-width:none}
.fem-tres{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fem-tres span{background:#eef6fb;color:#0f5a82;border-radius:99px;padding:4px 10px;font-size:.8rem;font-weight:600;overflow-wrap:anywhere}
.fem-tman{margin-top:10px;padding:12px;border:1px dashed var(--borde,#d7dee6);border-radius:12px;background:#fafcfd}.fem-tman .est-ayuda{margin:0 0 6px}
/* FEM · captación de empresas (28/09) */
.fcp-hero{background:linear-gradient(135deg,#fff7ec,#fff);border-left:5px solid #f59e0b}.fcp-hero h3{margin:0 0 4px}
.fcp-k-ok b{color:#1f9d55}
.fcp-resp{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.fcp-r{border:1px solid var(--borde,#e3e9ef);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:6px}.fcp-r-si{border-left:5px solid #1f9d55;background:#f6fcf8}.fcp-r-no{opacity:.75}
.fcp-r-cab{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.fcp-chip{font-size:.78rem;font-weight:700;background:#e7f6ed;color:#1f7a43;border-radius:99px;padding:3px 10px;white-space:nowrap}.fcp-r-no .fcp-chip{background:#eef2f6;color:#556}
.fcp-cont{display:flex;flex-wrap:wrap;gap:6px}.fcp-cont>*{font-size:.82rem;background:#fff;border:1px solid var(--borde,#e3e9ef);border-radius:99px;padding:3px 10px;text-decoration:none;color:inherit;overflow-wrap:anywhere}
.fcp-r p{margin:0;font-size:.88rem;font-style:italic}.fcp-ya{font-size:.82rem;font-weight:700;color:#1f7a43}.fcp-r .btn{align-self:flex-start}
.fcp-prop{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:900px){.fcp-prop{grid-template-columns:1fr}}
.fcp-prev{width:100%;height:460px;border:1px solid var(--borde,#e3e9ef);border-radius:12px;background:#fff;margin:6px 0 8px}
.fcp-emps-cab{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.fcp-emps-cab span{font-weight:600;color:var(--tenue,#667);font-size:.85rem}
.fcp-lista{display:flex;flex-direction:column;gap:6px;max-height:430px;overflow:auto;margin-top:8px;padding-right:4px}
.fcp-e{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--borde,#e3e9ef);border-radius:12px;padding:9px 11px;cursor:pointer}.fcp-e:hover{border-color:#0f6b9b}.fcp-e input{width:20px;height:20px;flex:0 0 20px;margin-top:2px}
.fcp-e b{display:block;font-size:.9rem}.fcp-e small{display:block;color:var(--tenue,#667);font-size:.78rem}.fcp-e i{font-style:normal}.fcp-sin{opacity:.55;cursor:default}
.fcp-t{display:inline-block;font-style:normal;font-size:.7rem;font-weight:700;background:#eef2f6;border-radius:99px;padding:1px 8px;margin:4px 4px 0 0}.fcp-t.ok{background:#e7f6ed;color:#1f7a43}
.fcp-pie{justify-content:flex-end;margin-top:12px}
@media(max-width:700px){.fcp-pie{position:sticky;bottom:0;background:var(--tarjeta,#fff);padding:10px 0}.fcp-pie .btn{flex:1}}
/* FEM · TGSS (28/09) */
.ftg-cab{display:flex;flex-direction:column;gap:8px}.ftg-ccc{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ftg-ico{font-size:26px;width:50px;height:50px;border-radius:14px;background:#eef3fb;display:grid;place-items:center}
.ftg-ccc small{display:block;color:var(--tenue,#667);font-size:.78rem}.ftg-ccc b{font-size:1.25rem;letter-spacing:.04em}.ftg-falta{color:#b45309;font-weight:700;font-size:.85rem;letter-spacing:0}
.ftg-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}@media(max-width:420px){.ftg-lista{grid-template-columns:1fr}}
.ftg-datos{display:grid;grid-template-columns:1.3fr 1fr .8fr;gap:8px;margin:10px 0;padding:10px;border-radius:12px;background:#f6f8fb}@media(max-width:520px){.ftg-datos{grid-template-columns:1fr 1fr}}
.ftg-datos small{display:block;color:var(--tenue,#667);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.ftg-datos b{font-size:.95rem;overflow-wrap:anywhere}
.ftg-cop{border:0;background:none;cursor:pointer;font-size:.9rem;padding:2px 4px}
.ftg-naf{display:flex;gap:6px;margin-top:2px}.ftg-naf input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--borde,#d7dee6);border-radius:8px;font:inherit}
.ftg-chks{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:420px){.ftg-chks{grid-template-columns:1fr}}
.ftg-chk{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--borde,#e3e9ef);border-radius:12px;padding:10px;cursor:pointer;min-height:56px}
.ftg-chk input{width:22px;height:22px;flex:0 0 22px;margin:1px 0 0}.ftg-chk b{display:block;font-size:.88rem}.ftg-chk small{display:block;font-size:.76rem;color:var(--tenue,#556)}
.ftg-ok{border-color:#bfe5cc;background:#f3faf5}.ftg-toca{border-color:#f5d48a;background:#fffaf0}.ftg-fuera{border-color:#f3b4b4;background:#fdf3f3}.ftg-nada{opacity:.6}
.ftg-afi{margin-top:12px;border-left:5px solid #94a3b8}
/* TGSS · tarjeta más limpia (28/09) */
.ftg-datos{display:flex!important;flex-direction:column;gap:0;padding:4px 12px!important}
.ftg-fila{display:flex;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #e6ebf1}.ftg-fila:last-child{border-bottom:0}
.ftg-fila>span{flex:1;color:var(--tenue,#667);font-size:.8rem;font-weight:600}.ftg-fila>b{font-size:.98rem;letter-spacing:.02em;white-space:nowrap}
.ftg-fila.ftg-mal>b{color:#b45309;font-size:.85rem;letter-spacing:0}
.ftg-edit{display:flex;gap:8px;padding:0 0 10px}.ftg-edit input{flex:1;min-width:0;padding:10px 12px;border:1.5px solid var(--borde,#d7dee6);border-radius:10px;font:inherit;font-size:16px}
.ftg-lista{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))!important}@media(max-width:440px){.ftg-lista{grid-template-columns:1fr!important}}
.ftg-pasos{margin:8px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:.92rem;line-height:1.5}.ftg-pasos .btn{margin:0 6px;vertical-align:middle}
/* TGSS · más aire entre bloques (28/09) */
.ftg{display:flex;flex-direction:column;gap:18px}.ftg>*{margin:0!important}
.ftg .ftg-cab{padding:20px 22px;gap:12px}.ftg .fem-kpis{gap:14px}
.ftg-lista{gap:16px!important}.ftg-card{padding:18px!important}.ftg-card .ftg-datos{margin:14px 0!important}.ftg-chks{gap:12px!important}
.ftg-afi{padding:20px 22px}.ftg-afi h4{margin:0 0 6px}
.ftg-pasos li{padding:10px 12px;background:#f6f8fb;border-radius:12px}
.ftg-sil{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 6px}.ftg-sil>span{background:#fff;border:1px solid var(--borde,#dfe3ea);border-radius:10px;padding:6px 10px;font-size:.85rem}.ftg-sil b{margin-left:4px;letter-spacing:.03em}.ftg-pasos small{display:block;color:var(--tenue,#667)}
/* TGSS · meses, chuleta y AFI (28/09) */
.ftg-meses{margin-top:12px;display:flex;flex-direction:column;gap:6px}.ftg-mt{color:var(--tenue,#667);font-weight:600;font-size:.78rem}.ftg-mt i{font-weight:400}
.ftg-mes{display:flex;gap:10px;align-items:center;border:1px solid var(--borde,#e3e9ef);border-radius:10px;padding:8px 10px;cursor:pointer}.ftg-mes input{width:20px;height:20px;flex:0 0 20px}
.ftg-mes b{display:block;font-size:.85rem;text-transform:capitalize}.ftg-mes small{font-size:.78rem;color:var(--tenue,#556)}.ftg-dias{display:inline!important;font-size:1rem!important;color:#0f6b9b}
.ftg-mes-ok{background:#f3faf5;border-color:#bfe5cc}.ftg-mes-toca{background:#fffaf0;border-color:#f5d48a}
.ftg-chuleta{border-left:5px solid #0f6b9b}.ftg-chuleta h4 small{font-weight:500;color:var(--tenue,#667)}
.ftg-ch{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:8px}.ftg-ch>div{background:#f6f8fb;border-radius:12px;padding:10px 12px}.ftg-ch b{display:block;margin-bottom:4px}.ftg-ch span{font-size:.88rem;line-height:1.5}
.ftg-ch em{font-style:normal;font-weight:800;background:#e8f1f8;color:#0f5a82;border-radius:6px;padding:0 6px}
.ftg-afigen{border-left:5px solid #f59e0b}.ftg-beta{font-size:.7rem;font-weight:800;background:#fff4d6;color:#8a5a00;border-radius:99px;padding:2px 8px;vertical-align:middle;margin-left:6px}
/* 🚦 semáforo FEM y «Salvar el curso» FEM (28/09) */
.fsm-res{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#fff1f1,#fff);border:1px solid #f3c2c2;border-left:5px solid #d14343;border-radius:14px;padding:12px 14px;margin:10px 0}.fsm-res-i{font-size:26px}.fsm-res b{display:block}.fsm-res small{color:var(--tenue,#667)}
.fsm-chips{margin-top:6px}.fsm-chips b{margin-left:4px;font-weight:800}
.fsm-card{position:relative;border-top:4px solid #cbd5e1;text-align:left;cursor:pointer}.fsm-rojo{border-top-color:#d14343}.fsm-ambar{border-top-color:#e0a106}.fsm-verde{border-top-color:#1f9d55}.fsm-gris{border-top-color:#cbd5e1;opacity:.85}
.fsm-top{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;margin-bottom:6px}.fsm-luz{font-size:1rem}.fsm-txt{flex:1}.fsm-rojo .fsm-txt{color:#b42323}.fsm-ambar .fsm-txt{color:#8a5a00}.fsm-verde .fsm-txt{color:#1f7a43}.fsm-gris .fsm-txt{color:#667}
.fsm-edit{cursor:pointer;padding:2px 6px;border-radius:8px}.fsm-edit:hover{background:#eef2f6}
.fsm-nota{background:#fff4f4;border-radius:10px;padding:6px 10px;font-size:.8rem;margin:6px 0;color:#7a1f1f}
.fsm-opc{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.fsm-o{border:2px solid var(--borde,#d7dee6);background:#fff;border-radius:12px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}.fsm-o.on{border-color:#0f6b9b;background:#eef6fb}
.fsl-caja{border-left:5px solid #d14343;margin-top:14px}.fsl-cab{display:flex;gap:12px;align-items:center;margin-bottom:12px}.fsl-ico{font-size:26px;width:48px;height:48px;border-radius:14px;background:#fff1f1;display:grid;place-items:center}.fsl-cab b{display:block;font-size:1.05rem}.fsl-cab small{color:var(--tenue,#667)}
.fsl-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.fsl-t{border:1px solid #f3c2c2;border-radius:16px;padding:14px;background:linear-gradient(180deg,#fff7f7,#fff);display:flex;flex-direction:column;gap:10px;animation:fslIn .4s ease both;animation-delay:calc(var(--i)*60ms)}@keyframes fslIn{from{opacity:0;transform:translateY(6px)}to{opacity:1}}
.fsl-t-cab{display:flex;gap:10px;align-items:flex-start}.fsl-luz{font-size:1.2rem}.fsl-t-cab b{display:block;line-height:1.25}.fsl-t-cab small{color:var(--tenue,#667)}
.fsl-nec{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center}.fsl-nec b{display:block;font-size:1.15rem;color:#b42323}.fsl-nec small{font-size:.7rem;color:var(--tenue,#667)}
.fsl-nota{background:#fff;border:1px dashed #f3c2c2;border-radius:10px;padding:8px 10px;font-size:.85rem;line-height:1.45}
.fsl-acc{display:flex;gap:8px;flex-wrap:wrap}

/* 🏢 Comparte FEM con empresas */
.cf-url{margin:12px 0}.cf-url small{display:block;font-weight:700;color:var(--gris,#64748b);margin-bottom:6px}.cf-url-f{display:flex;gap:8px;flex-wrap:wrap}.cf-url-f input{flex:1 1 220px;min-width:0;padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px}
.cf-tabs{margin:6px 0 10px}.cf-ta{width:100%;min-height:190px;padding:12px;border:1.5px solid #e2e8f0;border-radius:12px;font:inherit;font-size:14.5px;line-height:1.5;resize:vertical}.cf-asu{width:100%;padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font:inherit;margin-bottom:8px}.cf-lab{display:block;font-weight:700;font-size:13px;margin-bottom:4px}

.pq-marron.activo { background: #b7791f; } .pq-lila.activo { background: #7a4fb3; }

/* ➕ Añadir alumno al curso */
.aa-bus input{width:100%;padding:14px 16px;border:1.5px solid var(--linea,#e2e8f0);border-radius:14px;font:inherit;font-size:16px}.aa-bus input:focus{outline:0;border-color:#1A8CC4;box-shadow:0 0 0 4px rgba(26,140,196,.12)}
.aa-res{margin:12px 0;display:grid;gap:8px;max-height:52vh;overflow:auto}.aa-n{color:var(--tinta-suave,#64748b);font-weight:600}
.aa-it{display:flex;gap:12px;align-items:center;border:1.5px solid var(--linea,#e2e8f0);border-radius:14px;padding:10px 12px;background:#fff;animation:aaIn .25s ease both}.aa-it.ya{background:#f3faf6;border-color:#cdebd8}@keyframes aaIn{from{opacity:0;transform:translateY(6px)}}
.aa-av{flex:none;width:40px;height:40px;border-radius:50%;background:#e8f3fa;color:#1A8CC4;font-weight:800;display:grid;place-items:center;font-size:14px}
.aa-dat{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.aa-dat b{font-size:15px}.aa-dat small{color:var(--tinta-suave,#64748b)}
.aa-acc{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.aa-chip{display:inline-block;font-size:12px;font-weight:700;border-radius:999px;padding:3px 9px;align-self:flex-start}.aa-chip.verde{background:#e3f5ea;color:#1f7a43}.aa-chip.ambar{background:#fff4dd;color:#8a5a00}.aa-chip.rojo{background:#fdecec;color:#b42323}
.aa-vacio{text-align:center;padding:18px;color:var(--tinta-suave,#64748b);background:#f8fafc;border-radius:14px}
.aa-nuevo{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px dashed var(--linea,#e2e8f0);padding-top:12px}.aa-nuevo span{font-weight:700}
@media(max-width:560px){.aa-it{flex-wrap:wrap}.aa-acc{width:100%;justify-content:stretch}.aa-acc .btn-primario{flex:1}.aa-nuevo .btn{width:100%}}

/* ⭐📚 FEM · empresas recomendadas y de otros años */
.fh-tabs{margin:0 0 12px}.fh-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.fh-cab>div{flex:1;min-width:240px}.fh-carga{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.fh-carga small{color:var(--tinta-suave,#64748b)}
.fh-cursos{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fh-cur{font-size:12.5px;font-weight:700;border-radius:999px;padding:5px 10px;background:#eef2f7;color:#334155}.fh-cur i{font-style:normal;font-weight:500;opacity:.75}.fh-misma{background:#e3f5ea;color:#1f7a43}.fh-familia{background:#e8f3fa;color:#0f5f8c}.fh-afin{background:#fff4dd;color:#8a5a00}
.fh-n{font-weight:700;color:var(--tinta-suave,#64748b);margin:4px 2px 8px;font-size:13px}.fh-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.fh-e{background:#fff;border:1.5px solid var(--linea,#e2e8f0);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:5px;animation:aaIn .3s ease both;animation-delay:calc(var(--i,0)*25ms)}.fh-e-cab{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.fh-e-cab b{font-size:15px}.fh-e small{color:var(--tinta-suave,#64748b)}.fh-hc{font-size:12px}
.fh-no{font-size:12px;color:#8a5a00;background:#fff4dd;border-radius:999px;padding:2px 8px}.fh-acc{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.fh-mas{text-align:center;margin:12px 0}
@media(max-width:560px){.fh-lista{grid-template-columns:1fr}.fh-acc .btn{flex:1}}

/* 📥 Importar Excel de prácticas FEM */
.fi-barra{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#f1f7fb;border:1px dashed #b9d7ea;border-radius:12px;padding:8px 12px;margin-bottom:10px;font-size:13.5px;font-weight:600}
.fi-drop{display:block;border:2px dashed #b9d7ea;border-radius:16px;padding:26px;text-align:center;cursor:pointer;background:#f8fbfd;margin:10px 0}.fi-drop input{display:none}.fi-drop span{font-size:15px}.fi-pegar summary{cursor:pointer;font-weight:600;margin:6px 0}.fi-pegar textarea{width:100%;font-family:monospace;font-size:12px;border:1.5px solid #e2e8f0;border-radius:10px;padding:8px;margin:6px 0}
.fi-kpis{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.fi-k{font-size:12.5px;font-weight:700;border-radius:999px;padding:5px 10px;background:#eef2f7}.fi-k.ok{background:#e3f5ea;color:#1f7a43}.fi-k.aviso{background:#fff4dd;color:#8a5a00}.fi-k.error{background:#fdecec;color:#b42323}
.fi-res h4{margin:14px 0 8px}.fi-emps{display:grid;gap:8px}.fi-emp{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;border:1.5px solid #e2e8f0;border-radius:12px;padding:8px 12px;background:#fff}.fi-emp.fi-falta{border-color:#f6d58e;background:#fffbf2}.fi-emp>div{display:flex;flex-direction:column;min-width:180px;flex:1}.fi-emp small{color:#64748b}.fi-emp select{flex:1 1 240px;min-width:0;padding:9px;border:1.5px solid #e2e8f0;border-radius:10px;font:inherit;font-size:14px}
.fi-filas{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;max-height:48vh;overflow:auto;padding:2px}.fi-f{border:1.5px solid #e2e8f0;border-left-width:5px;border-radius:12px;padding:9px 12px;background:#fff;display:flex;flex-direction:column;gap:4px}.fi-f.fi-ok{border-left-color:#2e9e5b}.fi-f.fi-aviso{border-left-color:#e09a1b}.fi-f.fi-error{border-left-color:#d9534f;background:#fffafa}
.fi-f-cab{display:flex;align-items:center;gap:8px}.fi-f-cab b{flex:1}.fi-chip{font-size:11.5px;font-weight:700;white-space:nowrap}.fi-f small{color:#64748b}.fi-m{font-size:12.5px;line-height:1.35}.fi-m.e{color:#b42323}.fi-m.a{color:#8a5a00}.fi-m.i{color:#475569}.fi-mas summary{cursor:pointer;font-size:12px;color:#1A8CC4}
.fi-fin{text-align:center;padding:10px}.fi-fin-i{font-size:48px}.fi-fin h3{margin:4px 0}
@media(max-width:560px){.fi-filas{grid-template-columns:1fr;max-height:none}}

/* ===== 🔎 Buscador general (29/09/2026) ===== */
.rail-buscar { display: flex; align-items: center; gap: 8px; margin: 0 12px 10px; padding: 9px 10px; border-radius: 10px; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.1); color: #e6f0f8; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; text-align: left; transition: background .15s, border-color .15s; }
.rail-buscar:hover { background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.35); color: #fff; }
.rail-buscar .rb-t { flex: 1; }
.rail-buscar kbd, .bq-pie kbd { font: 700 10.5px/1 ui-monospace, monospace; padding: 3px 5px; border-radius: 5px; background: rgba(255,255,255,.14); color: #cfe0ee; }
body.ancho .rail-buscar { justify-content: center; margin: 0 8px 10px; } body.ancho .rail-buscar .rb-t, body.ancho .rail-buscar .rb-k { display: none; }
@media (max-width: 760px) { .rail-buscar { display: none; } }
.mas-buscar { display: flex; align-items: center; gap: 10px; width: 100%; margin: 2px 0 14px; padding: 13px 14px; border-radius: 14px; border: 1.5px solid #d6e0ea; background: #f4f8fb; color: #5b6b7b; font: inherit; font-size: 15px; font-weight: 600; text-align: left; cursor: pointer; }
.mas-buscar span { font-size: 18px; }
.bq-capa { position: fixed; inset: 0; z-index: 9000; background: rgba(12,28,44,.45); backdrop-filter: blur(2px); display: flex; align-items: flex-start; justify-content: center; padding: 9vh 16px 16px; animation: bqF .15s ease-out; }
.bq-caja { width: 100%; max-width: 640px; max-height: 78vh; display: flex; flex-direction: column; background: #fff; border-radius: 16px; box-shadow: 0 24px 60px rgba(8,30,52,.35); overflow: hidden; animation: bqS .18s ease-out; }
.bq-cab { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid #e6edf3; }
.bq-lupa { font-size: 20px; }
.bq-cab input, .bq-cab input:focus { flex: 1; min-width: 0; border: 0 !important; outline: 0 !important; box-shadow: none !important; font: inherit; font-size: 17px; padding: 8px 2px; background: transparent; color: #1c2b3a; }
.bq-cab input::-webkit-search-cancel-button { display: none; }
.bq-x { border: 0; background: #eef3f7; color: #4a5b6b; width: 36px; height: 36px; border-radius: 10px; font-size: 15px; cursor: pointer; flex: none; }
.bq-res { overflow-y: auto; padding: 6px 8px 10px; overscroll-behavior: contain; }
.bq-g { font-size: 11.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #7a8a99; padding: 12px 10px 5px; }
.bq-it { display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px; border: 0; border-radius: 10px; background: transparent; font: inherit; text-align: left; cursor: pointer; color: #1c2b3a; min-height: 52px; }
.bq-it.on { background: #e8f3fb; box-shadow: inset 3px 0 0 #1f8fd6; }
.bq-ico { width: 36px; height: 36px; flex: none; display: grid; place-items: center; border-radius: 10px; background: #f1f5f8; font-size: 18px; }
.bq-av { background: #1f6fa8; color: #fff; font-size: 13px; font-weight: 800; }
.bq-tx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bq-tx b { font-size: 14.5px; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bq-tx small { font-size: 12.5px; color: #6b7a88; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bq-tag { flex: none; font-size: 11px; font-weight: 800; padding: 4px 8px; border-radius: 99px; background: #eef3f7; color: #4a5b6b; }
.bq-tag-m { background: #e3f1fb; color: #1f6fa8; }
.bq-e-cliente { background: #e2f6ea; color: #1b7a43; } .bq-e-interesada { background: #fff3d9; color: #8a5a00; } .bq-e-descartada { background: #f6e3e3; color: #9a2e2e; }
.bq-vacio { padding: 22px 14px 8px; color: #4a5b6b; } .bq-vacio b { font-size: 16px; color: #1c2b3a; } .bq-vacio p { margin: 6px 0 0; font-size: 14px; line-height: 1.5; }
.bq-nota, .bq-aviso { margin: 10px; padding: 10px 12px; border-radius: 10px; background: #f4f8fb; color: #5b6b7b; font-size: 13px; } .bq-aviso { background: #fff5e5; color: #7a4d00; }
.bq-sk { height: 44px; margin: 6px 10px; border-radius: 10px; background: linear-gradient(90deg, #eef3f7 25%, #f7fafc 50%, #eef3f7 75%); background-size: 200% 100%; animation: bqK 1.1s linear infinite; }
.bq-pie { display: flex; gap: 16px; padding: 9px 14px; border-top: 1px solid #e6edf3; font-size: 12px; color: #7a8a99; } .bq-pie kbd { background: #eef3f7; color: #4a5b6b; margin-right: 2px; }
body.bq-abierto { overflow: hidden; }
@keyframes bqF { from { opacity: 0; } } @keyframes bqS { from { opacity: 0; transform: translateY(-8px) scale(.98); } } @keyframes bqK { to { background-position: -200% 0; } }
@media (max-width: 760px) { .bq-capa { padding: 0; align-items: stretch; } .bq-caja { max-width: none; max-height: none; height: 100%; border-radius: 0; } .bq-pie { display: none; } .bq-cab { padding: 10px 12px; padding-top: max(10px, env(safe-area-inset-top)); } .bq-it { min-height: 56px; } }
@media (prefers-reduced-motion: reduce) { .bq-capa, .bq-caja, .bq-sk { animation: none; } }
/* importador FEM: guía de pasos y pie siempre visible (29/09) */
.fi-guia{background:#eef6fc;border:1.5px solid #cfe4f4;border-radius:12px;padding:10px 14px;margin:4px 0 10px;font-size:13.5px;line-height:1.45}.fi-guia ol{margin:6px 0 0;padding-left:20px}.fi-guia li{margin:3px 0}.fi-guia-f{color:#b42318;font-weight:700}
#fiPie{position:sticky;bottom:-1px;background:#fff;z-index:3;padding:10px 0 4px;border-top:1px solid #e6edf3;display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.fi-pie-nota{flex:1 1 100%;font-size:13px;font-weight:700;color:#8a5a00}
/* ⓘ de alta en otro curso (29/09) */
.otra-alta{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:6px;border-radius:50%;background:#1f6fa8;color:#fff;font:italic 800 12px/1 Georgia,serif;vertical-align:2px;cursor:help;box-shadow:0 0 0 3px #d9ebf7}
.otra-alta:hover,.otra-alta:focus{background:#b45309;box-shadow:0 0 0 3px #fde7c7;outline:0}
.kb-av{position:relative;overflow:visible}.kb-av .otra-alta{position:absolute;right:-7px;bottom:-5px;margin:0;width:19px;height:19px;font-size:11.5px;box-shadow:0 0 0 2.5px #fff}
.fh-rec{margin:8px 0 4px;padding:9px 12px;border-radius:10px;background:#fff7e8;color:#7a4d00;font-size:13.5px}.fh-rec .btn-link{font-weight:800;margin-left:4px}
.fh-ult{display:block;margin:2px 0 4px;font-size:12.5px;color:#6b7a88}.fh-ult.on{color:#b45309;font-weight:700}
/* 29/09 (Domingo): el submenú del curso (Alumnado, Asistencia…) se veía poco → panel coloreado unido al grupo elegido, pestañas más grandes */
.ctabs-gb.on::after{display:block;content:'';position:absolute;left:50%;bottom:-12px;right:auto;width:0;height:0;margin-left:-11px;border:11px solid transparent;border-top-color:#1479b0;border-bottom:0;border-radius:0;background:none}
#cursoTabs.tabs-curso{margin-top:12px;background:linear-gradient(180deg,#dcEEFa,#eaf5fc);border:2px solid #8ec3e3;border-radius:16px;padding:9px;gap:8px;box-shadow:0 6px 16px rgba(15,106,156,.12)}
#cursoTabs .tab{background:#fff;border:1.5px solid #b9d9ee;color:#0d4a6e;font-size:15px;font-weight:800;padding:10px 16px;min-height:44px;border-radius:12px;box-shadow:0 1px 3px rgba(13,27,42,.06)}
#cursoTabs .tab:hover{background:#fff;border-color:#1a8cc4;color:#0f6a9c;transform:translateY(-1px)}
#cursoTabs .tab.activa{background:linear-gradient(135deg,#0f6a9c,#1a8cc4);border-color:#0f6a9c;color:#fff;box-shadow:0 6px 14px rgba(15,106,156,.32)}
#cursoTabs .tab-ico svg{width:18px;height:18px}
@media(max-width:700px){#cursoTabs .tab{font-size:14px;padding:9px 13px}.ctabs-gb.on::after{bottom:-11px}}
/* ✏️ cambiar inicio desde la tarjeta del curso (29/09) */
.cu-fed{border:0;background:#eef5fb;border-radius:8px;width:28px;height:28px;margin-left:4px;cursor:pointer;font-size:13px;vertical-align:middle;transition:background .15s}.cu-fed:hover{background:#d8ebf7}
.ci-res{background:#f4f8fb;border-radius:12px;padding:12px 14px;margin:10px 0}.ci-fila{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid #e3ebf2;font-size:15px}.ci-fila:last-of-type{border-bottom:0}.ci-res small{display:block;margin-top:6px;color:#6b7a88}
.ci-nota{font-size:13px;color:#6b7a88;margin:6px 0 0}#ciFecha{font-size:17px;min-height:46px}
.cal-cab-acc{display:flex;gap:8px;flex-wrap:wrap}.cal-kpi-ed{font:inherit;cursor:pointer;border:2px solid #8ec3e3!important;background:#f2f9fd!important}.cal-kpi-ed:hover{border-color:#1a8cc4!important}
.em-enl{margin-top:8px;padding:9px 12px;border-radius:10px;background:#e8f5ec;color:#1b5e38;font-size:13px;line-height:1.45;word-break:break-all}.em-enl a{color:#0f6a9c;font-weight:700}
/* 📘 Anuncio en Facebook e Instagram: 3 pasos + vista previa (29/09) */
.mt2{display:grid;grid-template-columns:330px 1fr;gap:18px;align-items:start}
.mt2-prev{position:sticky;top:0}.mt2-prev-tit{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7a8a99;margin:0 0 6px}.mt2-prev .mt-prev{box-shadow:0 10px 26px rgba(13,27,42,.12)}.mt2-nota{font-size:12.5px;color:#8a5a00;background:#fff7e8;border-radius:10px;padding:8px 10px;margin:8px 0 0}
.mt2-form{display:flex;flex-direction:column;gap:12px;min-width:0}
.mt2-sec{background:#fff;border:1.5px solid #e2eaf1;border-radius:14px;padding:12px 14px}.mt2-sec h4{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px;font-size:15px}.mt2-sec h4 span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#1877f2;color:#fff;font-size:13px}.mt2-sec h4 small{font-weight:600;color:#7a8a99;font-size:12.5px}
.mt2-sec textarea{width:100%;min-height:120px;font-size:15px;line-height:1.45}.mt2-sec .grid2{gap:10px}
.mt2-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.mt2-chip{border:1.5px solid #cfe0ee;background:#fff;color:#0d4a6e;border-radius:99px;padding:8px 13px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer;min-height:38px;transition:all .15s}.mt2-chip:hover{border-color:#1877f2}.mt2-chip.on{background:#1877f2;border-color:#1877f2;color:#fff;box-shadow:0 4px 10px rgba(24,119,242,.28)}
.mt2-zona{margin-top:10px;font-size:13.5px;color:#37506a;background:#f2f7fc;border-radius:10px;padding:8px 11px}.mt2-av{margin-top:8px}
.mt2-pres{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mt2-pres label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6b7a88;margin-bottom:6px}.mt2-num{width:70px;min-height:38px;border-radius:10px;border:1.5px solid #cfe0ee;padding:0 8px;font:inherit;font-weight:700}
.mt2-dias{display:flex;align-items:center;gap:10px}.mt2-dias input{flex:1;accent-color:#1877f2}.mt2-dias b{min-width:62px;font-size:15px}
.mt2-pie{position:sticky;bottom:0;background:#fff;display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid #e6edf3;padding-top:10px}.mt2-total{margin-right:auto;display:flex;flex-direction:column;line-height:1.15}.mt2-total b{font-size:22px;color:#0d1b2a}.mt2-total small{color:#7a8a99;font-size:12px}
@media(max-width:820px){.mt2{grid-template-columns:1fr}.mt2-prev{position:static;max-width:380px;margin:0 auto}.mt2-pres{grid-template-columns:1fr}}
.mt2-otro{margin-left:auto}.mt2-cargando{opacity:.5}.mt2-sec .grid2 input{width:100%;box-sizing:border-box}
.mt2-edad{margin-top:10px}.mt2-edad label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6b7a88;margin-bottom:6px}.mt2-edad-n{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:#37506a}.mt2-edad-n .mt2-num{width:62px}.mt2-nota2{display:block;margin-top:8px;color:#7a8a99;font-size:12px}
.cp-cambios{margin-top:14px;background:#fff;border:1.5px solid #e2eaf1;border-radius:12px;padding:10px 14px}.cp-cambios summary{cursor:pointer;display:flex;align-items:center;gap:10px;flex-wrap:wrap;list-style:none}.cp-cambios summary::-webkit-details-marker{display:none}.cp-cambios summary::before{content:'▸';color:#1a8cc4;font-weight:800;transition:transform .15s}.cp-cambios[open] summary::before{transform:rotate(90deg)}.cp-cambios summary .cierre-h{margin:0}.cp-cambios summary small{color:#7a8a99}.cp-cambios[open] .cp-comp{margin-top:10px}
/* ===== EstudiaEnADF · tarjetas rediseñadas (29/09) ===== */
.est-cobrar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:linear-gradient(135deg,#fff8ea,#fff);border:1.5px solid #f6d99a;border-radius:16px;padding:14px 16px;margin:6px 0 14px}.est-cobrar b{display:block;font-size:16px}.est-cobrar small{color:#6b5a3a;font-size:13px;max-width:720px;display:block;margin-top:2px}.est-cobrar .btn{min-height:46px;font-size:15px}
.est-lista{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))!important;gap:16px!important}
.est-lista .est-card{display:flex;flex-direction:column;gap:10px;padding:16px 18px!important;border-radius:16px!important;min-width:0}
.est-lista .pa-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.est-lista .pa-top b{font-size:17px;line-height:1.25;cursor:pointer}.est-lista .pa-top small{white-space:nowrap;color:#7a8a99}
.est-lista .pa-tel{font-size:18px}.est-lista .est-mail{font-size:13px;color:#6b7a88;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.est-lista .pa-curso{font-size:14px;font-weight:700;color:#1c2b3a;background:#f4f8fb;border-radius:10px;padding:8px 10px;line-height:1.35}
.est-lista .ins-tags{display:flex;flex-wrap:wrap;gap:6px}
.est-estados{border:1.5px solid #e2eaf1;border-radius:12px;padding:0;margin:0!important;background:#fff}.est-estados>summary{display:flex;align-items:center;gap:8px;padding:9px 12px;cursor:pointer;list-style:none;font-size:13px}.est-estados>summary::-webkit-details-marker{display:none}.est-estados>summary span{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6b7a88}.est-estados>summary .est-sum{padding:3px 10px;border-radius:99px;background:#e8f2fa;color:#0f6a9c;font-size:13px}.est-estados>summary i{margin-left:auto;font-style:normal;font-weight:700;color:#1a8cc4;font-size:12.5px}.est-estados[open]>summary i{visibility:hidden}.est-estados .est-est-fila{padding:0 10px 10px;display:flex;flex-wrap:wrap;gap:6px}
.est-cobro-b{width:100%;min-height:46px;border:0;border-radius:12px;background:linear-gradient(135deg,#ffc439,#f5a623);color:#2a1d00;font:inherit;font-weight:800;font-size:14.5px;cursor:pointer;box-shadow:0 6px 14px rgba(245,166,35,.3)}.est-cobro-b:hover{filter:brightness(1.03)}
.est-acc{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:auto}.est-acc .btn-winfo{grid-column:1/-1;min-height:42px;border-radius:12px}
.est-b{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 10px;border:1.5px solid #d9e5ee;border-radius:12px;background:#fff;color:#0d4a6e;font:inherit;font-size:13.5px;font-weight:700;text-decoration:none;cursor:pointer;text-align:center;line-height:1.2}.est-b:hover{border-color:#1a8cc4;background:#f3f9fd}.est-b span{font-size:16px}
@media(max-width:760px){.est-lista{grid-template-columns:1fr!important}}
/* modal de cobro */
.ec-paso{background:#fff;border:1.5px solid #e2eaf1;border-radius:14px;padding:12px 14px;margin:10px 0}.ec-paso h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:15px}.ec-paso h4 span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#f5a623;color:#fff;font-size:13px}
.ec-bus{width:100%;min-height:44px;border:1.5px solid #cfe0ee;border-radius:12px;padding:0 12px;font:inherit;font-size:15px;box-sizing:border-box}.ec-res{display:flex;flex-direction:column;gap:6px;margin:8px 0}.ec-op{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1.5px solid #e2eaf1;border-radius:10px;background:#fff;padding:9px 12px;font:inherit;text-align:left;cursor:pointer}.ec-op:hover{border-color:#1a8cc4;background:#f3f9fd}.ec-op small{color:#6b7a88}
.ec-op-noweb{border-style:dashed;background:#fffaf0}.ec-noweb{font-style:normal;color:#a15c00;font-weight:600}
.ec-sel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#eef7ee;border-radius:10px;padding:10px 12px}.ec-sel small{color:#4a6a55}.ec-sel .btn-link{margin-left:auto}.ec-av{color:#b45309;font-weight:700}
.ec-cur{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.ec-pres{display:flex;flex-direction:column}.ec-f{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf2f6}.ec-f span small{display:block;color:#7a8a99;font-size:12px}.ec-des b{color:#1b7a43}.ec-tot{border-bottom:0;font-size:17px}.ec-tot b{font-size:22px}
.ec-ok{background:#eef8f1;border:1.5px solid #bfe3cc;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;margin:10px 0}.ec-ok small{color:#3d6b4d}.ec-ok input{width:100%;min-height:40px;border-radius:10px;border:1px solid #cfe0d6;padding:0 10px;font:inherit;font-size:13px;box-sizing:border-box}.ec-acc{display:flex;gap:8px;flex-wrap:wrap}.ec-acc .btn{min-height:44px}
/* estado de tizo: menú plegado; al abrirlo, lista limpia en 2 columnas con punto de color (29/09) */
.est-estados .est-est-fila{display:grid!important;grid-template-columns:1fr 1fr;gap:4px!important;padding:4px 8px 10px!important;border-top:1px solid #edf2f6}
.est-estados .est-e{display:flex;align-items:center;gap:8px;justify-content:flex-start;border:0!important;background:transparent!important;border-radius:9px!important;padding:8px 10px!important;min-height:38px;font-size:13.5px!important;font-weight:700;color:#1c2b3a!important;box-shadow:none!important;text-align:left}
.est-estados .est-e::before{content:'';width:9px;height:9px;border-radius:50%;background:#9fb3c8;flex:none}
.est-estados .est-e.ce-e1::before,.est-estados .est-e.ce-e3::before{background:#2e9e5b}.est-estados .est-e.ce-e2::before,.est-estados .est-e.ce-e6::before{background:#d64545}.est-estados .est-e.ce-e5::before,.est-estados .est-e.ce-e7::before{background:#f2b23e}.est-estados .est-e.ce-e4::before,.est-estados .est-e.ce-e11::before{background:#1a8cc4}
.est-estados .est-e:hover{background:#f3f9fd!important}.est-estados .est-e.on{background:#e8f2fa!important;color:#0f6a9c!important}
.est-estados .est-e-mas{grid-column:1/-1;justify-content:center;color:#1a8cc4!important}.est-estados .est-e-mas::before{display:none}
.est-estados>summary .est-sum.ce-e1,.est-estados>summary .est-sum.ce-e3{background:#e3f5ea;color:#1f7a43}.est-estados>summary .est-sum.ce-e2,.est-estados>summary .est-sum.ce-e6{background:#fde8e8;color:#b42318}.est-estados>summary .est-sum.ce-e5,.est-estados>summary .est-sum.ce-e7{background:#fff3d9;color:#8a5a00}
/* desplegable que se escribe (29/09) */
.sb{position:relative}.sb-oculto{display:none!important}.sb-in{width:100%;box-sizing:border-box;min-height:44px}.sb.sb-ok .sb-in{border-color:#8ec3a2;background:#f6fcf8}
.sb-lista{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:50;background:#fff;border:1.5px solid #cfe0ee;border-radius:12px;box-shadow:0 12px 28px rgba(13,27,42,.16);max-height:260px;overflow:auto;padding:4px}
.sb-op{display:flex;justify-content:space-between;gap:8px;width:100%;border:0;background:transparent;text-align:left;padding:9px 10px;border-radius:8px;font:inherit;font-size:14px;cursor:pointer;color:#1c2b3a}.sb-op small{color:#8a9aa8;font-size:11.5px;white-space:nowrap}.sb-op.on,.sb-op:hover{background:#e8f3fb}.sb-vacio{padding:10px;color:#7a8a99;font-size:13px}
.mt2-nota.mt2-ok{background:#eef8f1;color:#1f7a43}
.mt2-nota.mt2-ok{background:#eef8f1;color:#1f7a43}
/* campaña rápida a pantalla completa (29/09) */
.cr-cab-acc{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start}
#modalCaja.cr-full{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;border-radius:0!important;margin:0!important}
#modal:has(#modalCaja.cr-full){padding:0!important;align-items:stretch!important}
#modalCaja.cr-full .cr-canales{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
/* 22/10/2026: buscador de personal en Ranking › Clasificación */
.rk2-bus{margin:10px 0 8px}.rk2-bus input{width:100%;box-sizing:border-box;min-height:40px;border:1px solid var(--linea,#d9e3ec);border-radius:12px;padding:8px 12px;font-size:14px;background:#fff}
