/* CampSecure Theme - Dunkelgrün/Teal Farbschema */

/* Primary Colors - Dunkelgrün/Teal */
:root {
    --campsecure-primary: #032905; /* Sehr dunkles Grün */
    --campsecure-primary-dark: #08463a;
    --campsecure-primary-light: #F3FFEA; /* Helle Schrift in grüner Box */
    
    --campsecure-accent: #f97316; /* Orange für Security/Alarm */
    --campsecure-accent-light: #fb923c;
    
    --campsecure-dark: #0a4d3f;
    --campsecure-light: #a3e4d4;
    --campsecure-card: #0f5d4f;
    --campsecure-input: #1a9b85;
    --campsecure-border: rgba(163, 228, 212, 0.2);
    --campsecure-text-dark: #032905; /* Dunkelgrün für Texte */
}

/* Background Colors */
.bg-campsecure-primary {
    background-color: var(--campsecure-primary) !important;
}

.bg-campsecure-dark {
    background-color: var(--campsecure-dark) !important;
}

.bg-campsecure-light {
    background-color: #e6f7f3 !important;
}

.bg-campsecure-card {
    background-color: var(--campsecure-card) !important;
}

.campsecure-hero {
    background: linear-gradient(135deg, var(--campsecure-dark) 0%, var(--campsecure-primary) 100%);
}

/* Text Colors */
.text-campsecure-light {
    color: var(--campsecure-light) !important;
}

.text-campsecure-primary-light {
    color: var(--campsecure-primary-light) !important;
}

.text-campsecure-accent {
    color: var(--campsecure-accent) !important;
}

.text-white {
    color: #ffffff !important;
}

/* Buttons */
.btn-campsecure {
    background-color: var(--campsecure-primary);
    border-color: var(--campsecure-primary);
    color: white;
}

.btn-campsecure:hover {
    background-color: var(--campsecure-primary-dark);
    border-color: var(--campsecure-primary-dark);
    color: white;
}

.btn-outline-campsecure {
    border-color: var(--campsecure-primary);
    color: var(--campsecure-primary);
}

.btn-outline-campsecure:hover {
    background-color: var(--campsecure-primary);
    color: white;
}

/* Icon Styles */
.icon.text-campsecure-accent,
.text-campsecure-accent {
    color: var(--campsecure-accent) !important;
}

/* Form Controls */
.form-control.bg-campsecure-input {
    background-color: rgba(26, 155, 133, 0.2) !important;
    border-color: var(--campsecure-primary);
    color: white;
}

.form-control.bg-campsecure-input:focus {
    background-color: rgba(26, 155, 133, 0.3) !important;
    border-color: var(--campsecure-accent);
    color: white;
}

.form-control.bg-campsecure-input::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

/* Labels */
label {
    color: var(--campsecure-light);
}

/* Border Colors */
.border-campsecure-border {
    border-color: var(--campsecure-border) !important;
}

/* Badge */
.badge.bg-campsecure-accent {
    background-color: var(--campsecure-accent) !important;
    color: white;
}

/* Hero - no overlay, just content on top */
.campsecure-hero {
    position: relative;
}

.campsecure-hero > .container {
    position: relative;
    z-index: 2;
}

/* Accordion in dark mode */
.accordion.dark .accordion-button {
    background-color: transparent;
    color: white;
}

.accordion.dark .accordion-button:not(.collapsed) {
    background-color: transparent;
    color: white;
}

.accordion.dark .accordion-item {
    background-color: transparent;
}

.accordion.dark .accordion-body {
    color: var(--campsecure-light);
}

/* Price Box Highlight */
.price-box.border-campsecure-accent {
    border-color: var(--campsecure-accent) !important;
}

/* Testimonials */
.testimonial-card {
    background: transparent;
}

/* Cards */
.card.bg-transparent {
    background-color: transparent;
}

/* Store Buttons */
.store-button {
    transition: transform 0.2s;
}

.store-button:hover {
    transform: translateY(-2px);
}

/* Smooth Transitions */
.nav-link,
.btn,
.card {
    transition: all 0.3s ease;
}

/* Hide Purple Classes - prevent conflicts */
.purple-light {
    background: var(--campsecure-dark);
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--campsecure-dark);
}

::-webkit-scrollbar-thumb {
    background: var(--campsecure-primary);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--campsecure-primary-light);
}

/* Mobile Optimizations */
@media (max-width: 768px) {
    .campsecure-hero {
        padding-top: 100px !important;
    }
    
    .display-6 {
        font-size: 2rem !important;
    }
    
    .lead {
        font-size: 1rem !important;
    }
}

/* Icon Container Fix */
.icon.icon-xl {
    width: 64px;
    height: 64px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.icon.icon-xl i,
.icon.icon-xl .fa-solid,
.icon.icon-xl .fa {
    font-size: 2.5rem !important;
    color: white !important;
    display: block !important;
}

/* Icon SVG Path fix */
.icon svg {
    width: 100%;
    height: 100%;
}

/* Animation for Icons */
@keyframes pulse-alarm {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.icon-animate {
    animation: pulse-alarm 2s ease-in-out infinite;
}

/* Hover Effects */
.icon:hover {
    transform: scale(1.1);
    transition: transform 0.2s ease;
}

