/**
 * RESPONSIVE WCFM - KOLDKAZE
 * Extrait et consolidé depuis : wcfm-order-details-responsive.css
 * Dépendances : variables.css, core.css
 * Version : 1.0.0
 * Date : 2024-01-15
 */

/* ===== WCFM DASHBOARD RESPONSIVE ===== */

@media (max-width: 1199px) {
    /* Layout WCFM */
    .wcfm-container {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-content {
        margin-left: 0;
        padding: var(--koldkaze-spacing-md);
    }
    
    /* Menu WCFM */
    .wcfm_menu {
        position: fixed;
        left: -280px;
        top: 0;
        width: 280px;
        height: 100vh;
        z-index: var(--koldkaze-z-sidebar);
        transition: left var(--koldkaze-transition-base);
        background-color: var(--koldkaze-white);
        box-shadow: var(--koldkaze-shadow-lg);
    }
    
    .wcfm_menu.open {
        left: 0;
    }
    
    .wcfm-menu-toggle {
        display: block;
        position: fixed;
        top: var(--koldkaze-spacing-md);
        left: var(--koldkaze-spacing-md);
        z-index: calc(var(--koldkaze-z-sidebar) + 1);
        background-color: var(--koldkaze-primary);
        color: var(--koldkaze-white);
        border: none;
        padding: var(--koldkaze-spacing-sm);
        border-radius: var(--koldkaze-border-radius);
        cursor: pointer;
    }
    
    /* Overlay pour fermer le menu */
    .wcfm-menu-overlay {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
        z-index: calc(var(--koldkaze-z-sidebar) - 1);
        opacity: 0;
        visibility: hidden;
        transition: all var(--koldkaze-transition-base);
    }
    
    .wcfm-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }
}

/* ===== WCFM ORDERS RESPONSIVE ===== */

@media (max-width: 1024px) {
    /* Liste des commandes */
    .wcfm-orders-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .wcfm-orders-table table {
        min-width: 800px;
        font-size: var(--koldkaze-font-size-sm);
    }
    
    .wcfm-orders-table th,
    .wcfm-orders-table td {
        padding: var(--koldkaze-spacing-sm);
    }
    
    /* Détails de commande */
    .wcfm-order-details {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-order-header {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--koldkaze-spacing-md);
    }
    
    .wcfm-order-actions {
        width: 100%;
        justify-content: stretch;
    }
    
    .wcfm-order-actions .btn {
        flex: 1;
        margin-bottom: var(--koldkaze-spacing-xs);
    }
}

@media (max-width: 767px) {
    /* Table responsive pour mobile */
    .wcfm-orders-table {
        display: block;
    }
    
    .wcfm-orders-table table,
    .wcfm-orders-table thead,
    .wcfm-orders-table tbody,
    .wcfm-orders-table th,
    .wcfm-orders-table td,
    .wcfm-orders-table tr {
        display: block;
    }
    
    .wcfm-orders-table thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    
    .wcfm-orders-table tr {
        border: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
        border-radius: var(--koldkaze-border-radius);
        margin-bottom: var(--koldkaze-spacing-md);
        padding: var(--koldkaze-spacing-md);
        background-color: var(--koldkaze-white);
    }
    
    .wcfm-orders-table td {
        border: none;
        padding: var(--koldkaze-spacing-xs) 0;
        text-align: left;
        position: relative;
        padding-left: 120px;
    }
    
    .wcfm-orders-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 0;
        width: 110px;
        padding-right: var(--koldkaze-spacing-xs);
        white-space: nowrap;
        font-weight: var(--koldkaze-font-weight-semibold);
        color: var(--koldkaze-dark);
        font-size: var(--koldkaze-font-size-xs);
    }
    
    /* Actions de commande mobile */
    .wcfm-order-actions {
        flex-direction: column;
        gap: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-order-actions .btn {
        width: 100%;
        text-align: center;
    }
}

/* ===== WCFM PRODUCTS RESPONSIVE ===== */

@media (max-width: 1024px) {
    /* Grille de produits */
    .wcfm-products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--koldkaze-spacing-md);
    }
    
    .wcfm-product-card {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-product-image {
        height: 150px;
    }
    
    .wcfm-product-title {
        font-size: var(--koldkaze-font-size-sm);
        line-height: var(--koldkaze-line-height-tight);
    }
}

@media (max-width: 767px) {
    /* Grille de produits mobile */
    .wcfm-products-grid {
        grid-template-columns: 1fr;
    }
    
    .wcfm-product-card {
        display: flex;
        gap: var(--koldkaze-spacing-md);
        padding: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-product-image {
        width: 80px;
        height: 80px;
        flex-shrink: 0;
    }
    
    .wcfm-product-content {
        flex: 1;
        min-width: 0;
    }
    
    .wcfm-product-title {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    
    .wcfm-product-price {
        font-size: var(--koldkaze-font-size-sm);
        font-weight: var(--koldkaze-font-weight-semibold);
    }
    
    .wcfm-product-actions {
        flex-direction: column;
        gap: var(--koldkaze-spacing-xs);
        min-width: 80px;
    }
    
    .wcfm-product-actions .btn {
        padding: var(--koldkaze-spacing-xs);
        font-size: var(--koldkaze-font-size-xs);
    }
}

/* ===== WCFM MESSAGES RESPONSIVE ===== */

@media (max-width: 1024px) {
    /* Interface de messagerie */
    .wcfm-messages-container {
        flex-direction: column;
        height: auto;
    }
    
    .wcfm-messages-sidebar {
        width: 100%;
        height: 200px;
        overflow-y: auto;
        border-right: none;
        border-bottom: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
    }
    
    .wcfm-messages-content {
        flex: 1;
        min-height: 400px;
    }
    
    .wcfm-message-thread {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-message-compose {
        padding: var(--koldkaze-spacing-md);
        border-top: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
    }
}

@media (max-width: 767px) {
    /* Messages mobile */
    .wcfm-messages-sidebar {
        height: 150px;
    }
    
    .wcfm-message-item {
        padding: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-message-item-title {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-message-item-preview {
        font-size: var(--koldkaze-font-size-xs);
        line-height: var(--koldkaze-line-height-normal);
    }
    
    .wcfm-message-bubble {
        max-width: 85%;
        padding: var(--koldkaze-spacing-sm);
        font-size: var(--koldkaze-font-size-sm);
    }
    
    .wcfm-message-compose-form {
        flex-direction: column;
        gap: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-message-input {
        min-height: 80px;
    }
    
    .wcfm-message-send-btn {
        width: 100%;
    }
}

/* ===== WCFM ANALYTICS RESPONSIVE ===== */

@media (max-width: 1024px) {
    /* Graphiques et statistiques */
    .wcfm-analytics-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--koldkaze-spacing-md);
    }
    
    .wcfm-stat-card {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-stat-number {
        font-size: var(--koldkaze-font-size-xl);
    }
    
    .wcfm-chart-container {
        height: 250px;
    }
}

@media (max-width: 767px) {
    /* Analytics mobile */
    .wcfm-analytics-grid {
        grid-template-columns: 1fr;
    }
    
    .wcfm-stat-card {
        text-align: center;
        padding: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-stat-number {
        font-size: var(--koldkaze-font-size-lg);
    }
    
    .wcfm-stat-label {
        font-size: var(--koldkaze-font-size-xs);
    }
    
    .wcfm-chart-container {
        height: 200px;
        margin-bottom: var(--koldkaze-spacing-md);
    }
    
    .wcfm-chart-legend {
        flex-direction: column;
        align-items: center;
        gap: var(--koldkaze-spacing-xs);
    }
}

/* ===== WCFM SETTINGS RESPONSIVE ===== */

@media (max-width: 1024px) {
    /* Paramètres */
    .wcfm-settings-tabs {
        flex-direction: column;
    }
    
    .wcfm-settings-nav {
        width: 100%;
        border-right: none;
        border-bottom: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
        margin-bottom: var(--koldkaze-spacing-md);
    }
    
    .wcfm-settings-nav .nav-link {
        display: block;
        width: 100%;
        text-align: left;
        border-bottom: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
    }
    
    .wcfm-settings-nav .nav-link:last-child {
        border-bottom: none;
    }
    
    .wcfm-settings-content {
        width: 100%;
    }
}

@media (max-width: 767px) {
    /* Paramètres mobile */
    .wcfm-settings-form {
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-form-group {
        margin-bottom: var(--koldkaze-spacing-md);
    }
    
    .wcfm-form-label {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-form-control {
        width: 100%;
        padding: var(--koldkaze-spacing-sm);
        font-size: var(--koldkaze-font-size-sm);
    }
    
    .wcfm-form-actions {
        flex-direction: column;
        gap: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-form-actions .btn {
        width: 100%;
    }
}

/* ===== WCFM NOTIFICATIONS RESPONSIVE ===== */

@media (max-width: 767px) {
    /* Notifications */
    .wcfm-notifications {
        padding: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-notification-item {
        padding: var(--koldkaze-spacing-sm);
        margin-bottom: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-notification-icon {
        width: 30px;
        height: 30px;
        font-size: var(--koldkaze-font-size-sm);
    }
    
    .wcfm-notification-content {
        margin-left: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-notification-title {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-notification-text {
        font-size: var(--koldkaze-font-size-xs);
        line-height: var(--koldkaze-line-height-normal);
    }
    
    .wcfm-notification-time {
        font-size: 10px;
        margin-top: var(--koldkaze-spacing-xs);
    }
}

/* ===== WCFM MODALES RESPONSIVE ===== */

@media (max-width: 767px) {
    /* Modales WCFM */
    .wcfm-modal {
        padding: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-modal-dialog {
        width: 100%;
        height: 100vh;
        margin: 0;
        max-width: none;
    }
    
    .wcfm-modal-content {
        height: 100vh;
        border-radius: 0;
        border: none;
    }
    
    .wcfm-modal-header {
        padding: var(--koldkaze-spacing-md);
        border-bottom: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
    }
    
    .wcfm-modal-title {
        font-size: var(--koldkaze-font-size-lg);
    }
    
    .wcfm-modal-body {
        flex: 1;
        padding: var(--koldkaze-spacing-md);
        overflow-y: auto;
    }
    
    .wcfm-modal-footer {
        padding: var(--koldkaze-spacing-md);
        border-top: var(--koldkaze-border-width) solid var(--koldkaze-border-color);
        flex-direction: column;
        gap: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-modal-footer .btn {
        width: 100%;
    }
}

/* ===== WCFM UPLOAD RESPONSIVE ===== */

@media (max-width: 767px) {
    /* Upload de fichiers */
    .wcfm-upload-area {
        padding: var(--koldkaze-spacing-lg);
        min-height: 150px;
    }
    
    .wcfm-upload-icon {
        font-size: 36px;
        margin-bottom: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-upload-text {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-upload-btn {
        padding: var(--koldkaze-spacing-sm) var(--koldkaze-spacing-md);
        font-size: var(--koldkaze-font-size-sm);
    }
    
    .wcfm-file-list {
        margin-top: var(--koldkaze-spacing-md);
    }
    
    .wcfm-file-item {
        padding: var(--koldkaze-spacing-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
        flex-direction: column;
        align-items: flex-start;
        gap: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-file-info {
        width: 100%;
    }
    
    .wcfm-file-name {
        font-size: var(--koldkaze-font-size-sm);
        margin-bottom: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-file-size {
        font-size: var(--koldkaze-font-size-xs);
    }
    
    .wcfm-file-actions {
        width: 100%;
        justify-content: flex-end;
    }
}

/* ===== WCFM BREADCRUMB RESPONSIVE ===== */

@media (max-width: 767px) {
    /* Fil d'Ariane */
    .wcfm-breadcrumb {
        padding: var(--koldkaze-spacing-sm) var(--koldkaze-spacing-md);
        font-size: var(--koldkaze-font-size-xs);
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .wcfm-breadcrumb-item {
        display: inline-block;
        margin-right: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-breadcrumb-separator {
        margin: 0 var(--koldkaze-spacing-xs);
        color: var(--koldkaze-gray-500);
    }
}

/* ===== WCFM TOOLBAR RESPONSIVE ===== */

@media (max-width: 767px) {
    /* Barre d'outils */
    .wcfm-toolbar {
        flex-direction: column;
        gap: var(--koldkaze-spacing-sm);
        padding: var(--koldkaze-spacing-md);
    }
    
    .wcfm-toolbar-left,
    .wcfm-toolbar-right {
        width: 100%;
        justify-content: center;
    }
    
    .wcfm-toolbar-search {
        width: 100%;
        margin-bottom: var(--koldkaze-spacing-sm);
    }
    
    .wcfm-toolbar-actions {
        flex-direction: column;
        gap: var(--koldkaze-spacing-xs);
    }
    
    .wcfm-toolbar-actions .btn {
        width: 100%;
    }
}

/* ===== ACCESSIBILITÉ WCFM MOBILE ===== */

@media (max-width: 767px) {
    /* Touch targets plus grands */
    .wcfm-menu .menu-item,
    .wcfm-tab-nav .nav-link,
    .wcfm-btn,
    .wcfm-form-control {
        min-height: 44px;
        min-width: 44px;
    }
    
    /* Focus visible amélioré */
    .wcfm-btn:focus-visible,
    .wcfm-form-control:focus-visible,
    .wcfm-nav-link:focus-visible {
        outline: 3px solid var(--koldkaze-primary);
        outline-offset: 2px;
    }
    
    /* Contraste élevé */
    @media (prefers-contrast: high) {
        .wcfm-card,
        .wcfm-modal-content,
        .wcfm-notification-item {
            border-width: 2px;
        }
    }
}

/* ===== RÉDUCTION DES ANIMATIONS WCFM ===== */

@media (prefers-reduced-motion: reduce) {
    .wcfm_menu,
    .wcfm-modal,
    .wcfm-notification-item,
    .wcfm-tooltip {
        transition: none !important;
        animation: none !important;
    }
}

/* ===== VENDOR INTERFACE RESPONSIVE (FUSIONNÉ) ===== */

/* Fix pour le menu WCFM qui passe par-dessus l'interface */
@media (max-width: 1199px) {
    /* FORCER le menu WCFM à passer SOUS l'interface vendeur */
    #wcfm_menu,
    #wcfm_menu *,
    .wcfm_menu_items,
    .wcfm_menu_item,
    .wcfm_sub_menu_items {
        z-index: 999 !important;
        position: relative !important;
    }
    
    /* FORCER l'interface vendeur à rester AU-DESSUS */
    .vendor-interface-force,
    .vendor-interface-force *,
    .vendor-interface__messaging,
    .vendor-interface__messaging *,
    .vendor-interface__header,
    .vendor-interface__actions {
        position: relative !important;
        z-index: 99999 !important;
    }
    
    /* Spécifiquement pour la section messagerie */
    .vendor-interface__messaging {
        background: var(--koldkaze-white) !important;
        border: 2px solid var(--koldkaze-primary) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        box-shadow: var(--koldkaze-shadow-xl) !important;
        padding: var(--koldkaze-spacing-lg) !important;
        margin: var(--koldkaze-spacing-md) 0 !important;
        z-index: 999999 !important;
        position: relative !important;
    }
    
    /* Ajuster le contenu principal */
    .wcfm-content {
        position: relative !important;
        z-index: 10000 !important;
    }
    
    /* S'assurer que TOUT l'interface vendeur reste visible */
    .wcfm-container .vendor-interface-force {
        position: relative !important;
        z-index: 99999 !important;
        background: var(--koldkaze-white) !important;
        box-shadow: var(--koldkaze-shadow-lg) !important;
    }
}

@media (max-width: 1024px) {
    /* Interface vendeur tablet */
    .vendor-interface-force {
        margin: var(--koldkaze-spacing-md) !important;
        padding: var(--koldkaze-spacing-lg) !important;
    }
    
    .vendor-interface__header {
        flex-direction: column !important;
        text-align: center !important;
        gap: var(--koldkaze-spacing-md) !important;
    }
    
    .vendor-interface__actions {
        flex-direction: column !important;
        gap: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__actions .btn {
        width: 100% !important;
    }
    
    /* Timeline vendeur tablet */
    .vendor-timeline-section .timeline {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    .vendor-timeline-section .timeline-item {
        min-width: auto !important;
        margin-bottom: var(--koldkaze-spacing-md) !important;
        padding: var(--koldkaze-spacing-md) !important;
        background: rgba(255,255,255,0.9) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        border-left: none !important;
    }
    
    .vendor-timeline-section .timeline-item.completed {
        background: rgba(40, 167, 69, 0.05) !important;
    }
    
    .vendor-timeline-section .timeline-item.in-progress {
        background: rgba(99, 0, 255, 0.05) !important;
    }
    
    .vendor-timeline-section .timeline-item.pending {
        background: rgba(255, 193, 7, 0.05) !important;
    }
}

@media (max-width: 767px) {
    /* Interface vendeur mobile */
    .vendor-interface-force {
        margin: var(--koldkaze-spacing-sm) !important;
        padding: var(--koldkaze-spacing-md) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        /* Assurer que l'interface reste au-dessus du menu mobile */
        position: relative !important;
        z-index: 99999 !important;
        background: var(--koldkaze-white) !important;
        box-shadow: var(--koldkaze-shadow-lg) !important;
        /* Empêcher le débordement sur mobile */
        max-width: 100% !important;
        width: calc(100% - 2 * var(--koldkaze-spacing-sm)) !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }
    
    /* Ajuster le contenu WCFM pour éviter les chevauchements sur mobile */
    .wcfm-content {
        padding-top: var(--koldkaze-spacing-md) !important;
        position: relative !important;
        z-index: 10000 !important;
    }
    
    /* Menu WCFM mobile - réduire le z-index */
    #wcfm_menu {
        z-index: 9999 !important;
    }
    
    /* Overlay du menu mobile */
    .wcfm-menu-overlay {
        z-index: 9998 !important;
    }
    
    .vendor-interface__header {
        flex-direction: column !important;
        text-align: center !important;
        gap: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__header h2 {
        font-size: var(--koldkaze-font-size-lg) !important;
        margin: 0 !important;
        line-height: var(--koldkaze-line-height-tight) !important;
    }
    
    .status-badge {
        font-size: var(--koldkaze-font-size-xs) !important;
        padding: var(--koldkaze-spacing-xs) var(--koldkaze-spacing-sm) !important;
    }
    
    /* Actions vendeur mobile */
    .vendor-interface__actions {
        flex-direction: column !important;
        gap: var(--koldkaze-spacing-sm) !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .vendor-interface__actions .btn {
        width: 100% !important;
        padding: var(--koldkaze-spacing-md) !important;
        font-size: var(--koldkaze-font-size-sm) !important;
        min-height: 44px !important; /* Touch target */
        box-sizing: border-box !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
    }
    
    /* Messages de statut mobile */
    .vendor-interface__message {
        margin-bottom: var(--koldkaze-spacing-md) !important;
        padding: var(--koldkaze-spacing-md) !important;
    }
    
    .vendor-interface__message h3 {
        font-size: var(--koldkaze-font-size-md) !important;
        margin-bottom: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__message p {
        font-size: var(--koldkaze-font-size-sm) !important;
        line-height: var(--koldkaze-line-height-normal) !important;
    }
    
    /* Timeline vendeur mobile */
    .vendor-timeline-section {
        margin-bottom: var(--koldkaze-spacing-lg) !important;
    }
    
    .vendor-timeline-section h3 {
        font-size: var(--koldkaze-font-size-md) !important;
        margin-bottom: var(--koldkaze-spacing-md) !important;
        text-align: center !important;
    }
    
    .vendor-timeline-section .timeline {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-timeline-section .timeline-item {
        min-width: auto !important;
        margin-bottom: var(--koldkaze-spacing-sm) !important;
        padding: var(--koldkaze-spacing-md) !important;
        background: var(--koldkaze-white) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        border-left: none !important;
        box-shadow: var(--koldkaze-shadow-xs) !important;
    }
    
    .vendor-timeline-section .timeline-item.completed {
        background: rgba(40, 167, 69, 0.03) !important;
    }
    
    .vendor-timeline-section .timeline-item.in-progress {
        background: rgba(99, 0, 255, 0.03) !important;
        box-shadow: var(--koldkaze-shadow-sm) !important;
    }
    
    .vendor-timeline-section .timeline-item.pending {
        background: var(--koldkaze-gray-50) !important;
    }
    
    .vendor-timeline-section .timeline-content {
        text-align: center !important;
    }
    
    .vendor-timeline-section .timeline-title {
        font-size: var(--koldkaze-font-size-sm) !important;
        font-weight: var(--koldkaze-font-weight-semibold) !important;
        margin-bottom: var(--koldkaze-spacing-xs) !important;
    }
    
    .vendor-timeline-section .timeline-description {
        font-size: var(--koldkaze-font-size-xs) !important;
        color: var(--koldkaze-gray-600) !important;
        line-height: var(--koldkaze-line-height-normal) !important;
    }
    
    .vendor-timeline-section .timeline-badge {
        font-size: var(--koldkaze-font-size-xs) !important;
        padding: 2px var(--koldkaze-spacing-xs) !important;
        margin-top: var(--koldkaze-spacing-xs) !important;
    }
    
    /* Messagerie vendeur mobile */
    .vendor-interface__messaging {
        margin-top: var(--koldkaze-spacing-lg) !important;
        padding: var(--koldkaze-spacing-md) !important;
        background: var(--koldkaze-gray-50) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        width: 100% !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }
    
    .vendor-interface__messaging h4 {
        font-size: var(--koldkaze-font-size-md) !important;
        margin-bottom: var(--koldkaze-spacing-md) !important;
        text-align: center !important;
    }
    
    .vendor-interface__messaging textarea {
        width: 100% !important;
        min-height: 80px !important;
        max-height: 30vh !important;
        height: auto !important;
        padding: var(--koldkaze-spacing-md) !important;
        font-size: var(--koldkaze-font-size-sm) !important;
        border: var(--koldkaze-border-width) solid var(--koldkaze-border-color) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        resize: vertical !important;
        font-family: var(--koldkaze-font-family) !important;
        box-sizing: border-box !important;
    }
    
    .vendor-interface__messaging textarea:focus {
        outline: none !important;
        border-color: var(--koldkaze-primary) !important;
        box-shadow: 0 0 0 3px rgba(99, 0, 255, 0.1) !important;
    }
    
    .vendor-interface__messaging .upload-section {
        display: flex !important;
        flex-direction: column !important;
        gap: var(--koldkaze-spacing-sm) !important;
        margin: var(--koldkaze-spacing-md) 0 !important;
    }
    
    .vendor-interface__messaging .file-upload-btn {
        padding: var(--koldkaze-spacing-sm) var(--koldkaze-spacing-md) !important;
        background: var(--koldkaze-gray-200) !important;
        color: var(--koldkaze-dark) !important;
        border: var(--koldkaze-border-width) solid var(--koldkaze-border-color) !important;
        border-radius: var(--koldkaze-border-radius) !important;
        cursor: pointer !important;
        font-size: var(--koldkaze-font-size-sm) !important;
        text-align: center !important;
        min-height: 44px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    .vendor-interface__messaging .file-upload-btn:hover {
        background: var(--koldkaze-gray-300) !important;
    }
    
    .vendor-interface__messaging .file-info {
        font-size: var(--koldkaze-font-size-xs) !important;
        color: var(--koldkaze-gray-600) !important;
        text-align: center !important;
    }
    
    .vendor-interface__messaging .send-btn {
        width: 100% !important;
        padding: var(--koldkaze-spacing-md) !important;
        background: var(--koldkaze-primary) !important;
        color: var(--koldkaze-white) !important;
        border: none !important;
        border-radius: var(--koldkaze-border-radius) !important;
        font-size: var(--koldkaze-font-size-sm) !important;
        font-weight: var(--koldkaze-font-weight-semibold) !important;
        cursor: pointer !important;
        min-height: 44px !important;
        transition: background-color var(--koldkaze-transition-base) !important;
    }
    
    .vendor-interface__messaging .send-btn:hover {
        background: var(--koldkaze-primary-dark) !important;
    }
    
    .vendor-interface__messaging .send-btn:focus {
        outline: none !important;
        box-shadow: 0 0 0 3px rgba(99, 0, 255, 0.3) !important;
    }
}

@media (max-width: 480px) {
    /* Interface vendeur très petit mobile */
    .vendor-interface-force {
        margin: var(--koldkaze-spacing-xs) !important;
        padding: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__header h2 {
        font-size: var(--koldkaze-font-size-md) !important;
        line-height: var(--koldkaze-line-height-tight) !important;
    }
    
    .status-badge {
        font-size: 10px !important;
        padding: 2px var(--koldkaze-spacing-xs) !important;
    }
    
    .vendor-interface__message h3 {
        font-size: var(--koldkaze-font-size-sm) !important;
    }
    
    .vendor-interface__message p {
        font-size: var(--koldkaze-font-size-xs) !important;
    }
    
    .vendor-timeline-section .timeline-item {
        padding: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__messaging {
        padding: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__messaging textarea {
        min-height: 60px !important;
        max-height: 25vh !important;
        padding: var(--koldkaze-spacing-sm) !important;
        box-sizing: border-box !important;
    }
}

/* ===== ORIENTATION LANDSCAPE MOBILE ===== */

@media (max-width: 767px) and (orientation: landscape) {
    /* Interface vendeur paysage */
    .vendor-interface-force {
        margin: var(--koldkaze-spacing-xs) !important;
        padding: var(--koldkaze-spacing-md) !important;
    }
    
    .vendor-timeline-section .timeline {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
    
    .vendor-timeline-section .timeline-item {
        flex: 0 1 calc(50% - var(--koldkaze-spacing-sm)) !important;
        margin-bottom: var(--koldkaze-spacing-sm) !important;
    }
    
    .vendor-interface__messaging textarea {
        min-height: 50px !important;
        max-height: 20vh !important;
    }
}

/* ===== VENDOR INTERFACE ACCESSIBILITY ===== */

@media (max-width: 767px) {
    /* Touch targets plus grands */
    .vendor-interface__actions .btn,
    .vendor-interface__messaging .file-upload-btn,
    .vendor-interface__messaging .send-btn {
        min-height: 44px !important;
        min-width: 44px !important;
    }
    
    /* Focus visible amélioré */
    .vendor-interface__actions .btn:focus-visible,
    .vendor-interface__messaging textarea:focus-visible,
    .vendor-interface__messaging .send-btn:focus-visible {
        outline: 3px solid var(--koldkaze-primary) !important;
        outline-offset: 2px !important;
    }
    
    /* Contraste élevé */
    @media (prefers-contrast: high) {
        .vendor-interface-force,
        .vendor-timeline-section .timeline-item,
        .vendor-interface__messaging {
            border-width: 2px !important;
        }
    }
}

/* ===== VENDOR INTERFACE REDUCED MOTION ===== */

@media (prefers-reduced-motion: reduce) {
    .vendor-interface-force,
    .vendor-timeline-section .timeline-item,
    .vendor-interface__messaging .send-btn {
        transition: none !important;
        animation: none !important;
    }
}

