/*
  Rion-inspired theme layer
  - Safe: purely presentational overrides.
  - Works with existing Tailwind utility markup.
*/

:root{
  --rion-bg: #ffffff;
  --rion-surface: #ffffff;
  --rion-text: #0b1220;
  --rion-muted: #5b6474;
  --rion-border: rgba(15, 23, 42, .10);
  --rion-primary: #5b5bff;
  --rion-primary-2: #4f46e5;
  --rion-accent: #00c2ff;
  --rion-radius: 18px;
  --rion-shadow: 0 12px 40px rgba(2, 6, 23, .10);
  --rion-shadow-soft: 0 10px 30px rgba(2, 6, 23, .08);
}

/* Global */
.rion-theme{ background: var(--rion-bg); color: var(--rion-text); }
.rion-theme a{ text-decoration: none; }
.rion-theme .container{ max-width: 1200px; }

/* Top bars */
.rion-theme .bg-slate-900{ background: #0a0f1d !important; }
.rion-theme .border-slate-800{ border-color: rgba(255,255,255,.08) !important; }

/* Header */
.rion-theme header.bg-white{ background: rgba(255,255,255,.92) !important; backdrop-filter: blur(10px); border-bottom: 1px solid var(--rion-border); box-shadow: 0 10px 30px rgba(2, 6, 23, .06) !important; }
.rion-theme header nav a{ position: relative; letter-spacing: .06em; }
.rion-theme header nav a:hover{ color: var(--rion-primary-2) !important; }
.rion-theme header nav a::after{
  content:""; position:absolute; left:0; bottom:-10px; height:2px; width:0;
  background: linear-gradient(90deg, var(--rion-primary), var(--rion-accent));
  transition: width .25s ease;
}
.rion-theme header nav a:hover::after{ width:100%; }

/* Buttons (match existing Tailwind classes) */
.rion-theme .bg-indigo-600{ background: linear-gradient(135deg, var(--rion-primary), var(--rion-primary-2)) !important; }
.rion-theme .hover\:bg-indigo-700:hover{ filter: brightness(1.05); }
.rion-theme .rounded-full{ border-radius: 999px !important; }
.rion-theme .rounded-2xl{ border-radius: var(--rion-radius) !important; }
.rion-theme .rounded-xl{ border-radius: 14px !important; }

/* Cards / sections */
.rion-theme .shadow-lg{ box-shadow: var(--rion-shadow-soft) !important; }
.rion-theme .shadow-xl, .rion-theme .shadow-2xl{ box-shadow: var(--rion-shadow) !important; }
.rion-theme .border, .rion-theme .border-slate-200{ border-color: var(--rion-border) !important; }
.rion-theme .bg-slate-50{ background: #f7f8fb !important; }

/* Slider / hero */
.rion-theme #customSlider{ border-bottom-left-radius: 28px; border-bottom-right-radius: 28px; }
.rion-theme #customSlider .slider-item img{ filter: saturate(1.05) contrast(1.05); }
.rion-theme #customSlider h1{ letter-spacing: -.02em; }

/* Forms */
.rion-theme input[type="text"],
.rion-theme input[type="email"],
.rion-theme input[type="tel"],
.rion-theme input[type="date"],
.rion-theme select,
.rion-theme textarea{
  border-color: var(--rion-border) !important;
  border-radius: 14px !important;
}
.rion-theme input:focus, .rion-theme select:focus, .rion-theme textarea:focus{
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(91, 91, 255, .18) !important;
  border-color: rgba(91, 91, 255, .55) !important;
}

/* Footer */
.rion-theme footer.bg-slate-900{ background: #070b14 !important; }
.rion-theme footer .border-indigo-600{ border-color: rgba(91, 91, 255, .90) !important; }
.rion-theme footer a:hover, .rion-theme footer button:hover{ color: #fff !important; }

/* Cookie banner */
.rion-theme #ccBanner .bg-white{ border-radius: 20px !important; box-shadow: var(--rion-shadow) !important; }
.rion-theme #ccBanner a{ color: var(--rion-primary-2) !important; }

/* Subtle motion */
@media (prefers-reduced-motion: no-preference){
  .rion-theme a, .rion-theme button{ transition: transform .15s ease, filter .15s ease, color .15s ease, background .15s ease; }
  .rion-theme a:hover, .rion-theme button:hover{ transform: translateY(-1px); }
}
