/* public/css/responsive.css */
@media (max-width: 768px) {
    html, body {
        margin: 0;
        padding: 0;
        width: 100vw;
        overflow-x: hidden;
        min-width: 0;
    }

    /* Hide desktop-only and editor buttons */
    #editor-login-btn,
    #logout-editor-btn,
    #show-add-form-btn,
    #add-form-container,
    .edit-btn,
    #perplexity-floating-window,
    .floating-toggle-btn {
        display: none !important;
    }

    .main-container {
        width: 100vw;
    }

    #datasheet-panel.active {
        flex-direction: column;
    }
    
    #datasheet-panel .vendor-panel {
        width: 100%;
        box-sizing: border-box;
        padding: 15px;
    }

    #datasheet-panel .content-area {
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        height: 100%;
        overflow-y: auto;
    }
    
    #datasheet-panel .content-area::-webkit-scrollbar,
    #datasheet-panel .vendor-panel::-webkit-scrollbar {
        display: none;
    }
    #datasheet-panel .content-area,
    #datasheet-panel .vendor-panel {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    .back-button {
        display: block; /* Show back button on mobile */
    }

    .controls-container {
        display: flex;
        flex-direction: column; /* Stack back button and search row */
        gap: 10px;
        position: sticky;
        top: 0;
        background-color: var(--bg-primary);
        z-index: 10;
        padding: 15px;
        border-bottom: 1px solid var(--border-primary);
    }
    
    .search-sort-row {
        display: flex;
        flex-direction: row; /* Search/sort are side-by-side */
        gap: 10px;
    }

    #appliance-search-bar {
        flex-grow: 1;
    }

    #appliance-sort-select {
        flex-shrink: 0;
        width: 120px;
    }
    
    #inventory-list {
        padding: 15px;
    }

    body {
        font-size: 0.95em;
    }
    #page-header h1 {
        font-size: 1.4em;
    }
    .vendor-panel h2 {
        font-size: 1.2em;
    }
    .vendor-button {
        font-size: 0.9em;
        padding: 10px;
        text-align: center;
    }
}
