/* =====================================================================
   BLANCO REAL ESTATE CRM — RESPONSIVE BREAKPOINTS
   ===================================================================== */

@media (max-width: 1280px) {
    .kpi-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .dashboard-grid-3 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1024px) {
    .sidebar {
        position: fixed;
        z-index: 40;
        left: 0;
        margin-left: -225px;
        box-shadow: var(--shadow-soft);
    }
    .app-shell.sidebar-open .sidebar {
        margin-left: 0;
    }
    .app-shell.sidebar-collapsed .sidebar {
        margin-left: -225px;
    }
    .topbar-search {
        max-width: 240px;
    }
}

@media (max-width: 768px) {
    .kpi-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .app-content {
        padding: 16px;
    }
    .topbar {
        padding: 12px 16px;
    }
    .topbar-search {
        display: none;
    }
    .user-meta {
        display: none;
    }
    .deals-stats {
        grid-template-columns: 1fr;
    }
    .funnel-row {
        grid-template-columns: 76px 1fr 36px;
    }
    .property-detail-layout {
        grid-template-columns: 1fr;
    }
    .match-grid {
        grid-template-columns: 1fr;
    }
    .detail-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .comms-layout {
        grid-template-columns: 1fr;
        height: auto;
    }
    .comms-sidebar {
        border-right: none;
        border-bottom: 1px solid var(--border);
        max-height: 260px;
    }
    .comms-messages {
        max-height: 320px;
    }
    .pipeline-strip {
        gap: 10px;
    }
}

@media (max-width: 480px) {
    .kpi-grid {
        grid-template-columns: 1fr;
    }
    .dashboard-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .viewing-card {
        flex: 0 0 260px;
    }
    .form-grid {
        grid-template-columns: 1fr;
    }
    .filter-bar input[type="text"] {
        min-width: 100%;
    }
    .calendar-grid {
        gap: 3px;
    }
    .calendar-cell {
        padding: 3px;
        min-height: 32px;
    }
    .calendar-count-badge {
        font-size: 8px;
        padding: 0 4px;
    }
}
