/* Legal Works pruebas theme engine v171.
   Scope: pruebaslegalworks only. Original design remains untouched until a theme is selected. */

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-panel-bg: rgba(7, 24, 45, .82);
  --lw-panel-bg-strong: rgba(8, 29, 56, .94);
  --lw-card-bg: rgba(8, 25, 48, .74);
  --lw-card-bg-soft: rgba(9, 31, 58, .54);
  --lw-text: #f3f8ff;
  --lw-text-muted: #b8cbe4;
  --lw-text-soft: #dbeaff;
  --lw-text-on-hero: #ffffff;
  --lw-primary: #18c8ff;
  --lw-primary-rgb: 24, 200, 255;
  --lw-secondary: #2f7dff;
  --lw-success: #00f078;
  --lw-warning: #ffb23e;
  --lw-danger: #ff4e65;
  --lw-border: rgba(83, 205, 255, .32);
  --lw-border-strong: rgba(76, 217, 255, .72);
  --lw-shadow: 0 18px 45px rgba(0, 10, 25, .45);
  --lw-glow: 0 0 22px rgba(var(--lw-primary-rgb), .34);
  --lw-hero-image: url("lw-theme-assets/hero-blue.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(2, 9, 20, .90) 0%, rgba(2, 9, 20, .50) 38%, rgba(2, 9, 20, .12) 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-mask-left: linear-gradient(90deg, var(--lw-page-bg) 0%, rgba(4, 13, 27, 0) 100%);
  --lw-carousel-mask-right: linear-gradient(270deg, var(--lw-page-bg) 0%, rgba(4, 13, 27, 0) 100%);
  --lw-carousel-card-bg: linear-gradient(180deg, rgba(32, 55, 103, .84), rgba(7, 20, 40, .95));
  --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: #f5faff;
  --lw-page-bg: #ffffff;
  --lw-sidebar-bg: rgba(255, 255, 255, .96);
  --lw-header-bg: rgba(255, 255, 255, .96);
  --lw-panel-bg: rgba(255, 255, 255, .90);
  --lw-panel-bg-strong: rgba(255, 255, 255, .98);
  --lw-card-bg: rgba(255, 255, 255, .88);
  --lw-card-bg-soft: rgba(245, 250, 255, .86);
  --lw-text: #071832;
  --lw-text-muted: #56708f;
  --lw-text-soft: #18304f;
  --lw-text-on-hero: #071832;
  --lw-primary: #087bff;
  --lw-primary-rgb: 8, 123, 255;
  --lw-secondary: #1ab7ff;
  --lw-border: rgba(28, 128, 255, .20);
  --lw-border-strong: rgba(22, 130, 255, .50);
  --lw-shadow: 0 18px 40px rgba(42, 95, 150, .14);
  --lw-glow: 0 0 20px rgba(var(--lw-primary-rgb), .20);
  --lw-hero-image: url("lw-theme-assets/hero-light.png");
  --lw-hero-overlay: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.68) 35%, rgba(255,255,255,.14) 72%, rgba(255,255,255,.90) 100%);
  --lw-carousel-bg: linear-gradient(180deg, rgba(255,255,255,.96), rgba(239,247,255,.98));
  --lw-carousel-mask-left: linear-gradient(90deg, #ffffff 0%, rgba(255,255,255,0) 100%);
  --lw-carousel-mask-right: linear-gradient(270deg, #ffffff 0%, rgba(255,255,255,0) 100%);
  --lw-carousel-card-bg: linear-gradient(180deg, rgba(255,255,255,.98), rgba(235,245,255,.92));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .28);
}

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-panel-bg: rgba(13, 27, 25, .84);
  --lw-card-bg: rgba(14, 29, 27, .76);
  --lw-text: #ecfffb;
  --lw-text-muted: #a8c8c0;
  --lw-primary: #23f0c0;
  --lw-primary-rgb: 35, 240, 192;
  --lw-secondary: #14a487;
  --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, .92) 0%, rgba(5, 12, 11, .54) 38%, rgba(5, 12, 11, .16) 74%, rgba(5, 12, 11, .84) 100%);
  --lw-carousel-card-bg: linear-gradient(180deg, rgba(22, 54, 49, .82), rgba(7, 17, 16, .96));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .42);
}

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-panel-bg: rgba(29, 23, 13, .84);
  --lw-card-bg: rgba(31, 25, 14, .76);
  --lw-text: #fff8e8;
  --lw-text-muted: #d5c295;
  --lw-primary: #ffd15b;
  --lw-primary-rgb: 255, 209, 91;
  --lw-secondary: #b9871e;
  --lw-warning: #ffcf5b;
  --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, .94) 0%, rgba(9, 7, 4, .56) 38%, rgba(9, 7, 4, .18) 74%, rgba(9, 7, 4, .86) 100%);
  --lw-carousel-card-bg: linear-gradient(180deg, rgba(57, 43, 20, .82), rgba(15, 11, 7, .96));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .42);
}

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-panel-bg: rgba(25, 13, 59, .84);
  --lw-card-bg: rgba(27, 16, 65, .76);
  --lw-text: #fbf7ff;
  --lw-text-muted: #c8b5e9;
  --lw-primary: #d34cff;
  --lw-primary-rgb: 211, 76, 255;
  --lw-secondary: #18d4ff;
  --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, .94) 0%, rgba(8, 5, 26, .56) 38%, rgba(8, 5, 26, .16) 74%, rgba(8, 5, 26, .86) 100%);
  --lw-carousel-card-bg: linear-gradient(180deg, rgba(54, 30, 106, .82), rgba(13, 7, 33, .96));
  --lw-carousel-card-border: rgba(var(--lw-primary-rgb), .46);
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) body,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) app-root,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) app-pages {
  background: var(--lw-app-bg) !important;
  color: var(--lw-text) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .lw-theme-selector {
  position: relative;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  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: fixed;
  top: 76px;
  right: 22px;
  z-index: 2147483000;
  min-width: 290px;
  padding: 12px;
  border: 1px solid var(--lw-border-strong, rgba(24, 200, 255, .5));
  border-radius: 16px;
  background: var(--lw-panel-bg-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;
  color: var(--lw-text, #fff);
}

.lw-theme-option {
  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: 700;
}

.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;
  width: 100%;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  padding: 10px;
  background: rgba(255,255,255,.06);
  color: var(--lw-text, #fff);
  font-weight: 900;
  cursor: pointer;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .sidebar,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .sidenav,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) mat-sidenav,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) aside {
  background: var(--lw-sidebar-bg) !important;
  color: var(--lw-text) !important;
  border-color: var(--lw-border) !important;
}

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

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .card,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .mat-card,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="card"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="panel"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="widget"] {
  border-color: var(--lw-border) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .home,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .dashboard,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="dashboard"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="home"] {
  color: var(--lw-text) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .hero,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .hero-banner,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="hero"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="banner"] {
  background-image: var(--lw-hero-overlay), var(--lw-hero-image) !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  color: var(--lw-text-on-hero) !important;
  border-color: var(--lw-border) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .hero *,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .hero-banner *,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="hero"] *,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="banner"] * {
  color: inherit;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .carousel,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .carousel-wrapper,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .carousel-stage,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="carousel"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="Carrusel"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="carrusel"] {
  background: var(--lw-carousel-bg) !important;
  color: var(--lw-text) !important;
  border-color: var(--lw-border) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .carousel::before,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="carousel"]::before {
  background: var(--lw-carousel-mask-left) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .carousel::after,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="carousel"]::after {
  background: var(--lw-carousel-mask-right) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="module"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="platform"],
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) [class*="slide"] {
  border-color: var(--lw-carousel-card-border) !important;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) h1,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) h2,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) h3,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) h4,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) p,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) span,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) label {
  text-shadow: none;
}

html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) button,
html[data-lw-theme-engine="on"][data-theme]:not([data-theme="legalworks-original"]) .btn {
  border-color: var(--lw-border) !important;
}

@media (max-width: 768px) {
  .lw-theme-menu {
    top: 68px;
    right: 10px;
    left: 10px;
    min-width: 0;
  }
}
