:root {
    color-scheme: light;
    --page-bg: #f4f7fb;
    --page-bg-soft: #eef3fb;
    --surface-strong: rgba(255, 255, 255, 0.94);
    --text-strong: #0f172a;
    --text-body: #334155;
    --text-muted: #64748b;
    --border-soft: rgba(148, 163, 184, 0.24);
    --accent: #4f46e5;
    --accent-strong: #4338ca;
    --accent-alt: #7c3aed;
    --shadow-soft: 0 24px 80px rgba(15, 23, 42, 0.08);
    --shadow-card: 0 20px 48px rgba(79, 70, 229, 0.12);
}

body.theme-light {
    background:
        radial-gradient(circle at top left, rgba(99, 102, 241, 0.18), transparent 32%),
        radial-gradient(circle at right 12%, rgba(14, 165, 233, 0.14), transparent 24%),
        linear-gradient(180deg, #f9fbff 0%, var(--page-bg) 46%, var(--page-bg-soft) 100%);
    color: var(--text-body);
    min-height: 100vh;
    position: relative;
}

body.theme-light::before,
body.theme-light::after {
    content: "";
    position: fixed;
    pointer-events: none;
    border-radius: 9999px;
    filter: blur(60px);
    z-index: -20;
}

body.theme-light::before {
    width: 24rem;
    height: 24rem;
    top: -8rem;
    left: -6rem;
    background: rgba(99, 102, 241, 0.18);
}

body.theme-light::after {
    width: 18rem;
    height: 18rem;
    right: -4rem;
    top: 28rem;
    background: rgba(14, 165, 233, 0.14);
}

body.theme-light ::-webkit-scrollbar-track {
    background: rgba(226, 232, 240, 0.9);
}

body.theme-light ::-webkit-scrollbar-thumb {
    background: rgba(99, 102, 241, 0.42);
    border-radius: 999px;
}

body.theme-light ::-webkit-scrollbar-thumb:hover {
    background: rgba(79, 70, 229, 0.72);
}

body.theme-light .text-glow {
    text-shadow: 0 14px 36px rgba(99, 102, 241, 0.18);
}

body.theme-light nav {
    background: rgba(255, 255, 255, 0.7) !important;
    border-color: rgba(148, 163, 184, 0.18) !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

body.theme-light #loader {
    background: linear-gradient(180deg, #f9fbff 0%, #eff5ff 100%);
}

body.theme-light .loader-track {
    background: rgba(148, 163, 184, 0.24);
}

body.theme-light footer {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(244, 247, 251, 0.98)) !important;
    border-color: rgba(148, 163, 184, 0.18) !important;
}

body.theme-light .aura-background-component {
    opacity: 0.48;
    filter: invert(1) hue-rotate(180deg) saturate(0.78) brightness(1.08) contrast(0.88);
}

body.theme-light .page-wash {
    background:
        radial-gradient(circle at 50% 24%, rgba(255, 255, 255, 0.88) 0%, rgba(249, 251, 255, 0.76) 26%, rgba(248, 250, 252, 0.28) 56%, rgba(248, 250, 252, 0.12) 74%, transparent 100%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.34) 0%, rgba(248, 250, 252, 0.12) 30%, rgba(244, 247, 251, 0.26) 100%);
}

body.theme-light .gradient-border-wrapper {
    background: linear-gradient(180deg, var(--surface-strong), rgba(248, 250, 252, 0.92));
    box-shadow: var(--shadow-soft);
}

body.theme-light .gradient-border-wrapper::before {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(148, 163, 184, 0.22) 52%, rgba(99, 102, 241, 0.24));
}

body.theme-light .hero-content .bg-gradient-to-b {
    background-image: linear-gradient(to bottom, #4338ca, #4f46e5 54%, #0f172a) !important;
}

body.theme-light .gradient-btn,
body.theme-light .primary-btn {
    background: linear-gradient(135deg, var(--accent), #5b5bd6 58%, var(--accent-alt));
    color: #ffffff !important;
    border: 1px solid rgba(99, 102, 241, 0.22);
    box-shadow: 0 18px 42px rgba(79, 70, 229, 0.22);
}

body.theme-light .gradient-btn:hover,
body.theme-light .primary-btn:hover {
    background: linear-gradient(135deg, var(--accent-strong), #4f46e5 58%, #6d28d9);
    box-shadow: 0 24px 50px rgba(79, 70, 229, 0.26);
}

body.theme-light .option-card {
    background: rgba(255, 255, 255, 0.92);
    border-color: var(--border-soft) !important;
    box-shadow: 0 12px 26px rgba(15, 23, 42, 0.04);
}

body.theme-light .option-card:hover {
    border-color: rgba(99, 102, 241, 0.28) !important;
    background: rgba(79, 70, 229, 0.05);
}

body.theme-light .option-card.selected {
    border-color: rgba(79, 70, 229, 0.46) !important;
    background: rgba(79, 70, 229, 0.08);
    box-shadow: 0 20px 44px rgba(79, 70, 229, 0.12);
}

body.theme-light .option-radio {
    border-color: rgba(99, 102, 241, 0.28);
    background: rgba(255, 255, 255, 0.86);
}

body.theme-light .result-card {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08), rgba(139, 92, 246, 0.04));
    border: 1px solid rgba(99, 102, 241, 0.22);
    box-shadow: var(--shadow-card);
}

body.theme-light .score-circle {
    background: conic-gradient(var(--accent) var(--score), rgba(226, 232, 240, 0.96) var(--score));
}

body.theme-light .score-circle-inner {
    background: rgba(255, 255, 255, 0.95);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

body.theme-light input[type="text"],
body.theme-light input[type="email"],
body.theme-light input[type="tel"],
body.theme-light select,
body.theme-light textarea {
    background: rgba(255, 255, 255, 0.92) !important;
    border: 1px solid var(--border-soft) !important;
    color: var(--text-strong) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

body.theme-light input::placeholder,
body.theme-light textarea::placeholder {
    color: #94a3b8;
}

body.theme-light input:focus,
body.theme-light select:focus,
body.theme-light textarea:focus {
    border-color: rgba(79, 70, 229, 0.34) !important;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12) !important;
}

body.theme-light .bg-grid {
    background-image: linear-gradient(to right, rgba(148, 163, 184, 0.15) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(148, 163, 184, 0.15) 1px, transparent 1px);
}

body.theme-light .text-white {
    color: var(--text-strong) !important;
}

body.theme-light .text-slate-400,
body.theme-light .text-gray-400,
body.theme-light .text-slate-500,
body.theme-light .text-gray-500 {
    color: var(--text-body) !important;
}

body.theme-light .text-gray-600 {
    color: var(--text-muted) !important;
}

body.theme-light .text-zinc-500,
body.theme-light .text-indigo-300,
body.theme-light .text-indigo-400,
body.theme-light .text-purple-400 {
    color: var(--accent) !important;
}

body.theme-light .bg-indigo-950\/20 {
    background-color: rgba(79, 70, 229, 0.08) !important;
}

body.theme-light .hover\:text-white:hover {
    color: var(--text-strong) !important;
}

body.theme-light .border-white\/5,
body.theme-light .border-white\/10,
body.theme-light .border-white\/20 {
    border-color: var(--border-soft) !important;
}

body.theme-light .bg-\[\#030303\],
body.theme-light .bg-\[\#0A0A0A\],
body.theme-light .bg-\[\#111\],
body.theme-light .bg-black {
    background: rgba(255, 255, 255, 0.92) !important;
}

body.theme-light .bg-white\/5,
body.theme-light .bg-white\/10 {
    background-color: rgba(79, 70, 229, 0.08) !important;
}

body.theme-light .bg-white.text-black {
    background: linear-gradient(135deg, var(--accent), #5b5bd6 58%, var(--accent-alt)) !important;
    color: #ffffff !important;
    border: 1px solid rgba(99, 102, 241, 0.22);
    box-shadow: 0 18px 42px rgba(79, 70, 229, 0.22);
}

body.theme-light .hover\:bg-gray-100:hover,
body.theme-light .hover\:bg-gray-200:hover {
    background: linear-gradient(135deg, var(--accent-strong), #4f46e5 58%, #6d28d9) !important;
    color: #ffffff !important;
}

body.theme-light .hover\:bg-white\/5:hover,
body.theme-light .hover\:bg-white\/20:hover {
    background-color: rgba(79, 70, 229, 0.12) !important;
}

body.theme-light #integra {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.44), rgba(255, 255, 255, 0.7)) !important;
}

body.theme-light #automatiza {
    background: linear-gradient(180deg, rgba(238, 242, 255, 0.32), rgba(255, 255, 255, 0.14)) !important;
}

body.theme-light #analitica {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(238, 242, 255, 0.34)) !important;
}

body.theme-light #contacto {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(244, 247, 251, 0.98)) !important;
}

body.theme-light .shadow-2xl {
    box-shadow: var(--shadow-soft) !important;
}

body.theme-light .hover\:shadow-indigo-500\/10:hover {
    box-shadow: var(--shadow-card) !important;
}
