/**
 * Mojosoft Elementor Styles
 * 
 * This CSS ensures smooth integration between
 * the theme and Elementor page builder.
 */

/* =========================================
   ELEMENTOR EDITING MODE
   ========================================= */
.elementor-editor-active .site-header {
    display: none !important;
}

.elementor-editor-active .site-footer {
    display: none !important;
}

/* Elementor preview mode */
.elementor-preview {
    background: #030712;
}

/* =========================================
   ELEMENTOR WIDGET RESETS
   ========================================= */

/* Heading Widget */
.elementor-widget-heading .elementor-heading-title {
    color: var(--text-primary, #f1f5f9);
    font-family: var(--font-primary, 'Inter', sans-serif);
}

/* Text Editor Widget */
.elementor-widget-text-editor {
    color: var(--text-secondary, #94a3b8);
}

/* Button Widget */
.elementor-button {
    background: var(--gradient-primary);
    border-radius: 8px;
    font-family: var(--font-mono, 'JetBrains Mono', monospace);
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.elementor-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0, 212, 255, 0.3);
}

.elementor-button-outline {
    background: transparent;
    border: 2px solid var(--primary, #00d4ff);
}

.elementor-button-outline:hover {
    background: var(--primary, #00d4ff);
    color: #030712;
}

/* Icon Widget */
.elementor-icon {
    color: var(--primary, #00d4ff);
}

/* Image Widget */
.elementor-image {
    border-radius: 12px;
}

/* Section / Container */
.elementor-section-wrap {
    max-width: 100%;
}

/* =========================================
   ELEMENTOR THEME BUILDER AREAS
   ========================================= */

/* Header Area */
.elementor-location-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: rgba(3, 7, 18, 0.95);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid #1e293b;
}

/* Footer Area */
.elementor-location-footer {
    background: #111827;
    border-top: 1px solid #1e293b;
}

/* =========================================
   ELEMENTOR TEMPLATE STYLES
   ========================================= */

/* Dark Background Sections */
.elementor-section-dark > .elementor-container {
    background: #0a0a0f;
}

/* Card Style */
.elementor-template-card {
    background: #111827;
    border: 1px solid #1e293b;
    border-radius: 16px;
    padding: 2rem;
    transition: all 0.3s ease;
}

.elementor-template-card:hover {
    border-color: var(--primary, #00d4ff);
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

/* Icon Box */
.elementor-icon-box-wrapper {
    padding: 1.5rem;
}

.elementor-icon-box-icon {
    margin-bottom: 1rem;
}

/* =========================================
   ELEMENTOR FORM WIDGET STYLES
   ========================================= */
.elementor-widget-form .elementor-text-field,
.elementor-widget-form .elementor-select {
    background: #030712;
    border: 1px solid #1e293b;
    border-radius: 8px;
    color: #f1f5f9;
    padding: 1rem;
}

.elementor-widget-form .elementor-text-field:focus,
.elementor-widget-form .elementor-select:focus {
    border-color: #00d4ff;
    box-shadow: 0 0 0 3px rgba(0, 212, 255, 0.1);
}

/* =========================================
   ELEMENTOR GLOBAL COLORS (KIT)
   ========================================= */
:root {
    /* Primary Color */
    --e-global-color-primary: #00d4ff;
    
    /* Secondary Color */
    --e-global-color-secondary: #7b2dff;
    
    /* Accent Color */
    --e-global-color-accent: #00ff88;
    
    /* Text Colors */
    --e-global-color-text: #f1f5f9;
    --e-global-color-text-muted: #94a3b8;
    
    /* Background */
    --e-global-color-background: #030712;
}

/* =========================================
   RESPONSIVE FIXES FOR ELEMENTOR
   ========================================= */
@media (max-width: 768px) {
    .elementor-column {
        width: 100%;
    }
    
    .elementor-widget {
        margin-bottom: 1.5rem;
    }
}

/* =========================================
   ELEMENTOR ANIMATION CLASSES
   ========================================= */
.elementor-invisible {
    visibility: hidden;
}

.elementor-animation-fade-in {
    animation: mojosoftFadeIn 0.6s ease forwards;
}

.elementor-animation-fade-in-up {
    animation: mojosoftFadeInUp 0.6s ease forwards;
}

@keyframes mojosoftFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes mojosoftFadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================
   ELEMENTOR EDITOR HELPER
   ========================================= */
.elementor-editor-helper {
    position: relative;
}

.elementor-editor-helper::before {
    content: 'Edit with Elementor';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #00d4ff;
    color: #030712;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    font-size: 12px;
    font-weight: bold;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.elementor-editor-active .elementor-editor-helper:hover::before {
    opacity: 1;
}
