/* ═══ Mobile Responsive — gamingpc.co.il ═══ */

/* Mobile filter button (hidden on desktop) */
.mobile-filter-btn {
    display: none;
    width: 100%;
    padding: 10px 16px;
    background: var(--s1);
    border: 1px solid var(--b1);
    border-radius: var(--r);
    color: var(--txt2);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    text-align: right;
    margin-bottom: 12px;
}

.sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    z-index: 99;
}
.sidebar-overlay.show { display: block; }

@media (max-width: 768px) {
    /* Container */
    .container { padding: 0 12px; }

    /* Catalog layout: stack sidebar below on mobile */
    .catalog-layout {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    /* Sidebar: slide in from right on mobile */
    .sidebar {
        display: block;
        position: fixed;
        top: 0;
        right: -300px;
        width: 280px;
        height: 100vh;
        background: var(--bg);
        border-left: 1px solid var(--b1);
        z-index: 100;
        overflow-y: auto;
        transition: right .25s ease;
        padding: 16px 12px;
    }
    .sidebar.open { right: 0; }

    .mobile-filter-btn { display: block; }

    /* Header */
    .site-header .container {
        flex-wrap: wrap;
        gap: 8px;
    }
    .site-logo { font-size: 18px !important; }
    .header-search { width: 100% !important; order: 3; }
    .header-actions { gap: 8px; }

    /* Product grid: 2 columns on mobile */
    .product-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    /* Smaller cards on mobile */
    .product-card { font-size: 12px; }
    .card-name { font-size: 11px !important; -webkit-line-clamp: 2 !important; }
    .card-price { font-size: 15px !important; }
    .btn-add { font-size: 11px !important; padding: 6px 8px !important; }
    .card-img-wrap { height: 110px !important; }
    .card-body { padding: 8px !important; }
    .card-footer { padding: 8px !important; }

    /* Toolbar */
    .toolbar {
        flex-wrap: wrap;
        gap: 8px;
    }
    .toolbar input[type=search] { width: 100% !important; }
    .result-count { font-size: 11px; }

    /* Configurator */
    .conf-grid { grid-template-columns: 1fr !important; }

    /* Admin panel */
    .admin-layout { grid-template-columns: 1fr !important; }
    .admin-sidebar { display: none; }
    .data-table { font-size: 11px; }
    .stat-grid { grid-template-columns: repeat(2,1fr) !important; }
}

@media (max-width: 480px) {
    /* 1 column on very small screens */
    .product-grid {
        grid-template-columns: 1fr !important;
    }
    .card-img-wrap { height: 160px !important; }
}

/* Admin source badge */
.admin-edit-badge {
    position: absolute;
    top: 4px;
    left: 4px;
    z-index: 10;
    background: var(--acc);
    color: #fff;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
}
