/**
 * Aeris Minimal Theme Overrides
 * Customizations for ultra-minimal glassmorphism design
 */

/* Base Theme Overrides */
:root {
    /* Minimal color adjustments */
    --aeris-shadow-minimal: 0 2px 4px rgba(0, 0, 0, 0.04);
    --aeris-shadow-soft: 0 4px 16px rgba(0, 0, 0, 0.06);
    --aeris-glass-bg: rgba(255, 255, 255, 0.8);
    --aeris-glass-border: rgba(255, 255, 255, 0.3);
}

/* Global Minimal Styling */
body.aeris-minimal-theme {
    font-weight: 300;
    color: #374151;
}

/* Enhanced Glassmorphism Effects for Minimal Theme */
.aeris-glass-minimal {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.03);
}

.aeris-glass-light {
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.25);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}

/* Header Overrides */
nav {
    font-weight: 300;
}

nav .aeris-glass-minimal {
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04);
}

nav a, nav button {
    font-weight: 300;
}

/* Button Style Overrides */
.btn-primary, .btn-secondary {
    font-weight: 300;
    box-shadow: var(--aeris-shadow-minimal);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.btn-primary:hover, .btn-secondary:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-1px);
}

/* Form Overrides */
input, textarea, select {
    font-weight: 300;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(156, 163, 175, 0.3);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02);
}

input:focus, textarea:focus, select:focus {
    background: rgba(255, 255, 255, 0.8);
    border-color: rgba(156, 163, 175, 0.5);
    box-shadow: 0 0 0 3px rgba(156, 163, 175, 0.08);
}

/* Typography Overrides */
h1, h2, h3, h4, h5, h6 {
    font-weight: 200;
    color: #111827;
}

h1 { font-weight: 100; }
h2 { font-weight: 200; }
h3 { font-weight: 300; }

/* Shadow Classes */
.shadow-minimal {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04) !important;
}

.shadow-soft {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
}

/* Animation Overrides - More Subtle */
.aeris-minimal-animate-in {
    opacity: 0;
    animation: aeris-minimal-fade-in 1.5s ease-out forwards;
}

@keyframes aeris-minimal-fade-in {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Component Specific Overrides */

/* Slideshow Minimal */
.aeris-slideshow {
    border-radius: 0;
    overflow: hidden;
}

.aeris-slideshow-caption {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    font-weight: 300;
}

/* Gallery Minimal */
.aeris-gallery-item {
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: var(--aeris-shadow-minimal);
}

.aeris-gallery-item:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-2px);
}

/* Contact Form Minimal */
.aeris-contact-form {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border-radius: 1.5rem;
    padding: 2rem;
}

/* Footer Minimal */
footer {
    background: linear-gradient(to bottom, rgba(249, 250, 251, 0.8), rgba(255, 255, 255, 0.9));
    backdrop-filter: blur(10px);
    font-weight: 300;
}

/* Accordion Minimal */
.accordion-item {
    background: var(--aeris-glass-bg);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1rem;
    margin-bottom: 0.5rem;
    box-shadow: var(--aeris-shadow-minimal);
}

.accordion-header {
    font-weight: 300;
    padding: 1.5rem;
}

.accordion-content {
    font-weight: 300;
    padding: 0 1.5rem 1.5rem;
}

/* Team Cards Minimal */
.team-card {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    transition: all 0.3s ease;
}

.team-card:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-2px);
}

.team-card h3, .team-card h4 {
    font-weight: 300;
}

/* Testimonials Minimal */
.testimonial-card {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    font-weight: 300;
}

.testimonial-quote {
    font-weight: 300;
    font-style: italic;
}

/* Property Cards Minimal */
.property-card {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    transition: all 0.3s ease;
}

.property-card:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-2px);
}

.property-card .price {
    font-weight: 300;
}

/* Property Details Table Minimal */
.property-details-table {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
}

.property-details-table th,
.property-details-table td {
    font-weight: 300;
    border-bottom: 1px solid rgba(156, 163, 175, 0.1);
}

/* Property Features Minimal */
.feature-item {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1rem;
    box-shadow: var(--aeris-shadow-minimal);
    padding: 1rem;
    font-weight: 300;
}

/* Agent Listings Minimal */
.agent-card {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    transition: all 0.3s ease;
}

.agent-card:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-2px);
}

/* Media Component Minimal */
.media-container {
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: var(--aeris-shadow-minimal);
}

/* Mortgage Calculator Minimal */
.mortgage-calculator {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    padding: 2rem;
}

.mortgage-calculator input,
.mortgage-calculator select {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(156, 163, 175, 0.3);
    font-weight: 300;
}

/* Property Search Minimal */
.property-search {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    padding: 2rem;
}

.property-search input,
.property-search select {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(156, 163, 175, 0.3);
    font-weight: 300;
}

/* Posts Minimal */
.post-card {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    transition: all 0.3s ease;
}

.post-card:hover {
    box-shadow: var(--aeris-shadow-soft);
    transform: translateY(-2px);
}

.post-card h3 {
    font-weight: 300;
}

.post-card .excerpt {
    font-weight: 300;
}

/* Body Content Minimal */
.body-content {
    font-weight: 300;
    line-height: 1.7;
}

.body-content h1,
.body-content h2,
.body-content h3,
.body-content h4,
.body-content h5,
.body-content h6 {
    font-weight: 300;
    margin-bottom: 1rem;
}

/* Image Full Width Minimal */
.image-full-width {
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: var(--aeris-shadow-minimal);
}

/* Dynamic Form Minimal */
.dynamic-form {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1.5rem;
    box-shadow: var(--aeris-shadow-minimal);
    padding: 2rem;
}

.dynamic-form input,
.dynamic-form textarea,
.dynamic-form select {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(156, 163, 175, 0.3);
    font-weight: 300;
}

/* RSS Feed Minimal */
.rss-feed-item {
    background: var(--aeris-glass-bg);
    backdrop-filter: blur(20px);
    border: 1px solid var(--aeris-glass-border);
    border-radius: 1rem;
    box-shadow: var(--aeris-shadow-minimal);
    padding: 1.5rem;
    margin-bottom: 1rem;
}

.rss-feed-item h3 {
    font-weight: 300;
}

/* Sticky Buttons Minimal Overrides */
.aeris-floating-btn {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15), 0 2px 10px rgba(0, 0, 0, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.9);
}

.aeris-mobile-sticky {
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
    border-top: 1px solid rgba(156, 163, 175, 0.3);
}

/* Minimal Opacity Levels */
.opacity-3 { opacity: 0.03; }
.opacity-4 { opacity: 0.04; }
.opacity-5 { opacity: 0.05; }

/* Minimal Border Radius */
.rounded-minimal { border-radius: 0.75rem; }
.rounded-soft { border-radius: 1rem; }

/* Responsive Minimal Adjustments */
@media (max-width: 768px) {
    body.aeris-minimal-theme {
        font-weight: 400;
    }
    
    h1, h2, h3 {
        font-weight: 300;
    }
}

/* High Contrast Mode Support */
@media (prefers-contrast: high) {
    .aeris-glass-minimal,
    .aeris-glass-light {
        background: rgba(255, 255, 255, 0.95);
        border: 2px solid rgba(0, 0, 0, 0.2);
    }
}

/* Enhanced Ultra-Minimal Utilities */
.aeris-glass-ultra {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(28px);
    -webkit-backdrop-filter: blur(28px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.025);
}

.aeris-glass-subtle {
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.02);
}

/* Enhanced Shadow Utilities */
.shadow-ultra-minimal {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.shadow-gentle {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03) !important;
}

.shadow-elevated {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04) !important;
}

.shadow-floating {
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.06) !important;
}

/* Minimal Typography Utilities */
.text-ultra-light {
    font-weight: 200 !important;
}

.text-minimal {
    font-weight: 300 !important;
    color: rgba(55, 65, 81, 0.85) !important;
}

.text-minimal-heading {
    font-weight: 200 !important;
    letter-spacing: -0.025em !important;
    color: rgba(17, 24, 39, 0.9) !important;
}

/* Minimal Border Utilities */
.border-minimal {
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.border-soft {
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
}

/* Print Styles */
@media print {
    .aeris-glass-minimal,
    .aeris-glass-light,
    .aeris-glass-ultra,
    .aeris-glass-subtle {
        background: white !important;
        border: 1px solid #e5e7eb !important;
        box-shadow: none !important;
    }
}