:root{--dd-red: #e10600;--dd-red-glow: rgba(225, 6, 0, .5);--dd-green: #22c55e;--dd-green-glow: rgba(34, 197, 94, .5);--dd-bg: #0a0a0c;--dd-panel: #141416;--dd-panel-2: #1a1a1d;--dd-border: #252528;--dd-text: #e6e6e6;--dd-muted: #8a8a8f}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--dd-bg);color:var(--dd-text)}.font-anton{font-family:Anton,sans-serif;letter-spacing:1.5px}.font-orbitron{font-family:Orbitron,sans-serif}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 10%,rgba(225,6,0,.18),transparent 55%),radial-gradient(ellipse at 80% 90%,rgba(225,6,0,.12),transparent 55%),var(--dd-bg);position:relative;overflow:hidden}.login-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(45deg,transparent 0 40px,rgba(225,6,0,.03) 40px 41px);pointer-events:none}.login-card{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:14px;padding:42px 36px 34px;width:380px;box-shadow:0 30px 80px #000000b3,0 0 0 1px #e1060026;position:relative;z-index:2}.login-card:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;height:3px;background:linear-gradient(90deg,transparent,var(--dd-red),transparent);border-radius:14px 14px 0 0}.login-title{font-family:Anton,sans-serif;letter-spacing:3px;font-size:28px;color:#fff;text-transform:uppercase;margin:0 0 2px}.login-subtitle{font-size:11px;letter-spacing:5px;color:var(--dd-red);text-transform:uppercase;margin-bottom:24px}.login-field{background:#0d0d0f;border:1px solid var(--dd-border);border-radius:8px;padding:12px 14px;color:#fff;width:100%;font-size:14px;outline:none;transition:border-color .2s;margin-bottom:12px;font-family:inherit}.login-field:focus{border-color:var(--dd-red)}.login-btn{background:var(--dd-red);color:#fff;border:none;padding:13px;width:100%;border-radius:8px;font-family:Anton,sans-serif;letter-spacing:2px;font-size:15px;cursor:pointer;text-transform:uppercase;transition:transform .15s,box-shadow .15s}.login-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px var(--dd-red-glow)}.login-btn:disabled{opacity:.6;cursor:default;transform:none}.role-switch{display:flex;gap:6px;background:#0d0d0f;padding:4px;border-radius:8px;margin-bottom:14px;border:1px solid var(--dd-border)}.role-btn{flex:1;background:transparent;border:none;color:var(--dd-muted);padding:8px;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border-radius:6px;transition:all .2s}.role-btn.active{background:var(--dd-red);color:#fff}.app{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--dd-panel);border-right:1px solid var(--dd-border);padding:24px 0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{padding:0 22px 18px;border-bottom:1px solid var(--dd-border);margin-bottom:18px}.brand-title{font-family:Anton,sans-serif;letter-spacing:2px;font-size:20px;color:#fff;margin:0}.brand-sub{font-size:10px;letter-spacing:4px;color:var(--dd-red);text-transform:uppercase;margin-top:3px}.nav-section{padding:10px 14px;font-size:10px;letter-spacing:2px;color:var(--dd-muted);text-transform:uppercase;font-weight:600}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 22px;color:var(--dd-text);text-decoration:none;cursor:pointer;font-size:13.5px;font-weight:500;border-left:3px solid transparent;transition:all .15s;position:relative;background:none;border-top:none;border-right:none;border-bottom:none;width:100%;text-align:left}.nav-item:hover{background:#e106000f}.nav-item.active{background:#e106001a;color:#fff;border-left-color:var(--dd-red)}.nav-icon{font-size:16px;width:20px;text-align:center}.nav-badge{margin-left:auto;background:var(--dd-red);color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;font-family:Orbitron,sans-serif}.nav-badge.green{background:var(--dd-green)}.nav-admin-only:before{content:"★";color:var(--dd-red);margin-right:2px;font-size:10px}.sidebar-bottom{margin-top:auto;padding:16px 22px;border-top:1px solid var(--dd-border)}.user-chip{display:flex;align-items:center;gap:10px;padding:8px;background:#0d0d0f;border:1px solid var(--dd-border);border-radius:8px}.user-dot{width:30px;height:30px;border-radius:50%;background:var(--dd-red);display:grid;place-items:center;font-family:Anton,sans-serif;font-size:14px;color:#fff}.user-name{font-size:12px;font-weight:600;color:#fff}.user-role{font-size:10px;color:var(--dd-muted);text-transform:uppercase;letter-spacing:1px}.logout-btn{background:transparent;border:1px solid var(--dd-border);color:var(--dd-muted);padding:6px 10px;font-size:11px;border-radius:6px;cursor:pointer;margin-top:10px;width:100%;transition:all .2s}.logout-btn:hover{border-color:var(--dd-red);color:var(--dd-red)}.main{overflow-y:auto;padding:32px 40px}.page-title{font-family:Anton,sans-serif;letter-spacing:2px;font-size:28px;color:#fff;margin:0 0 6px;text-transform:uppercase}.page-sub{color:var(--dd-muted);font-size:13px;margin-bottom:28px}.semaforo{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.semaforo-card{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;padding:16px 18px;position:relative;overflow:hidden}.semaforo-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--dd-muted)}.semaforo-card.green:before{background:var(--dd-green);box-shadow:0 0 16px var(--dd-green-glow)}.semaforo-card.yellow:before{background:#facc15;box-shadow:0 0 16px #facc1580}.semaforo-card.red:before{background:var(--dd-red);box-shadow:0 0 16px var(--dd-red-glow)}.semaforo-card.blue:before{background:#3b82f6;box-shadow:0 0 16px #3b82f680}.sc-label{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--dd-muted);margin-bottom:6px}.sc-value{font-family:Orbitron,sans-serif;font-size:28px;font-weight:700;color:#fff}.sc-sub{font-size:11px;color:var(--dd-muted);margin-top:4px}.parrilla-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.filter-bar{display:flex;gap:8px}.filter-btn{background:var(--dd-panel);border:1px solid var(--dd-border);color:var(--dd-muted);padding:7px 12px;font-size:11px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .15s}.filter-btn:hover{border-color:var(--dd-red);color:#fff}.filter-btn.active{background:var(--dd-red);border-color:var(--dd-red);color:#fff}.search-input{background:var(--dd-panel);border:1px solid var(--dd-border);color:#fff;padding:7px 12px;font-size:12px;border-radius:6px;outline:none;width:200px}.search-input:focus{border-color:var(--dd-red)}.parrilla{display:grid;gap:10px}.coche{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;padding:16px 20px;display:grid;grid-template-columns:60px 1fr 220px 220px 100px;gap:16px;align-items:center;cursor:pointer;transition:all .2s;position:relative}.coche:hover{border-color:var(--dd-red);transform:translate(2px);box-shadow:0 4px 18px #0006}.coche-numero{font-family:Orbitron,sans-serif;font-weight:900;font-size:24px;color:var(--dd-red);text-align:center}.coche-nombre{font-weight:600;font-size:14px;color:#fff;margin-bottom:3px}.coche-nivel{font-size:10px;letter-spacing:1.5px;color:var(--dd-muted);text-transform:uppercase;margin-bottom:6px}.coche-nivel span{background:var(--dd-panel-2);padding:2px 7px;border-radius:4px;color:#fff;font-weight:600;margin-left:4px}.carril{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--dd-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:1px}.carril-track{flex:1;height:7px;background:var(--dd-panel-2);border-radius:4px;position:relative;overflow:visible}.carril-tiempo{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,var(--dd-red),#ff3333);border-radius:4px}.carril-avance{position:absolute;left:0;bottom:0;height:100%;background:linear-gradient(90deg,var(--dd-green),#34d399);border-radius:4px}.carril-coche-icon{position:absolute;top:-3px;font-size:13px;transform:translate(-50%);filter:drop-shadow(0 1px 2px rgba(0,0,0,.6))}.carril-coche-icon.tiempo{color:var(--dd-red)}.carril-coche-icon.avance{color:var(--dd-green)}.estado-circle{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;justify-self:center;position:relative}.estado-circle.green{background:radial-gradient(circle at 30% 30%,#34d399,var(--dd-green));color:#fff;box-shadow:0 0 0 3px #22c55e26,0 0 18px var(--dd-green-glow);animation:pulseGreen 2.4s ease-in-out infinite}.estado-circle.red{background:radial-gradient(circle at 30% 30%,#ff5555,var(--dd-red));color:#fff;box-shadow:0 0 0 3px #e1060026,0 0 18px var(--dd-red-glow);animation:pulseRed 1.4s ease-in-out infinite}.estado-circle.yellow{background:radial-gradient(circle at 30% 30%,#fde047,#facc15);color:#000;box-shadow:0 0 0 3px #facc1526,0 0 18px #facc1580}@keyframes pulseGreen{0%,to{box-shadow:0 0 0 3px #22c55e26,0 0 18px var(--dd-green-glow)}50%{box-shadow:0 0 0 6px #22c55e0d,0 0 28px var(--dd-green-glow)}}@keyframes pulseRed{0%,to{box-shadow:0 0 0 3px #e1060026,0 0 18px var(--dd-red-glow);transform:scale(1)}50%{box-shadow:0 0 0 6px #e106000d,0 0 28px var(--dd-red-glow);transform:scale(1.08)}}.estado-circle:after{content:"";position:absolute;top:4px;left:6px;width:8px;height:5px;background:#ffffff59;border-radius:50%;transform:rotate(-20deg)}.brecha-label{font-family:Orbitron,sans-serif;font-size:11px;font-weight:600}.brecha-label.neg{color:var(--dd-red)}.brecha-label.pos{color:var(--dd-green)}.brecha-label.ok{color:var(--dd-muted)}.panel{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;padding:20px;margin-bottom:18px}.panel-title{font-family:Anton,sans-serif;letter-spacing:2px;font-size:18px;color:#fff;margin:0 0 14px;text-transform:uppercase;display:flex;align-items:center;gap:10px}.panel-title:before{content:"";width:4px;height:20px;background:var(--dd-red);border-radius:2px}.avisos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.aviso{background:var(--dd-panel-2);border-left:3px solid var(--dd-red);border-radius:8px;padding:14px 16px;position:relative}.aviso.info{border-left-color:#3b82f6}.aviso.warning{border-left-color:#facc15}.aviso.ok{border-left-color:var(--dd-green)}.aviso-title{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--dd-muted);margin-bottom:4px}.aviso-text{font-size:13px;color:#fff;line-height:1.5}.aviso-time{font-size:10px;color:var(--dd-muted);margin-top:8px;font-family:Orbitron,sans-serif}.chat-grid{display:grid;grid-template-columns:320px 1fr;gap:16px;height:calc(100vh - 180px)}.chat-list{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;overflow-y:auto}.chat-item{padding:14px 16px;border-bottom:1px solid var(--dd-border);cursor:pointer;transition:background .15s;position:relative}.chat-item:hover{background:var(--dd-panel-2)}.chat-item.active{background:#e106001a;border-left:3px solid var(--dd-red)}.chat-name{font-size:13px;font-weight:600;color:#fff;margin-bottom:3px}.chat-preview{font-size:12px;color:var(--dd-muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-time{font-size:10px;color:var(--dd-muted);position:absolute;top:14px;right:14px}.chat-pending-dot{position:absolute;top:16px;left:6px;width:8px;height:8px;border-radius:50%;background:var(--dd-red);box-shadow:0 0 8px var(--dd-red-glow)}.chat-view{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;display:flex;flex-direction:column}.chat-header{padding:14px 18px;border-bottom:1px solid var(--dd-border);font-weight:600;color:#fff;display:flex;justify-content:space-between;align-items:center}.chat-messages{flex:1;padding:18px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.msg{max-width:75%;padding:11px 14px;border-radius:12px;font-size:13px;line-height:1.5}.msg.alumno{align-self:flex-start;background:var(--dd-panel-2);color:var(--dd-text);border-bottom-left-radius:3px}.msg.profesor{align-self:flex-end;background:var(--dd-red);color:#fff;border-bottom-right-radius:3px}.msg-time{font-size:10px;color:var(--dd-muted);margin-top:3px}.chat-input-area{padding:14px 18px;border-top:1px solid var(--dd-border);display:flex;gap:8px}.chat-input{flex:1;background:var(--dd-panel-2);border:1px solid var(--dd-border);color:#fff;padding:10px 14px;border-radius:8px;outline:none;font-family:inherit;font-size:13px}.chat-input:focus{border-color:var(--dd-red)}.chat-send{background:var(--dd-red);color:#fff;border:none;padding:0 18px;border-radius:8px;font-weight:700;cursor:pointer;font-size:12px;letter-spacing:1px;text-transform:uppercase}.ab-section{margin-bottom:22px}.ab-title{font-family:Anton,sans-serif;letter-spacing:2px;font-size:16px;color:var(--dd-red);text-transform:uppercase;margin:0 0 10px}.ab-row{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:10px;padding:12px 18px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ab-email{font-weight:600;color:#fff;font-size:14px}.ab-info{font-size:11px;color:var(--dd-muted);margin-top:2px}.ab-actions{display:flex;gap:6px}.ab-btn{padding:6px 12px;font-size:11px;border-radius:6px;border:1px solid var(--dd-border);background:transparent;color:var(--dd-muted);cursor:pointer;font-weight:600;letter-spacing:.5px;transition:all .15s}.ab-btn:hover{border-color:var(--dd-red);color:var(--dd-red)}.ab-btn.danger{background:var(--dd-red);border-color:var(--dd-red);color:#fff}.ab-btn.danger:hover{background:#b30500}.ab-btn.success{background:var(--dd-green);border-color:var(--dd-green);color:#fff}.ab-btn.success:hover{background:#16a34a}.add-btn{background:var(--dd-red);color:#fff;border:none;padding:12px 22px;font-size:13px;font-weight:700;border-radius:8px;cursor:pointer;letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:8px}.add-btn:hover{background:#b30500;box-shadow:0 6px 18px var(--dd-red-glow)}.tops-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.top-item{display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:8px;margin-bottom:6px;background:var(--dd-panel-2);transition:transform .15s}.top-item:hover{transform:translate(2px)}.top-pos{font-family:Orbitron,sans-serif;font-weight:900;font-size:18px;color:var(--dd-muted)}.top-pos.gold{color:#facc15}.top-pos.silver{color:silver}.top-pos.bronze{color:#cd7f32}.top-name{font-size:13px;font-weight:600;color:#fff}.top-sub{font-size:10px;color:var(--dd-muted);text-transform:uppercase;letter-spacing:1px}.top-badge{font-family:Orbitron,sans-serif;font-size:11px;font-weight:700;padding:4px 10px;border-radius:14px}.top-badge.green{background:#22c55e33;color:var(--dd-green)}.top-badge.yellow{background:#facc1533;color:#facc15}.top-badge.red{background:#e1060033;color:var(--dd-red)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--dd-muted);padding:10px 14px;border-bottom:1px solid var(--dd-border);font-weight:600}.data-table td{padding:12px 14px;font-size:13px;border-bottom:1px solid var(--dd-border);color:var(--dd-text)}.data-table tr:hover td{background:#e1060008}.checkpoints{display:flex;gap:6px;flex-wrap:wrap}.cp{width:22px;height:22px;border-radius:50%;border:2px solid var(--dd-border);display:grid;place-items:center;font-size:11px;transition:all .2s}.cp.done{background:var(--dd-green);border-color:var(--dd-green);color:#fff;box-shadow:0 0 6px var(--dd-green-glow)}.cp.fail{background:var(--dd-red);border-color:var(--dd-red);color:#fff;box-shadow:0 0 6px var(--dd-red-glow)}.cp.pending{background:var(--dd-panel-2)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;z-index:100;padding:20px}.modal{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:14px;width:520px;max-width:90vw;max-height:85vh;overflow-y:auto;padding:28px}.modal h2{font-family:Anton,sans-serif;letter-spacing:2px;color:#fff;margin:0 0 16px;text-transform:uppercase}.hidden{display:none!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--dd-bg)}::-webkit-scrollbar-thumb{background:var(--dd-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--dd-red)}.fin-luz{width:16px;height:16px;border-radius:50%;border:1px solid #111;cursor:pointer;padding:0;transition:transform .15s}.fin-luz:hover,.fin-luz:focus-visible{transform:scale(1.25);outline:2px solid #fff3}.fin-luz-grande{width:42px;height:42px;border:3px solid #111}.fin-salida{display:flex;gap:18px;flex-wrap:wrap;background:#0d0d0f;border:1px solid var(--dd-border);border-radius:14px;padding:16px 20px;margin-bottom:10px}.fin-salida-col{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:96px}.fin-salida-num{font-family:Anton,sans-serif;font-size:26px;color:#fff;line-height:1}.fin-salida-txt{font-size:11px;color:var(--dd-muted);text-transform:uppercase;letter-spacing:1px;text-align:center}.fin-explica{border-left:4px solid;background:#141416;border-radius:8px;padding:10px 14px;font-size:13px;color:#fff;margin-bottom:14px}.fin-reparto{margin-bottom:10px}.fin-reparto-nombre{font-size:13px;color:#fff;margin-bottom:4px}.fin-barra{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#222}.fin-barra span{display:block;height:100%}.fin-auto{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}.fin-interruptor{display:flex;gap:10px;align-items:center;font-weight:700;color:#fff;min-width:220px}.fin-interruptor input{width:22px;height:22px;accent-color:var(--dd-red)}.fin-auto-texto{flex:1;min-width:260px;font-size:13px;color:#ddd;line-height:1.5}.fin-auto-texto ul{margin:6px 0 8px;padding-left:18px}.fin-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:14px;align-items:end}.fin-config label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--dd-muted)}.fin-config-ancho{grid-column:1 / -1}.fin-config input,.fin-config textarea,.fin-editar input,.fin-editar textarea{background:var(--dd-panel-2);border:1px solid var(--dd-border);color:#fff;border-radius:8px;padding:8px 10px;font:inherit}.fin-editar{margin-top:8px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--dd-muted);max-width:260px}.fin-editar p{margin:0;font-size:11px}.niv-caja{margin-top:8px}.niv-compacto{background:#101012;border-radius:8px;padding:8px}.niv-selectores{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.niv-graficas{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.niv-titulo{font-size:11px;color:var(--dd-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.niv-barras{display:flex;align-items:flex-end;gap:6px;height:120px;border-bottom:1px solid #333;padding-top:16px}.niv-barra-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:26px}.niv-barra{width:70%;border-radius:4px 4px 0 0;min-height:2px}.niv-barra-valor{font-size:10px;color:#fff;margin-bottom:2px}.niv-barra-etiqueta{font-size:10px;color:var(--dd-muted);margin-top:4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.niv-linea{width:100%;height:90px;display:block;background:#0d0d0f;border-radius:6px}.imp-caja{background:#141416;border:1px solid #e1060055;border-radius:12px;padding:14px;margin-bottom:14px;color:#fff}.imp-pasos{font-size:13px;color:#ddd;line-height:1.6;padding-left:18px}.imp-pasos a{color:#facc15}.imp-errores{color:var(--dd-red);font-size:12px;margin:4px 0}.imp-avisos{color:#facc15;font-size:12px;margin:4px 0}.tc-cabecera{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.tc-chip{border:1px solid;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:700;white-space:nowrap}.tc-datos{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.tc-dato{background:#101012;border:1px solid var(--dd-border);border-radius:8px;padding:8px 10px}.tc-dato-eti{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--dd-muted)}.tc-dato-valor{font-size:16px;font-weight:700;color:#fff;margin-top:2px}.tc-dato-nota{font-size:11px;color:var(--dd-muted);margin-top:2px}.tc-barras{margin-top:12px;display:flex;flex-direction:column;gap:6px}.tc-barra-fila{display:grid;grid-template-columns:56px 1fr 44px;align-items:center;gap:8px;font-size:12px;color:var(--dd-muted)}.tc-barra{position:relative;height:10px;background:#1e1e22;border-radius:5px;overflow:visible}.tc-barra i{display:block;height:100%;border-radius:5px}.tc-marca{position:absolute;top:-4px;width:2px;height:18px;background:#fff;transform:translate(-1px);border-radius:1px}.tc-barra-num{text-align:right;color:#fff;font-weight:700}.tc-ritmo{margin:4px 0 0;font-size:12px;font-weight:700}.tc-aviso{margin:10px 0 0;font-size:12px;color:#facc15}.coche-tiempo{font-size:11px;color:var(--dd-muted);margin:2px 0 4px}.asis-dias{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0 6px}.asis-fecha{background:var(--dd-panel-2, #1a1a1d);color:#fff;border:1px solid var(--dd-border);border-radius:6px;padding:5px 8px;font:inherit;font-size:12px}.asis-nombre{cursor:pointer;text-decoration:underline dotted}.asis-pcts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.asis-pct{background:#101012;border:1px solid var(--dd-border);border-radius:8px;padding:8px;text-align:center}.asis-pct-valor{font-size:22px;font-weight:800}.asis-pct-eti{font-size:12px;color:#fff}.asis-pct-sub{font-size:11px;color:var(--dd-muted)}.p0-tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:8px}.p0-tarjeta{position:relative;text-align:left;background:var(--dd-panel);border:1px solid var(--dd-border);border-left:4px solid var(--p0);border-radius:10px;padding:12px 14px;color:var(--dd-text);cursor:pointer;display:grid;grid-template-columns:auto 1fr;column-gap:10px;font:inherit}.p0-tarjeta:hover,.p0-tarjeta:focus-visible{border-color:var(--p0);outline:none}.p0-tarjeta.on{background:#1b1b1f;box-shadow:inset 0 0 0 1px var(--p0)}.p0-icono{grid-row:span 3;font-size:22px;color:var(--p0);line-height:1.2}.p0-valor{font-size:26px;font-weight:800;color:#fff;line-height:1}.p0-texto{font-size:13px;font-weight:700;color:#fff}.p0-sub{font-size:11px;color:var(--dd-muted)}.p0-estrella{box-shadow:0 0 0 1px #a855f755,0 0 18px #a855f744}.gr-dos{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;align-items:start}@media(max-width:1100px){.gr-dos{grid-template-columns:minmax(0,1fr)}}.gr-panel{position:relative}.gr-cabecera{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.gr-controles{display:flex;gap:8px;flex-wrap:wrap}.gr-sub{font-size:12px;color:var(--dd-muted);margin:4px 0 10px}.gr-seg{display:inline-flex;border:1px solid var(--dd-border);border-radius:8px;overflow:hidden}.gr-seg button{background:transparent;color:var(--dd-muted);border:0;padding:5px 10px;font:inherit;font-size:12px;cursor:pointer}.gr-seg button+button{border-left:1px solid var(--dd-border)}.gr-seg button.on{background:#222226;color:#fff;font-weight:700}.gr-lienzo{position:relative}.gr-svg{width:100%;height:auto;display:block;overflow:visible;touch-action:none}.gr-arrastrable{cursor:crosshair}.gr-rejilla{stroke:#26262a;stroke-width:1}.gr-base{stroke:#3a3a40;stroke-width:1}.gr-eje{fill:var(--dd-muted);font-size:11px}.gr-eje-titulo{fill:#a0a0a6;font-size:11px;letter-spacing:.5px}.gr-valor{fill:#e6e6e6;font-size:11px;font-weight:700}.gr-anotacion{fill:#a0a0a6;font-size:11px;font-style:italic}.gr-diagonal{stroke:#e6e6e6;stroke-width:1.5;stroke-dasharray:5 5;opacity:.55}.gr-banda{fill:#22c55e;opacity:.07}.gr-zona{fill:#3b82f6;opacity:.1;stroke:#3b82f6;stroke-width:1;stroke-dasharray:4 3}.gr-zona.activa{opacity:.18}.gr-corte{stroke:#e6e6e6;stroke-width:2}.gr-punto{cursor:pointer;outline:none}.gr-punto:hover>:last-child,.gr-punto:focus-visible>:last-child{stroke:#fff;stroke-width:2.5}.gr-barra{cursor:pointer;outline:none}.gr-barra:hover path,.gr-barra:focus-visible path{filter:brightness(1.2);stroke:#fff;stroke-width:1.5}.gr-barra.activa path{stroke:#fff;stroke-width:2}.gr-tip{position:absolute;z-index:5;transform:translate(-50%,calc(-100% - 12px));background:#0b0b0d;border:1px solid #333338;border-radius:8px;padding:8px 10px;min-width:170px;max-width:260px;pointer-events:none;box-shadow:0 8px 24px #00000080}.gr-tip-titulo{font-size:12px;font-weight:700;color:#fff;margin-bottom:4px}.gr-tip-fila{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.5}.gr-tip-fila i{width:10px;height:2px;border-radius:1px;flex-shrink:0}.gr-tip-fila b{color:#fff}.gr-tip-fila span{color:var(--dd-muted)}.gr-tip-nota{font-size:11px;color:var(--dd-muted);margin-top:4px}.gr-leyenda{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.gr-leyenda.estatica{margin:8px 0 0;gap:14px}.gr-leyenda-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--dd-text);background:transparent;border:1px solid transparent;border-radius:6px;padding:3px 7px;font-family:inherit}button.gr-leyenda-item{cursor:pointer;border-color:var(--dd-border)}.gr-leyenda-item b{color:#fff}.gr-leyenda-item.off{opacity:.4;text-decoration:line-through}.gr-rampa{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--dd-muted);margin:0 0 6px;flex-wrap:wrap}.gr-rampa i{width:18px;height:10px;border-radius:2px;display:inline-block}.gr-rampa span{margin:0 4px}.gr-rampa-nota{margin-left:8px}.gr-pie{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}.gr-pie-eti{font-size:12px;color:var(--dd-muted)}.gr-chip{background:#1a1a1d;border:1px solid var(--dd-border);color:var(--dd-text);border-radius:999px;padding:3px 10px;font:inherit;font-size:12px;cursor:pointer}.gr-chip b{color:#fff;margin-left:4px}.gr-chip:hover,.gr-chip:focus-visible{border-color:#3b82f6;outline:none}.gr-filtro-activo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#3b82f614;border:1px solid #3b82f655;border-radius:8px;padding:8px 12px;margin-bottom:12px;font-size:13px;color:var(--dd-text)}.gr-nivel-fila{display:grid;grid-template-columns:80px 1fr 34px;align-items:center;gap:8px;margin:8px 0}.gr-nivel-eti{font-size:12px;color:var(--dd-text)}.gr-nivel-pista{display:flex;gap:2px;height:26px;min-width:4px}.gr-segmento{border:0;border-radius:4px;color:#0b0b0d;font-weight:800;font-size:11px;cursor:pointer;min-width:6px;padding:0;font-family:inherit}.gr-segmento:hover,.gr-segmento:focus-visible{filter:brightness(1.15);outline:2px solid #fff;outline-offset:1px}.gr-segmento.activo{outline:2px solid #fff;outline-offset:1px}.gr-nivel-total{font-size:12px;color:#fff;font-weight:700;text-align:right}.gr-calor{display:grid;gap:2px}.gr-calor-cab{font-size:11px;color:var(--dd-muted);text-align:center;padding:4px 0}.gr-calor-fila{font-size:12px;color:var(--dd-text);display:flex;align-items:center}.gr-calor-celda{position:relative;border:0;border-radius:4px;height:42px;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.gr-calor-celda small{position:absolute;right:5px;bottom:3px;font-size:9px;font-weight:400;opacity:.8}.gr-calor-celda.vacia{background:transparent!important;border:1px dashed #2c2c30;color:var(--dd-muted)!important;cursor:default;font-weight:400}.gr-calor-celda:not(.vacia):hover,.gr-calor-celda:focus-visible{outline:2px solid #fff;outline-offset:1px}.gr-calor-celda.activa{outline:2px solid #fff;outline-offset:1px}.gr-umbral{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--dd-muted)}.gr-umbral input[type=range]{accent-color:var(--dd-red);width:140px}.gr-umbral b{color:#fff;min-width:54px}.gr-elegidos{border-color:#3b82f6}.gr-mitades{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}@media(max-width:1100px){.gr-mitades{grid-template-columns:minmax(0,1fr)}}.gr-leyenda-linea{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px}.gr-leyenda-linea .gr-leyenda{margin-bottom:0}.gr-svg,.gr-svg text{user-select:none;-webkit-user-select:none}.hc-dias{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0 12px}.hc-filtros{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.hc-filtros .gr-seg{flex-wrap:wrap;align-self:flex-start}.hc-fila-filtros{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.hc-eti{font-size:11px;color:var(--dd-muted);text-transform:uppercase;letter-spacing:1px;width:52px}.gr-chip.on{border-color:#fff;color:#fff;background:#26262b}.hc-dia-titulo{font-size:14px;color:#fff;text-transform:capitalize;margin:4px 0 10px}.hc-resumen{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.hc-resumen div{background:#101012;border:1px solid var(--dd-border);border-radius:8px;padding:8px 14px;display:flex;flex-direction:column;min-width:110px}.hc-resumen b{font-size:22px;color:#fff;line-height:1.1}.hc-resumen span{font-size:11px;color:var(--dd-muted)}.hc-hora{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--dd-border)}.hc-hora-marca{font-size:15px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums;padding-top:8px}.hc-hora-clases{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.hc-clase{background:#101012;border:1px solid var(--dd-border);border-left:3px solid var(--hc);border-radius:8px;padding:10px 12px}.hc-clase.no-dada{opacity:.55}.hc-clase.no-dada .hc-clase-titulo{text-decoration:line-through}.hc-clase-cab{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.hc-clase-titulo{font-size:14px;font-weight:700;color:#fff}.hc-clase-meta{font-size:11px;color:var(--dd-muted);margin-top:2px}.hc-etiquetas{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.hc-chip{font-size:10px;border:1px solid #3a3a40;color:#c8c8cc;border-radius:999px;padding:1px 7px;white-space:nowrap}.hc-chip.hc-rojo{color:var(--dd-red);border-color:var(--dd-red)}.hc-nota{font-size:11px;color:#c8c8cc;font-style:italic;margin-top:4px}.hc-cuenta{font-size:12px;color:var(--dd-muted);margin:8px 0 6px}.hc-cuenta b{color:#fff}.hc-nombres{display:flex;flex-wrap:wrap;gap:4px}.hc-nombre{background:#18181b;border:1px solid #2c2c30;color:var(--dd-text);border-radius:6px;padding:2px 8px;font:inherit;font-size:12px;cursor:pointer}.hc-nombre small{color:var(--dd-muted);font-size:10px;margin-left:4px}.hc-nombre.si{border-color:#22c55e55}.hc-nombre.no{border-color:#e1060066;color:#f2a19e}.hc-nombre:hover,.hc-nombre:focus-visible{border-color:#fff;outline:none}.hc-vacio{font-size:12px;color:var(--dd-muted)}@media(max-width:700px){.hc-hora{grid-template-columns:1fr}}.vis-app .vis-ayuda{font-size:12px;color:var(--dd-muted);margin:0 0 10px}.vis-sub{font-size:13px;margin:18px 0 8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vis-funciones select,.vis-editor select,.vis-editor input{background:var(--dd-panel-2);color:var(--dd-text);border:1px solid var(--dd-border);border-radius:6px;padding:5px 8px;font:inherit;font-size:12px}.vis-arbol{list-style:none;margin:0;padding:0}.vis-arbol.raiz{border:1px solid var(--dd-border);border-radius:8px;padding:6px}.vis-fila{display:flex;align-items:center;gap:8px;padding:4px;border-radius:6px}.vis-fila:hover{background:#ffffff08}.vis-plegar{width:20px;flex:none;background:none;border:0;color:var(--dd-muted);cursor:pointer;font-size:12px}.vis-nombre{flex:1;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vis-chip{font-size:11px;border:1px solid var(--dd-border);border-radius:99px;padding:1px 8px;color:var(--dd-muted);white-space:nowrap}.vis-chip.propia{border-style:solid;color:var(--dd-text)}.vis-chip.vis-probadores{border-color:#3b82f6;color:#93c5fd}.vis-chip.vis-equipo{border-color:#a855f7;color:#d8b4fe}.vis-editor{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 6px}.vis-editor input{flex:1 1 220px}.vis-clave{display:block;color:var(--dd-muted);font-size:10px;margin-bottom:6px;word-break:break-all}.vis-probadores{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:4px}.vis-probadores li{display:flex;align-items:center;gap:8px;font-size:13px}.vis-probadores li small{color:var(--dd-muted);flex:1}.led-riesgo{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;margin-left:4px}.led-riesgo i{width:10px;height:10px;border-radius:50%;background:#facc15;box-shadow:0 0 6px 2px #facc1599;animation:ledLatido 1.6s ease-in-out infinite}.led-riesgo.grande i{width:16px;height:16px}.led-riesgo.con-texto b{font-size:11px;color:#facc15;font-weight:700}@keyframes ledLatido{50%{box-shadow:0 0 2px #facc1566}}@media(prefers-reduced-motion:reduce){.led-riesgo i{animation:none}}.banda-riesgo{display:flex;gap:12px;align-items:flex-start;border:1px solid #facc15;background:#facc1512;border-radius:10px;padding:10px 12px;margin:0 0 14px}.banda-riesgo b{color:#facc15;font-size:13px}.banda-riesgo p{margin:3px 0 0;font-size:12px;color:var(--dd-text)}.riesgo-lista{display:flex;flex-direction:column;gap:4px}.riesgo-fila{display:grid;grid-template-columns:auto 1fr auto;column-gap:8px;align-items:center;text-align:left;background:var(--dd-panel-2);border:1px solid var(--dd-border);color:var(--dd-text);border-radius:8px;padding:6px 10px;font:inherit;cursor:pointer}.riesgo-fila small{grid-column:2 / -1;color:var(--dd-muted);font-size:11px}.riesgo-n{color:#facc15;font-weight:700;font-size:12px}.riesgo-fila:hover{border-color:#facc15}.hc-descargas{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.hc-mes{display:inline-flex;gap:6px;align-items:center}.hc-mes input{background:var(--dd-panel-2);color:var(--dd-text);border:1px solid var(--dd-border);border-radius:6px;padding:4px 6px;font:inherit;font-size:12px}.hc-marcar{border-style:dashed;color:var(--dd-muted)}.hc-manual{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}.hc-manual input{flex:1 1 220px;background:var(--dd-panel-2);color:var(--dd-text);border:1px solid var(--dd-border);border-radius:6px;padding:5px 8px;font:inherit;font-size:12px}.hc-manual-lista{flex-basis:100%;display:flex;flex-wrap:wrap;gap:4px}.hc-manual-chip{color:#93c5fd!important}.hc-quitar{margin-left:4px;cursor:pointer;color:var(--dd-muted)}.hc-quitar:hover{color:var(--dd-red)}.ac-bloques{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ac-bloque{background:var(--dd-panel-2);border:1px solid var(--dd-border);border-radius:8px;padding:8px 10px}.ac-tit{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--dd-muted);margin-bottom:6px}.ac-fila{display:grid;grid-template-columns:1fr auto;column-gap:6px;font-size:12px;margin-bottom:6px}.ac-fila b{font-size:15px}.ac-fila small{grid-column:1 / -1;color:var(--dd-muted);font-size:10px}.ac-intentos{margin:4px 0 0;padding-left:18px;font-size:12px}.ac-intentos small{color:var(--dd-muted)}@media(max-width:640px){.ac-bloques{grid-template-columns:1fr}}.tc-quedan{color:var(--dd-text);border:1px solid var(--dd-red);border-radius:8px;padding:8px 10px;background:#e106000f}.arb-leyenda{padding:0 6px;border-radius:4px;font-weight:700}.arb-leyenda.error{color:#ff2d55;text-shadow:0 0 6px #ff2d55aa}.arb-leyenda.corregida{color:var(--dd-green)}.arb-carriles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.arb-carril{display:flex;align-items:center;gap:10px;background:var(--dd-panel);border:1px solid var(--dd-border);color:var(--dd-text);border-radius:12px;padding:16px;font:inherit;font-size:15px;cursor:pointer;text-align:left}.arb-carril.on{border-color:var(--dd-red);box-shadow:0 0 0 1px var(--dd-red) inset}.arb-carril b{flex:1}.arb-ico{font-size:22px}.arb-rojo{display:inline-block;min-width:20px;padding:1px 7px;border-radius:99px;background:#ff2d55;color:#fff;font-size:11px;font-weight:800;text-align:center;box-shadow:0 0 8px #ff2d5599;margin-left:6px}.arb-cuerpo{display:grid;grid-template-columns:minmax(260px,2fr) 3fr;gap:12px;align-items:start}.arb-izq,.arb-der{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:12px;padding:10px}.arb-der{position:sticky;top:10px;max-height:calc(100vh - 40px);overflow:auto}.arb-nivel{border-bottom:1px solid var(--dd-border)}.arb-nivel:last-child{border-bottom:0}.arb-nivel-cab{width:100%;text-align:left;background:none;border:0;color:var(--dd-text);font:inherit;font-weight:700;padding:9px 4px;cursor:pointer}.arb-nivel-cab.on{color:#fff}.arb-bloque{margin:0 0 10px 14px}.arb-bloque-nm{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--dd-muted);margin:6px 0 4px}.arb-parte{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:4px}.arb-parte-eti{font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:4px;border:1px solid var(--dd-border);color:var(--dd-muted);min-width:70px;text-align:center}.arb-parte-eti.examen{border-color:#3b82f6;color:#93c5fd}.arb-seg{background:var(--dd-panel-2);border:1px solid var(--dd-border);color:var(--dd-text);border-radius:6px;padding:4px 8px;font:inherit;font-size:12px;cursor:pointer;text-align:left}.arb-seg small{color:var(--dd-muted);margin-left:4px}.arb-seg.on{border-color:#fff}.arb-seg.con-error{border-color:#ff2d5588}.arb-seg-cab{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.arb-seg-cab small{color:var(--dd-muted)}.arb-numeros{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:6px;margin-bottom:12px}.arb-num{height:34px;border-radius:8px;border:1px solid var(--dd-border);background:var(--dd-panel-2);color:var(--dd-text);font:inherit;font-weight:700;cursor:pointer}.arb-num.error{border-color:#ff2d55;color:#fff;background:#ff2d552e;box-shadow:0 0 10px #ff2d55aa,inset 0 0 6px #ff2d5566;text-shadow:0 0 6px #ff2d55}.arb-num.corregida{border-color:var(--dd-green);color:var(--dd-green)}.arb-num.on{outline:2px solid #fff;outline-offset:1px}@media(max-width:900px){.arb-cuerpo{grid-template-columns:1fr}.arb-der{position:static;max-height:none}.arb-carriles{grid-template-columns:1fr}}.ep{border-top:1px solid var(--dd-border);padding-top:10px}.ep-cab{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin-bottom:8px}.ep-ruta{color:var(--dd-muted);font-size:12px}.ep-chip{font-size:11px;border:1px solid var(--dd-border);border-radius:99px;padding:1px 8px}.ep-chip.ok{border-color:var(--dd-green);color:var(--dd-green)}.ep-pasaje{margin-bottom:8px;font-size:12px}.ep-pasaje pre{white-space:pre-wrap;font:inherit;background:var(--dd-panel-2);padding:8px;border-radius:6px}.ep-avisos{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.ep-avisos li{font-size:12px;padding:6px 8px;border-radius:6px;border:1px solid var(--dd-border);border-left:3px solid #ff2d55;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ep-avisos li.sev-baja{border-left-color:var(--dd-muted)}.ep-avisos li.sev-media{border-left-color:#f97316}.ep-campo{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--dd-muted);margin-bottom:8px}.ep-campo textarea,.ep-op input,.ep-senal input,.rm-panel select,.rm-panel input,.hc-sel{background:var(--dd-panel-2);color:var(--dd-text);border:1px solid var(--dd-border);border-radius:6px;padding:6px 8px;font:inherit;font-size:13px}.ep-opciones{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.ep-op{display:flex;gap:6px;align-items:center}.ep-op input{flex:1}.ep-letra{width:30px;height:30px;border-radius:50%;border:1px solid var(--dd-border);background:var(--dd-panel-2);color:var(--dd-text);font-weight:800;cursor:pointer}.ep-op.correcta .ep-letra{background:var(--dd-green);border-color:var(--dd-green);color:#06140b}.ep-acciones,.ep-senal{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.ep-senal input{flex:1 1 260px}.ep-msg{font-size:12px;margin:6px 0 0}.errores-tabla td{vertical-align:top;font-size:12px}.errores-tabla tr.sev-alta td:first-child,.data-table tr.sev-alta td:first-child{box-shadow:inset 3px 0 #ff2d55}.errores-tabla tr.sev-media td:first-child,.data-table tr.sev-media td:first-child{box-shadow:inset 3px 0 #f97316}.bots-sis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.bot-sis{background:var(--dd-panel-2);border:1px solid var(--dd-border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px;font-size:12px}.bot-sis p{margin:0;color:var(--dd-muted)}.bot-sis small{color:var(--dd-muted)}.bot-sis-acc{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}@media(max-width:900px){.bots-sis{grid-template-columns:1fr}}.rm-bloque{border:1px solid var(--dd-border);border-radius:8px;padding:10px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}.rm-fila{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rm-fila label{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--dd-muted)}.rm-motivo{width:100%}.ep-propuesta{border:1px solid var(--dd-red);border-radius:10px;padding:10px;margin:10px 0;background:#e106000f}.ep-propuesta-cab{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:13px}.ep-antes-despues{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.ep-vista{border:1px solid var(--dd-border);border-radius:8px;padding:8px 10px;font-size:13px}.ep-vista ol{margin:6px 0 0;padding-left:20px}.ep-vista li.correcta{color:#22c55e;font-weight:600}.ep-nika{display:flex;gap:8px;align-items:flex-start;border-left:3px solid var(--dd-red);padding:8px 10px;margin:8px 0;font-size:13px;background:var(--dd-panel-2);border-radius:0 8px 8px 0}.ep-nika-ava{font-size:20px;line-height:1}.ep-nika textarea{width:100%;margin-top:6px}.ep-historial{margin-top:10px;font-size:12px}.ep-historial summary{cursor:pointer;color:var(--dd-muted)}.ep-historial ul{list-style:none;padding:0;margin:6px 0 0}.ep-historial li{padding:4px 0;border-bottom:1px solid var(--dd-border)}.rm-recuerda{border:1px solid var(--dd-border);border-radius:8px;padding:8px 10px;margin-bottom:10px;font-size:13px}.rm-regla{font-size:12px;color:var(--dd-muted);margin:4px 0 0}.log-examen tr.reiniciado td{color:var(--dd-red)}.lc-panel{margin-bottom:14px}.lc-tabla{overflow-x:auto;max-height:460px;overflow-y:auto}.lc-tabla table{font-size:12px}.lc-cambio s{color:var(--dd-muted)}.lc-leccion{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--dd-border);font-size:13px}.lc-leccion small{color:var(--dd-muted)}.lc-leccion button{grid-row:1 / span 2;grid-column:2}.lc-leccion.apagada{opacity:.5}.tabla-simple{width:100%;border-collapse:collapse;font-size:13px}.tabla-simple th,.tabla-simple td{text-align:left;padding:5px 8px;border-bottom:1px solid var(--dd-border);vertical-align:top}.tabla-simple th{color:var(--dd-muted);font-weight:600;position:sticky;top:0;background:var(--dd-panel)}.ex-bloque{margin-bottom:14px}.ex-texto{font-size:13px;color:var(--dd-muted);margin:0 0 10px;line-height:1.5}.ex-texto b{color:var(--dd-text)}.ex-bloque select,.ex-bloque input[type=date]{background:var(--dd-panel-2);color:var(--dd-text);border:1px solid var(--dd-border);border-radius:6px;padding:6px 8px;font:inherit;font-size:13px}.mf-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:8px}.mf-config fieldset{border:1px solid var(--dd-border);border-radius:8px;padding:8px 10px}.mf-config legend{font-size:12px;color:var(--dd-muted);padding:0 4px}.mf-config label{display:flex;gap:6px;align-items:flex-start;font-size:13px;padding:3px 0}.fr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}.fr-dato{background:var(--dd-panel-2);border-radius:8px;padding:10px}.fr-dato b{display:block;font-size:22px}.fr-dato small{color:var(--dd-muted);font-size:12px}.fr-dato.rojo b{color:var(--dd-red)}.fr-carril{display:grid;grid-template-columns:90px 1fr 120px;gap:8px;align-items:center;font-size:12px;margin:3px 0}.fr-barra{height:8px;background:var(--dd-border);border-radius:99px;overflow:hidden}.fr-barra i{display:block;height:100%;background:var(--dd-red)}.fr-barra i.hecho{background:var(--dd-green)}.arb-num.revisar{border-color:#f59e0b;color:#fff;background:#f59e0b29;box-shadow:0 0 8px #f59e0b88}.arb-leyenda.revisar{color:#f59e0b;font-weight:700}.arb-firma{font-size:9px;margin-left:1px}.arb-revisa{border:1px solid #ff2d55;border-radius:10px;padding:8px 10px;margin-bottom:10px;background:#ff2d550f}.arb-afectadas{color:var(--dd-muted)}.arb-ir{margin:0 2px;padding:0 6px;border-radius:6px;border:1px solid #f59e0b;background:transparent;color:#f59e0b;cursor:pointer;font:inherit;font-size:12px}
