/* Management Pages Mobile Styles */
@media (max-width: 768px) {
    /* Buttons - WCAG AA 48px minimum */
    .container .btn,
    .card .btn {
        min-height: 60px;
        min-width: 60px;
        font-size: 1.1rem;
        padding: 0.75rem 1rem;
    }

    .btn-sm {
        min-height: 48px;
        min-width: 48px;
        font-size: 1rem;
        padding: 0.5rem 0.75rem;
    }

    .btn + .btn {
        margin-left: 0;
        margin-top: 0.5rem;
    }

    /* Button groups - stack vertically */
    .btn-group {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .btn-group .btn {
        width: 100%;
        border-radius: 0.25rem !important;
        margin-bottom: 0.5rem;
    }

    /* Table responsiveness */
    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table {
        font-size: 0.9rem;
    }

    .table th,
    .table td {
        padding: 0.75rem 0.5rem;
    }

    /* Form controls */
    .form-control,
    .form-select {
        font-size: 1.1rem;
        padding: 0.75rem;
        min-height: 48px;
    }

    .form-label {
        font-size: 1rem;
        font-weight: 600;
        margin-bottom: 0.5rem;
    }

    /* Checkboxes and radios */
    .form-check-input {
        width: 32px;
        height: 32px;
        margin-top: 4px;
    }

    .form-check-label {
        font-size: 1.1rem;
        margin-left: 12px;
        padding: 8px 0;
    }

    /* Cards */
    .card {
        margin-bottom: 1rem;
    }

    .card-header {
        font-size: 1.2rem;
        padding: 1rem;
    }

    .card-body {
        padding: 1rem;
    }

    /* Modals */
    .modal-body .form-select {
        font-size: 1.1rem;
        min-height: 60px;
    }

    /* Badges */
    .badge {
        font-size: 0.9rem;
        padding: 0.5em 0.75em;
    }

    /* Pagination */
    .pagination .page-link {
        min-height: 48px;
        min-width: 48px;
        font-size: 1rem;
        padding: 0.75rem;
    }

    /* Alerts */
    .alert {
        font-size: 1rem;
        padding: 1rem;
    }

    /* Project cards */
    .project-list .card-body .btn {
        width: 100%;
        margin-top: 0.5rem;
    }

    /* Building cards */
    .building-list .btn-group {
        flex-direction: column;
    }

    /* Dropdown toggles */
    .dropdown-toggle {
        min-height: 60px;
        width: 100%;
    }
}

/* Extra small devices */
@media (max-width: 576px) {
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .d-flex.justify-content-between {
        flex-direction: column;
    }

    .d-flex.justify-content-between > * {
        width: 100%;
        margin-bottom: 0.5rem;
    }
}
