html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

/* removed for footer
body {
    margin-bottom: 60px;
}
*/
.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Identity Pages Styling */
.identity-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 3rem 1rem 5rem;
}

.identity-card {
    background: #ffffff;
    border-radius: 18px;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.identity-card-header {
    background: linear-gradient(135deg, #1b2f52 0%, #243b67 100%);
    color: #ffffff;
    padding: 1.5rem 2rem;
}

.identity-card-header h1 {
    margin: 0;
    font-size: 2rem;
    font-weight: 800;
}

.identity-card-header p {
    margin: 0.5rem 0 0;
    color: #dbe4f0;
}

.identity-card-body {
    padding: 2rem;
}

.identity-card .form-group {
    margin-bottom: 1.2rem;
}

.identity-card label {
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.4rem;
}

.identity-card .form-control {
    border-radius: 10px;
    padding: 0.85rem;
    border: 1px solid #d1d5db;
}

.identity-card .form-control:focus {
    border-color: #d4af37;
    box-shadow: 0 0 0 0.2rem rgba(212, 175, 55, 0.25);
}

.identity-btn {
    background: #1b2f52;
    color: white;
    border: none;
    border-radius: 10px;
    padding: 0.9rem 1.4rem;
    font-weight: 700;
    width: 100%;
    text-align: center;
    transition: 0.2s ease;
}

.identity-btn:hover {
    background: #14233d;
    color: white;
}

.identity-success-icon {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #d4af37;
    color: #1b2f52;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 800;
    margin: 0 auto 1rem;
}

/* Fix deployed header wrapping */
.navbar .navbar-nav {
    flex-wrap: nowrap;
}

.navbar .nav-link,
.navbar .btn,
.navbar form button {
    white-space: nowrap;
}

@media (min-width: 992px) and (max-width: 1400px) {
    .navbar-brand {
        max-width: 360px;
    }

    .navbar .nav-link {
        font-size: 0.9rem;
        padding-left: 0.45rem !important;
        padding-right: 0.45rem !important;
    }

    .navbar .navbar-nav {
        gap: 0.25rem !important;
    }

    .navbar .btn,
    .navbar form button {
        font-size: 0.9rem;
        padding: 0.45rem 0.75rem;
    }
}

/* Fix deployed DataTables width */
table.dataTable {
    width: 100% !important;
}

table.dataTable th,
table.dataTable td {
    white-space: normal;
}

table.dataTable th:last-child,
table.dataTable td:last-child {
    white-space: nowrap;
}

.dataTables_wrapper {
    width: 100%;
}