/* Sistema Boot: Streaming Peru | Tema SaaS moderno + Streaming Cinema */
:root {
  --sb-cinema:#080b10; --sb-cinema-2:#111722; --sb-panel:#fff;
  --sb-canvas:#f3f5f8; --sb-line:#e4e8ef; --sb-ink:#172033;
  --sb-muted:#667085; --sb-accent:#eb2f3a; --sb-accent-dark:#c91f2b;
  --sb-shadow:0 12px 32px rgba(16,24,40,.08); --sb-header-h:68px;
}
html{background:var(--sb-canvas)}
body.admin-shell,body.public-shell{
  color:var(--sb-ink);font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif!important;
  background-color:var(--sb-canvas)!important;
  background-image:radial-gradient(circle at 88% 4%,rgba(235,47,58,.08),transparent 28%),linear-gradient(135deg,#f8f9fb 0%,#eef1f5 100%)!important;
}
body.admin-shell{padding-bottom:46px!important}
body.public-shell{padding-top:var(--sb-header-h)!important;padding-bottom:52px!important}

/* Cabecera cinematográfica */
.admin-header,.public-header{
  height:var(--sb-header-h)!important;background:rgba(8,11,16,.97)!important;
  border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 24px rgba(8,11,16,.18)!important;
  backdrop-filter:blur(16px)
}
.admin-header:before,.public-header:before{
  content:"";position:absolute;inset:auto 0 0;height:2px;
  background:linear-gradient(90deg,transparent,var(--sb-accent) 25%,#ff6b57 70%,transparent)
}
.admin-header>div:first-child>span,.public-header>span:first-child{font-size:1.05rem!important;letter-spacing:-.025em}
.admin-header>div:first-child>span:before,.public-header>span:first-child:before{
  content:"\f3ed";font-family:"Font Awesome 6 Free";font-weight:900;display:inline-grid;place-items:center;
  width:34px;height:34px;margin-right:10px;border-radius:10px;color:#fff;
  background:linear-gradient(135deg,#ff554f,var(--sb-accent));box-shadow:0 6px 18px rgba(235,47,58,.3);vertical-align:middle
}
.admin-header a,.admin-header button,.public-header a,.public-header button{border-radius:10px!important}
.admin-header a:hover,.admin-header button:hover,.public-header a:hover,.public-header button:hover{background:rgba(255,255,255,.1)!important}

/* Menú lateral */
.admin-sidebar{
  top:var(--sb-header-h)!important;bottom:46px!important;width:264px!important;
  background:radial-gradient(circle at 0 0,rgba(235,47,58,.12),transparent 34%),linear-gradient(180deg,#111722 0%,#090d13 100%)!important;
  border-right:1px solid rgba(255,255,255,.07);box-shadow:14px 0 32px rgba(12,18,28,.10)!important
}
.admin-sidebar>div:first-child{padding:22px 18px!important;text-align:left!important;background:transparent!important;border-color:rgba(255,255,255,.08)!important}
.admin-sidebar>div:first-child h2{font-size:.95rem!important;letter-spacing:-.01em}
.admin-sidebar>div:first-child p{color:#7f8999!important;letter-spacing:.16em!important}
.admin-sidebar nav{padding:14px 12px 20px!important}
.admin-sidebar nav ul{gap:4px;display:flex;flex-direction:column}
.admin-sidebar nav li[class*="uppercase"]{margin-top:18px!important;color:#6f7886!important;letter-spacing:.14em!important}
.admin-sidebar a{min-height:42px;padding:10px 12px!important;border-radius:11px!important;color:#aeb6c3!important;font-weight:600;transition:.18s ease!important}
.admin-sidebar a i{color:#7f8998!important;transition:.18s ease}
.admin-sidebar a:hover{color:#fff!important;background:rgba(255,255,255,.065)!important;transform:translateX(2px)}
.admin-sidebar a.active,.admin-sidebar a.bg-gray-800{color:#fff!important;background:linear-gradient(90deg,rgba(235,47,58,.24),rgba(235,47,58,.07))!important;box-shadow:inset 3px 0 0 var(--sb-accent)}
.admin-sidebar a.active i,.admin-sidebar a.bg-gray-800 i{color:#ff6570!important}

.admin-workspace{margin-left:264px!important;padding-top:calc(var(--sb-header-h) + 22px)!important;padding-bottom:68px!important;background:transparent!important}
.admin-workspace>div{animation:sb-rise .28s ease both}
@keyframes sb-rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}

/* Superficies SaaS */
.admin-workspace .bg-white,.public-shell main .bg-white,.public-shell main [class*="bg-opacity"]{border-color:var(--sb-line)!important}
.admin-workspace>.rounded-xl,.admin-workspace>.rounded-lg,.admin-workspace>div[class*="max-w"],.public-shell .main-content-box,.public-shell main>div[class*="max-w"]{border-radius:16px!important}
.admin-workspace>div[class*="max-w"]{max-width:1380px!important;padding:20px!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(228,232,239,.9)!important;box-shadow:var(--sb-shadow)!important}
.admin-workspace .shadow-lg,.admin-workspace .shadow-xl,.public-shell .shadow-lg,.public-shell .shadow-xl,.public-shell .shadow-2xl{box-shadow:var(--sb-shadow)!important}
.admin-workspace .rounded,.admin-workspace .rounded-md,.public-shell .rounded,.public-shell .rounded-md{border-radius:9px!important}
.admin-workspace .rounded-lg,.admin-workspace .rounded-xl,.public-shell .rounded-lg,.public-shell .rounded-xl{border-radius:14px!important}
.admin-workspace h1,.admin-workspace h2,.admin-workspace h3,.public-shell main h1,.public-shell main h2,.public-shell main h3{letter-spacing:-.025em}

/* Botones */
.admin-workspace button[class*="bg-red"],.admin-workspace a[class*="bg-red"],.public-shell button[class*="bg-red"],.public-shell a[class*="bg-red"]{
  background:linear-gradient(135deg,#f0444e,var(--sb-accent-dark))!important;border:0!important;box-shadow:0 6px 14px rgba(235,47,58,.18)!important
}
.admin-workspace button[class*="bg-red"]:hover,.admin-workspace a[class*="bg-red"]:hover,.public-shell button[class*="bg-red"]:hover,.public-shell a[class*="bg-red"]:hover{filter:brightness(.94);transform:translateY(-1px)}
.admin-workspace button,.admin-workspace a[class*="px-"],.public-shell main button,.public-shell main a[class*="px-"]{transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important}

/* Campos */
.admin-workspace input:not([type="checkbox"]):not([type="radio"]),.admin-workspace select,.admin-workspace textarea,
.public-shell main input:not([type="checkbox"]):not([type="radio"]),.public-shell main select,.public-shell main textarea,#passwordChangeModal input{
  min-height:40px;border:1px solid #d8dee8!important;border-radius:10px!important;background:#fff!important;box-shadow:0 1px 2px rgba(16,24,40,.025)!important;outline:none
}
.admin-workspace input:focus,.admin-workspace select:focus,.admin-workspace textarea:focus,.public-shell main input:focus,.public-shell main select:focus,.public-shell main textarea:focus,#passwordChangeModal input:focus{border-color:#f06069!important;box-shadow:0 0 0 4px rgba(235,47,58,.10)!important}
.admin-workspace label,.public-shell main label{color:#475467!important}

/* Tablas */
.admin-workspace .dataTables_wrapper,.public-shell .dataTables_wrapper{color:var(--sb-muted)!important}
.admin-workspace table.dataTable,.public-shell table.dataTable,.admin-workspace table{border-collapse:separate!important;border-spacing:0!important}
.admin-workspace table thead,.public-shell table thead{background:#f7f8fa!important}
.admin-workspace table thead th,.public-shell table thead th{color:#5d6879!important;font-size:.68rem!important;letter-spacing:.06em;border-top:1px solid var(--sb-line)!important;border-bottom:1px solid var(--sb-line)!important;padding-top:12px!important;padding-bottom:12px!important}
.admin-workspace table tbody td,.public-shell table tbody td{padding-top:12px!important;padding-bottom:12px!important;border-bottom:1px solid #edf0f4!important;vertical-align:middle}
.admin-workspace table tbody tr:hover,.public-shell table tbody tr:hover{background:#fff8f8!important}
.dataTables_wrapper .dataTables_paginate .paginate_button{border:0!important;border-radius:8px!important;padding:6px 11px!important}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#fff!important;background:var(--sb-cinema-2)!important}

/* Indicadores del dashboard */
.admin-workspace .grid>a[class*="border-l-4"]{border:1px solid var(--sb-line)!important;border-left:1px solid var(--sb-line)!important;border-radius:14px!important;box-shadow:0 4px 16px rgba(16,24,40,.055)!important;position:relative;overflow:hidden}
.admin-workspace .grid>a[class*="border-l-4"]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--sb-accent)}

/* Portal de consulta y cliente */
.public-shell main{align-items:center!important;padding-top:28px!important}
.public-shell .main-content-box{max-width:1280px!important}
.public-shell .main-content-box>div:first-child{border:1px solid var(--sb-line)!important;border-radius:16px!important;box-shadow:var(--sb-shadow)!important}
.public-shell .main-content-box>div:first-child h1,.public-shell .main-content-box>div:first-child h2{color:var(--sb-ink)!important}
.public-shell .platform-box{min-height:80px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(135deg,#171d27,#0a0e14)!important;box-shadow:0 8px 18px rgba(8,11,16,.12)}
.public-shell .platform-box:hover{transform:translateY(-2px);border-color:rgba(255,95,87,.5)}
.public-shell .platform-box.selected-platform,.public-shell .platform-box.bg-red-600{background:linear-gradient(135deg,#f0444e,#b91828)!important;box-shadow:0 10px 24px rgba(235,47,58,.24)!important}
.public-shell .logo-circle{background:#fff!important;box-shadow:0 4px 14px rgba(0,0,0,.13)}

/* Accesos */
.public-shell main>div[class*="max-w-2xl"],.public-shell main>div[class*="max-w-lg"]{overflow:hidden;padding:0!important;background:rgba(255,255,255,.97)!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:20px!important;box-shadow:0 24px 60px rgba(8,11,16,.16)!important}
.public-shell main>div[class*="max-w-2xl"]>h2{color:#fff!important;background:linear-gradient(135deg,var(--sb-cinema-2),#202836);padding:24px!important}
.public-shell main>div[class*="max-w-2xl"]>div>div:first-child{background:linear-gradient(150deg,#111722,#090d13);border-color:rgba(255,255,255,.08)!important}
.public-shell main>div[class*="max-w-2xl"]>div>div:first-child h2,.public-shell main>div[class*="max-w-2xl"]>div>div:first-child p{color:#fff!important}

/* Modales y pie */
#passwordChangeModal>div,.modal-content-container,.swal2-popup{border-radius:18px!important;border:1px solid var(--sb-line)!important;box-shadow:0 24px 70px rgba(8,11,16,.22)!important}
.admin-footer,.public-footer{height:46px!important;background:#080b10!important;border-top:1px solid rgba(255,255,255,.08);box-shadow:none!important}
.public-footer{height:52px!important}
.admin-footer a,.public-footer a{border-radius:999px!important;background:#16a765!important}
#mobile-menu{top:var(--sb-header-h)!important;background:rgba(11,15,22,.98)!important;border-color:rgba(255,255,255,.08)!important;backdrop-filter:blur(16px)}
.admin-sidebar ::-webkit-scrollbar{width:6px}.admin-sidebar ::-webkit-scrollbar-thumb{background:#343c48;border-radius:999px}

@media(max-width:1023px){
  .admin-sidebar{width:284px!important}.admin-workspace{margin-left:0!important}.admin-header>div:last-child{gap:2px!important}.public-header{padding-inline:16px!important}
}
@media(max-width:767px){
  :root{--sb-header-h:62px}body.public-shell{padding-bottom:58px!important}
  .admin-header>div:first-child>span:before,.public-header>span:first-child:before{width:30px;height:30px;margin-right:7px}
  .admin-header>div:first-child>span,.public-header>span:first-child{font-size:.92rem!important}
  .admin-workspace{padding-top:calc(var(--sb-header-h) + 12px)!important}.admin-workspace>div[class*="max-w"]{padding:12px!important;border-radius:12px!important}
  .public-shell main{padding:14px!important;padding-top:18px!important}.public-shell .main-content-box{gap:14px!important}
  .admin-footer,.public-footer{min-height:52px!important;height:auto!important;padding-block:7px!important}
  .dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none!important;text-align:center!important;margin:8px 0!important}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* =========================================================
   Panel administrativo Cobot | navegación limpia + resumen
   ========================================================= */
.admin-header>div:first-child>span:before{display:none!important;content:none!important}
.admin-brand-robot{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(42,149,255,.28))}
.admin-header>div:last-child>div:first-child{line-height:1.08!important}

.admin-sidebar-support{background:rgba(4,7,12,.3)}
.admin-sidebar-support>p{color:#707b8c!important;letter-spacing:.13em}
.admin-sidebar-support a{display:flex;min-height:40px;padding:9px 10px!important;border-radius:10px!important;color:#aeb6c3!important;font-size:.8rem;font-weight:600}
.admin-sidebar-support a:hover{color:#fff!important;background:rgba(255,255,255,.065)!important}
.admin-sidebar-support .admin-support-whatsapp i{color:#2ad477!important}

.admin-workspace>div.sb-dashboard{
  max-width:1380px!important;padding:0!important;background:transparent!important;
  border:0!important;border-radius:0!important;box-shadow:none!important
}
.sb-dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.sb-dashboard-heading h1{margin:0;color:var(--sb-ink);font-size:1.55rem;font-weight:800;letter-spacing:-.04em}
.sb-dashboard-heading p{margin:5px 0 0;color:var(--sb-muted);font-size:.8rem}
.sb-bot-status{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:8px 13px;border:1px solid #cfd7e3;border-radius:999px;background:#fff;color:#526071;font-size:.75rem;font-weight:700;white-space:nowrap}
.sb-bot-status.is-active{border-color:#b8ebd0;background:#ebfaf2;color:#167347}
.sb-bot-status.is-active span{width:8px;height:8px;border-radius:50%;background:#1dbf73;box-shadow:0 0 0 4px rgba(29,191,115,.12)}

.sb-dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.sb-dashboard-kpi{position:relative;min-height:122px;padding:18px;text-decoration:none;background:#fff;border:1px solid var(--sb-line);border-radius:15px;box-shadow:0 7px 22px rgba(16,24,40,.055);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.sb-dashboard-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--sb-accent)}
.sb-dashboard-kpi:hover{transform:translateY(-2px);border-color:#d4dbe5;box-shadow:0 12px 28px rgba(16,24,40,.09)}
.sb-dashboard-kpi .sb-kpi-icon{position:absolute;right:15px;top:15px;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#f3f6fa;color:#7d8999}
.sb-dashboard-kpi .sb-kpi-label{display:block;color:#687587;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.sb-dashboard-kpi strong{display:block;margin:8px 0 3px;color:var(--sb-ink);font-size:1.75rem;line-height:1;font-weight:800;letter-spacing:-.045em}
.sb-dashboard-kpi small{display:block;padding-right:32px;color:#7b8798;font-size:.68rem;line-height:1.35}
.sb-dashboard-kpi.is-warning:before{background:#f2b327}
.sb-dashboard-kpi.is-danger:before{background:#ed3b48}

.sb-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px}
.sb-dashboard-panel{display:flex;flex-direction:column;min-height:390px;padding:18px;background:#fff;border:1px solid var(--sb-line);border-radius:15px;box-shadow:0 7px 22px rgba(16,24,40,.05)}
.sb-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid #e9edf2}
.sb-panel-heading>div{display:flex;align-items:center;gap:9px}
.sb-panel-heading i{color:var(--sb-accent)}
.sb-panel-heading h2{margin:0;color:#273244;font-size:.85rem;font-weight:800}
.sb-panel-heading>span{color:#8590a0;font-size:.68rem}

.sb-platform-list{padding:7px 0}
.sb-platform-item{display:grid;grid-template-columns:minmax(130px,1fr) minmax(120px,2fr) 42px;align-items:center;gap:14px;padding:11px 2px;border-bottom:1px solid #eef1f5}
.sb-platform-item:last-child{border-bottom:0}
.sb-platform-name{display:flex;align-items:center;gap:9px;min-width:0}
.sb-platform-name span{width:31px;height:31px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#fff0f1;color:#da2531;font-size:.72rem;font-weight:800}
.sb-platform-name strong{overflow:hidden;color:#344054;font-size:.76rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.sb-platform-meter{height:8px;overflow:hidden;border-radius:999px;background:#edf0f4}
.sb-platform-meter span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ef3340,#ff6658)}
.sb-platform-count{text-align:right;color:#687587;font-size:.75rem;font-weight:700}
.sb-panel-link{align-self:flex-start;margin-top:auto;padding:8px 0!important;border:0!important;background:transparent!important;color:#d92734;font-size:.73rem;font-weight:800;box-shadow:none!important}
.sb-panel-link:hover{color:#aa1823;transform:none!important}
.sb-panel-link i{margin-left:5px;font-size:.65rem}

.sb-activity-group{padding-top:14px}
.sb-activity-group+ .sb-activity-group{margin-top:3px;padding-top:14px;border-top:1px solid #edf0f4}
.sb-activity-group h3{margin:0 0 7px;color:#7a8697;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.sb-activity-item{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 3px!important;border:0!important;border-radius:9px;background:transparent!important;text-align:left;box-shadow:none!important}
.sb-activity-item:hover{background:#f7f9fb!important;transform:none!important}
.sb-activity-dot{width:8px;height:8px;border-radius:50%;background:#ef3340;box-shadow:0 0 0 4px rgba(239,51,64,.1)}
.sb-activity-dot.is-warning{background:#f1b627;box-shadow:0 0 0 4px rgba(241,182,39,.12)}
.sb-activity-item>span:nth-child(2){min-width:0}
.sb-activity-item strong{display:block;overflow:hidden;color:#344054;font-size:.71rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.sb-activity-item small{display:block;margin-top:2px;color:#8a94a4;font-size:.63rem}
.sb-activity-item time{color:#a06d00;font-size:.68rem;font-style:normal;font-weight:800}
.sb-activity-item em{max-width:92px;overflow:hidden;padding:3px 7px;border-radius:999px;background:#edf3ff;color:#41659a;font-size:.61rem;font-style:normal;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.sb-activity-empty{margin:0;padding:10px 2px;color:#8490a0;font-size:.72rem}
.sb-activity-empty i{margin-right:5px;color:#20a96b}
.sb-dashboard-empty{display:grid;place-items:center;min-height:220px;color:#8a95a5;text-align:center}
.sb-dashboard-empty i{font-size:2rem;color:#cbd2dc}
.sb-dashboard-empty p{margin-top:-60px;font-size:.76rem}

@media(max-width:1180px){
  .sb-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-dashboard-grid{grid-template-columns:1fr}
  .sb-dashboard-panel{min-height:0}
}
@media(max-width:767px){
  .admin-brand-robot{width:38px;height:38px}
  .sb-dashboard-heading{align-items:flex-start}
  .sb-dashboard-heading h1{font-size:1.25rem}
  .sb-dashboard-kpis{gap:10px}
  .sb-dashboard-kpi{min-height:110px;padding:15px}
  .sb-platform-item{grid-template-columns:minmax(105px,1fr) minmax(80px,1.5fr) 34px;gap:8px}
}
@media(max-width:479px){
  .sb-dashboard-kpis{grid-template-columns:1fr}
  .sb-bot-status{font-size:0;width:36px;height:36px;padding:0;justify-content:center}
  .sb-bot-status.is-active span{margin:0}
  .sb-dashboard-panel{padding:14px}
}

/* Correcciones de contraste solicitadas para todas las tablas */
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.dataTables_wrapper .dataTables_paginate span .paginate_button.current,
.dataTables_wrapper .dataTables_paginate span .paginate_button.current:hover{
  display:inline-flex!important;align-items:center;justify-content:center!important;
  min-width:36px!important;min-height:36px!important;padding:6px 11px!important;
  color:#fff!important;background:#111722!important;border:1px solid #111722!important;
  font-weight:800!important;line-height:1!important;text-shadow:none!important
}
.dataTables_wrapper .dataTables_paginate .paginate_button:not(.current){
  display:inline-flex!important;align-items:center;justify-content:center!important;
  min-width:34px!important;min-height:34px!important;color:#526071!important
}
.dataTables_wrapper .dataTables_paginate{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:3px!important}

/* Botones de eliminación coherentes y con tachito blanco visible */
.admin-workspace .sb-delete-action{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:34px!important;min-height:34px!important;padding:8px!important;
  border:0!important;border-radius:9px!important;color:#fff!important;
  background:linear-gradient(135deg,#f0444e,#c91f2b)!important;
  box-shadow:0 5px 13px rgba(235,47,58,.22)!important
}
.admin-workspace .sb-delete-action i,
.admin-workspace .sb-delete-action .fa-trash,
.admin-workspace .sb-delete-action .fa-trash-alt{
  color:#fff!important;opacity:1!important;filter:none!important;text-shadow:0 1px 1px rgba(0,0,0,.16)!important
}
.admin-workspace .sb-delete-action:hover{filter:brightness(.94)!important;transform:translateY(-1px)!important}

@media(max-width:767px){
  .dataTables_wrapper .dataTables_paginate{justify-content:center!important;flex-wrap:wrap!important}
}
