/* ═══════════════════════════════════════════════════════════
   ELNENE_SANDO v0.18 — Marca, tráfico y selector claro/oscuro
═══════════════════════════════════════════════════════════ */
html[data-theme="light"] {
  --bg:#f3f7fc;
  --panel:#ffffff;
  --panel2:#f8fbff;
  --line:rgba(20,52,90,.15);
  --txt:#14233d;
  --muted:#63728a;
  --cyan:#087cbb;
  --green:#118556;
  --gold:#b87900;
  --red:#d9354d;
  --purple:#7049d9;
  --orange:#d97517;
}
html[data-theme="light"] body { background:var(--bg); }
html[data-theme="light"] .circuit { background-image:linear-gradient(rgba(8,124,187,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(8,124,187,.055) 1px,transparent 1px); }
html[data-theme="light"] .navbar { background:rgba(250,252,255,.94); box-shadow:0 2px 14px rgba(22,55,93,.05); }
html[data-theme="light"] .nav-links { background:rgba(250,252,255,.98); }
html[data-theme="light"] .form-group input,
html[data-theme="light"] .form-group select,
html[data-theme="light"] .form-group textarea { background:#fff; color:var(--txt); }
html[data-theme="light"] .btn-outline { background:#fff; }
html[data-theme="light"] .modal { background:var(--panel2); box-shadow:0 24px 60px rgba(26,52,84,.18); }
html[data-theme="light"] .modal-overlay { background:rgba(14,30,52,.40); }
html[data-theme="light"] .auth-topbar { background:rgba(255,255,255,.96)!important; border-color:var(--line)!important; }
html[data-theme="light"] .sidebar { background:#fbfdff!important; border-color:var(--line)!important; box-shadow:8px 0 20px rgba(26,52,84,.035); }
html[data-theme="light"] .sidebar-logo,
html[data-theme="light"] .sidebar-footer { border-color:var(--line)!important; }
html[data-theme="light"] .atb-panel,
html[data-theme="light"] .atb-usermenu { background:#fff!important; border-color:rgba(8,124,187,.24)!important; box-shadow:0 14px 36px rgba(26,52,84,.16)!important; }
html[data-theme="light"] .atb-title,
html[data-theme="light"] .um2-hd { border-color:var(--line)!important; }
html[data-theme="light"] .snav-toggle:hover,
html[data-theme="light"] .snav-items a:hover,
html[data-theme="light"] .atb-item:hover,
html[data-theme="light"] .atb-usermenu a:hover { background:rgba(8,124,187,.055)!important; }

/* Marca compacta: sólo el logotipo horizontal en cabecera, lateral y footer. */
.nav-brand { display:flex; align-items:center; text-decoration:none; min-width:0; }
.nav-brand-word { width:min(188px,31vw); height:40px; object-fit:contain; object-position:left center; filter:drop-shadow(0 3px 9px rgba(51,194,255,.16)); }
.sidebar-brand { display:flex; align-items:center; min-width:0; text-decoration:none; width:100%; }
.sidebar-brand-word { width:min(196px,100%); height:46px; object-fit:contain; object-position:left center; filter:drop-shadow(0 3px 9px rgba(51,194,255,.22)); }
.sidebar-brand-compact { justify-content:center; }
.footer-brand { display:inline-flex; align-items:center; justify-content:center; margin:0 auto 9px; text-decoration:none; }
.footer-brand img { width:min(198px,62vw); height:46px; object-fit:contain; filter:drop-shadow(0 3px 10px rgba(51,194,255,.18)); }
.footer-brand-compact { margin-top:1px; }

/* Cambiador de tema fijo al borde derecho de todo el sitio. */
.theme-switcher { position:fixed; z-index:1001; right:14px; top:50%; transform:translateY(-50%); }
.theme-toggle { width:48px; min-height:48px; border-radius:15px; border:1px solid rgba(51,194,255,.30); background:linear-gradient(145deg,rgba(10,18,38,.95),rgba(6,10,22,.95)); color:#eaf7ff; box-shadow:0 8px 28px rgba(0,0,0,.32); cursor:pointer; display:flex; align-items:center; gap:8px; justify-content:center; padding:8px 11px; transition:.22s; overflow:hidden; white-space:nowrap; }
.theme-toggle:hover { width:145px; justify-content:flex-start; border-color:rgba(51,194,255,.70); box-shadow:0 10px 30px rgba(51,194,255,.20); }
.theme-icon { font-size:18px; line-height:1; flex:0 0 18px; }
.theme-text { font-family:'Inter',sans-serif; font-size:11px; font-weight:800; opacity:0; transform:translateX(6px); transition:.18s; }
.theme-toggle:hover .theme-text { opacity:1; transform:none; }
html[data-theme="light"] .theme-toggle { background:linear-gradient(145deg,#ffffff,#e7f4ff); color:#19466a; border-color:rgba(8,124,187,.32); box-shadow:0 8px 26px rgba(8,124,187,.15); }
html[data-theme="light"] .theme-toggle:hover { box-shadow:0 10px 30px rgba(8,124,187,.24); }

@media(max-width:768px){
  .nav-brand-word { width:158px; height:35px; }
  .sidebar-brand-word { width:174px; height:42px; }
  .footer-brand img { width:min(182px,66vw); height:42px; }
  .theme-switcher { right:11px; top:auto; bottom:88px; transform:none; }
  .theme-toggle:hover { width:48px; justify-content:center; }
  .theme-toggle:hover .theme-text { opacity:0; transform:translateX(6px); }
}


/* v0.18 — El panel autenticado nunca usa el emblema gigante como fondo.
   El lateral queda reservado para el wordmark compacto, aun con caché antigua. */
.sidebar-logo{height:76px;min-height:76px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;background:none!important;background-image:none!important;isolation:isolate;}
.sidebar-logo::before,.sidebar-logo::after{content:none!important;display:none!important;background:none!important;background-image:none!important;}
.sidebar-logo > :not(.sidebar-brand){display:none!important;}
.sidebar-logo .sidebar-brand{position:relative!important;z-index:2!important;width:100%!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:none!important;overflow:hidden!important;}
.sidebar-logo .sidebar-brand-word{display:block!important;width:min(184px,100%)!important;max-width:184px!important;height:42px!important;max-height:42px!important;object-fit:contain!important;object-position:center!important;transform:none!important;position:relative!important;inset:auto!important;margin:0!important;}
.sidebar-logo img[src*="brand-emblem"],.sidebar-logo img:not(.sidebar-brand-word){display:none!important;}
.auth-main{background:transparent!important;background-image:none!important;}

/* ═══════════════════════════════════════════════════════════
   v0.18 — Contadores públicos + acceso / registro con marca nueva
═══════════════════════════════════════════════════════════ */
.site-traffic-mini{display:flex;align-items:center;gap:7px;margin-left:12px;padding:6px 9px;border:1px solid rgba(51,194,255,.18);border-radius:10px;background:rgba(51,194,255,.045);color:var(--muted);font:700 10px Inter,sans-serif;white-space:nowrap;line-height:1}.site-traffic-mini .traffic-sep{opacity:.35}.site-traffic-mini b{color:var(--cyan);font-family:Orbitron,sans-serif;font-size:10px}.site-traffic-mini .traffic-online-dot{width:6px;height:6px;border-radius:999px;background:#22c98a;box-shadow:0 0 8px #22c98a;display:inline-block;animation:nenePulse 1.8s ease-in-out infinite}.site-traffic-auth{margin-left:2px;margin-right:auto}.auth-topbar-left{min-width:0}.auth-topbar .site-traffic-mini{display:none}@keyframes nenePulse{0%,100%{opacity:.65;transform:scale(.85)}50%{opacity:1;transform:scale(1.12)}}
.auth-brand-block{text-align:center;margin-bottom:28px}.auth-brand-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.auth-brand-link img{width:min(300px,72vw);height:70px;object-fit:contain;filter:drop-shadow(0 5px 15px rgba(51,194,255,.22))}.auth-brand-subtitle{font-size:13px;color:var(--muted);margin-top:5px}
html[data-theme="light"] .site-traffic-mini{background:rgba(8,124,187,.055);border-color:rgba(8,124,187,.18)}
@media(min-width:1080px){.auth-topbar .site-traffic-mini{display:flex}}
@media(max-width:850px){.site-traffic-mini{margin-left:4px;padding:5px 7px;gap:5px}.site-traffic-mini .traffic-label{display:none}.site-traffic-mini .traffic-sep{display:none}.nav-brand-word{width:146px}.auth-brand-link img{width:min(270px,78vw);height:62px}}
@media(max-width:560px){.site-traffic-mini{display:none}}

/* ═══════════════════════════════════════════════════════════
   v0.20 — Tema compacto en barra + dock de contactos plegable
═══════════════════════════════════════════════════════════ */
.theme-switcher{display:none!important;}
.top-theme-toggle{width:31px;height:31px;border-radius:9px;border:1px solid rgba(51,194,255,.24);background:rgba(51,194,255,.055);color:var(--cyan);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:.18s;flex:0 0 auto;}
.top-theme-toggle:hover{background:rgba(51,194,255,.14);border-color:rgba(51,194,255,.58);transform:translateY(-1px);}
html[data-theme="light"] .top-theme-toggle{background:#fff;border-color:rgba(8,124,187,.24);}

/* Pestaña compacta: WhatsApp y soporte permanecen ocultos hasta abrirla. */
.support-dock{position:fixed;z-index:999;right:18px;bottom:20px;display:flex;align-items:center;gap:8px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28));}
.support-dock-tab{width:25px;height:47px;border-radius:13px 5px 5px 13px;border:1px solid rgba(51,194,255,.38);background:linear-gradient(145deg,#0f1932,#07101f);color:var(--cyan);font:800 24px/1 Inter,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;padding:0;}
.support-dock-tab:hover{border-color:var(--cyan);background:#10213d;}
.support-dock-actions{display:flex;align-items:center;gap:9px;max-width:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateX(12px);transition:max-width .26s ease,opacity .18s ease,transform .26s ease;}
.support-dock.open .support-dock-actions{max-width:150px;opacity:1;pointer-events:auto;transform:none;}
.support-dock .wa-fab,.support-dock .chat-fab{position:static!important;right:auto!important;bottom:auto!important;width:47px!important;height:47px!important;flex:0 0 47px;margin:0;box-shadow:0 6px 18px rgba(0,0,0,.3);}
.support-dock .wa-fab{font-size:22px!important;}
.chat-panel{right:18px!important;bottom:82px!important;z-index:1000!important;}
.chat-time{display:block;margin-top:3px;text-align:right;font-size:9px;opacity:.55;}
.chat-empty{color:var(--muted);font-size:12px;line-height:1.55;text-align:center;padding:28px 15px;margin:auto 0;}
html[data-theme="light"] .support-dock-tab{background:linear-gradient(145deg,#fff,#e6f2ff);color:#087cbb;border-color:rgba(8,124,187,.34);}
html[data-theme="light"] .chat-panel{background:linear-gradient(180deg,#fff,#f4f8ff)!important;box-shadow:0 18px 50px rgba(21,52,89,.22)!important;}
html[data-theme="light"] .chat-msg.admin{color:#5e43b9!important;background:rgba(112,73,217,.1)!important;}
html[data-theme="light"] .chat-msg.client{color:#087cbb!important;background:rgba(8,124,187,.09)!important;}

/* Las alertas del admin se distinguen sin ocupar espacio permanente. */
.atb-panel{max-height:min(430px,calc(100vh - 78px));overflow-y:auto;}
.atb-item small{font-weight:500;line-height:1.35;}
@media(max-width:768px){
  .top-theme-toggle{width:29px;height:29px;font-size:13px;}
  .support-dock{right:12px;bottom:14px;}
  .support-dock .wa-fab,.support-dock .chat-fab{width:45px!important;height:45px!important;flex-basis:45px;}
  .chat-panel{right:12px!important;bottom:75px!important;width:min(332px,calc(100vw - 24px))!important;}
}
