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%;
}

body {
  margin-bottom: 60px;
  background: #f7f8fa;
}

main { min-height: calc(100vh - 190px); }

.admin-login { max-width: 430px; margin: 7vh auto 4rem; }

.admin-stat {
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 1.15rem 1.25rem;
  min-height: 105px;
  background: #fff;
  border: 1px solid #dee2e6;
  border-radius: .5rem;
}

.admin-stat span { color: #5c6670; font-size: .9rem; }
.admin-stat strong { font-size: 1.7rem; line-height: 1.1; }
.table th { white-space: nowrap; font-weight: 600; }
.table td { vertical-align: middle; }

.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;
}
/* Shared admin design system */
:root{--bs-primary:#245bdb;--bs-primary-rgb:36,91,219;--bs-body-color:#24334b;--bs-border-color:#e3e9f2}
body{font-family:Segoe UI,Arial,sans-serif;background:#f3f6fb;color:#24334b;line-height:1.6}
.navbar{background:#142640!important;border:0!important;min-height:78px;box-shadow:0 4px 20px #14264014}
.navbar .navbar-brand,.navbar .nav-link,.navbar .navbar-text{color:#dbe6f8!important}
.navbar .navbar-brand{color:white!important;letter-spacing:-.6px;font-size:1.35rem}
.navbar .navbar-brand .text-muted{color:#9cb5db!important}
.navbar .nav-link{padding:.6rem .9rem!important;border-radius:8px;font-size:.92rem}
.navbar .nav-link:hover,.navbar .nav-link[aria-current=page]{background:#ffffff18;color:white!important}
.navbar .btn{border-color:#647996;color:#fff}.navbar-toggler{background:#dbe6f8}
body>.container{max-width:1280px;padding-top:16px;padding-bottom:35px}
h1,h2,h3{color:#172b49;letter-spacing:-.035em;font-weight:650}h1.h2{font-size:2rem}
.text-muted{color:#65758d!important}.card{border:1px solid #e2e8f2;border-radius:14px;overflow:hidden;box-shadow:0 4px 20px #19345c05!important}
.card-body{padding:1.5rem}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e7edf5}
.admin-stat{border-radius:14px;min-height:130px;padding:1.4rem;border-color:#e2e8f2;position:relative;box-shadow:0 4px 20px #19345c05}
.admin-stat:before{content:'';position:absolute;left:0;top:24px;bottom:24px;width:3px;background:#245bdb;border-radius:4px}
.admin-stat strong{font-size:2.2rem;color:#172b49;font-weight:650}.admin-stat span{font-size:.85rem;font-weight:600}
.table>:not(caption)>*>*{padding:1rem 1.25rem;border-bottom-color:#edf1f7}.table thead th{background:#f8faff;color:#66768d;font-size:.74rem;text-transform:uppercase;letter-spacing:.065em}
.table a{text-decoration:none;font-weight:600;color:#245bdb}.table-hover>tbody>tr:hover>*{--bs-table-bg-state:#f6f9ff}
.btn{border-radius:8px;padding:.6rem 1rem;font-weight:600;font-size:.88rem}.btn-primary{background:#245bdb;border-color:#245bdb}.form-control,.form-select{border-radius:8px;padding:.65rem .85rem;border-color:#d8e1ee}.form-label{font-size:.85rem;font-weight:600;color:#40516b}
.badge{padding:.5rem .75rem;border-radius:7px;font-weight:600}.alert{border-radius:10px}.admin-login{max-width:460px;margin:5vh auto}.admin-login .card-body{padding:2rem!important}details summary{color:#245bdb;font-weight:600;cursor:pointer}.footer{background:transparent;font-size:.8rem;color:#738199!important}
@media(max-width:767px){body>.container{padding-top:4px}.card-body{padding:1rem}h1.h2{font-size:1.65rem}.table>:not(caption)>*>*{padding:.8rem}.navbar .navbar-text{display:block;margin:1rem 0}.admin-stat{min-height:110px}}
