/* ==========================================
   MOBILE MODE - Assemblages Only View
   Version: VIP-2026.02.01.1115
   100% optimisé pour mobile
   ========================================== */

@media screen and (max-width: 768px) {

    /* === BASE === */
    body.mobile-mode {
        overflow: hidden !important;
        background: #f5f5f5 !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
    }

    /* Forcer tout à rester dans l'écran */
    body.mobile-mode,
    body.mobile-mode * {
        box-sizing: border-box !important;
    }

    /* === CACHER TOUT SAUF SIDEBAR === */
    body.mobile-mode #toolbar,
    body.mobile-mode #canvas-container,
    body.mobile-mode #rightPanel,
    body.mobile-mode .crm-toolbar,
    body.mobile-mode #kanban-board,
    body.mobile-mode #app-crm,
    body.mobile-mode #ai-assistant-panel,
    body.mobile-mode #sidebar-footer,
    body.mobile-mode #acc-table,
    body.mobile-mode #quoteByFolders,
    body.mobile-mode #acc-notes-exclusions,
    body.mobile-mode .accordion-header:has(+ #acc-table),
    body.mobile-mode .accordion-header:has(+ #quoteByFolders),
    body.mobile-mode .accordion-header:has(+ #acc-notes-exclusions) {
        display: none !important;
    }

    /* === MAIN WRAPPER === */
    body.mobile-mode #main-wrapper {
        display: block !important;
        width: 100vw !important;
        max-width: 100vw !important;
        overflow: hidden !important;
    }

    /* === SIDEBAR PLEIN ÉCRAN === */
    body.mobile-mode #sidebar {
        position: fixed !important;
        top: 60px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: calc(100vh - 60px) !important;
        z-index: 9999 !important;
        background: #f5f5f5 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    body.mobile-mode #sidebar-scroll-area {
        padding: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* === ACCORDION === */
    body.mobile-mode .accordion-header {
        padding: 12px !important;
        font-size: 14px !important;
        min-height: 44px !important;
        width: 100% !important;
    }

    body.mobile-mode .accordion-content {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        padding: 0 !important;
    }

    body.mobile-mode #acc-tools {
        display: block !important;
        width: 100% !important;
    }

    /* === TOOLS LIST === */
    body.mobile-mode #toolsList {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        padding: 5px !important;
    }

    /* === DOSSIERS === */
    body.mobile-mode .folder-container {
        width: 100% !important;
        max-width: 100% !important;
        margin: 5px 0 !important;
        overflow: hidden !important;
    }

    body.mobile-mode .folder-header {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 48px !important;
        padding: 10px !important;
        display: flex !important;
        align-items: center !important;
        overflow: hidden !important;
        border-radius: 6px !important;
    }

    body.mobile-mode .folder-header > div {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body.mobile-mode .folder-header .folder-name {
        flex: 1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 14px !important;
    }

    body.mobile-mode .folder-header button {
        min-width: 36px !important;
        min-height: 36px !important;
        padding: 6px !important;
        margin: 0 2px !important;
        flex-shrink: 0 !important;
    }

    body.mobile-mode .folder-content {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 10px !important;
        overflow: hidden !important;
    }

    /* === OUTILS / QUICKWORKS / SOUS-TRAITANTS === */
    body.mobile-mode .tool-row {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 48px !important;
        padding: 10px !important;
        margin: 4px 0 !important;
        display: flex !important;
        align-items: center !important;
        overflow: hidden !important;
        border-radius: 6px !important;
        background: white !important;
    }

    body.mobile-mode .tool-row > div,
    body.mobile-mode .tool-row > span {
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.mobile-mode .tool-row button {
        min-width: 36px !important;
        min-height: 36px !important;
        padding: 6px !important;
        flex-shrink: 0 !important;
    }

    /* === BOUTONS D'ACTION EN HAUT === */
    body.mobile-mode #toolsList > div:first-child {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        padding: 10px 0 !important;
        width: 100% !important;
    }

    body.mobile-mode #toolsList > div:first-child button {
        flex: 1 1 calc(50% - 8px) !important;
        min-height: 44px !important;
        font-size: 13px !important;
        padding: 10px !important;
        border-radius: 8px !important;
    }

    /* === CHECKBOX === */
    body.mobile-mode input[type="checkbox"] {
        width: 22px !important;
        height: 22px !important;
        margin-right: 8px !important;
        flex-shrink: 0 !important;
    }

    /* === FLÈCHE DOSSIER === */
    body.mobile-mode .folder-arrow {
        font-size: 16px !important;
        margin-right: 8px !important;
        flex-shrink: 0 !important;
    }

    /* Header mobile simple */
    body.mobile-mode .mobile-header {
        display: flex !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 60px !important;
        background: #1b1b1b !important;
        color: #eeede9 !important;
        align-items: center !important;
        padding: 0 15px !important;
        z-index: 10000 !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2) !important;
    }

    body.mobile-mode .mobile-header .back-btn {
        background: transparent !important;
        border: none !important;
        color: #eeede9 !important;
        font-size: 20px !important;
        padding: 10px !important;
        cursor: pointer !important;
    }

    body.mobile-mode .mobile-header .client-name {
        flex: 1 !important;
        text-align: center !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        padding: 0 10px !important;
    }

    body.mobile-mode .mobile-header .save-btn {
        background: #009c6b !important;
        border: none !important;
        color: white !important;
        font-size: 14px !important;
        padding: 8px 15px !important;
        border-radius: 6px !important;
        cursor: pointer !important;
    }

    /* Cacher le header/footer par défaut */
    .mobile-header {
        display: none !important;
    }
}

/* Sur desktop, ne rien changer */
@media screen and (min-width: 769px) {
    .mobile-header {
        display: none !important;
    }
}

