/* Theme palettes for light and dark modes */

html[data-theme="dark"] {
  color-scheme: dark;
  --ki-primary: #6f7dff;
  --ki-accent: #ff4fa0;
  --ki-yellow: #ffd166;
  --ki-teal: #32d4c3;
  --bs-body-bg: #050713;
  --bs-body-bg-rgb: 5, 7, 19;
  --bs-body-color: #e7ebff;
  --bs-body-color-rgb: 231, 235, 255;
  --bs-heading-color: #f9fbff;
  --bs-emphasis-color: #ffffff;
  --bs-secondary-color: rgba(231, 235, 255, .72);
  --bs-secondary-color-rgb: 231, 235, 255;
  --bs-link-color: #8aa4ff;
  --bs-link-hover-color: #bed0ff;
  --bs-border-color: rgba(138, 164, 255, .22);
  --bs-border-color-translucent: rgba(138, 164, 255, .18);
  --bs-tertiary-bg: rgba(11, 14, 34, .85);
  --bs-tertiary-color: rgba(231, 235, 255, .7);
  --bs-card-bg: rgba(13, 17, 38, .82);
  --bs-card-border-color: rgba(138, 164, 255, .18);
  --bs-card-color: var(--bs-body-color);
  --bs-primary: var(--ki-primary);
  --bs-primary-rgb: 111, 125, 255;
  --bs-primary-text-emphasis: #d4d9ff;
  --bs-primary-bg-subtle: rgba(111, 125, 255, .18);
  --bs-primary-border-subtle: rgba(111, 125, 255, .4);
  --bs-warning: var(--ki-yellow);
  --bs-warning-rgb: 255, 209, 102;
  --bs-warning-text-emphasis: #ffe8ae;
  --bs-warning-bg-subtle: rgba(255, 209, 102, .18);
  --bs-warning-border-subtle: rgba(255, 209, 102, .36);
  --bs-danger: #ff6b8a;
  --bs-danger-rgb: 255, 107, 138;
  --bs-danger-bg-subtle: rgba(255, 107, 138, .18);
  --bs-success: #32d4c3;
  --bs-success-rgb: 50, 212, 195;
  --bs-success-bg-subtle: rgba(50, 212, 195, .18);
  --bs-info: #54d6ff;
  --bs-info-rgb: 84, 214, 255;
  --bs-info-bg-subtle: rgba(84, 214, 255, .18);
}

html[data-theme="dark"] body {
  position: relative;
  min-height: 100vh;
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  background-image:
    radial-gradient(1200px 600px at 5% -15%, rgba(111, 125, 255, .28), transparent 65%),
    radial-gradient(950px 550px at 95% 5%, rgba(255, 79, 160, .24), transparent 60%),
    radial-gradient(1400px 900px at 50% 110%, rgba(50, 212, 195, .18), transparent 70%),
    linear-gradient(180deg, rgba(5, 7, 19, .9), rgba(7, 9, 24, .9));
  background-attachment: fixed;
}

html[data-theme="dark"] a {
  color: var(--bs-link-color);
}

html[data-theme="dark"] a:hover,
html[data-theme="dark"] a:focus {
  color: var(--bs-link-hover-color);
}

html[data-theme="dark"] .text-body-secondary,
html[data-theme="dark"] .text-muted {
  color: rgba(231, 235, 255, .68) !important;
}

html[data-theme="dark"] .bg-body-tertiary {
  background-color: var(--bs-tertiary-bg) !important;
  backdrop-filter: blur(16px);
}

html[data-theme="dark"] .border,
html[data-theme="dark"] .border-top,
html[data-theme="dark"] .border-end,
html[data-theme="dark"] .border-bottom,
html[data-theme="dark"] .border-start {
  border-color: rgba(138, 164, 255, .2) !important;
}

html[data-theme="dark"] .shadow-sm {
  box-shadow: 0 24px 48px -32px rgba(5, 9, 28, .9) !important;
}

html[data-theme="dark"] .navbar {
  background: rgba(7, 10, 28, .85) !important;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(138, 164, 255, .2);
}

html[data-theme="dark"] .navbar .navbar-brand {
  color: #fff;
}

html[data-theme="dark"] .navbar .nav-link {
  color: rgba(231, 235, 255, .78);
  transition: color .15s ease, opacity .15s ease;
}

html[data-theme="dark"] .navbar .nav-link:hover,
html[data-theme="dark"] .navbar .nav-link:focus,
html[data-theme="dark"] .navbar .nav-link.active {
  color: #fff;
}

html[data-theme="dark"] .navbar .navbar-toggler {
  border-color: rgba(138, 164, 255, .4);
}

html[data-theme="dark"] .navbar .navbar-toggler-icon {
  filter: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.95)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

@media (max-width: 991.98px) {
  html[data-theme="dark"] .navbar .navbar-collapse {
    background: rgba(7, 10, 28, .95);
    border: 1px solid rgba(138, 164, 255, .18);
    border-radius: 1rem;
    padding: 1rem;
    margin-top: .75rem;
    box-shadow: 0 20px 45px -25px rgba(5, 9, 28, .85);
  }
}

html[data-theme="dark"] .btn-primary {
  background: linear-gradient(135deg, rgba(111, 125, 255, .95), rgba(255, 79, 160, .95));
  border: 0;
  color: #050713;
  box-shadow: 0 18px 44px -24px rgba(111, 125, 255, .85);
}

html[data-theme="dark"] .btn-primary:hover,
html[data-theme="dark"] .btn-primary:focus {
  color: #050713;
  filter: brightness(1.03);
}

html[data-theme="dark"] .btn-primary:focus-visible {
  box-shadow: 0 0 0 .25rem rgba(255, 79, 160, .35);
}

html[data-theme="dark"] .btn-outline-secondary {
  color: rgba(231, 235, 255, .8);
  border-color: rgba(138, 164, 255, .5);
  background: transparent;
}

html[data-theme="dark"] .btn-outline-secondary:hover,
html[data-theme="dark"] .btn-outline-secondary:focus {
  color: #fff;
  border-color: rgba(138, 164, 255, .85);
  background: rgba(138, 164, 255, .18);
}

html[data-theme="dark"] .btn-outline-secondary:disabled,
html[data-theme="dark"] .btn-outline-secondary.disabled {
  color: rgba(231, 235, 255, .4);
  border-color: rgba(138, 164, 255, .2);
  background: rgba(13, 17, 38, .7);
}

html[data-theme="dark"] .btn-outline-light {
  color: #f5f7ff;
  border-color: rgba(245, 247, 255, .55);
}

html[data-theme="dark"] .btn-outline-light:hover,
html[data-theme="dark"] .btn-outline-light:focus {
  background: rgba(245, 247, 255, .18);
  color: #fff;
  border-color: rgba(245, 247, 255, .8);
}

html[data-theme="dark"] .btn-outline-primary {
  color: var(--ki-primary);
  border-color: rgba(111, 125, 255, .65);
}

html[data-theme="dark"] .btn-outline-primary:hover,
html[data-theme="dark"] .btn-check:checked + .btn-outline-primary,
html[data-theme="dark"] .btn-check:active + .btn-outline-primary,
html[data-theme="dark"] .btn-outline-primary:focus {
  color: #050713;
  background: var(--ki-primary);
  border-color: var(--ki-primary);
}

html[data-theme="dark"] .btn-outline-success {
  color: var(--bs-success);
  border-color: rgba(50, 212, 195, .6);
}

html[data-theme="dark"] .btn-outline-success:hover,
html[data-theme="dark"] .btn-check:checked + .btn-outline-success,
html[data-theme="dark"] .btn-check:active + .btn-outline-success,
html[data-theme="dark"] .btn-outline-success:focus {
  color: #050713;
  background: var(--bs-success);
  border-color: var(--bs-success);
}

html[data-theme="dark"] .btn-outline-warning {
  color: var(--ki-yellow);
  border-color: rgba(255, 209, 102, .55);
}

html[data-theme="dark"] .btn-outline-warning:hover,
html[data-theme="dark"] .btn-check:checked + .btn-outline-warning,
html[data-theme="dark"] .btn-check:active + .btn-outline-warning,
html[data-theme="dark"] .btn-outline-warning:focus {
  color: #050713;
  background: var(--ki-yellow);
  border-color: var(--ki-yellow);
}

html[data-theme="dark"] .btn-outline-info {
  color: var(--bs-info);
  border-color: rgba(84, 214, 255, .55);
}

html[data-theme="dark"] .btn-outline-info:hover,
html[data-theme="dark"] .btn-check:checked + .btn-outline-info,
html[data-theme="dark"] .btn-check:active + .btn-outline-info,
html[data-theme="dark"] .btn-outline-info:focus {
  color: #050713;
  background: var(--bs-info);
  border-color: var(--bs-info);
}

html[data-theme="dark"] .btn-outline-danger {
  color: var(--bs-danger);
  border-color: rgba(255, 107, 138, .55);
}

html[data-theme="dark"] .btn-outline-danger:hover,
html[data-theme="dark"] .btn-check:checked + .btn-outline-danger,
html[data-theme="dark"] .btn-check:active + .btn-outline-danger,
html[data-theme="dark"] .btn-outline-danger:focus {
  color: #050713;
  background: var(--bs-danger);
  border-color: var(--bs-danger);
}

html[data-theme="dark"] .form-control {
  background-color: rgba(7, 11, 28, .85);
  border-color: rgba(138, 164, 255, .25);
  color: inherit;
}

html[data-theme="dark"] .form-control:focus {
  background-color: rgba(7, 11, 28, .95);
  border-color: var(--ki-accent);
  box-shadow: 0 0 0 .25rem rgba(255, 79, 160, .2);
  color: #fff;
}

html[data-theme="dark"] .form-control::placeholder {
  color: rgba(231, 235, 255, .5);
}

html[data-theme="dark"] .card {
  background: var(--bs-card-bg);
  border: 1px solid var(--bs-card-border-color);
  color: inherit;
  backdrop-filter: blur(18px);
}

html[data-theme="dark"] .card.border-0 {
  border: 1px solid rgba(138, 164, 255, .14);
}

html[data-theme="dark"] .card-title,
html[data-theme="dark"] .card h3,
html[data-theme="dark"] .card h2 {
  color: var(--bs-heading-color);
}

html[data-theme="dark"] .alert {
  background: rgba(9, 13, 32, .72);
  border: 1px solid rgba(138, 164, 255, .2);
  color: inherit;
  backdrop-filter: blur(12px);
}

html[data-theme="dark"] .alert-primary {
  background: linear-gradient(130deg, rgba(111, 125, 255, .2), rgba(255, 79, 160, .2));
  border-color: rgba(111, 125, 255, .45);
  color: #f2f5ff;
}

html[data-theme="dark"] .brand-gradient {
  background: linear-gradient(135deg, var(--ki-primary), var(--ki-accent), var(--ki-teal));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 22px rgba(142, 167, 255, .35);
}

html[data-theme="dark"] .hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(140deg, rgba(11, 14, 34, .88), rgba(5, 7, 19, .92));
  border-bottom: 1px solid rgba(138, 164, 255, .15);
}

html[data-theme="dark"] .hero::before {
  content: "";
  position: absolute;
  inset: -20% -10% -30%;
  background:
    radial-gradient(800px 800px at 15% 25%, rgba(111, 125, 255, .28), transparent 70%),
    radial-gradient(900px 900px at 85% 15%, rgba(255, 79, 160, .22), transparent 70%),
    radial-gradient(700px 700px at 70% 85%, rgba(50, 212, 195, .2), transparent 65%);
  mix-blend-mode: screen;
  opacity: .85;
  pointer-events: none;
  z-index: 0;
}

html[data-theme="dark"] .hero > * {
  position: relative;
  z-index: 1;
}

html[data-theme="dark"] .confetti-bg {
  background-image:
    radial-gradient(circle at 10% 20%, rgba(255, 209, 102, .42) 2px, transparent 4px),
    radial-gradient(circle at 80% 15%, rgba(255, 79, 160, .3) 2px, transparent 4px),
    radial-gradient(circle at 30% 80%, rgba(111, 125, 255, .32) 2px, transparent 4px),
    radial-gradient(circle at 60% 60%, rgba(50, 212, 195, .24) 2px, transparent 4px),
    radial-gradient(circle at 90% 70%, rgba(111, 125, 255, .24) 2px, transparent 4px);
  background-size: 220px 220px;
  background-blend-mode: screen;
}

html[data-theme="dark"] .countdown-card {
  min-width: 110px;
  background: linear-gradient(150deg, rgba(12, 18, 42, .9), rgba(17, 22, 49, .88));
  border-color: rgba(138, 164, 255, .22);
}

html[data-theme="dark"] .count-num {
  font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 800;
  letter-spacing: .02em;
  color: #fff;
  text-shadow: 0 10px 28px rgba(111, 125, 255, .45);
}

html[data-theme="dark"] .count-label {
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: .06em;
  font-size: .9rem;
  color: rgba(231, 235, 255, .62);
}

html[data-theme="dark"] .ticket-badge {
  background: repeating-linear-gradient(45deg, rgba(111, 125, 255, .4) 0 10px, rgba(255, 79, 160, .4) 10px 20px);
  border: 1px solid rgba(255, 255, 255, .15);
  box-shadow: 0 10px 18px -12px rgba(0, 0, 0, .65);
  color: #050713;
}

html[data-theme="dark"] .ai-logo-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(111, 125, 255, .16), rgba(255, 79, 160, .14), rgba(50, 212, 195, .16));
  border: 1px solid rgba(138, 164, 255, .28);
  box-shadow: 0 30px 70px -35px rgba(15, 20, 45, .9);
  overflow: hidden;
  isolation: isolate;
}

html[data-theme="dark"] .ai-logo-wrap::before {
  content: "";
  position: absolute;
  inset: -60%;
  background: conic-gradient(from 180deg at 50% 50%, rgba(255, 79, 160, .45), rgba(111, 125, 255, .38), rgba(50, 212, 195, .55), rgba(255, 209, 102, .55), rgba(255, 79, 160, .45));
  filter: blur(35px);
  opacity: .65;
  animation: aiSpin 18s linear infinite;
  z-index: -2;
}

html[data-theme="dark"] .ai-logo-wrap::after {
  content: "";
  position: absolute;
  inset: -20%;
  background: radial-gradient(circle at 30% 30%, rgba(255, 209, 102, .45), transparent 55%),
              radial-gradient(circle at 70% 70%, rgba(111, 125, 255, .35), transparent 60%),
              radial-gradient(circle at 50% 80%, rgba(50, 212, 195, .28), transparent 65%);
  mix-blend-mode: screen;
  opacity: .7;
  animation: aiPulse 6s ease-in-out infinite;
  z-index: -1;
}

html[data-theme="dark"] .ai-logo {
  position: relative;
  z-index: 1;
  width: clamp(180px, 42vw, 260px);
  filter: drop-shadow(0 12px 35px rgba(111, 125, 255, .5));
}

html[data-theme="dark"] .ai-logo-tag {
  position: absolute;
  bottom: 12px;
  right: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #050713;
  background: linear-gradient(120deg, rgba(255, 209, 102, .92), rgba(111, 125, 255, .92), rgba(255, 79, 160, .92));
  border-radius: 999px;
  box-shadow: 0 10px 20px -12px rgba(0, 0, 0, .6);
}

html[data-theme="dark"] footer {
  background: rgba(7, 9, 24, .94);
  border-top: 1px solid rgba(138, 164, 255, .2);
  backdrop-filter: blur(12px);
  box-shadow: 0 -30px 60px -40px rgba(0, 0, 0, .7);
}

html[data-theme="dark"] footer a {
  color: var(--bs-link-color);
}

html[data-theme="dark"] footer a:hover,
html[data-theme="dark"] footer a:focus {
  color: var(--bs-link-hover-color);
}

html[data-theme="dark"] footer .text-body-secondary {
  color: rgba(231, 235, 255, .6) !important;
}

html[data-theme="dark"] .legal-hero {
  background: linear-gradient(135deg, rgba(111, 125, 255, .14), rgba(255, 79, 160, .12), rgba(50, 212, 195, .12));
  border-radius: 1.5rem;
  border: 1px solid rgba(138, 164, 255, .22);
  backdrop-filter: blur(14px);
  box-shadow: 0 20px 45px -30px rgba(5, 9, 28, .7);
}

html[data-theme="dark"] .legal-content h2,
html[data-theme="dark"] .legal-content h3 {
  color: var(--bs-heading-color);
}


html[data-theme="light"] {
  color-scheme: light;
  --ki-primary: #4c71f2;
  --ki-accent: #ff3d81;
  --ki-yellow: #ffd166;
  --ki-teal: #32d4c3;
  --bs-body-bg: #ffffff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-body-color: #1c2135;
  --bs-body-color-rgb: 28, 33, 53;
  --bs-heading-color: #10152b;
  --bs-emphasis-color: #000000;
  --bs-secondary-color: rgba(28, 33, 53, .66);
  --bs-secondary-color-rgb: 28, 33, 53;
  --bs-link-color: #3f55f5;
  --bs-link-hover-color: #2c3fdd;
  --bs-border-color: rgba(28, 33, 53, .12);
  --bs-border-color-translucent: rgba(28, 33, 53, .08);
  --bs-tertiary-bg: rgba(245, 247, 255, .92);
  --bs-tertiary-color: rgba(28, 33, 53, .68);
  --bs-card-bg: rgba(255, 255, 255, .92);
  --bs-card-border-color: rgba(28, 33, 53, .1);
  --bs-card-color: var(--bs-body-color);
  --bs-primary: var(--ki-primary);
  --bs-primary-rgb: 76, 113, 242;
  --bs-primary-text-emphasis: #2d45a8;
  --bs-primary-bg-subtle: rgba(76, 113, 242, .12);
  --bs-primary-border-subtle: rgba(76, 113, 242, .32);
  --bs-warning: var(--ki-yellow);
  --bs-warning-rgb: 255, 209, 102;
  --bs-warning-text-emphasis: #b8861b;
  --bs-warning-bg-subtle: rgba(255, 209, 102, .18);
  --bs-warning-border-subtle: rgba(255, 209, 102, .36);
  --bs-danger: #ff4f88;
  --bs-danger-rgb: 255, 79, 136;
  --bs-danger-bg-subtle: rgba(255, 79, 136, .12);
  --bs-success: #22bcad;
  --bs-success-rgb: 34, 188, 173;
  --bs-success-bg-subtle: rgba(34, 188, 173, .14);
  --bs-info: #3ec0ff;
  --bs-info-rgb: 62, 192, 255;
  --bs-info-bg-subtle: rgba(62, 192, 255, .14);
}

html[data-theme="light"] body {
  min-height: 100vh;
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  background-image:
    radial-gradient(1200px 600px at 10% -10%, rgba(255, 61, 129, .08), transparent),
    radial-gradient(900px 500px at 90% 10%, rgba(76, 113, 242, .08), transparent);
  background-attachment: fixed;
}

html[data-theme="light"] a {
  color: var(--bs-link-color);
}

html[data-theme="light"] a:hover,
html[data-theme="light"] a:focus {
  color: var(--bs-link-hover-color);
}

html[data-theme="light"] .text-body-secondary,
html[data-theme="light"] .text-muted {
  color: rgba(28, 33, 53, .64) !important;
}

html[data-theme="light"] .bg-body-tertiary {
  background-color: var(--bs-tertiary-bg) !important;
  backdrop-filter: blur(12px);
}

html[data-theme="light"] .border,
html[data-theme="light"] .border-top,
html[data-theme="light"] .border-end,
html[data-theme="light"] .border-bottom,
html[data-theme="light"] .border-start {
  border-color: rgba(28, 33, 53, .1) !important;
}

html[data-theme="light"] .shadow-sm {
  box-shadow: 0 20px 32px -26px rgba(32, 38, 68, .22) !important;
}

html[data-theme="light"] .navbar {
  background: rgba(255, 255, 255, .92) !important;
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(28, 33, 53, .12);
}

html[data-theme="light"] .navbar .navbar-brand {
  color: #0f1225;
}

html[data-theme="light"] .navbar .nav-link {
  color: rgba(28, 33, 53, .78);
  transition: color .15s ease, opacity .15s ease;
}

html[data-theme="light"] .navbar .nav-link:hover,
html[data-theme="light"] .navbar .nav-link:focus,
html[data-theme="light"] .navbar .nav-link.active {
  color: #0f1225;
}

html[data-theme="light"] .navbar .navbar-toggler {
  border-color: rgba(28, 33, 53, .35);
}

html[data-theme="light"] .navbar .navbar-toggler-icon {
  filter: none;
}

@media (max-width: 991.98px) {
  html[data-theme="light"] .navbar .navbar-collapse {
    background: rgba(255, 255, 255, .95);
    border: 1px solid rgba(28, 33, 53, .12);
    border-radius: 1rem;
    padding: 1rem;
    margin-top: .75rem;
    box-shadow: 0 24px 32px -28px rgba(28, 33, 53, .25);
  }
}

html[data-theme="light"] .btn-primary {
  background: linear-gradient(135deg, rgba(76, 113, 242, .95), rgba(255, 61, 129, .95));
  border: 0;
  color: #ffffff;
  box-shadow: 0 18px 32px -20px rgba(76, 113, 242, .55);
}

html[data-theme="light"] .btn-primary:hover,
html[data-theme="light"] .btn-primary:focus {
  color: #ffffff;
  filter: brightness(1.02);
}

html[data-theme="light"] .btn-primary:focus-visible {
  box-shadow: 0 0 0 .25rem rgba(76, 113, 242, .25);
}

html[data-theme="light"] .btn-outline-secondary {
  color: rgba(28, 33, 53, .8);
  border-color: rgba(28, 33, 53, .3);
  background: transparent;
}

html[data-theme="light"] .btn-outline-secondary:hover,
html[data-theme="light"] .btn-outline-secondary:focus {
  color: #0f1225;
  border-color: rgba(28, 33, 53, .5);
  background: rgba(28, 33, 53, .08);
}

html[data-theme="light"] .btn-outline-secondary:disabled,
html[data-theme="light"] .btn-outline-secondary.disabled {
  color: rgba(28, 33, 53, .4);
  border-color: rgba(28, 33, 53, .14);
  background: rgba(244, 246, 255, .7);
}

html[data-theme="light"] .btn-outline-light {
  color: #3f55f5;
  border-color: rgba(63, 85, 245, .4);
}

html[data-theme="light"] .btn-outline-light:hover,
html[data-theme="light"] .btn-outline-light:focus {
  background: rgba(63, 85, 245, .12);
  color: #2c3fdd;
  border-color: rgba(63, 85, 245, .6);
}

html[data-theme="light"] .btn-outline-primary {
  color: var(--ki-primary);
  border-color: rgba(76, 113, 242, .5);
}

html[data-theme="light"] .btn-outline-primary:hover,
html[data-theme="light"] .btn-check:checked + .btn-outline-primary,
html[data-theme="light"] .btn-check:active + .btn-outline-primary,
html[data-theme="light"] .btn-outline-primary:focus {
  color: #fff;
  background: var(--ki-primary);
  border-color: var(--ki-primary);
}

html[data-theme="light"] .btn-outline-success {
  color: var(--bs-success);
  border-color: rgba(34, 188, 173, .45);
}

html[data-theme="light"] .btn-outline-success:hover,
html[data-theme="light"] .btn-check:checked + .btn-outline-success,
html[data-theme="light"] .btn-check:active + .btn-outline-success,
html[data-theme="light"] .btn-outline-success:focus {
  color: #fff;
  background: var(--bs-success);
  border-color: var(--bs-success);
}

html[data-theme="light"] .btn-outline-warning {
  color: var(--ki-yellow);
  border-color: rgba(255, 209, 102, .5);
}

html[data-theme="light"] .btn-outline-warning:hover,
html[data-theme="light"] .btn-check:checked + .btn-outline-warning,
html[data-theme="light"] .btn-check:active + .btn-outline-warning,
html[data-theme="light"] .btn-outline-warning:focus {
  color: #47300d;
  background: var(--ki-yellow);
  border-color: var(--ki-yellow);
}

html[data-theme="light"] .btn-outline-info {
  color: var(--bs-info);
  border-color: rgba(62, 192, 255, .45);
}

html[data-theme="light"] .btn-outline-info:hover,
html[data-theme="light"] .btn-check:checked + .btn-outline-info,
html[data-theme="light"] .btn-check:active + .btn-outline-info,
html[data-theme="light"] .btn-outline-info:focus {
  color: #0f1225;
  background: var(--bs-info);
  border-color: var(--bs-info);
}

html[data-theme="light"] .btn-outline-danger {
  color: var(--bs-danger);
  border-color: rgba(255, 79, 136, .45);
}

html[data-theme="light"] .btn-outline-danger:hover,
html[data-theme="light"] .btn-check:checked + .btn-outline-danger,
html[data-theme="light"] .btn-check:active + .btn-outline-danger,
html[data-theme="light"] .btn-outline-danger:focus {
  color: #fff;
  background: var(--bs-danger);
  border-color: var(--bs-danger);
}

html[data-theme="light"] .form-control {
  background-color: rgba(255, 255, 255, .92);
  border-color: rgba(28, 33, 53, .14);
  color: inherit;
}

html[data-theme="light"] .form-control:focus {
  background-color: rgba(255, 255, 255, .98);
  border-color: var(--ki-primary);
  box-shadow: 0 0 0 .25rem rgba(76, 113, 242, .2);
  color: var(--bs-heading-color);
}

html[data-theme="light"] .form-control::placeholder {
  color: rgba(28, 33, 53, .45);
}

html[data-theme="light"] .card {
  background: var(--bs-card-bg);
  border: 1px solid var(--bs-card-border-color);
  color: inherit;
  backdrop-filter: blur(10px);
}

html[data-theme="light"] .card.border-0 {
  border: 1px solid rgba(28, 33, 53, .08);
}

html[data-theme="light"] .card-title,
html[data-theme="light"] .card h3,
html[data-theme="light"] .card h2 {
  color: var(--bs-heading-color);
}

html[data-theme="light"] .alert {
  background: rgba(245, 247, 255, .92);
  border: 1px solid rgba(28, 33, 53, .12);
  color: inherit;
  backdrop-filter: blur(6px);
}

html[data-theme="light"] .alert-primary {
  background: linear-gradient(130deg, rgba(76, 113, 242, .14), rgba(255, 61, 129, .12));
  border-color: rgba(76, 113, 242, .3);
  color: #1c2135;
}

html[data-theme="light"] .brand-gradient {
  background: linear-gradient(135deg, var(--ki-primary), var(--ki-accent));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 0 12px rgba(76, 113, 242, .25);
}

html[data-theme="light"] .hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(140deg, rgba(255, 255, 255, .95), rgba(245, 247, 255, .86));
  border-bottom: 1px solid rgba(28, 33, 53, .08);
}

html[data-theme="light"] .hero::before {
  content: "";
  position: absolute;
  inset: -15% -10% -25%;
  background:
    radial-gradient(720px 720px at 18% 24%, rgba(76, 113, 242, .2), transparent 72%),
    radial-gradient(680px 680px at 82% 20%, rgba(255, 61, 129, .16), transparent 70%),
    radial-gradient(640px 640px at 70% 90%, rgba(50, 212, 195, .18), transparent 68%);
  mix-blend-mode: screen;
  opacity: .9;
  pointer-events: none;
  z-index: 0;
}

html[data-theme="light"] .hero > * {
  position: relative;
  z-index: 1;
}

html[data-theme="light"] .confetti-bg {
  background-image: radial-gradient(circle at 10% 20%, rgba(255, 209, 102, .35) 2px, transparent 3px),
                    radial-gradient(circle at 80% 10%, rgba(255, 61, 129, .32) 2px, transparent 3px),
                    radial-gradient(circle at 30% 80%, rgba(76, 113, 242, .32) 2px, transparent 3px),
                    radial-gradient(circle at 60% 60%, rgba(255, 61, 129, .22) 2px, transparent 3px),
                    radial-gradient(circle at 90% 70%, rgba(76, 113, 242, .22) 2px, transparent 3px);
  background-size: 200px 200px;
}

html[data-theme="light"] .countdown-card {
  min-width: 110px;
  background: rgba(255, 255, 255, .94);
  border-color: rgba(28, 33, 53, .12);
}

html[data-theme="light"] .count-num {
  font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 800;
  letter-spacing: .02em;
  color: #10152b;
  text-shadow: 0 12px 24px -18px rgba(33, 40, 70, .35);
}

html[data-theme="light"] .count-label {
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: .06em;
  font-size: .9rem;
  color: rgba(28, 33, 53, .6);
}

html[data-theme="light"] .ticket-badge {
  background: repeating-linear-gradient(45deg, rgba(255, 61, 129, .18) 0 10px, rgba(76, 113, 242, .18) 10px 20px);
  border: 1px solid rgba(28, 33, 53, .08);
  box-shadow: 0 10px 18px -14px rgba(28, 33, 53, .25);
  color: #1c2135;
}

html[data-theme="light"] .ai-logo-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(76, 113, 242, .08), rgba(255, 61, 129, .08));
  border: 1px solid rgba(255, 255, 255, .65);
  box-shadow: 0 30px 55px -40px rgba(28, 33, 53, .25);
  overflow: hidden;
  isolation: isolate;
}

html[data-theme="light"] .ai-logo-wrap::before {
  content: "";
  position: absolute;
  inset: -60%;
  background: conic-gradient(from 180deg at 50% 50%, rgba(255, 61, 129, .45), rgba(76, 113, 242, .35), rgba(255, 209, 102, .55), rgba(255, 61, 129, .45));
  filter: blur(35px);
  opacity: .6;
  animation: aiSpin 18s linear infinite;
  z-index: -2;
}

html[data-theme="light"] .ai-logo-wrap::after {
  content: "";
  position: absolute;
  inset: -20%;
  background: radial-gradient(circle at 30% 30%, rgba(255, 209, 102, .4), transparent 55%),
              radial-gradient(circle at 70% 70%, rgba(76, 113, 242, .35), transparent 60%);
  mix-blend-mode: screen;
  opacity: .65;
  animation: aiPulse 6s ease-in-out infinite;
  z-index: -1;
}

html[data-theme="light"] .ai-logo {
  position: relative;
  z-index: 1;
  width: clamp(180px, 42vw, 260px);
  filter: drop-shadow(0 10px 30px rgba(76, 113, 242, .35));
}

html[data-theme="light"] .ai-logo-tag {
  position: absolute;
  bottom: 12px;
  right: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .35rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #fff;
  background: linear-gradient(120deg, rgba(76, 113, 242, .85), rgba(255, 61, 129, .85));
  border-radius: 999px;
  box-shadow: 0 10px 20px -12px rgba(0, 0, 0, .38);
}

html[data-theme="light"] footer {
  background: rgba(255, 255, 255, .94);
  border-top: 1px solid rgba(28, 33, 53, .12);
  backdrop-filter: blur(10px);
  box-shadow: 0 -24px 40px -32px rgba(28, 33, 53, .2);
}

html[data-theme="light"] footer a {
  color: var(--bs-link-color);
}

html[data-theme="light"] footer a:hover,
html[data-theme="light"] footer a:focus {
  color: var(--bs-link-hover-color);
}

html[data-theme="light"] footer .text-body-secondary {
  color: rgba(28, 33, 53, .6) !important;
}

html[data-theme="light"] .legal-hero {
  background: linear-gradient(135deg, rgba(76, 113, 242, .08), rgba(255, 61, 129, .05));
  border-radius: 1.5rem;
  border: 1px solid rgba(28, 33, 53, .08);
  backdrop-filter: blur(8px);
  box-shadow: 0 18px 36px -28px rgba(28, 33, 53, .25);
}

html[data-theme="light"] .legal-content h2,
html[data-theme="light"] .legal-content h3 {
  color: var(--bs-heading-color);
}
