:root {
    --color-primary: #111827; /* Dark Gray/Black */
    --color-secondary: #A855F7; /* Purple */
    --color-accent: #FBBF24; /* Amber/Gold */
    --color-urgent: #9333EA; /* Darker Purple for urgency flash */
}
html { scroll-behavior: smooth; }
body {
    font-family: 'Inter', sans-serif;
    background-color: var(--color-primary);
    color: #D1D5DB; /* Gray 300 */
}
.container { max-width: 1100px; }
.hero-bg { background: linear-gradient(145deg, #111827 0%, #000000 100%); }
.timer-box {
    background-color: rgba(168, 85, 247, 0.1);
    border: 1px solid var(--color-secondary);
    box-shadow: 0 0 25px rgba(168, 85, 247, 0.2);
}
.timer-segment {
    background: #000;
    color: #F9FAFB;
    border: 1px solid #374151;
}
.cta-button {
    transition: all 0.3s ease;
    background-color: var(--color-accent);
    box-shadow: 0 4px 14px 0 rgba(251, 191, 36, 0.2);
}
.cta-button:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 6px 20px 0 rgba(251, 191, 36, 0.3);
}
@keyframes pulse { 0%, 100% { transform: scale(1); box-shadow: 0 4px 14px 0 rgba(251, 191, 36, 0.2); } 50% { transform: scale(1.05); box-shadow: 0 6px 20px 0 rgba(251, 191, 36, 0.4); } }
@keyframes flash { 0%, 100% { background-color: var(--color-urgent); } 50% { background-color: #A855F7; } }
.pulse-urgent { animation: pulse 1.5s infinite; }
.flash-urgent { background: var(--color-urgent); animation: flash 1.5s infinite; }
.partner-logo-container {
    -webkit-mask-image: linear-gradient(to right, transparent, #000 10%, #000 90%, transparent);
    mask-image: linear-gradient(to right, transparent, #000 10%, #000 90%, transparent);
}
@keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.animate-scroll { animation: scroll 40s linear infinite; }
.modal { transition: opacity 0.3s ease; }
@keyframes bubble-pulse { 0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(251, 191, 36, 0.7); } 50% { transform: scale(1.05); box-shadow: 0 0 0 10px rgba(251, 191, 36, 0); } }
.chat-bubble {
    animation: bubble-pulse 2s infinite;
}
.chat-container::-webkit-scrollbar { display: none; }
.chat-container { -ms-overflow-style: none; scrollbar-width: none; }

/* Cookie Toggle Switch Styles */
.cookie-toggle {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
}
.cookie-toggle input {
    opacity: 0;
    width: 0;
    height: 0;
}
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #374151;
    transition: .4s;
    border-radius: 28px;
}
.slider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}
input:checked + .slider {
    background-color: var(--color-secondary);
}
input:checked:disabled + .slider {
    background-color: #4B5563;
}
input:focus + .slider {
    box-shadow: 0 0 1px var(--color-secondary);
}
input:checked + .slider:before {
    transform: translateX(22px);
}

