/* Oblio Style Theme: Clean, Light, Orange Accents */
body { 
    background-color: #f1f5f9; /* Slate deschis, specific dashboard-urilor SaaS */
    color: #1e293b; /* Text gri închis (Slate 800) pentru lizibilitate */
    overflow-x: hidden; 
}

.glass-nav { 
    background: rgba(255, 255, 255, 0.9); /* Alb translucid */
    backdrop-filter: blur(20px); 
    border-bottom: 1px solid #e2e8f0; /* Border subtil gri */
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1); /* Umbră fină */
}

.glass-card { 
    background: rgba(255, 255, 255, 0.8); /* Card alb */
    backdrop-filter: blur(12px); 
    border: 1px solid #e2e8f0; 
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); /* Umbră soft */
}

/* Gradient bazat pe brandul Oblio (Portocaliu spre Roșu) */
.text-gradient { 
    background: linear-gradient(to right, #ff5722, #f97316, #ef4444); 
    -webkit-background-clip: text; 
    -webkit-text-fill-color: transparent; 
}

/* Cursorul devine portocaliu */
.typing-cursor::after { 
    content: '|'; 
    animation: blink 1s step-start infinite; 
    color: #ff5722; 
    margin-left: 2px; 
}
@keyframes blink { 50% { opacity: 0; } }

/* Spotlight adaptat pentru light mode (mai subtil) */
.spotlight-card { position: relative; overflow: hidden; }
.spotlight-card::before { 
    content: ''; 
    position: absolute; 
    top: 0; left: 0; right: 0; bottom: 0; 
    background: radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), rgba(255, 87, 34, 0.08), transparent 40%); /* Glow portocaliu foarte slab */
    z-index: 1; 
    opacity: 0; 
    transition: opacity 0.5s; 
    pointer-events: none; 
}
.spotlight-card:hover::before { opacity: 1; }

.tilt-card { transition: transform 0.1s ease-out; transform-style: preserve-3d; }

/* Scrollbar Gri/Silver */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Am scos Noise-ul sau l-am făcut extrem de subtil pe alb, 
   dar de obicei Oblio e "clean". Îl las invizibil sau foarte fin. */
.bg-noise { 
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; 
    pointer-events: none; z-index: 9999; opacity: 0.015; /* Opacitate redusă drastic */
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E"); 
}

/* Slider Styling - Accent Portocaliu */
input[type=range] { -webkit-appearance: none; width: 100%; background: transparent; }
input[type=range]::-webkit-slider-thumb { 
    -webkit-appearance: none; 
    height: 20px; width: 20px; 
    border-radius: 50%; 
    background: #ff5722; /* Oblio Orange */
    cursor: pointer; 
    margin-top: -8px; 
    box-shadow: 0 0 10px rgba(255, 87, 34, 0.4); 
    transition: transform 0.1s; 
}
input[type=range]::-webkit-slider-thumb:hover { transform: scale(1.2); }
input[type=range]::-webkit-slider-runnable-track { 
    width: 100%; height: 4px; cursor: pointer; 
    background: #e2e8f0; /* Track gri deschis */
    border-radius: 2px; 
}

/* Multi-step Form - Accent Portocaliu */
.step-active { display: block; animation: slideUp 0.4s ease-out; }
.step-hidden { display: none; }

/* Radio Buttons Active */
.form-radio:checked + div { 
    border-color: #ff5722; /* Border portocaliu */
    background-color: rgba(255, 87, 34, 0.05); /* Fundal portocaliu foarte pal */
    box-shadow: 0 0 0 1px #ff5722; /* Sharp focus ring */
}