/* Demo · Seguimiento de alumnos (academias) · prefijo dal- · móvil con WhatsApp a la izquierda, la app de alumnos a la derecha (.dm-std) */
.d-alu .toast{ top:36px; bottom:auto; left:auto; right:38px; margin:0; width:auto; }   /* arriba a la derecha: abajo taparía el resumen */
/* el salto de tiempo, encima del chat (centrado sobre el móvil) */
.d-alu .dmb-salto{ left:44px; right:638px; top:128px; z-index:9; }
.d-alu .dmb-salto.entra{ animation:dal-salto 4.2s ease both; }   /* sale, se lee y se va: no tapa la conversación */
@keyframes dal-salto{ 0%{ opacity:0; transform:translateY(-6px); } 12%, 78%{ opacity:1; transform:none; } 100%{ opacity:0; visibility:hidden; } }
.dal-xls{ background:#1d7a45 !important; }

.dal-col{ flex:1; min-width:0; display:flex; flex-direction:column; gap:9px; padding:14px 18px 18px; overflow:hidden; position:relative; }
.dal-cab{ display:flex; align-items:flex-end; justify-content:space-between; gap:10px; flex:none; }
.dal-cab b{ display:block; margin-top:3px; font-size:16.5px; font-weight:600; letter-spacing:-.015em; }
.dal-cab em{ display:block; margin-top:2px; font-style:normal; font-size:11.3px; color:var(--tinta-60); }
.dal-chip{ display:inline-flex; align-items:center; gap:6px; height:26px; padding:0 11px; border-radius:999px; background:var(--verde-agua); color:var(--verde-osc); font-size:11.3px; font-weight:500; white-space:nowrap; }
.dal-chip .ico{ width:12px; height:12px; stroke-width:2.6; }
.dal-gira{ display:inline-block; width:12px; height:12px; border-radius:50%; border:2px solid rgba(47,163,135,.25); border-top-color:var(--verde-osc); animation:dal-gira .8s linear infinite; }
@keyframes dal-gira{ to{ transform:rotate(360deg); } }

/* Tabla de alumnos */
.dal-tabla{ flex:none; display:flex; flex-direction:column; border:1px solid var(--linea); border-radius:9px; overflow:hidden; }
.dal-fila{ display:grid; grid-template-columns:1.35fr 1.15fr .85fr .5fr .8fr; gap:8px; align-items:center; padding:6px 10px; font-size:11.4px; line-height:1.25; color:var(--tinta-80); border-top:1px solid var(--linea); transition:background .4s, box-shadow .4s; }
.dal-fila:first-child{ border-top:0; }
.dal-th{ background:var(--nieve); font-size:9.8px; font-weight:500; letter-spacing:.06em; text-transform:uppercase; color:var(--tinta-45); padding-block:6px; }
.dal-al{ display:flex; align-items:center; gap:7px; min-width:0; }
.dal-al b{ font-weight:500; color:var(--tinta); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dal-av{ width:21px; height:21px; border-radius:50%; background:var(--nieve-2); color:var(--tinta-60); font-size:9px; font-weight:600; display:grid; place-items:center; flex:none; }
.dal-prog{ display:flex; align-items:center; gap:7px; }
.dal-barra{ position:relative; flex:1; height:6px; border-radius:3px; background:var(--nieve-2); overflow:hidden; }
.dal-barra::after{ content:''; position:absolute; left:0; top:0; bottom:0; width:var(--p); border-radius:3px; background:var(--verde); transition:width .9s var(--ease); }
.dal-barra.sube::after{ width:var(--p2); }
.dal-pct{ width:40px; text-align:right; color:var(--tinta-60); white-space:nowrap; }
.dal-ult{ color:var(--tinta-60); white-space:nowrap; }
.dal-nota{ display:inline-flex; align-items:center; gap:3px; color:var(--tinta-80); }
.dal-nota .ico{ width:10px; height:10px; color:#e0a100; fill:#e0a100; }
/* estados: el de antes se oculta cuando sale el nuevo */
.dal-pct > span:has(~ .dal-nuevo:not(.oculto)), .dal-ult > span:has(~ .dal-nuevo:not(.oculto)), .dal-estado .dal-st:has(~ .dal-st:not(.oculto)), .dal-kpis b > span:has(~ .dal-nuevo:not(.oculto)), .dal-fi-est .dal-st:has(~ .dal-st:not(.oculto)){ display:none; }
.dal-nuevo{ font-weight:600; color:var(--verde-osc); }
.dal-st{ display:inline-flex; align-items:center; height:20px; padding:0 8px; border-radius:999px; font-size:10.4px; font-weight:600; white-space:nowrap; }
.dal-st.vacio, .dal-st .vacio{ background:none; padding:0; color:var(--tinta-30); font-weight:400; }
.dal-st.activa{ background:var(--verde-agua); color:var(--verde-osc); }
.dal-st.parada{ background:#fff1e8; color:#c2410c; }
.dal-st.fin{ background:var(--nieve-2); color:var(--tinta-60); }
.dal-fila.yo.elegida{ background:var(--verde-agua); box-shadow:inset 3px 0 0 var(--verde); }
.dal-fila.yo.elegida .dal-av{ background:var(--verde); color:var(--tinta); }

/* Cifras */
.dal-kpis{ flex:none; display:grid; grid-template-columns:repeat(3, 1fr); gap:8px; }
.dal-kpis > div{ display:flex; flex-direction:column; gap:1px; padding:7px 11px; border-radius:9px; background:var(--nieve); }
.dal-kpis span{ font-size:10.8px; color:var(--tinta-60); }
.dal-kpis b{ font-size:18px; font-weight:500; letter-spacing:-.025em; line-height:1.2; }
.dal-kpis b span{ font-size:inherit; color:inherit; }
.dal-kpis .ambar{ background:#fff7ef; }
.dal-kpis .ambar b{ color:#c2410c; }
.dal-kpis .ambar b .dal-nuevo{ color:var(--verde-osc); }

/* Comentarios de los parados */
.dal-com{ flex:none; display:flex; flex-direction:column; gap:5px; }
.dal-com ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:4px; }
.dal-com li{ display:grid; grid-template-columns:44px 1fr auto; gap:8px; align-items:baseline; padding:5px 9px; border-radius:8px; border:1px solid var(--linea); font-size:11.4px; }
.dal-com li b{ font-weight:600; }
.dal-com li span{ color:var(--tinta-80); font-style:italic; }
.dal-com li em{ font-style:normal; font-size:10.2px; color:var(--tinta-45); white-space:nowrap; }
.dal-filtro{ flex:none; display:flex; align-items:center; gap:7px; margin:0; padding:7px 11px; border-radius:8px; background:var(--tinta); color:#fff; font-size:11.6px; font-weight:500; }
.dal-filtro .ico{ width:13px; height:13px; color:#ffb17a; }

/* Ficha de la alumna */
.dal-ficha{ flex:none; display:flex; flex-direction:column; gap:8px; padding:11px 13px 12px; border-radius:11px; border:1px solid var(--linea); background:#fff; box-shadow:var(--sombra-2); }
.dal-fi-cab{ display:flex; align-items:center; gap:10px; }
.dal-fi-cab b{ display:block; font-size:13.5px; font-weight:600; }
.dal-fi-cab em{ display:block; font-style:normal; font-size:11px; color:var(--tinta-60); }
.dal-fi-est{ margin-left:auto; }
.dal-fi-l{ display:flex; flex-direction:column; margin:0; }
.dal-fi-l > div{ display:grid; grid-template-columns:88px 1fr; gap:10px; padding:4px 0; }
.dal-fi-l > div + div{ border-top:1px dashed var(--linea); }
.dal-fi-l dt{ font-size:11px; color:var(--tinta-45); }
.dal-fi-l dd{ margin:0; font-size:12px; line-height:1.35; color:var(--tinta-80); }
.dal-fi-l dd b{ font-weight:600; color:var(--tinta); }
.dal-fi-l dd > span:has(~ .dal-nuevo:not(.oculto)){ display:none; }
.dal-fi-l dd .dal-nuevo{ font-weight:400; color:var(--tinta-80); }
.dal-fi-l dd .dal-nuevo b{ color:var(--verde-osc); }
.dal-fi-notas{ display:flex; flex-direction:column; gap:5px; border-top:1px solid var(--linea); padding-top:8px; }
.dal-fi-notas ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:4px; min-height:20px; }
.dal-fi-notas li{ display:flex; align-items:center; gap:8px; font-size:11.8px; color:var(--tinta-80); }
.dal-fi-notas li > span{ width:18px; height:18px; border-radius:50%; background:var(--verde-agua); color:var(--verde-osc); display:grid; place-items:center; flex:none; }
.dal-fi-notas li .ico{ width:10px; height:10px; stroke-width:2.8; }
.dal-fi-notas ul:not(:has(li:not(.oculto)))::before{ content:'Todavía nada'; font-size:11.5px; color:var(--tinta-30); }

/* Lo mismo con el resto de parados */
.dal-res{ flex:none; display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:10px; background:var(--verde-agua); }
.dal-res-ico{ width:30px; height:30px; border-radius:8px; background:var(--verde); color:var(--tinta); display:grid; place-items:center; flex:none; }
.dal-res-ico .ico{ width:15px; height:15px; }
.dal-res b{ display:block; font-size:12.6px; font-weight:600; }
.dal-res em{ display:block; font-style:normal; font-size:11.3px; color:var(--verde-osc); }
