/* Light palette adapted from DESIGN-revolut.md. Existing layout and behaviour stay intact. */
html[data-theme="light"] {
  color-scheme: light;
  --sk-canvas: #ffffff;
  --sk-soft: #f4f4f4;
  --sk-card: #ffffff;
  --sk-ink: #191c1f;
  --sk-muted: #505a63;
  --sk-border: #e2e2e7;
  --sk-primary: #191c1f;
  --sk-primary-soft: #eeeeee;
  --sk-success: #006400;
  --sk-danger: #b42335;
  background: var(--sk-canvas);
}
html[data-theme="light"] body { background: var(--sk-canvas) !important; color: var(--sk-ink) !important; }

/* Bridge the shared utility palette, including classes selected by Alpine. */
[data-theme="light"] :is(.text-white, .text-slate-100, .text-slate-200) { color: var(--sk-ink) !important; }
[data-theme="light"] :is(.text-slate-300, .text-slate-400, .text-slate-500, .text-slate-600) { color: var(--sk-muted) !important; }
[data-theme="light"] :is(.text-indigo-200, .text-indigo-300, .text-indigo-400, .text-indigo-500, .text-indigo-600, .text-violet-400, .text-violet-500) { color: var(--sk-primary) !important; }
[data-theme="light"] :is(.text-green-300, .text-green-400, .text-emerald-400) { color: var(--sk-success) !important; }
[data-theme="light"] [class~="text-[#53fc18]"] { color: var(--sk-success) !important; }
[data-theme="light"] :is(.text-red-300, .text-red-400, .text-red-500) { color: var(--sk-danger) !important; }
[data-theme="light"] :is(.text-yellow-300, .text-yellow-400) { color: #946200 !important; }
[data-theme="light"] :is(.bg-slate-950, [class~="bg-slate-950/60"], [class~="bg-slate-950/80"], .bg-slate-900, [class~="bg-slate-900/60"], [class~="bg-slate-900/70"], [class~="bg-slate-900/80"], [class~="bg-slate-900/95"], [class~="bg-[#0a0a0f]"]) { background-color: var(--sk-card) !important; }
[data-theme="light"] :is(.bg-slate-800, [class~="bg-slate-800/40"], [class~="bg-slate-800/60"], .bg-slate-700, [class~="bg-slate-700/20"], .bg-slate-600, [class~="bg-white/5"], [class~="bg-white/10"], [class~="bg-white/20"]) { background-color: var(--sk-soft) !important; }
[data-theme="light"] :is([class~="bg-indigo-600/10"], [class~="bg-indigo-600/15"], [class~="bg-indigo-600/20"], [class~="bg-indigo-500/10"], [class~="bg-indigo-500/20"], [class~="bg-indigo-950/40"], [class~="bg-violet-600/10"]) { background-color: var(--sk-primary-soft) !important; }
[data-theme="light"] :is([class~="border-white/5"], [class~="border-white/10"], [class~="border-white/20"], .border-slate-600, .border-slate-700) { border-color: var(--sk-border) !important; }
[data-theme="light"] :is([class~="border-indigo-500/30"], [class~="border-indigo-500/50"], .border-indigo-500) { border-color: var(--sk-ink) !important; }
[data-theme="light"] :is([class~="bg-green-600/20"], [class~="bg-green-500/10"], [class~="bg-green-500/20"]) { background-color: #e8f4ec !important; }
[data-theme="light"] :is([class~="bg-red-500/10"], [class~="bg-red-600/20"], [class~="bg-red-500/20"]) { background-color: #fcebed !important; }
[data-theme="light"] :is([class~="bg-yellow-500/10"], [class~="bg-yellow-500/20"]) { background-color: #fff5d9 !important; }
[data-theme="light"] :is(.bg-indigo-600, .bg-indigo-500, .bg-violet-600) { background-color: var(--sk-primary) !important; }
[data-theme="light"] :is(.bg-indigo-600, .bg-indigo-500, .bg-violet-600, .bg-red-600, .bg-green-600, .bg-black):is(.text-white),
[data-theme="light"] :is(.bg-indigo-600, .bg-indigo-500, .bg-violet-600, .bg-red-600, .bg-green-600, .bg-black) .text-white { color: #ffffff !important; }
[data-theme="light"] [class*="bg-gradient-to-"] { background-image: none !important; }
[data-theme="light"] [class*="shadow"] { box-shadow: none !important; }
[data-theme="light"] :is(button, a):focus-visible { outline: 2px solid var(--sk-primary); outline-offset: 3px; }
[data-theme="light"] :is(input, textarea, select):not([type="range"]):not([type="checkbox"]):not([type="radio"]) { background: var(--sk-card) !important; color: var(--sk-ink) !important; border-color: var(--sk-border) !important; border-radius: 12px; }
[data-theme="light"] :is(input, textarea)::placeholder { color: #727a82; }
[data-theme="light"] :is(input, textarea, select):focus { border-color: var(--sk-primary) !important; }
[data-theme="light"] input[type="range"] { accent-color: var(--sk-primary); }
[data-theme="light"] button:not(.rating-star):not(.faq-btn),
[data-theme="light"] a:is(.rounded-lg, .rounded-xl) { border-radius: 9999px; }
[data-theme="light"] button[aria-pressed] { border-radius: 12px !important; }
[data-theme="light"] :is(button, a):is(.bg-indigo-600, .bg-violet-600) { background: var(--sk-ink) !important; color: #ffffff !important; }
[data-theme="light"] :is(button, a):is(.bg-indigo-600, .bg-violet-600):hover { background: #3a3d40 !important; }
[data-theme="light"] :is(button, a):disabled { cursor: not-allowed; }
[data-theme="light"] [class~="hover:text-white"]:hover { color: var(--sk-ink) !important; }
[data-theme="light"] [class~="hover:bg-white/5"]:hover { background-color: var(--sk-soft) !important; }

/* Public pages: white catalogue, soft surfaces, editorial typography. */
[data-theme="light"] body::before,
[data-theme="light"] body::after,
[data-theme="light"] :is(#services, #reviews, #faq)::before,
[data-theme="light"] :is(#services, #reviews, #faq)::after,
[data-theme="light"] body > section:first-of-type::after { background: none; }
[data-theme="light"] :is(#services, #faq) { background: var(--sk-soft); }
[data-theme="light"] #navbar { background: transparent !important; border: 0 !important; border-radius: 0; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
[data-theme="light"] #navbar-wrap { background: rgba(255,255,255,.78); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
[data-theme="light"] :is(.dropdown-menu, #category-dropdown-menu) { background: var(--sk-card) !important; border-color: var(--sk-border) !important; }
[data-theme="light"] .dropdown-menu { box-shadow: 0 4px 16px rgba(25,28,31,.08), 0 1px 3px rgba(25,28,31,.04) !important; }
[data-theme="light"] :is(.nav-btn, .mob-close) { color: var(--sk-muted) !important; }
[data-theme="light"] .nav-btn:hover { color: var(--sk-ink) !important; background: var(--sk-soft); border-color: transparent; }
[data-theme="light"] .nav-btn::before,
[data-theme="light"] .nav-btn::after { display: none; }
[data-theme="light"] .burger-line { background: var(--sk-ink); }
[data-theme="light"] :is(h1, h2, h3)[style*="color:"],
[data-theme="light"] [style*="color: #e2e8f0"] { color: var(--sk-ink) !important; }
[data-theme="light"] :is(p, span, label)[style*="color: rgb(148"],
[data-theme="light"] [style*="color: #cbd5e1"] { color: var(--sk-muted) !important; }
[data-theme="light"] :is(a, button)[style*="background:linear-gradient"],
[data-theme="light"] :is(a, button)[style*="background: linear-gradient"],
[data-theme="light"] #review-submit-btn { background: var(--sk-ink) !important; color: #ffffff !important; border-radius: 9999px; box-shadow: none !important; }
[data-theme="light"] :is(a, button)[style*="background:linear-gradient"] *,
[data-theme="light"] :is(a, button)[style*="background: linear-gradient"] * { color: inherit !important; }
[data-theme="light"] :is(.plan-card, .product-card, .product-list-item, .review-card, .blog-card) { background: var(--sk-card) !important; border-color: var(--sk-border) !important; border-radius: 20px; box-shadow: none !important; }
[data-theme="light"] .review-card:hover { border-color: var(--sk-ink) !important; box-shadow: none !important; }
[data-theme="light"] .plan-card::before { display: none; }
[data-theme="light"] :is(.plan-title, .product-title, .faq-btn) { color: var(--sk-ink); }
[data-theme="light"] :is(.product-info, .duration, .faq-answer) { color: var(--sk-muted); }
[data-theme="light"] :is(.price, .product-price) { background: none; color: var(--sk-primary); -webkit-text-fill-color: var(--sk-primary); }
[data-theme="light"] .price-item { border-color: var(--sk-border); }
[data-theme="light"] .popular-badge { background: transparent; padding: 0; box-shadow: none; }
[data-theme="light"] .cta-button { border-radius: 9999px; background: var(--sk-ink); box-shadow: none; }
[data-theme="light"] .cta-button:hover { background: #3a3d40; box-shadow: none; }
[data-theme="light"] .category-btn { border-radius: 9999px; background: var(--sk-card); color: var(--sk-muted); border-color: var(--sk-border); }
[data-theme="light"] .category-btn::before { display: none; }
[data-theme="light"] .category-btn:hover { background: var(--sk-primary-soft); color: var(--sk-primary); border-color: var(--sk-ink); }
[data-theme="light"] .category-btn.active { background: var(--sk-primary); color: #ffffff; border-color: var(--sk-primary); }
[data-theme="light"] .faq-card { border-color: var(--sk-border); }
[data-theme="light"] #video-container { background: var(--sk-soft) !important; border-color: var(--sk-border) !important; box-shadow: none !important; }
[data-theme="light"] .hero-beams { opacity: .8; }
[data-theme="light"] .hero-beams .beam { mix-blend-mode: multiply; }
[data-theme="light"] footer { background: var(--sk-soft) !important; border-color: var(--sk-border) !important; }
[data-theme="light"] .payment-method-wrapper { background: var(--sk-card); border-color: var(--sk-border); box-shadow: none; }
[data-theme="light"] img[src*="forseta-logo"] { filter: brightness(0) !important; }

/* Application surfaces keep their existing component sizes and alignment. */
[data-theme="light"] #dashboard-sidebar { background: var(--sk-card) !important; border-color: var(--sk-border) !important; }
[data-theme="light"] #dashboard-sidebar nav a[class~="bg-indigo-600"] { background: var(--sk-primary-soft) !important; color: var(--sk-primary) !important; }
[data-theme="light"] #dashboard-sidebar nav a[class~="bg-red-600"] { background: #fcebed !important; color: var(--sk-danger) !important; }
[data-theme="light"] #dashboard-content-frame { min-height: calc(100vh - 64px); background: var(--sk-soft); }
[data-theme="light"] body > div > header { background: rgba(255,255,255,.94) !important; }
[data-theme="light"] #main-content [class*="bg-gradient-to-"] { background: var(--sk-card) !important; }
[data-theme="light"] #main-content .absolute[class*="blur-"] { opacity: .2; }
[data-theme="light"] #dashboard-loading { background: var(--sk-soft); }
[data-theme="light"] .dashboard-cat-loader p { color: var(--sk-muted); }
[data-theme="light"] .dashboard-loading-bar { background: var(--sk-border); }
[data-theme="light"] .dashboard-loading-bar::after { background: var(--sk-primary); }
[data-theme="light"] .prose { color: var(--sk-ink); }
[data-theme="light"] .prose :is(h1, h2, h3, h4, strong) { color: var(--sk-ink); }
[data-theme="light"] .prose a { color: var(--sk-ink); }

@media (min-width: 1024px) { [data-theme="light"] #dashboard-content-frame { min-height: 100vh; } }

/* Neutral interaction states without hover displacement. */
[data-theme="light"] [class*="hover:border-indigo"]:hover { border-color: var(--sk-ink) !important; }
[data-theme="light"] [class*="hover:text-indigo"]:hover { color: var(--sk-ink) !important; }
[data-theme="light"] [class*="hover:bg-indigo"]:hover { background-color: #3a3d40 !important; color: #fff !important; }
[data-theme="light"] :is(.review-card, .blog-card, .cta-button, .payment-method-wrapper):hover,
[data-theme="light"] [class*="hover:-translate"]:hover { transform: none !important; }
[data-theme="light"] .review-card:hover { background: #f8f8f8 !important; }
[data-theme="light"] .blog-card { transition: background-color 150ms ease; }
[data-theme="light"] .blog-card:hover { background: var(--sk-soft) !important; border-color: var(--sk-border) !important; box-shadow: none !important; }
[data-theme="light"] .payment-method-wrapper:hover { background: var(--sk-soft); border-color: var(--sk-ink); box-shadow: none; }
[data-theme="light"] :is(a, button)[style*="background:linear-gradient"]:hover,
[data-theme="light"] :is(a, button)[style*="background: linear-gradient"]:hover,
[data-theme="light"] #review-submit-btn:hover { background: #3a3d40 !important; }
[data-theme="light"] .hero-beams .beam { background: linear-gradient(180deg, rgba(25,28,31,.16), rgba(25,28,31,.07) 40%, transparent 80%); }
[data-theme="light"] .hero-beams .source { background: radial-gradient(ellipse at 50% 50%, rgba(25,28,31,.22), rgba(25,28,31,.08) 45%, transparent 75%); }

[data-theme="light"] .subscription-start:not(:disabled):hover { background: #e8f4ec !important; color: var(--sk-success) !important; border-color: var(--sk-success) !important; }
[data-theme="light"] .subscription-stop:not(:disabled):hover { background: #fcebed !important; color: var(--sk-danger) !important; border-color: var(--sk-danger) !important; }
