/* SOFTWARE ESM - PRO ACOMODADO REAL */
:root{--esm-bg:#030816;--esm-panel:#07162f;--esm-panel2:#0a1f45;--esm-cyan:#18d8ff;--esm-blue:#2878ff;--esm-purple:#9b4dff;--esm-pink:#ff5aa8;--esm-green:#52ffbf;--esm-text:#f3f8ff;--esm-muted:#9db5d8;--esm-line:rgba(24,216,255,.22);--esm-sidebar:258px;--esm-right:310px}
*{box-sizing:border-box!important}html,body{min-height:100%;background:#020817!important;color:var(--esm-text)!important;overflow-x:hidden!important}body{font-family:Inter,Segoe UI,Arial,sans-serif!important;background:radial-gradient(circle at 78% 0%,rgba(155,77,255,.22),transparent 28%),radial-gradient(circle at 28% 18%,rgba(24,216,255,.18),transparent 32%),linear-gradient(135deg,#020817 0%,#04132c 52%,#020817 100%)!important}.oculto{display:none!important}body::before{content:"";position:fixed;inset:0;z-index:-2;background-image:linear-gradient(rgba(24,216,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(24,216,255,.04) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at center,#000 12%,transparent 82%)}body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,transparent 0%,rgba(24,216,255,.05) 45%,transparent 70%)}
#intro:not(.esm-intro-activa){display:none!important}.app-panel:not(.oculto){display:block!important;min-height:100vh!important;padding-left:var(--esm-sidebar)!important}.topbar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--esm-sidebar)!important;height:100vh!important;margin:0!important;padding:22px 15px!important;z-index:1000!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;overflow-y:auto!important;border-radius:0!important;background:linear-gradient(180deg,rgba(4,13,30,.98),rgba(2,8,22,.97))!important;border-right:1px solid rgba(24,216,255,.22)!important;box-shadow:22px 0 70px rgba(0,0,0,.48),inset -1px 0 0 rgba(255,255,255,.04)!important}.brand{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 8px!important}.logo-circle{width:58px!important;height:58px!important;min-width:58px!important;border-radius:20px!important;display:grid!important;place-items:center!important;background:radial-gradient(circle at 35% 20%,rgba(24,216,255,.36),rgba(155,77,255,.34) 58%,rgba(2,8,23,.95))!important;border:1px solid rgba(24,216,255,.45)!important;box-shadow:0 0 28px rgba(24,216,255,.34),0 0 28px rgba(155,77,255,.20)!important}.logo-sistema-img{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px!important}.brand h2{margin:0!important;font-size:17px!important;line-height:1.05!important;letter-spacing:.5px!important;color:white!important}.brand p{margin:4px 0 0!important;color:#9fb6d9!important;font-size:12px!important}.logo-actions{margin-top:8px!important}.btn-logo-sistema{padding:7px 10px!important;border-radius:12px!important;border:1px solid rgba(24,216,255,.25)!important;background:rgba(24,216,255,.12)!important;color:#dff9ff!important;font-weight:800!important;font-size:12px!important}.topbar-right{display:flex!important;flex-direction:column!important;gap:9px!important;align-items:stretch!important}.theme-control{display:none!important}.btn-sonido{width:100%!important;height:42px!important;border-radius:14px!important;border:1px solid rgba(24,216,255,.28)!important;background:linear-gradient(135deg,rgba(24,216,255,.17),rgba(155,77,255,.18))!important;color:white!important;font-size:18px!important}.user-info{order:-1!important;display:flex!important;align-items:center!important;gap:10px!important;padding:12px!important;border-radius:17px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(24,216,255,.16)!important;color:white!important}.user-info::before{content:"E";display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,#0a72ff,#9b3cff);box-shadow:0 0 20px rgba(24,216,255,.34);font-weight:900}.user-info strong{display:block!important;font-size:14px!important}.user-info span{display:block!important;font-size:12px!important;color:#a9bce0!important}.pro-side-nav{display:flex;flex-direction:column;gap:6px;margin-top:8px}.pro-side-title{margin:12px 0 5px;color:#78cfff;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;gap:8px}.pro-side-title::after{content:"";height:1px;flex:1;background:rgba(24,216,255,.20)}.pro-nav-link{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:14px;color:#e8f4ff;text-decoration:none;border:1px solid transparent;background:transparent;font-weight:800;font-size:13px;cursor:pointer}.pro-nav-link:hover,.pro-nav-link.active{background:linear-gradient(135deg,rgba(24,216,255,.16),rgba(155,77,255,.14));border-color:rgba(24,216,255,.28);box-shadow:0 0 20px rgba(24,216,255,.12)}.pro-nav-icon{width:23px;text-align:center;color:#46dcff;filter:drop-shadow(0 0 8px rgba(24,216,255,.55))}.pro-settings-toggle{margin-top:auto;border-radius:15px;padding:10px 12px;background:rgba(255,255,255,.04);border:1px solid rgba(24,216,255,.15);color:#dff6ff;font-weight:800;cursor:pointer}.pro-settings-panel{display:none;gap:8px;flex-direction:column}.pro-settings-panel.abierto{display:flex}.pro-settings-panel .theme-control{display:block!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(24,216,255,.12)!important;border-radius:14px!important;padding:8px!important}.theme-control label{display:block!important;margin-bottom:5px!important;color:#73cfff!important;font-size:10px!important;text-transform:uppercase!important;font-weight:900!important}.theme-select{width:100%!important;min-width:0!important;background:#061229!important;color:white!important;border:1px solid rgba(24,216,255,.22)!important;border-radius:10px!important;padding:8px!important;font-size:12px!important}
.dashboard{width:100%!important;max-width:none!important;margin:0!important;padding:22px!important;display:grid!important;grid-template-columns:minmax(0,1fr) var(--esm-right)!important;gap:18px!important;align-items:start!important}.dashboard-actions{grid-column:1 / -1!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;margin:0!important}.btn-top{border:1px solid rgba(24,216,255,.25)!important;background:linear-gradient(135deg,rgba(24,216,255,.20),rgba(155,77,255,.18))!important;color:#f3fbff!important;border-radius:15px!important;padding:11px 16px!important;font-weight:900!important;box-shadow:0 0 22px rgba(24,216,255,.12)!important}.vista-previa-rol{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr minmax(260px,420px) auto!important;gap:14px!important;align-items:center!important;padding:14px!important;border-radius:20px!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(24,216,255,.14)!important}.welcome{grid-column:1/-1!important;margin:0!important;min-height:172px!important;padding:26px 28px!important;text-align:left!important;border-radius:26px!important;border:1px solid rgba(24,216,255,.24)!important;background:radial-gradient(circle at 90% 30%,rgba(155,77,255,.30),transparent 34%),radial-gradient(circle at 38% 45%,rgba(24,216,255,.16),transparent 42%),linear-gradient(135deg,rgba(8,28,66,.92),rgba(7,13,36,.88))!important;box-shadow:0 24px 76px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)!important;position:relative!important;overflow:hidden!important}.welcome::before{content:"PANEL PRO · SOFTWARE ESM";position:absolute;right:24px;top:20px;color:#58e9ff;font-weight:950;font-size:11px;letter-spacing:.14em}.welcome::after{content:"SISTEMA 99% ÓPTIMO";position:absolute;right:24px;bottom:20px;padding:11px 15px;border-radius:16px;background:rgba(0,0,0,.26);border:1px solid rgba(82,255,191,.26);color:#7cffd7;font-weight:950;font-size:12px}.welcome-identidad{display:flex!important;align-items:center!important;gap:15px!important}.welcome h1{margin:0!important;font-size:clamp(38px,4.2vw,56px)!important;line-height:.98!important;color:white!important;text-shadow:0 0 26px rgba(24,216,255,.22)!important}.welcome-subnombre{margin:7px 0 0!important;color:#c8dcff!important;font-size:15px!important}.welcome>p{max-width:560px!important;color:#d5e9ff!important;font-size:15px!important}#estado{display:inline-flex!important;margin-top:7px!important;padding:8px 12px!important;border-radius:999px!important;background:rgba(82,255,191,.12)!important;color:#94ffdd!important;border:1px solid rgba(82,255,191,.24)!important;font-weight:900!important}.modulos{grid-column:1!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important;gap:14px!important;align-items:stretch!important;margin:0!important}.modulo-card{height:178px!important;min-height:178px!important;width:auto!important;max-width:none!important;margin:0!important;padding:18px 16px 14px!important;text-align:left!important;border-radius:22px!important;position:relative!important;overflow:hidden!important;background:linear-gradient(145deg,rgba(8,24,58,.94),rgba(7,13,35,.90))!important;border:1px solid rgba(24,216,255,.24)!important;box-shadow:0 14px 36px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}.modulo-card::before{content:""!important;position:absolute!important;inset:0!important;border-radius:22px!important;padding:1px!important;background:linear-gradient(135deg,rgba(24,216,255,.82),transparent 38%,rgba(155,77,255,.72))!important;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)!important;-webkit-mask-composite:xor!important;mask-composite:exclude!important;opacity:.42!important;pointer-events:none!important}.modulo-card::after{content:""!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 20% 10%,rgba(24,216,255,.16),transparent 34%),linear-gradient(120deg,rgba(255,255,255,.07),transparent 35%)!important;pointer-events:none!important}.modulo-card:hover{transform:translateY(-5px)!important;border-color:rgba(24,216,255,.56)!important;box-shadow:0 24px 65px rgba(0,0,0,.48),0 0 30px rgba(24,216,255,.22),0 0 28px rgba(155,77,255,.18)!important}.icono{width:54px!important;height:54px!important;margin:0 0 13px!important;border-radius:17px!important;display:grid!important;place-items:center!important;font-size:0!important;background:linear-gradient(135deg,rgba(24,216,255,.16),rgba(155,77,255,.25))!important;border:1px solid rgba(24,216,255,.28)!important;box-shadow:0 0 22px rgba(24,216,255,.24),inset 0 0 18px rgba(255,255,255,.06)!important;position:relative!important;z-index:1!important}.icono::before{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;font-size:28px!important;line-height:1!important;color:#dff9ff!important;filter:drop-shadow(0 0 10px rgba(24,216,255,.75))}.modulo-card[data-modulo="empresas"] .icono::before{content:"🏢"}.modulo-card[data-modulo="proyectos"] .icono::before{content:"📁"}.modulo-card[data-modulo="crear_usuarios"] .icono::before{content:"👤"}.modulo-card[data-modulo="ver_usuarios"] .icono::before{content:"👥"}.modulo-card[data-modulo="perfil_personal"] .icono::before{content:"🪪"}.modulo-card[data-modulo="gafetes"] .icono::before{content:"🔳"}.modulo-card[data-modulo="agenda"] .icono::before{content:"📅"}.modulo-card[data-modulo="chat_empresarial"] .icono::before{content:"💬"}.modulo-card[data-modulo="licencias"] .icono::before{content:"💳"}.modulo-card[data-modulo="gps"] .icono::before{content:"📡"}.modulo-card[data-modulo="traslados"] .icono::before{content:"🚗"}.modulo-card[data-modulo="editar_inventario"] .icono::before{content:"📦"}.modulo-card[data-modulo="control_equipos"] .icono::before{content:"🛡️"}.modulo-card[data-modulo="reportes"] .icono::before{content:"📊"}.modulo-card[data-modulo="config_modulos"] .icono::before{content:"⚙️"}.modulo-card:not([data-modulo]) .icono::before{content:"⏻";color:#ff8bb4;filter:drop-shadow(0 0 10px rgba(255,90,168,.82))}.modulo-card h3{position:relative!important;z-index:1!important;margin:0 0 8px!important;font-size:17px!important;line-height:1.18!important;color:white!important}.modulo-card p{position:relative!important;z-index:1!important;margin:0!important;min-height:40px!important;font-size:13px!important;line-height:1.34!important;color:#b7c9e7!important}.modulo-card button{position:absolute!important;right:14px!important;bottom:14px!important;z-index:2!important;width:38px!important;height:34px!important;margin:0!important;padding:0!important;border-radius:13px!important;border:1px solid rgba(24,216,255,.28)!important;background:linear-gradient(135deg,rgba(46,121,255,.34),rgba(155,77,255,.42))!important;box-shadow:0 0 16px rgba(155,77,255,.22)!important;color:white!important;font-size:0!important}.modulo-card button::before{content:"➜";font-size:18px!important}.pro-right-panel{grid-column:2!important;display:flex!important;flex-direction:column!important;gap:14px!important;position:sticky!important;top:18px!important}.pro-widget{border-radius:22px!important;padding:17px!important;background:linear-gradient(145deg,rgba(8,24,58,.88),rgba(7,13,35,.92))!important;border:1px solid rgba(24,216,255,.20)!important;box-shadow:0 15px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06)!important}.pro-widget h3{margin:0 0 12px!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:white!important}.pro-clock{display:flex!important;align-items:center!important;gap:14px!important}.clock-ring{width:68px!important;height:68px!important;border-radius:50%!important;background:conic-gradient(from 90deg,var(--esm-cyan),var(--esm-purple),var(--esm-cyan))!important;box-shadow:0 0 26px rgba(24,216,255,.30)!important}.clock-ring::before{content:"";display:block;margin:8px;width:52px;height:52px;border-radius:50%;background:#07142c}.pro-time{font-size:25px!important;font-weight:950!important;color:white!important}.pro-date{font-size:12px!important;color:var(--esm-muted)!important}.status-row{display:flex!important;align-items:center!important;gap:13px!important}.status-circle{width:70px!important;height:70px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:conic-gradient(#52ffbf 0 96%,rgba(255,255,255,.12) 96%)!important;font-size:20px!important;font-weight:950!important;box-shadow:0 0 26px rgba(82,255,191,.25)!important}.status-text strong{display:block!important;color:#68ffd4!important}.status-text span{font-size:12px!important;color:var(--esm-muted)!important}.pro-list{display:flex!important;flex-direction:column!important;gap:9px!important}.pro-list div{display:flex!important;justify-content:space-between!important;gap:10px!important;padding-bottom:8px!important;border-bottom:1px solid rgba(255,255,255,.06)!important;font-size:12px!important;color:#cfddff!important}.pro-list small{color:#7ccfff!important}.stats-pro{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:14px!important}.stat-box{border-radius:18px!important;padding:15px!important;background:rgba(8,24,58,.80)!important;border:1px solid rgba(24,216,255,.18)!important}.stat-box span{display:block!important;color:var(--esm-muted)!important;font-size:12px!important}.stat-box strong{display:block!important;font-size:24px!important;margin-top:6px!important;color:white!important}.stat-box small{color:#52ffbf!important;font-weight:900!important}
@media(max-width:1320px){:root{--esm-sidebar:238px;--esm-right:285px}.dashboard{padding:18px!important;gap:14px!important}.modulos{grid-template-columns:repeat(auto-fill,minmax(205px,1fr))!important}.modulo-card{height:172px!important;min-height:172px!important}.welcome{min-height:158px!important}.welcome h1{font-size:42px!important}}
@media(max-width:1120px){.dashboard{grid-template-columns:1fr!important}.pro-right-panel{grid-column:1!important;position:relative!important;top:auto!important;display:grid!important;grid-template-columns:repeat(2,1fr)!important}.stats-pro{grid-template-columns:repeat(2,1fr)!important}.modulos{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}}
@media(max-width:760px){.app-panel:not(.oculto){padding-left:0!important}.topbar{position:relative!important;width:100%!important;height:auto!important;min-height:auto!important;border-radius:0 0 24px 24px!important}.dashboard{padding:14px!important}.dashboard-actions,.vista-previa-rol{grid-template-columns:1fr!important;flex-direction:column!important}.welcome::before,.welcome::after{display:none!important}.modulos{grid-template-columns:1fr!important}.pro-right-panel{grid-template-columns:1fr!important}.stats-pro{grid-template-columns:1fr!important}}

#particles-canvas{position:fixed;inset:0;z-index:-3;background:
linear-gradient(135deg,rgba(2,8,23,.95),rgba(7,22,47,.92)),
url('https://images.unsplash.com/photo-1518770660439-4636190af475?q=80&w=1974&auto=format&fit=crop') center/cover no-repeat;
opacity:.9}
.fondo-animado{animation:fondoMove 18s ease infinite alternate}
@keyframes fondoMove{
0%{transform:scale(1) translateX(0)}
100%{transform:scale(1.08) translateX(-20px)}
}
.modulo-card,.menu-item,.card{
transition:all .3s ease!important}
.modulo-card:hover,.menu-item:hover,.card:hover{
transform:translateY(-4px) scale(1.02)!important;
box-shadow:0 0 25px rgba(24,216,255,.35)!important}

/* ===== FIX REAL FONDOS DINÁMICOS + ICONOS SIN DOBLE ===== */
html, body{min-height:100%; background:#020713 !important;}
body{background:#020713 !important; isolation:isolate;}
#particles-canvas{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100vh !important;
  z-index:1 !important;
  pointer-events:none !important;
  opacity:.88 !important;
  background:transparent !important;
  mix-blend-mode:screen;
}
.fondo-animado{
  position:fixed !important;
  inset:-6% !important;
  z-index:0 !important;
  pointer-events:none !important;
  opacity:1 !important;
  filter:saturate(1.2) contrast(1.06);
  background-size:160% 160%, 140% 140%, 100% 100% !important;
  animation:esmDynamicBg 16s ease-in-out infinite alternate !important;
}
.fondo-animado::before{
  content:"" !important;
  position:absolute !important;
  inset:-12% !important;
  background-image:
    linear-gradient(rgba(24,216,255,.09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(155,77,255,.075) 1px, transparent 1px) !important;
  background-size:72px 72px !important;
  animation:esmGridMove 10s linear infinite !important;
  opacity:.55 !important;
}
.fondo-animado::after{
  content:"" !important;
  position:absolute !important;
  inset:-18% !important;
  background:conic-gradient(from 0deg at 50% 50%, transparent 0 16%, rgba(24,216,255,.18) 22%, transparent 35%, rgba(155,77,255,.16) 52%, transparent 68%, rgba(82,255,191,.12) 76%, transparent 100%) !important;
  filter:blur(26px) !important;
  animation:esmHoloRotate 24s linear infinite !important;
  opacity:.62 !important;
}
body::before{z-index:2 !important; opacity:.55 !important;}
#intro,.login-contenedor,.app-panel,.modal{position:relative !important; z-index:5 !important;}
.app-panel:not(.oculto){background:transparent !important;}
.dashboard{background:transparent !important;}
@keyframes esmDynamicBg{
  0%{transform:scale(1) translate3d(0,0,0); background-position:0% 35%, 80% 20%, center;}
  50%{transform:scale(1.04) translate3d(-1.5%,1%,0); background-position:70% 65%, 20% 80%, center;}
  100%{transform:scale(1.08) translate3d(1.2%,-1.2%,0); background-position:100% 35%, 40% 5%, center;}
}
@keyframes esmGridMove{from{transform:translate3d(0,0,0)}to{transform:translate3d(72px,72px,0)}}
@keyframes esmHoloRotate{from{transform:rotate(0deg) scale(1.1)}to{transform:rotate(360deg) scale(1.1)}}
body.fondo-1 .fondo-animado{background:radial-gradient(circle at 18% 20%,rgba(24,216,255,.42),transparent 30%),radial-gradient(circle at 78% 72%,rgba(88,104,255,.34),transparent 34%),linear-gradient(135deg,#020817,#08265a 56%,#01040b) !important;}
body.fondo-2 .fondo-animado{background:radial-gradient(circle at 18% 18%,rgba(255,0,214,.38),transparent 31%),radial-gradient(circle at 82% 25%,rgba(0,255,255,.35),transparent 30%),linear-gradient(135deg,#080012,#100533 55%,#01020a) !important;}
body.fondo-3 .fondo-animado{background:radial-gradient(circle at 50% 10%,rgba(0,255,180,.28),transparent 30%),repeating-linear-gradient(90deg,rgba(87,232,255,.075) 0 1px,transparent 1px 62px),linear-gradient(135deg,#021016,#06313e,#020608) !important;}
body.fondo-4 .fondo-animado{background:radial-gradient(circle at 26% 20%,rgba(0,255,190,.32),transparent 34%),radial-gradient(circle at 75% 65%,rgba(168,107,255,.38),transparent 34%),linear-gradient(135deg,#05091a,#061a38,#010409) !important;}
body.fondo-5 .fondo-animado{background:radial-gradient(circle at 15% 85%,rgba(101,255,199,.34),transparent 32%),radial-gradient(circle at 80% 18%,rgba(87,232,255,.32),transparent 34%),linear-gradient(135deg,#00120b,#06261f,#020605) !important;}
body.fondo-6 .fondo-animado{background:radial-gradient(circle at 20% 20%,rgba(255,48,89,.40),transparent 31%),radial-gradient(circle at 80% 80%,rgba(255,150,80,.30),transparent 35%),linear-gradient(135deg,#120203,#280710,#030101) !important;}
body.fondo-7 .fondo-animado{background:radial-gradient(circle at 30% 25%,rgba(73,255,226,.40),transparent 32%),radial-gradient(circle at 82% 70%,rgba(30,145,255,.35),transparent 35%),linear-gradient(135deg,#02111b,#05364f,#01050a) !important;}
body.fondo-8 .fondo-animado{background:radial-gradient(circle at 80% 20%,rgba(255,180,60,.28),transparent 29%),repeating-linear-gradient(45deg,rgba(255,255,255,.07) 0 1px,transparent 1px 64px),linear-gradient(135deg,#080a0c,#20242a,#030405) !important;}
body.fondo-9 .fondo-animado{background:radial-gradient(circle at 20% 30%,rgba(168,107,255,.44),transparent 33%),radial-gradient(circle at 80% 70%,rgba(87,232,255,.30),transparent 31%),linear-gradient(135deg,#080012,#170646,#02010a) !important;}
body.fondo-10 .fondo-animado{background:radial-gradient(circle at 70% 20%,rgba(220,230,255,.28),transparent 33%),radial-gradient(circle at 22% 78%,rgba(87,232,255,.23),transparent 31%),linear-gradient(135deg,#020204,#171b24,#000) !important;}
body.fondo-11 .fondo-animado{background:radial-gradient(circle at 10% 12%,rgba(49,130,255,.36),transparent 30%),radial-gradient(circle at 88% 78%,rgba(160,80,255,.34),transparent 36%),linear-gradient(135deg,#00030b,#071338,#01010a) !important;}
body.fondo-12 .fondo-animado{background:radial-gradient(circle at 20% 16%,rgba(255,198,84,.38),transparent 32%),radial-gradient(circle at 82% 74%,rgba(24,216,255,.24),transparent 34%),linear-gradient(135deg,#110904,#291807,#020202) !important;}
body.fondo-13 .fondo-animado{background:radial-gradient(circle at 22% 70%,rgba(82,255,191,.40),transparent 34%),radial-gradient(circle at 82% 18%,rgba(29,255,120,.22),transparent 32%),linear-gradient(135deg,#001007,#062315,#010503) !important;}
body.fondo-14 .fondo-animado{background:radial-gradient(circle at 25% 20%,rgba(220,250,255,.36),transparent 32%),radial-gradient(circle at 85% 76%,rgba(92,141,255,.32),transparent 34%),linear-gradient(135deg,#07101a,#122f48,#02050a) !important;}
body.fondo-15 .fondo-animado{background:radial-gradient(circle at 18% 20%,rgba(255,74,36,.40),transparent 33%),radial-gradient(circle at 84% 78%,rgba(255,0,110,.30),transparent 34%),linear-gradient(135deg,#150300,#290b05,#030101) !important;}

/* Elimina de verdad los íconos duplicados: el SVG de app.js queda como único ícono */
.modulo-card .icono.icono-pro-svg,
.modulo-card .icono.icono-glass{
  font-size:0 !important;
  color:transparent !important;
  text-shadow:none !important;
  overflow:hidden !important;
}
.modulo-card .icono.icono-pro-svg::before,
.modulo-card .icono.icono-glass::before,
.modulo-card .icono.icono-pro-svg::after,
.modulo-card .icono.icono-glass::after{
  content:none !important;
  display:none !important;
}
.modulo-card .icono.icono-pro-svg svg,
.modulo-card .icono.icono-glass svg{
  width:30px !important;
  height:30px !important;
  display:block !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  fill:none !important;
  color:#eaffff !important;
  filter:drop-shadow(0 0 10px rgba(24,216,255,.85)) !important;
}
body.iconos-neon-premium .modulo-card .icono svg{color:#73f7ff !important; filter:drop-shadow(0 0 12px rgba(24,216,255,1)) drop-shadow(0 0 18px rgba(155,77,255,.62)) !important;}
body.iconos-liquid-glass .modulo-card .icono svg{color:#ffffff !important; filter:drop-shadow(0 0 10px rgba(255,255,255,.65)) !important;}
body.iconos-lineal-ejecutivo .modulo-card .icono svg{color:#dce8ff !important; filter:none !important;}
body.iconos-hologram-blue .modulo-card .icono svg{color:#8eefff !important; filter:drop-shadow(0 0 14px rgba(66,210,255,.95)) !important;}
body.iconos-titanium-dark .modulo-card .icono svg{color:#c9d3e6 !important; filter:drop-shadow(0 0 7px rgba(255,255,255,.25)) !important;}
body.iconos-aqua-security .modulo-card .icono svg{color:#52ffbf !important; filter:drop-shadow(0 0 12px rgba(82,255,191,.85)) !important;}
body.iconos-red-alert .modulo-card .icono svg{color:#ff6a8e !important; filter:drop-shadow(0 0 12px rgba(255,75,120,.85)) !important;}
body.iconos-gold-elite .modulo-card .icono svg{color:#ffd66b !important; filter:drop-shadow(0 0 12px rgba(255,214,107,.75)) !important;}
body.iconos-black-chrome .modulo-card .icono svg{color:#f6fbff !important; filter:drop-shadow(0 0 8px rgba(120,170,255,.65)) !important;}

/* ===== AJUSTE FINAL REAL: compacto, fondos que cambian e iconos únicos ===== */
.dashboard-actions{display:none!important}
.welcome{min-height:118px!important;padding:18px 22px!important;order:1!important}
.vista-previa-rol{order:2!important}
.modulos{order:3!important}.pro-right-panel{order:3!important}.stats-pro{order:4!important}
.welcome h1{font-size:clamp(24px,2.2vw,34px)!important;line-height:1.05!important}
.welcome-subnombre{font-size:13px!important;margin-top:3px!important}.welcome>p{font-size:13px!important;margin:7px 0!important}.welcome::before{font-size:10px!important;right:18px;top:14px}.welcome::after{font-size:10px!important;right:18px;bottom:14px;padding:8px 11px}.foto-usuario-welcome{width:56px!important;height:56px!important;border-radius:16px!important}
#particles-canvas{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:2!important;pointer-events:none!important;background:transparent!important;opacity:.95!important;mix-blend-mode:screen!important}.fondo-animado{position:fixed!important;inset:-8%!important;z-index:0!important;display:block!important;pointer-events:none!important;opacity:1!important;background-size:160% 160%!important;animation:esmDynamicBg 10s ease-in-out infinite alternate!important}.app-panel:not(.oculto),.login-contenedor,.modal{position:relative!important;z-index:5!important;background:transparent!important}
body.fondo-1 .fondo-animado{background:radial-gradient(circle at 18% 22%,rgba(24,216,255,.48),transparent 28%),radial-gradient(circle at 80% 76%,rgba(155,77,255,.40),transparent 33%),linear-gradient(135deg,#010715,#062c68 58%,#01030a)!important}
body.fondo-2 .fondo-animado{background:radial-gradient(circle at 18% 18%,rgba(255,0,214,.48),transparent 28%),radial-gradient(circle at 85% 35%,rgba(0,255,255,.40),transparent 32%),linear-gradient(135deg,#090014,#19053e,#01020a)!important}
body.fondo-3 .fondo-animado{background:repeating-linear-gradient(90deg,rgba(87,232,255,.10) 0 1px,transparent 1px 54px),radial-gradient(circle at 50% 10%,rgba(0,255,180,.36),transparent 30%),linear-gradient(135deg,#021016,#06313e,#020608)!important}
body.fondo-4 .fondo-animado{background:radial-gradient(circle at 26% 22%,rgba(0,255,190,.42),transparent 32%),radial-gradient(circle at 75% 70%,rgba(168,107,255,.48),transparent 34%),linear-gradient(135deg,#05091a,#061a38,#010409)!important}
body.fondo-5 .fondo-animado{background:radial-gradient(circle at 15% 85%,rgba(101,255,199,.48),transparent 31%),radial-gradient(circle at 80% 18%,rgba(87,232,255,.44),transparent 34%),linear-gradient(135deg,#00120b,#06261f,#020605)!important}
body.fondo-6 .fondo-animado{background:radial-gradient(circle at 20% 20%,rgba(255,48,89,.52),transparent 31%),radial-gradient(circle at 80% 80%,rgba(255,150,80,.38),transparent 35%),linear-gradient(135deg,#120203,#280710,#030101)!important}
body.fondo-7 .fondo-animado{background:radial-gradient(circle at 30% 25%,rgba(73,255,226,.52),transparent 32%),radial-gradient(circle at 82% 70%,rgba(30,145,255,.45),transparent 35%),linear-gradient(135deg,#02111b,#05364f,#01050a)!important}
body.fondo-8 .fondo-animado{background:repeating-linear-gradient(45deg,rgba(255,255,255,.09) 0 1px,transparent 1px 54px),radial-gradient(circle at 80% 20%,rgba(255,180,60,.36),transparent 29%),linear-gradient(135deg,#080a0c,#20242a,#030405)!important}
body.fondo-9 .fondo-animado{background:radial-gradient(circle at 20% 30%,rgba(168,107,255,.56),transparent 33%),radial-gradient(circle at 80% 70%,rgba(87,232,255,.36),transparent 31%),linear-gradient(135deg,#080012,#170646,#02010a)!important}
body.fondo-10 .fondo-animado{background:radial-gradient(circle at 70% 20%,rgba(220,230,255,.34),transparent 33%),radial-gradient(circle at 22% 78%,rgba(87,232,255,.30),transparent 31%),linear-gradient(135deg,#020204,#171b24,#000)!important}
body.fondo-11 .fondo-animado{background:radial-gradient(circle at 10% 12%,rgba(49,130,255,.46),transparent 30%),radial-gradient(circle at 88% 78%,rgba(160,80,255,.46),transparent 36%),linear-gradient(135deg,#00030b,#071338,#01010a)!important}
body.fondo-12 .fondo-animado{background:radial-gradient(circle at 20% 16%,rgba(255,198,84,.50),transparent 32%),radial-gradient(circle at 82% 74%,rgba(24,216,255,.34),transparent 34%),linear-gradient(135deg,#110904,#291807,#020202)!important}
body.fondo-13 .fondo-animado{background:radial-gradient(circle at 22% 70%,rgba(82,255,191,.54),transparent 34%),radial-gradient(circle at 82% 18%,rgba(29,255,120,.32),transparent 32%),linear-gradient(135deg,#001007,#062315,#010503)!important}
body.fondo-14 .fondo-animado{background:radial-gradient(circle at 25% 20%,rgba(220,250,255,.48),transparent 32%),radial-gradient(circle at 85% 76%,rgba(92,141,255,.42),transparent 34%),linear-gradient(135deg,#07101a,#122f48,#02050a)!important}
body.fondo-15 .fondo-animado{background:radial-gradient(circle at 18% 20%,rgba(255,74,36,.52),transparent 33%),radial-gradient(circle at 84% 78%,rgba(255,0,110,.38),transparent 34%),linear-gradient(135deg,#150300,#290b05,#030101)!important}
@keyframes esmDynamicBg{0%{transform:scale(1) translate3d(0,0,0);filter:hue-rotate(0deg) saturate(1.15)}50%{transform:scale(1.05) translate3d(-18px,10px,0);filter:hue-rotate(10deg) saturate(1.35)}100%{transform:scale(1.1) translate3d(16px,-14px,0);filter:hue-rotate(-10deg) saturate(1.25)}}
.modulo-card .icono{font-size:0!important;color:#eaffff!important;text-shadow:none!important;display:grid!important;place-items:center!important}.modulo-card .icono::before,.modulo-card .icono::after{content:none!important;display:none!important}.modulo-card .icono svg{width:32px!important;height:32px!important;display:block!important;stroke:currentColor!important;stroke-width:1.8!important;fill:none!important;filter:drop-shadow(0 0 12px rgba(24,216,255,.85))!important}.modulo-card .icono *{box-sizing:border-box!important}
body.iconos-neon-premium .modulo-card .icono{color:#69f7ff!important}body.iconos-liquid-glass .modulo-card .icono{color:#ffffff!important}body.iconos-lineal-ejecutivo .modulo-card .icono{color:#dce8ff!important}body.iconos-hologram-blue .modulo-card .icono{color:#8eefff!important}body.iconos-titanium-dark .modulo-card .icono{color:#c9d3e6!important}body.iconos-aqua-security .modulo-card .icono{color:#52ffbf!important}body.iconos-red-alert .modulo-card .icono{color:#ff6a8e!important}body.iconos-gold-elite .modulo-card .icono{color:#ffd66b!important}body.iconos-black-chrome .modulo-card .icono{color:#f6fbff!important}
@media(max-width:760px){.welcome{min-height:100px!important;padding:15px!important}.welcome h1{font-size:24px!important}.vista-previa-rol{padding:12px!important}}

/* INTRO VIDEO SOFTWARE ESM - ACTIVO AL ABRIR */
#intro.esm-intro-activa{
  display:flex!important;
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  background:#000!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
#intro.esm-intro-activa::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at center, transparent 45%, rgba(0,0,0,.28) 100%);
}
#videoIntro{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
#btnSaltarIntro{
  position:absolute!important;
  right:24px!important;
  bottom:24px!important;
  z-index:100000!important;
  border:1px solid rgba(87,232,255,.45)!important;
  background:rgba(3,12,28,.62)!important;
  color:#eaf8ff!important;
  border-radius:999px!important;
  padding:10px 18px!important;
  font-weight:800!important;
  letter-spacing:.3px!important;
  cursor:pointer!important;
  box-shadow:0 0 28px rgba(24,216,255,.22)!important;
  backdrop-filter:blur(10px)!important;
}
#btnSaltarIntro:hover{transform:translateY(-1px);box-shadow:0 0 34px rgba(24,216,255,.34)!important;}



/* INTRO INICIAL REAL - Software ESM
   Usa únicamente assets/intro-esm.mp4 y no muestra botón Saltar intro. */
body.esm-intro-pendiente{overflow:hidden!important;}
body.esm-intro-pendiente #loginBox,
body.esm-intro-pendiente #appPanel,
body.esm-intro-pendiente #esmBootPremium{display:none!important;}
body.esm-intro-pendiente #intro.esm-intro-activa{
  display:flex!important;
  visibility:visible!important;
  pointer-events:auto!important;
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  background:#000!important;
  align-items:center!important;
  justify-content:center!important;
}
body.esm-intro-pendiente #videoIntro{
  display:block!important;
  visibility:visible!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  background:#000!important;
}
body.esm-intro-finalizada #intro,
body.esm-intro-finalizada #videoIntro{display:none!important;visibility:hidden!important;pointer-events:none!important;}
#btnSaltarIntro{display:none!important;}


/* INTRO ESM LIMPIA - 2026-05-16
   Solo usa ./assets/intro-esm.mp4 antes del login. */
body.esm-intro-pendiente{overflow:hidden!important;}
body.esm-intro-pendiente #loginBox,
body.esm-intro-pendiente #appPanel,
body.esm-intro-pendiente #esmBootPremium{display:none!important;visibility:hidden!important;}
#intro.esm-intro-activa{
  display:flex!important;
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  z-index:2147483647!important;
  background:#000!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
#intro.esm-intro-activa #videoIntro{
  display:block!important;
  width:100vw!important;
  height:100vh!important;
  object-fit:cover!important;
  background:#000!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}
body.esm-intro-finalizada #intro,
body.esm-intro-finalizada #videoIntro,
#intro.oculto{display:none!important;visibility:hidden!important;pointer-events:none!important;}
#btnSaltarIntro{display:none!important;}


/* Limpieza final: intros de video eliminadas */
#intro,#videoIntro,#panelIntro,#videoPanelIntro{display:none!important;visibility:hidden!important;pointer-events:none!important;}
body.esm-intro-pendiente{overflow:auto!important;}
