html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}
/* BOUTON EMPRUNTER */
.btn-emprunt {
    background-color: var(--accent);
    border-color: var(--accent);
    color: #fff;
    font-weight: 600;
    border-radius: 10px;
    transition: all 0.3s ease;
}

    .btn-emprunt:hover {
        background-color: var(--accent-hover);
        border-color: var(--accent-hover);
        color: #fff;
    }

.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, body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body {
  margin: 0;
}

body > .container-fluid {
  flex: 1;
}

main {
  flex: 1;
}

.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;
}

:root {
  --primary: #1a3a5c;
  --primary-dark: #122944;
  --accent: #e8a020;
  --accent-hover: #cf8e18;
  --light-bg: #f4f7fb;
  --border-color: #dce6f0;
  --text-muted: #7a8fa6;
  --text-muted-custom: #7a8fa6;
  --danger: #e74c3c;
  --success: #27ae60;
  --warning-bg: #fff8ec;
  --warning-border: #f4a818;
  --danger-bg: #fff5f5;
  --danger-border: #fca5a5;
}
body {
  font-family: 'Segoe UI', sans-serif;
  background: var(--light-bg);
  display: flex;
  flex-direction: column;
}
.navbar{background:var(--primary)!important;}

/* LOGIN */
.login-wrapper{min-height:80vh;display:flex;align-items:center;background:linear-gradient(135deg,var(--primary) 50%,#2a5298 100%);}
.login-card{background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:2rem;max-width:440px;width:100%;}
.login-card .logo{width:52px;height:52px;background:var(--primary);border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;}
.btn-login{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:.75rem;font-weight:600;}
.btn-login:hover{background:var(--accent);color:#fff;}
.divider{display:flex;align-items:center;gap:.8rem;color:#aaa;font-size:.82rem;margin:1.2rem 0;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:#dee2e6;}

/* FOOTER */
.footer-custom{
  background: linear-gradient(135deg, var(--primary) 0%, #1a3a5c 100%);
  color: #fff;
  border-top: 1px solid rgba(232, 160, 32, .2);
  margin-top: auto;
  padding-top: 2rem;
  padding-bottom: 1rem;
  width: 100%;
}
.footer-custom a{
  transition: color 0.3s ease;
}
.footer-custom a:hover{
  color: var(--accent);
}
.footer-custom hr{
  border-color: rgba(255, 255, 255, .1);
}
