/* Empyreon Identity: interfaz compartida con cualquier tema.
   Los colores se adaptan a las variables de diseño, con contraste de seguridad. */
.emp-account-guest{
  position:relative!important;
  z-index:25!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  padding:7px!important;
  border:1px solid rgba(177,193,229,.48)!important;
  border-radius:16px!important;
  background:rgba(8,15,29,.96)!important;
  color:#f5f9ff!important;
  box-shadow:0 8px 28px rgba(0,0,0,.42)!important;
  font:700 15px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.emp-account-guest a.emp-account-guest-link{
  box-sizing:border-box!important;
  display:inline-flex!important;
  min-height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(164,191,227,.65)!important;
  border-radius:10px!important;
  padding:10px 17px!important;
  background:#1d2a41!important;
  color:#fff!important;
  font:750 15px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:normal!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  white-space:nowrap!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1)!important;
}
.emp-account-guest a.emp-account-guest-register{
  color:#161f2b!important;
  background:linear-gradient(135deg,#f4dfb8,#dcb375)!important;
  border-color:#f7e2bb!important;
}
.emp-account-guest a:hover,
.emp-account-guest a:focus-visible{
  filter:brightness(1.1)!important;
  outline:3px solid #9dd9ff!important;
  outline-offset:2px!important;
}
.emp-account-cluster .emp-account-menu,
.emp-account-cluster .emp-account-notifications,
.emp-account-cluster .emp-account-friend-states{
  z-index:11!important;
}
.emp-account-cluster .emp-account-trigger{
  gap:6px!important;
  color:#fff!important;
  cursor:pointer!important;
  text-shadow:0 1px 4px #000!important;
}
.emp-account-cluster .emp-account-visible-name{
  display:block!important;
  position:relative!important;
  z-index:4!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  padding:6px 6px!important;
  border-radius:10px!important;
  background:rgba(6,11,23,.88)!important;
  color:#fff!important;
  font:750 13px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  pointer-events:none!important;
}
.emp-account-cluster .emp-account-avatar-shell{
  flex:0 0 auto!important;
}
.emp-account-cluster .emp-account-trigger:focus-visible{
  outline:3px solid #9dd9ff!important;
  outline-offset:3px!important;
}
.emp-account-cluster .emp-account-dropdown{
  color:#f6f9ff!important;
  background:#111c2e!important;
  border:1px solid #5c7296!important;
  min-width:256px!important;
  box-shadow:0 18px 55px rgba(0,0,0,.52)!important;
  max-width:min(360px,calc(100vw - 20px))!important;
}
.emp-account-cluster .emp-account-dropdown .emp-account-dropdown-identity{
  display:block!important;
  padding:10px 12px 13px!important;
  margin-bottom:6px!important;
  border-bottom:1px solid #445879!important;
  color:#fff!important;
  font:750 15px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  overflow-wrap:anywhere!important;
}
.emp-account-cluster .emp-account-dropdown .emp-account-dropdown-identity small{
  display:block!important;
  margin-top:2px!important;
  font:500 12px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#d1dbed!important;
}
.emp-account-cluster .emp-account-dropdown a,
.emp-account-cluster .emp-account-dropdown a:visited{
  color:#f5f9ff!important;
  min-height:40px!important;
}
.emp-account-cluster .emp-account-dropdown a:hover,
.emp-account-cluster .emp-account-dropdown a:focus-visible{
  background:#293c59!important;
  outline:2px solid #9dd9ff!important;
  outline-offset:-2px!important;
}
@media(max-width:620px){
 .emp-account-guest{gap:6px!important;padding:6px!important;border-radius:12px!important}
 .emp-account-guest a.emp-account-guest-link{min-height:40px!important;padding:8px 11px!important;font-size:13px!important}
 .emp-account-cluster .emp-account-visible-name{font-size:11px!important;padding:6px 3px!important}
}
@media(prefers-reduced-motion:reduce){
 .emp-account-guest a,.emp-account-cluster .emp-account-trigger{transition:none!important}
}

/* Campana de notificaciones: visibilidad sobre cabeceras con banner personalizado. */
.emp-account-cluster .emp-account-notifications,
.emp-account-cluster .emp-account-notifications .notif-floating{
  isolation:isolate!important;
  overflow:visible!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger{
  position:relative!important;
  z-index:20!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  min-width:42px!important;
  min-height:42px!important;
  border:2px solid #dceeff!important;
  border-radius:999px!important;
  padding:7px!important;
  background:#172640!important;
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
  box-shadow:0 2px 12px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.2)!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger svg{
  display:block!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  color:#fff!important;
  fill:#fff!important;
  stroke:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 1px 2px #000)!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger svg path{
  fill:#fff!important;
  opacity:1!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger:hover,
.emp-account-cluster .emp-account-notifications .notif-trigger:focus-visible{
  background:#254a73!important;
  outline:3px solid #94d8ff!important;
  outline-offset:2px!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger[aria-expanded="true"]{
  border-color:#8fddff!important;
  background:#24527b!important;
}
.emp-account-cluster .emp-account-notifications .notif-badge{
  z-index:21!important;
  background:#b91c1c!important;
  color:#fff!important;
  border-color:#101b2e!important;
  opacity:1!important;
}
/* Herramientas de cuenta: iconos visibles y controles compactos sobre el banner. */
.emp-account-cluster .emp-account-notifications .notif-floating{display:grid!important;place-items:center!important}
.emp-account-cluster .emp-account-notifications .notif-trigger{
 width:min(var(--emp-account-tools-size,38px),100%)!important;height:auto!important;
 min-width:0!important;min-height:0!important;max-width:38px!important;max-height:38px!important;
 aspect-ratio:1!important;flex:none!important;align-self:center!important;justify-self:center!important;
 padding:7px!important;border-width:1px!important;border-radius:50%!important;
 box-shadow:0 2px 6px rgb(0 0 0 / .4)!important;
}
.emp-account-cluster .emp-account-notifications .notif-trigger svg{
 width:20px!important;height:20px!important;min-width:0!important;min-height:0!important;flex:none!important;
}
.emp-account-cluster .emp-account-friend-states-icon{
 display:grid!important;place-items:center!important;width:22px!important;height:22px!important;
 min-width:22px!important;line-height:1!important;pointer-events:none!important;
}
.emp-account-cluster .emp-account-friend-states-icon svg{
 display:block!important;width:22px!important;height:22px!important;max-width:none!important;
 fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
 stroke-linecap:round!important;stroke-linejoin:round!important;opacity:1!important;visibility:visible!important;
}
.emp-account-cluster .emp-account-friend-states.is-empty{color:#e2e8f0!important;background:#172640!important;border:1px solid #6e88ac!important}
.emp-account-cluster .emp-account-friend-states.is-empty .emp-account-friend-states-icon{color:#e2e8f0!important}
.emp-account-cluster .emp-account-friend-states:focus-visible{outline:3px solid #9dd9ff!important;outline-offset:2px!important}
.emp-account-cluster .emp-account-menu-indicator{
 display:block!important;flex:0 0 10px!important;width:10px!important;height:10px!important;
 fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;
 stroke-linejoin:round!important;pointer-events:none!important;
}
.emp-account-cluster .emp-account-trigger[aria-expanded="true"] .emp-account-menu-indicator{transform:rotate(180deg)}
.admin-accesos-moderno .emp-account-cluster{--emp-account-tools-size:36px;--emp-account-flow-width:224px;--emp-account-flow-height:52px;--emp-account-flow-avatar:36px}
.emp-sitio[data-emp-builder-context="home"] .emp-cabecera .emp-account-cluster{--emp-account-tools-size:38px;--emp-account-flow-width:240px;--emp-account-flow-height:66px;--emp-account-flow-avatar:44px}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster{
 box-sizing:border-box!important;display:inline-grid!important;
 grid-template-columns:var(--emp-account-tools-size) var(--emp-account-tools-size) minmax(0,1fr)!important;
 grid-template-rows:minmax(0,1fr)!important;align-items:center!important;gap:6px!important;
 width:var(--emp-account-flow-width)!important;min-width:var(--emp-account-flow-width)!important;max-width:var(--emp-account-flow-width)!important;
 height:var(--emp-account-flow-height)!important;padding:5px!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-notifications{
 position:relative!important;inset:auto!important;grid-column:1!important;grid-row:1!important;
 display:grid!important;place-items:center!important;width:100%!important;min-width:0!important;height:100%!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-notifications .notif-trigger{width:var(--emp-account-tools-size)!important;height:var(--emp-account-tools-size)!important}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-notifications .notif-floating{
 width:100%!important;height:100%!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-friend-states{
 position:relative!important;inset:auto!important;transform:none!important;grid-column:2!important;grid-row:1!important;
 width:var(--emp-account-tools-size)!important;height:var(--emp-account-tools-size)!important;
 min-width:0!important;border-radius:50%!important;z-index:12!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-menu{
 position:relative!important;inset:auto!important;grid-column:3!important;grid-row:1!important;
 width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;align-items:center!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-trigger{
 box-sizing:border-box!important;width:100%!important;height:100%!important;min-height:0!important;
 padding:0!important;gap:6px!important;justify-content:center!important;
}
:is(.admin-accesos-moderno,.emp-sitio[data-emp-builder-context="home"] .emp-cabecera) .emp-account-cluster .emp-account-avatar-shell{
 width:var(--emp-account-flow-avatar)!important;height:var(--emp-account-flow-avatar)!important;min-width:var(--emp-account-flow-avatar)!important;
}
@media(max-width:760px){
 .emp-sitio[data-emp-builder-context="home"] .emp-cabecera .emp-account-cluster{--emp-account-tools-size:34px;--emp-account-flow-width:208px;--emp-account-flow-height:54px;--emp-account-flow-avatar:36px}
 .admin-accesos-moderno .emp-account-cluster{--emp-account-tools-size:34px;--emp-account-flow-width:208px;--emp-account-flow-height:52px;--emp-account-flow-avatar:34px}
}
.emp-sms-integrado{padding:0!important;overflow:visible!important}
.emp-sms-integrado .pk-body{padding:24px;align-items:start;gap:28px}
.emp-sms-integrado .pk-title{font-size:clamp(30px,3.4vw,50px);line-height:1.12}
.emp-sms-integrado .pk-main,.emp-sms-integrado .pk-side{min-width:0}
@media(max-width:850px){.emp-sms-integrado .pk-body{grid-template-columns:1fr;padding:18px}}


/* Base responsive account layout: artwork remains owned by each visual package. */
@media(max-width:780px){
 .emp-sitio .emp-utility-account{justify-self:stretch;width:100%;max-width:100%;min-width:0;display:block;box-sizing:border-box}
 .emp-sitio .emp-utility-account .emp-account-cluster{--emp-account-tools-size:44px;--emp-account-flow-height:70px;--emp-account-flow-avatar:48px;display:grid!important;grid-template-columns:var(--emp-account-tools-size) var(--emp-account-tools-size) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;gap:7px!important;align-items:center!important;width:100%!important;min-width:0!important;max-width:100%!important;height:var(--emp-account-flow-height)!important;padding:8px!important;box-sizing:border-box}
 .emp-sitio .emp-utility-account .emp-account-notifications{grid-column:1!important;grid-row:1!important;position:relative!important;inset:auto!important;display:grid!important;place-items:center!important;width:var(--emp-account-tools-size)!important;height:100%!important;min-width:0!important}
 .emp-sitio .emp-utility-account .notif-floating{display:grid!important;place-items:center!important;width:100%!important;height:100%!important}
 .emp-sitio .emp-utility-account .notif-trigger{width:var(--emp-account-tools-size)!important;height:var(--emp-account-tools-size)!important;min-width:44px!important;min-height:44px!important;max-width:none!important;max-height:none!important;padding:10px!important;box-sizing:border-box}
 .emp-sitio .emp-utility-account .emp-account-friend-states{grid-column:2!important;grid-row:1!important;position:relative!important;inset:auto!important;transform:none!important;display:grid!important;place-items:center!important;width:var(--emp-account-tools-size)!important;height:var(--emp-account-tools-size)!important;min-width:44px!important;padding:9px!important;box-sizing:border-box;border-radius:50%!important;overflow:visible!important}
 .emp-sitio .emp-utility-account .emp-account-friend-states-icon,.emp-sitio .emp-utility-account .emp-account-friend-states-icon svg{display:block!important;width:24px!important;height:24px!important;min-width:24px!important;max-width:none!important}
 .emp-sitio .emp-utility-account .emp-account-friend-states-count{top:-4px!important;right:-4px!important;min-width:18px!important;height:18px!important;font-size:10px!important}
 .emp-sitio .emp-utility-account .emp-account-menu{grid-column:3!important;grid-row:1!important;position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important}
 .emp-sitio .emp-utility-account .emp-account-trigger{width:100%!important;max-width:100%!important;height:100%!important;min-height:0!important;padding:0!important;gap:6px!important;justify-content:flex-end!important}
 .emp-sitio .emp-utility-account .emp-account-visible-name{font-size:13px!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 5px!important}
 .emp-sitio .emp-utility-account .emp-account-avatar-shell{width:var(--emp-account-flow-avatar)!important;height:var(--emp-account-flow-avatar)!important;min-width:var(--emp-account-flow-avatar)!important}
 .emp-sitio .emp-utility-account .emp-account-guest{display:flex;width:100%;box-sizing:border-box;flex-wrap:wrap;gap:8px}
 .emp-sitio .emp-utility-account .emp-account-guest-link{flex:1 1 auto;min-height:44px;display:flex;justify-content:center;align-items:center}
}

