/* CSL Gestion 2.0.57 — page de connexion intervenant */
.csl-attendance--login{
  min-height:clamp(620px,78vh,900px);
  padding:clamp(26px,6vw,76px) 18px 64px!important;
  background:
    radial-gradient(circle at 50% -10%,rgba(217,11,27,.10),transparent 34%),
    linear-gradient(145deg,#f5f7f9,#eef2f5 58%,#e8edf1)!important;
}
.csl-attendance--login .csl-attendance-shell{max-width:1180px!important;margin:0 auto!important}
.csl-attendance-login-card{
  width:min(610px,100%)!important;
  margin:0 auto!important;
  padding:clamp(28px,5vw,46px)!important;
  border:1px solid #d8e0e7!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 28px 70px rgba(20,34,48,.13)!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.csl-attendance-login-brand{display:flex;align-items:center;gap:12px;margin:0 0 28px;color:#293542;font-size:12px;font-weight:850;line-height:1.18}
.csl-attendance-login-brand .csl-attendance-hero__brand{margin:0!important;display:block!important}
.csl-attendance-login-brand .csl-attendance-hero__brand img{width:58px!important;height:58px!important;display:block!important;object-fit:contain!important}
.csl-attendance-login-card .csl-attendance-eyebrow{display:block;margin:0 0 10px;color:#d90b1b!important;font-size:12px!important;font-weight:950!important;letter-spacing:.18em!important;text-transform:uppercase}
.csl-attendance-login-card h1{margin:0!important;color:#111d29!important;font-size:clamp(30px,4.2vw,42px)!important;line-height:1.08!important;letter-spacing:-.035em!important}
.csl-attendance-login-card .csl-attendance-login-intro{max-width:500px;margin:14px 0 28px!important;color:#667585!important;font-size:16px!important;line-height:1.55!important}
.csl-attendance-login-card form{display:grid;gap:15px}
.csl-attendance-login-card form p{margin:0!important}
.csl-attendance-login-card label{display:block;color:#273441!important;font-size:14px!important;font-weight:850!important;line-height:1.35!important}
.csl-attendance-login-card .login-username input,
.csl-attendance-login-card .login-password input{
  width:100%!important;
  min-height:54px!important;
  margin-top:8px!important;
  padding:0 15px!important;
  border:1px solid #cdd7e0!important;
  border-radius:13px!important;
  background:#f8fafb!important;
  color:#17222d!important;
  -webkit-text-fill-color:#17222d!important;
  font-size:16px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.csl-attendance-login-card .login-username input:focus,
.csl-attendance-login-card .login-password input:focus{
  outline:0!important;
  border-color:#72879a!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(92,118,142,.13)!important;
}
.csl-login-password-wrap{position:relative;display:block}
.csl-login-password-wrap #user_pass{padding-right:56px!important}
.csl-login-password-toggle{
  position:absolute;right:8px;top:16px;width:40px;height:40px;padding:0!important;
  display:grid;place-items:center;border:0!important;border-radius:10px!important;
  background:transparent!important;color:#6b7c8c!important;font-size:18px!important;cursor:pointer;
}
.csl-login-password-toggle:hover,.csl-login-password-toggle:focus-visible{background:#eaf0f4!important;color:#1f3040!important;outline:0!important}
.csl-login-password-toggle.is-visible{color:#d90b1b!important}
.csl-attendance-login-card .login-remember{display:flex!important;align-items:center!important;gap:10px!important;margin:2px 0 0!important;color:#334354!important;font-weight:800!important}
.csl-attendance-login-card .login-remember input{width:20px!important;height:20px!important;min-height:0!important;margin:0!important;accent-color:#d90b1b!important}
.csl-attendance-login-card .login-submit{margin-top:3px!important}
.csl-attendance-login-card .login-submit input{
  width:100%!important;min-height:54px!important;border:1px solid #ec2637!important;border-radius:13px!important;
  background:linear-gradient(135deg,#e91a2b,#c90b1c)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  box-shadow:0 12px 24px rgba(201,11,28,.22)!important;font-size:15px!important;font-weight:950!important;letter-spacing:.01em!important;
  cursor:pointer!important;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease!important;
}
.csl-attendance-login-card .login-submit input:hover{filter:brightness(1.05)!important;transform:translateY(-1px)!important;box-shadow:0 15px 28px rgba(201,11,28,.26)!important}
.csl-attendance-login-card .login-submit input:active{transform:translateY(0)!important}
.csl-attendance-login-help{display:flex;align-items:flex-start;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e1e7ec;color:#687887}
.csl-attendance-login-help>span{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#edf2f5;color:#526579;font-size:16px;font-weight:900}
.csl-attendance-login-help strong,.csl-attendance-login-help small{display:block}
.csl-attendance-login-help strong{color:#304050;font-size:13px}
.csl-attendance-login-help small{margin-top:4px;color:#7b8997;font-size:12px;line-height:1.45}

@media(prefers-color-scheme:dark){
  .csl-attendance--login{
    background:
      radial-gradient(circle at 50% -8%,rgba(217,11,27,.12),transparent 34%),
      radial-gradient(circle at 9% 92%,rgba(38,81,111,.12),transparent 28%),
      linear-gradient(145deg,#080d14,#0d141e 56%,#0a1018)!important;
    color:#eef4f8!important;
  }
  .csl-attendance-login-card{
    border-color:#344150!important;
    background:linear-gradient(155deg,rgba(20,29,40,.97),rgba(12,18,27,.98))!important;
    box-shadow:0 34px 88px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.025)!important;
  }
  .csl-attendance-login-brand{color:#dce5ec!important}
  .csl-attendance-login-card h1{color:#f5f8fb!important;-webkit-text-fill-color:#f5f8fb!important}
  .csl-attendance-login-card .csl-attendance-login-intro{color:#aab5c0!important;-webkit-text-fill-color:#aab5c0!important}
  .csl-attendance-login-card label{color:#d6dfe7!important;-webkit-text-fill-color:#d6dfe7!important}
  .csl-attendance-login-card .login-username input,
  .csl-attendance-login-card .login-password input{
    border-color:#354250!important;background:#0c131c!important;color:#eef4f8!important;-webkit-text-fill-color:#eef4f8!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }
  .csl-attendance-login-card .login-username input:-webkit-autofill,
  .csl-attendance-login-card .login-password input:-webkit-autofill{
    -webkit-box-shadow:0 0 0 1000px #0c131c inset!important;
    -webkit-text-fill-color:#eef4f8!important;
    caret-color:#eef4f8!important;
  }
  .csl-attendance-login-card .login-username input:focus,
  .csl-attendance-login-card .login-password input:focus{border-color:#61758a!important;background:#0e1721!important;box-shadow:0 0 0 4px rgba(96,117,138,.16)!important}
  .csl-login-password-toggle{color:#9aa9b6!important}
  .csl-login-password-toggle:hover,.csl-login-password-toggle:focus-visible{background:#1d2935!important;color:#f0f5f8!important}
  .csl-attendance-login-card .login-remember{color:#d0dae2!important;-webkit-text-fill-color:#d0dae2!important}
  .csl-attendance-login-help{border-color:#293642!important;color:#9baab7!important}
  .csl-attendance-login-help>span{background:#18232e!important;color:#b6c4cf!important}
  .csl-attendance-login-help strong{color:#e3ebf1!important;-webkit-text-fill-color:#e3ebf1!important}
  .csl-attendance-login-help small{color:#9aa9b6!important;-webkit-text-fill-color:#9aa9b6!important}
}
@media(max-width:640px){
  .csl-attendance--login{padding:22px 12px 42px!important;min-height:auto}
  .csl-attendance-login-card{padding:26px 20px!important;border-radius:22px!important}
  .csl-attendance-login-brand{margin-bottom:22px}
  .csl-attendance-login-brand .csl-attendance-hero__brand img{width:50px!important;height:50px!important}
  .csl-attendance-login-card h1{font-size:30px!important}
  .csl-attendance-login-card .csl-attendance-login-intro{font-size:15px!important;margin-bottom:24px!important}
}
