body { font-family: Arial, sans-serif; }
.card-title a { text-decoration: none; color: inherit; }
.form-control, .form-select { min-width: 120px; }
.pagination { gap: 8px; }

/* 按钮自动换行，适配移动端 */
.d-grid, .btn-group, .modal-footer, .card-body, form {
    flex-wrap: wrap !important;
}
.btn, .btn-group .btn {
    white-space: normal !important;
    word-break: break-all;
}
@media (max-width: 576px) {
    .container, .container-fluid, .mainApp, #welcomeInfo { padding-left: 4px !important; padding-right: 4px !important; }
    .navbar-brand { font-size: 1.1rem; }
    .card { font-size: 0.98rem; }
    .modal-content { font-size: 1rem; }
    .form-control, .form-select, .btn { font-size: 1rem; }
    .card-title { font-size: 1.1rem; }
    .navbar-nav .nav-link { padding-left: 0.6rem; padding-right: 0.6rem; }
    .modal-dialog { margin: 0.5rem auto; }
    .btn, .btn-group .btn { min-width: 90px; margin-bottom: 6px; }
}

@media (max-width: 576px) {
.container, .container-fluid, .mainApp, #welcomeInfo { padding-left: 4px !important; padding-right: 4px !important; }
.navbar-brand { font-size: 1.1rem; }
.card { font-size: 0.98rem; }
.modal-content { font-size: 1rem; }
.form-control, .form-select, .btn { font-size: 1rem; }
.card-title { font-size: 1.1rem; }
.navbar-nav .nav-link { padding-left: 0.6rem; padding-right: 0.6rem; }
.modal-dialog { margin: 0.5rem auto; }
}