/* Legal Works pruebas theme layout lock v177.
   Color de dashboard en pruebas sin tocar login ni funcionalidad. */

html[data-lw-theme-engine="on"] {
  color-scheme: dark;
  --lw-app-bg: #020a14;
  --lw-page-bg: #04101f;
  --lw-sidebar-bg: rgba(3, 14, 28, .96);
  --lw-header-bg: rgba(3, 13, 26, .96);
  --lw-surface: rgba(7, 24, 45, .86);
  --lw-surface-strong: rgba(8, 29, 56, .96);
  --lw-card-bg: rgba(8, 25, 48, .80);
  --lw-card-bg-soft: rgba(9, 31, 58, .60);
  --lw-text: #f4f8ff;
  --lw-text-muted: #b8cbe4;
  --lw-primary: #18c8ff;
  --lw-primary-rgb: 24, 200, 255;
  --lw-success: #00f078;
  --lw-warning: #ffb23e;
  --lw-danger: #ff4e65;
  --lw-border: rgba(83, 205, 255, .30);
  --lw-border-strong: rgba(76, 217, 255, .70);
  --lw-glow: 0 0 22px rgba(var(--lw-primary-rgb), .30);
  --lw-hero-image: url("lw-theme-assets/hero-blue.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(2, 9, 20, .86) 0%, rgba(2, 9, 20, .40) 36%, rgba(2, 9, 20, .08) 72%, rgba(2, 9, 20, .82) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(6, 19, 37, .96), rgba(4, 13, 27, .98));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .46);
}

html[data-theme="legalworks-light"][data-lw-theme-engine="on"] {
  color-scheme: light;
  --lw-app-bg: #f6fbff;
  --lw-page-bg: #ffffff;
  --lw-sidebar-bg: rgba(255, 255, 255, .96);
  --lw-header-bg: rgba(255, 255, 255, .96);
  --lw-surface: rgba(255, 255, 255, .94);
  --lw-surface-strong: rgba(255, 255, 255, .99);
  --lw-card-bg: rgba(255, 255, 255, .92);
  --lw-card-bg-soft: rgba(245, 250, 255, .88);
  --lw-text: #071832;
  --lw-text-muted: #526b89;
  --lw-primary: #087bff;
  --lw-primary-rgb: 8, 123, 255;
  --lw-border: rgba(28, 128, 255, .22);
  --lw-border-strong: rgba(22, 130, 255, .52);
  --lw-glow: 0 0 20px rgba(var(--lw-primary-rgb), .18);
  --lw-hero-image: url("lw-theme-assets/hero-light.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.58) 35%, rgba(255,255,255,.08) 72%, rgba(255,255,255,.92) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(255,255,255,.97), rgba(239,247,255,.99));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .32);
}

html[data-theme="legalworks-emerald"][data-lw-theme-engine="on"] {
  --lw-app-bg: #07100f;
  --lw-page-bg: #071211;
  --lw-sidebar-bg: rgba(8, 17, 16, .96);
  --lw-header-bg: rgba(7, 16, 15, .96);
  --lw-surface: rgba(13, 27, 25, .86);
  --lw-card-bg: rgba(14, 29, 27, .80);
  --lw-card-bg-soft: rgba(12, 38, 34, .62);
  --lw-text: #ecfffb;
  --lw-text-muted: #a8c8c0;
  --lw-primary: #23f0c0;
  --lw-primary-rgb: 35, 240, 192;
  --lw-border: rgba(35, 240, 192, .25);
  --lw-border-strong: rgba(35, 240, 192, .62);
  --lw-hero-image: url("lw-theme-assets/hero-emerald.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(5, 12, 11, .90) 0%, rgba(5, 12, 11, .44) 38%, rgba(5, 12, 11, .10) 74%, rgba(5, 12, 11, .84) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(9, 27, 24, .96), rgba(5, 15, 14, .98));
}

html[data-theme="legalworks-gold"][data-lw-theme-engine="on"] {
  --lw-app-bg: #0d0b07;
  --lw-page-bg: #100d08;
  --lw-sidebar-bg: rgba(15, 12, 8, .96);
  --lw-header-bg: rgba(15, 12, 8, .96);
  --lw-surface: rgba(29, 23, 13, .86);
  --lw-card-bg: rgba(31, 25, 14, .80);
  --lw-card-bg-soft: rgba(51, 38, 16, .62);
  --lw-text: #fff8e8;
  --lw-text-muted: #d5c295;
  --lw-primary: #ffd15b;
  --lw-primary-rgb: 255, 209, 91;
  --lw-border: rgba(255, 209, 91, .24);
  --lw-border-strong: rgba(255, 209, 91, .62);
  --lw-hero-image: url("lw-theme-assets/hero-gold.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(9, 7, 4, .92) 0%, rgba(9, 7, 4, .46) 38%, rgba(9, 7, 4, .12) 74%, rgba(9, 7, 4, .86) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(35, 26, 12, .96), rgba(15, 11, 7, .98));
}

html[data-theme="legalworks-violet"][data-lw-theme-engine="on"] {
  --lw-app-bg: #09061b;
  --lw-page-bg: #0b0721;
  --lw-sidebar-bg: rgba(13, 7, 33, .96);
  --lw-header-bg: rgba(12, 7, 31, .96);
  --lw-surface: rgba(25, 13, 59, .86);
  --lw-card-bg: rgba(27, 16, 65, .80);
  --lw-card-bg-soft: rgba(43, 22, 92, .62);
  --lw-text: #fbf7ff;
  --lw-text-muted: #c8b5e9;
  --lw-primary: #d34cff;
  --lw-primary-rgb: 211, 76, 255;
  --lw-border: rgba(211, 76, 255, .28);
  --lw-border-strong: rgba(211, 76, 255, .66);
  --lw-hero-image: url("lw-theme-assets/hero-violet.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(8, 5, 26, .92) 0%, rgba(8, 5, 26, .46) 38%, rgba(8, 5, 26, .10) 74%, rgba(8, 5, 26, .86) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(24, 13, 58, .96), rgba(13, 7, 33, .98));
}

html:not([data-lw-route="home"]) .lw-theme-selector {
  display: none !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] body,
html[data-lw-route="home"][data-lw-theme-engine="on"] app-root,
html[data-lw-route="home"][data-lw-theme-engine="on"] app-pages,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer-container,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer-content,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav-content,
html[data-lw-route="home"][data-lw-theme-engine="on"] router-outlet + *,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root {
  background: var(--lw-app-bg) !important;
  color: var(--lw-text) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host > *,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer {
  background: var(--lw-sidebar-bg) !important;
  color: var(--lw-text) !important;
  border-color: var(--lw-border) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host *,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav *,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer * {
  visibility: visible !important;
  opacity: 1 !important;
  text-shadow: none;
  -webkit-text-fill-color: currentColor !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host a,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host button,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host span,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host p,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host div,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav a,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav button,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav span,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav p,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav div,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer a,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer button,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer span,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer p,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer div {
  color: var(--lw-text) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host mat-icon,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav mat-icon,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer mat-icon,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-sidebar-host i,
html[data-lw-route="home"][data-lw-theme-engine="on"] mat-sidenav i,
html[data-lw-route="home"][data-lw-theme-engine="on"] .mat-drawer i {
  color: var(--lw-primary) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] header,
html[data-lw-route="home"][data-lw-theme-engine="on"] app-header,
html[data-lw-route="home"][data-lw-theme-engine="on"] .topbar,
html[data-lw-route="home"][data-lw-theme-engine="on"] .header {
  background: var(--lw-header-bg) !important;
  color: var(--lw-text) !important;
  border-color: var(--lw-border) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host {
  background-image: var(--lw-hero-overlay), var(--lw-hero-image) !important;
  background-size: 100% 100%, 100% 100% !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  border-color: var(--lw-border-strong) !important;
  color: var(--lw-text) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host * {
  background-image: none !important;
  color: inherit;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host > *,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host > * > * {
  background-color: transparent !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host::before,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-hero-host::after {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host {
  background: var(--lw-carousel-bg) !important;
  border-color: var(--lw-border) !important;
  color: var(--lw-text) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host * {
  color: inherit;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host > * {
  background-color: transparent !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host::before,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host::after,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="mask"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="Mask"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="overlay"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="Overlay"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="shade"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="Shade"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-mask {
  background: transparent !important;
  background-image: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="card"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="Card"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="slide"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-carousel-host [class*="Slide"] {
  border-color: var(--lw-carousel-card-border) !important;
  color: var(--lw-text) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root section,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root article,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root table,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root thead,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root tbody,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root tr,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="card"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="panel"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="widget"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="table"],
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="chart"] {
  border-color: var(--lw-border) !important;
  color: var(--lw-text) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="card"]:not(.lw-theme-hero-host):not(.lw-theme-carousel-host),
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="panel"]:not(.lw-theme-hero-host):not(.lw-theme-carousel-host),
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root [class*="widget"]:not(.lw-theme-hero-host):not(.lw-theme-carousel-host) {
  background-color: var(--lw-card-bg) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root section:not(.lw-theme-hero-host):not(.lw-theme-carousel-host),
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root article:not(.lw-theme-hero-host):not(.lw-theme-carousel-host) {
  background-color: var(--lw-surface) !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root table,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root thead,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root tbody,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root tr,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root td,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root th {
  background-color: transparent !important;
}

html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root h1,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root h2,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root h3,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root h4,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root p,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root span,
html[data-lw-route="home"][data-lw-theme-engine="on"] .lw-theme-home-root label {
  text-shadow: none;
}

.lw-theme-selector {
  position: fixed;
  top: 88px;
  right: 18px;
  z-index: 2147483000;
  font-family: inherit;
}

.lw-theme-button {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid var(--lw-border-strong, rgba(24, 200, 255, .5));
  background: var(--lw-card-bg, rgba(8,25,48,.9));
  color: var(--lw-primary, #18c8ff);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: var(--lw-glow, none);
}

.lw-theme-menu {
  position: absolute;
  top: 50px;
  right: 0;
  min-width: 290px;
  padding: 12px;
  border: 1px solid var(--lw-border-strong, rgba(24, 200, 255, .5));
  border-radius: 16px;
  background: var(--lw-surface-strong, #07182d);
  color: var(--lw-text, #fff);
  box-shadow: 0 22px 70px rgba(0,0,0,.45), var(--lw-glow, none);
  display: none;
}

.lw-theme-selector[data-open="1"] .lw-theme-menu {
  display: block;
}

.lw-theme-menu-title {
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 3px 5px 10px;
}

.lw-theme-option,
.lw-theme-reset {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  margin: 4px 0;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
  color: var(--lw-text, #fff);
  text-align: left;
  cursor: pointer;
  font-weight: 800;
}

.lw-theme-option:hover,
.lw-theme-option.is-active {
  border-color: var(--lw-border-strong, rgba(24, 200, 255, .55));
  background: rgba(var(--lw-primary-rgb, 24, 200, 255), .12);
}

.lw-theme-swatch {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  flex: 0 0 22px;
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: 0 0 16px currentColor;
}

.lw-theme-reset {
  margin-top: 10px;
  justify-content: center;
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.18);
}

@media (max-width: 768px) {
  .lw-theme-selector {
    top: 80px;
    right: 10px;
  }

  .lw-theme-menu {
    right: 0;
    min-width: min(290px, calc(100vw - 22px));
  }
}
