/**
 * CockpitOS Light Theme - Intro Widget Styles
 * 
 * Verantwortlichkeit: Intro Widget Styling
 * Clean, Modern, Responsive
 * 
 * @package CockpitOS_MEC_Light_Theme
 * @version 1.0.0
 */

/* ========================================
   Intro Container
   ======================================== */

.cockpit-intro {
    width: 100%;
}

/* Max Bonn Layout: Text links (50%), Media rechts (50%) */
.cockpit-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50/50 Layout */
    gap: 0; /* Kein Gap - Media klebt direkt an Text-Spalte */
    align-items: stretch; /* Beide Spalten gleich hoch - Equal Height */
}

/* ========================================
   Header (Erweitert gemeinsame Basis-Klassen)
   ======================================== */

/* Nutzt .cockpit-widget-header, .cockpit-widget-eyebrow, etc. als Basis */
/* Widget-spezifische Anpassungen nur wenn nötig */

/* Intro Widget hat keine speziellen Anpassungen - nutzt vollständig die gemeinsamen Klassen */

/* ========================================
   Features List
   ======================================== */

.cockpit-intro__features {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4, 1.5rem);
    margin-bottom: var(--spacing-8, 3rem);
}

.cockpit-intro__feature {
    display: flex;
    align-items: center;
    gap: var(--spacing-3, 1rem);
}

/* Features: Nutzt automatische Textfarbe vom Container-System */
.cockpit-intro__feature-icon {
    flex-shrink: 0;
    font-size: var(--font-size-lg, 1.125rem);
    /* Icon-Farbe wird automatisch vom Container-System gehandhabt */
    display: flex;
    align-items: center;
    justify-content: center;
}

.cockpit-intro__feature-text {
    font-size: var(--font-size-base, 1rem);
    line-height: var(--line-height-normal, 1.6);
    /* Textfarbe wird automatisch vom Container-System gehandhabt */
}

/* ========================================
   CTA Button
   ======================================== */

/* CTA Button: Links ausgerichtet für Max Bonn Layout */
.cockpit-intro__cta-wrapper {
    display: flex;
    justify-content: flex-start; /* Links ausgerichtet */
    margin-top: var(--spacing-4, 1.5rem);
}

/* CTA Button: Nutzt automatische Button-Farben vom Container-System */
.cockpit-intro__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-sm, 0.875rem) var(--spacing-8, 2.5rem);
    /* Button-Farben werden automatisch vom Container-System gehandhabt */
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-bold, 700);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    border-radius: var(--radius-none, 0);
    transition: all var(--transition-base, 0.3s ease);
    border: none;
    cursor: pointer;
}

.cockpit-intro__cta:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.2));
}

/* ========================================
   Text Alignment Variations
   ======================================== */

.cockpit-intro[style*="text-align: left"] .cockpit-intro__content {
    margin-left: 0;
    margin-right: auto;
}

.cockpit-intro[style*="text-align: right"] .cockpit-intro__content {
    margin-left: auto;
    margin-right: 0;
}

.cockpit-intro[style*="text-align: left"] .cockpit-intro__cta-wrapper {
    justify-content: flex-start;
}

.cockpit-intro[style*="text-align: right"] .cockpit-intro__cta-wrapper {
    justify-content: flex-end;
}

/* ========================================
   Text Column (Max Bonn Style - Kein eigener Hintergrund)
   ======================================== */

.cockpit-intro__text-column {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4, 1.5rem);
    /* Kein eigener Hintergrund - nutzt Container-Hintergrund */
    padding: var(--spacing-8, 3rem) var(--spacing-10, 2.5rem); /* Generous Padding */
    justify-content: center; /* Vertikal zentriert */
    min-height: 100%; /* Equal Height mit Media-Spalte */
}

/* Widget Header in Intro: Links ausgerichtet (nicht zentriert) */
.cockpit-intro__text-column .cockpit-widget-header {
    text-align: left; /* Links ausgerichtet für Max Bonn Layout */
    margin-bottom: 0; /* Margin wird durch gap gehandhabt */
}

/* Description in Intro: Nutzt automatische Textfarbe vom Container */
.cockpit-intro__text-column .cockpit-widget-description {
    /* Textfarbe wird automatisch vom Container-System gehandhabt */
}

.cockpit-intro__text-column .cockpit-widget-description p {
    margin-bottom: var(--spacing-4, 1.5rem);
}

.cockpit-intro__text-column .cockpit-widget-description p:last-child {
    margin-bottom: 0;
}

/* ========================================
   Media Column (Max Bonn Style - Equal Height, kein Border Radius)
   ======================================== */

.cockpit-intro__media-column {
    position: relative;
    display: flex;
    align-items: stretch; /* Equal Height mit Text-Spalte */
    min-height: 100%; /* Equal Height */
}

.cockpit-intro__media {
    width: 100%;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe auf angenehme Größe */
    min-height: 400px; /* Mindesthöhe für konsistentes Layout */
    position: relative;
    overflow: hidden;
    border-radius: 0; /* Kein Border Radius - Media klebt direkt an Text */
    display: flex; /* Für Equal Height */
    align-items: stretch; /* Für Equal Height */
}

/* Image */
.cockpit-intro__media--image {
    display: flex;
    align-items: stretch; /* Equal Height */
    justify-content: center;
}

.cockpit-intro__image {
    width: 100%;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe */
    object-fit: cover; /* Füllt Container ohne Verzerrung */
    object-position: center; /* Zentriert den Fokus */
    display: block;
}

/* Video Styles */
.cockpit-intro__video,
.cockpit-intro__video-iframe {
    width: 100%;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe */
    object-fit: cover; /* Füllt Container komplett */
    display: block;
}

/* Video */
.cockpit-intro__media--video {
    position: relative;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe */
    min-height: 400px; /* Mindesthöhe */
}

/* Slideshow */
.cockpit-intro__media--slideshow {
    position: relative;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe */
    min-height: 400px; /* Mindesthöhe */
}

.cockpit-intro__slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.cockpit-intro__slide.active {
    opacity: 1;
}

.cockpit-intro__slide.active {
    opacity: 1;
}

.cockpit-intro__slide-image {
    width: 100%;
    height: 100%;
    max-height: 600px; /* Limitiere Höhe */
    object-fit: cover; /* Füllt Container ohne Verzerrung */
    object-position: center; /* Zentriert den Fokus */
    display: block;
}

/* ========================================
   Responsive
   ======================================== */

@media (max-width: 1024px) {
    .cockpit-intro__grid {
        gap: var(--spacing-6, 2rem);
    }
}

@media (max-width: 768px) {
    /* Mobile: Stack Layout (Text oben, Media unten) */
    .cockpit-intro__grid {
        grid-template-columns: 1fr;
        gap: 0; /* Kein Gap auch auf Mobile */
        align-items: stretch; /* Equal Height auch auf Mobile */
    }
    
    /* Text-Spalte: Padding reduzieren auf Mobile */
    .cockpit-intro__text-column {
        padding: var(--spacing-6, 2rem) var(--spacing-4, 1.5rem);
        min-height: auto; /* Auto auf Mobile - natürliche Höhe */
    }
    
    /* Media: Mindesthöhe auf Mobile, aber Equal Height wenn möglich */
    .cockpit-intro__media-column {
        min-height: auto; /* Auto auf Mobile */
    }
    
    .cockpit-intro__media {
        min-height: 300px; /* Mindesthöhe auf Mobile */
    }
    
    .cockpit-intro__media--slideshow {
        min-height: 300px; /* Mindesthöhe auf Mobile */
    }
    
    .cockpit-intro__slide {
        min-height: 300px; /* Mindesthöhe auf Mobile */
    }
    
    .cockpit-intro__slide-image {
        min-height: 300px; /* Mindesthöhe auf Mobile */
    }
    
    /* Responsive Styles für Header werden von .cockpit-widget-header gehandhabt */
    
    .cockpit-intro__features {
        gap: var(--spacing-3, 1rem);
        margin-bottom: var(--spacing-6, 2rem);
    }
    
    .cockpit-intro__feature-text {
        font-size: 0.9375rem;
    }
    
    .cockpit-intro__cta {
        padding: 0.75rem 2rem;
        font-size: 0.8125rem;
    }
}

@media (max-width: 480px) {
    /* Small Mobile: Padding weiter reduzieren */
    .cockpit-intro__text-column {
        padding: var(--spacing-4, 1.5rem) var(--spacing-3, 1rem);
    }
    
    .cockpit-intro__feature {
        gap: var(--spacing-2, 0.75rem);
    }
    
    .cockpit-intro__cta {
        width: 100%;
        padding: 0.875rem 1.5rem;
    }
}

