
/* V5.8.9.2.4 · Gestión de permisos separada de Configuración */

/* Navegación aprobada */
.app.cleanPersonalMode58911 .menuEdge{display:flex!important;visibility:visible!important;opacity:1!important}
.cleanGlobalNav58911{display:flex!important;gap:7px!important;align-items:center!important;margin-left:8px!important}
.cleanGlobalNav58911 [data-clean-dashboard]{display:none!important}
.cleanGlobalNav58911 [data-clean-profile]{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.cleanGlobalNav58911 [data-clean-profile]{
  min-height:38px!important;padding:0 13px!important;border-radius:10px!important;
  border:1px solid rgba(90,220,248,.28)!important;
  background:linear-gradient(180deg,rgba(18,84,122,.94),rgba(8,54,83,.94))!important;
  color:#f2fbff!important;font-size:9px!important;font-weight:900!important
}
.cleanGlobalNav58911 [data-clean-profile].active{
  border-color:rgba(79,225,255,.60)!important;
  background:linear-gradient(180deg,rgba(20,142,181,.96),rgba(9,97,132,.96))!important
}

/* La vieja matriz se mantiene fuera de la prueba */
#configuracion .roleAdminPanel.ownerOnlyConfig{display:none!important}

/* ---------- TARJETA SIMPLE EN CONFIGURACIÓN ---------- */
.permissionLauncher58924{
  display:none;
  margin:12px 0 16px;
  padding:15px 16px;
  border-radius:15px;
  border:1px solid rgba(90,220,248,.15);
  background:linear-gradient(180deg,rgba(11,45,74,.96),rgba(7,31,53,.96));
}
.permissionLauncher58924.visible{display:flex!important;align-items:center;justify-content:space-between;gap:16px}
.permissionLauncher58924 h3{margin:0;color:#f3fbff;font-size:15px}
.permissionLauncher58924 p{margin:5px 0 0;color:#87a4b2;font-size:9px;line-height:1.45}
.permissionLauncher58924 .ownerOnly{
  display:inline-flex;margin-top:8px;padding:4px 7px;border-radius:999px;
  border:1px solid rgba(82,229,165,.20);background:rgba(82,229,165,.05);
  color:#72dfaf;font-size:7px;font-weight:900
}
.permissionLauncher58924 button{
  min-height:39px;padding:0 14px;border-radius:9px;cursor:pointer;white-space:nowrap;
  border:1px solid rgba(45,216,251,.48);
  background:linear-gradient(180deg,#108ab5,#087292);
  color:#fff;font-size:8px;font-weight:900
}

/* ---------- PANTALLA DE GESTIÓN ---------- */
.permissionManagerOverlay58924{
  position:fixed;inset:0;z-index:100200;display:none;
  background:rgba(1,8,14,.76);backdrop-filter:none;
  padding:22px;
}
.permissionManagerOverlay58924.open{display:grid;place-items:center}
.permissionManagerWindow58924{
  width:min(1180px,96vw);height:min(860px,93vh);
  display:grid;grid-template-rows:auto 1fr;
  overflow:hidden;border-radius:18px;
  border:1px solid rgba(90,220,248,.22);
  background:linear-gradient(180deg,#0a3151,#071f35);
  box-shadow:0 24px 80px rgba(0,0,0,.48)
}
.permissionManagerHead58924{
  display:flex;justify-content:space-between;align-items:center;gap:15px;
  padding:14px 16px;border-bottom:1px solid rgba(90,220,248,.13);
  background:rgba(10,42,70,.96)
}
.permissionManagerHead58924 .left{display:flex;align-items:center;gap:11px}
.permissionManagerBack58924{
  min-height:36px;padding:0 11px;border-radius:9px;cursor:pointer;
  border:1px solid rgba(90,220,248,.20);background:rgba(10,59,89,.70);
  color:#eaf9fd;font-size:8px;font-weight:900
}
.permissionManagerHead58924 h2{margin:0;color:#f4fbff;font-size:18px}
.permissionManagerHead58924 p{margin:3px 0 0;color:#819fac;font-size:8px}
.permissionManagerBadge58924{
  padding:5px 8px;border-radius:999px;border:1px solid rgba(82,229,165,.22);
  background:rgba(82,229,165,.05);color:#70e1ae;font-size:7px;font-weight:900
}
.permissionManagerBody58924{overflow:auto;padding:16px}
.simpleToolbar58923{
  display:grid;grid-template-columns:minmax(240px,360px) 1fr auto;gap:10px;align-items:end;
  padding:12px;margin-bottom:12px;border-radius:13px;background:rgba(3,23,40,.48);
  border:1px solid rgba(90,220,248,.09)
}
.simpleField58923 label{display:block;margin-bottom:5px;color:#809ead;font-size:8px;font-weight:800;text-transform:uppercase}
.simpleField58923 select{
  width:100%;min-height:39px;padding:0 10px;border-radius:9px;border:1px solid rgba(90,220,248,.14);
  background:#071f35;color:#edf9fd;font:inherit
}
.simpleWho58923 b{display:block;color:#effaff;font-size:11px}
.simpleWho58923 small{display:block;margin-top:3px;color:#7f9eac;font-size:8px}
.simpleTest58923,.simpleSave58923{
  min-height:39px;padding:0 13px;border-radius:9px;cursor:pointer;border:1px solid rgba(45,216,251,.48);
  background:linear-gradient(180deg,#108ab5,#087292);color:#fff;font-size:8px;font-weight:900
}
.simpleRules58923{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:11px}
.simpleRule58923{
  padding:5px 8px;border-radius:999px;border:1px solid rgba(255,190,94,.14);
  background:rgba(255,190,94,.045);color:#c7ae84;font-size:7px
}
.simpleGrid58923{overflow:hidden;border-radius:13px;border:1px solid rgba(90,220,248,.12);background:rgba(4,24,41,.42)}
.simpleHeader58923,.simpleRow58923{display:grid;grid-template-columns:minmax(280px,1fr) 104px 104px;align-items:center}
.simpleHeader58923{min-height:38px;padding:0 13px;background:rgba(15,65,99,.54);border-bottom:1px solid rgba(90,220,248,.11)}
.simpleHeader58923 div{font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#7f9dac;text-align:center}
.simpleHeader58923 div:first-child{text-align:left}
.simpleRow58923{min-height:59px;padding:7px 13px;border-bottom:1px solid rgba(255,255,255,.045)}
.simpleRow58923:last-child{border-bottom:0}
.simpleRow58923:hover{background:rgba(35,211,255,.025)}
.simpleName58923{padding-right:14px}
.simpleName58923 b{display:block;color:#edf9fd;font-size:10px}
.simpleName58923 small{display:block;margin-top:3px;color:#7897a6;font-size:8px;line-height:1.35}
.simpleCell58923{display:flex;align-items:center;justify-content:center}
.simpleLock58923{
  display:inline-flex;margin-left:6px;padding:3px 6px;border-radius:999px;border:1px solid rgba(255,190,94,.18);
  background:rgba(255,190,94,.05);color:#cfaf77;font-size:6px;vertical-align:middle
}

/* switches */
.s360Switch58923{position:relative;display:inline-block!important;width:49px;height:28px;cursor:pointer;margin:0!important}
.s360Switch58923 input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none}
.s360SwitchTrack58923{
  position:absolute;inset:0;border-radius:999px;background:#263f50;border:1px solid rgba(255,255,255,.10);transition:.18s ease
}
.s360SwitchTrack58923::after{
  content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;
  background:#a6b7c0;box-shadow:0 1px 4px rgba(0,0,0,.28);transition:.18s ease
}
.s360Switch58923 input:checked + .s360SwitchTrack58923{background:#26b96f;border-color:rgba(82,229,165,.60)}
.s360Switch58923 input:checked + .s360SwitchTrack58923::after{transform:translateX(21px);background:#f7fff9}
.s360Switch58923 input:disabled + .s360SwitchTrack58923{opacity:.34}
.s360Switch58923:has(input:disabled){cursor:not-allowed}

.simpleCritical58923{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:11px}
.simpleCriticalBox58923{padding:11px 12px;border-radius:12px;border:1px solid rgba(90,220,248,.10);background:rgba(4,24,41,.42)}
.simpleCriticalBox58923 .line{display:flex;justify-content:space-between;align-items:center;gap:12px}
.simpleCriticalBox58923 b{font-size:10px;color:#edf9fd}.simpleCriticalBox58923 small{display:block;margin-top:3px;color:#7898a8;font-size:8px}
.simpleCriticalBox58923.locked{opacity:.52}
.simpleFoot58923{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}
.simpleSaved58923{color:#6fe4af;font-size:8px;opacity:0}.simpleSaved58923.show{opacity:1}

/* Sidebar / sólo lectura
   Los módulos bloqueados NO se tapan: la rueda se mantiene limpia.
   Sólo aparece un candado pequeño sobre el sector y se desactiva su hotspot. */
.permissionLockBadge58925{
  position:absolute!important;
  z-index:60!important;
  width:27px!important;
  height:27px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  transform:translate(-50%,-50%)!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  background:rgba(6,35,54,.92)!important;
  border:1px solid rgba(87,221,247,.42)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.32),0 0 0 2px rgba(5,25,40,.52)!important;
  color:#dff9ff!important;
  font-size:11px!important;
  line-height:1!important;
  transition:.14s ease!important;
}
.permissionLockBadge58925:hover{
  transform:translate(-50%,-50%) scale(1.08)!important;
  border-color:rgba(110,235,255,.72)!important;
  background:rgba(8,58,82,.96)!important;
}
.permissionLockToast58925{
  position:fixed!important;
  right:20px!important;
  bottom:20px!important;
  z-index:100260!important;
  max-width:320px!important;
  padding:11px 13px!important;
  border-radius:11px!important;
  border:1px solid rgba(90,220,248,.18)!important;
  background:rgba(5,31,50,.97)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.34)!important;
  color:#e7f8fd!important;
  font-size:9px!important;
  line-height:1.45!important;
  opacity:0!important;
  transform:translateY(8px)!important;
  pointer-events:none!important;
  transition:.18s ease!important;
}
.permissionLockToast58925.show{
  opacity:1!important;
  transform:translateY(0)!important;
}
.permissionLockToast58925 b{color:#77e7fb!important}
.permissionReadonly58923{
  margin:0 0 10px;padding:8px 10px;border-radius:9px;border:1px solid rgba(255,190,94,.18);
  background:rgba(255,190,94,.055);color:#cdb185;font-size:8px
}
.permissionDisabled58923{opacity:.42!important;filter:saturate(.55)!important;cursor:not-allowed!important}

/* ---------- PANEL GENERAL CUANDO OBRAS = OFF ---------- */
.permissionPanelLock58924{
  display:grid;place-items:center;min-height:285px;padding:34px;
  border:1px solid rgba(90,220,248,.14);border-radius:18px;
  background:radial-gradient(circle at 50% 5%,rgba(27,130,174,.13),transparent 45%),
             linear-gradient(180deg,rgba(10,40,68,.96),rgba(6,28,48,.96));
  text-align:center
}
.permissionPanelLock58924 .inner{max-width:500px}
.permissionPanelLockIcon58924{
  width:54px;height:54px;border-radius:16px;display:grid;place-items:center;margin:0 auto 14px;
  border:1px solid rgba(90,220,248,.19);background:rgba(16,78,111,.38);
  color:#70e1f4;font-size:22px
}
.permissionPanelLock58924 h3{margin:0;color:#f2faff;font-size:18px}
.permissionPanelLock58924 p{margin:8px auto 0;color:#88a5b3;font-size:10px;line-height:1.55}
.permissionPanelLock58924 button{
  margin-top:15px;min-height:38px;padding:0 14px;border-radius:9px;cursor:pointer;
  border:1px solid rgba(45,216,251,.44);background:linear-gradient(180deg,#108bb6,#087494);
  color:#fff;font-size:8px;font-weight:900
}
.permissionRequestDone58924{display:none;margin-top:10px;color:#70e1ad;font-size:9px;font-weight:800}
.permissionRequestDone58924.show{display:block}

@media(max-width:820px){
  .permissionManagerOverlay58924{padding:8px}
  .permissionManagerWindow58924{width:100%;height:96vh}
  .simpleToolbar58923{grid-template-columns:1fr}
  .simpleHeader58923,.simpleRow58923{grid-template-columns:minmax(180px,1fr) 78px 78px}
  .simpleCritical58923{grid-template-columns:1fr}
  .permissionLauncher58924.visible{align-items:flex-start;flex-direction:column}
}
