﻿@media (max-width: 1024px) {
    .shop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .modal-content { height: auto; max-height: 95vh; overflow-y: auto; }
    .modal-grid { grid-template-columns: 1fr; height: auto; }
    .chart-wrapper { height: 220px; }
}
@media (max-width: 768px) {
    .flip-body {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .flip-arrow {
        transform: rotate(90deg);
        padding: 4px 0;
        justify-content: center;
    }
    .flip-shop-details {
        flex-direction: column;
        align-items: flex-start;
    }
    .flip-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}
@media (max-width: 640px) {
    #sidebar {
        position: fixed;
        top: 0;
        left: 0;
        transform: translateX(-100%);
    }
    #sidebar.open { transform: translateX(0); }
    .sidebar-overlay.open { display: block; }
    .mobile-menu-btn { display: flex; }
    .shop-grid { grid-template-columns: 1fr; }
    #main-content { padding: 8px 4px; }
    .controls { flex-direction: column; align-items: stretch; }
    .search-box { width: 100%; }
    .sort-select { width: 100%; }
    .filter-group { width: 100%; justify-content: space-between; }
    .filter-btn { flex: 1; text-align: center; padding: 6px 2px; }
    .chart-wrapper { height: 180px; }
}