/* Penyempurnaan tampilan HP (<= 767px) untuk halaman akun & formulir.
   Tidak berpengaruh pada tampilan di layar lebar. */
@media (max-width: 767.98px) {
    body { -webkit-text-size-adjust: 100%; }
    body.d-flex.align-items-center { align-items: flex-start !important; padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
    .container { padding-left: 16px; padding-right: 16px; }
    .container.my-5 { margin-top: 1.25rem !important; margin-bottom: 1.5rem !important; }

    /* Kartu */
    .card.rounded-4 { border-radius: 16px !important; box-shadow: 0 2px 12px rgba(15,23,42,.08) !important; }
    .card.p-4, .card.p-md-5 { padding: 1.25rem !important; }
    .card h3 { font-size: 1.3rem; line-height: 1.3; }
    .card h5 { font-size: 1rem; }
    .card h5.border-bottom { margin-top: .25rem; }

    /* Navbar */
    .navbar .navbar-brand { font-size: .98rem; margin-right: 0; }
    .navbar .navbar-text { display: none; }
    .navbar .d-flex.gap-3 { gap: .6rem !important; min-width: 0; }
    .navbar .d-flex .small { font-size: .8rem; max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .navbar .btn-sm { min-height: 38px; display: inline-flex; align-items: center; }

    /* Isian formulir: nyaman disentuh, tidak memicu zoom otomatis di iPhone */
    .form-label { font-size: .9rem; margin-bottom: .35rem; }
    .form-control, .form-select { min-height: 48px; font-size: 16px; border-radius: 12px; }
    textarea.form-control { min-height: 96px; }
    .input-group > .form-control { border-radius: 12px 0 0 12px; }
    .input-group > .btn { min-width: 48px; border-radius: 0 12px 12px 0; }

    /* Tombol */
    .btn { border-radius: 12px; }
    .d-grid .btn { min-height: 50px; display: flex; align-items: center; justify-content: center; }
    .btn-lg { font-size: 1rem; padding-top: .8rem !important; padding-bottom: .8rem !important; }

    /* Dashboard siswa: kartu status ringkas */
    .row.g-4 { --bs-gutter-y: .85rem; }
    .card .fs-2.rounded-circle { font-size: 1.25rem !important; padding: .8rem !important; margin-right: .85rem !important; flex-shrink: 0; width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; }

    /* Tabel admin: bisa digeser dan lebih rapat */
    .table-responsive { -webkit-overflow-scrolling: touch; }
    .table { font-size: .85rem; }
    .table th, .table td { white-space: nowrap; }

    footer.py-4 { padding-top: 1.25rem !important; padding-bottom: 1.25rem !important; margin-top: 1.5rem !important; }
    body .whatsapp-float { width: 48px !important; height: 48px !important; font-size: 26px !important; right: 14px !important; bottom: 16px !important; }
}
