/* FindMyDamage — sign-in screens (staff + client) in the mobile design language.
   Markup/behaviour of the Perfex auth pages is unchanged; this is a skin only.
   Loaded by findmydamage_mobile via app_admin_authentication_head / app_customers_head.
   Disable with option fmd_mobile_auth_theme = 0. */
:root{
  --fa-bg:#f3f5f9; --fa-surface:#fff; --fa-ink:#0f172a; --fa-muted:#5b6678; --fa-line:#e3e8ef;
  --fa-brand:#1f4f8f; --fa-brand-deep:#0f2b52; --fa-accent:#c79a3b; --fa-danger:#b42318; --fa-danger-soft:#fde8e6;
  --fa-success:#12805c; --fa-success-soft:#e4f5ee; --fa-info:#1d5fb4; --fa-info-soft:#e6effb;
  --fa-shadow:0 1px 2px rgba(15,23,42,.05),0 12px 32px rgba(15,23,42,.08);
}

/* ---------- page ---------- */
body.login_admin,body.authentication,html.fmd-auth body{
  background:linear-gradient(180deg,#e9eef7 0,var(--fa-bg) 220px) no-repeat,var(--fa-bg)!important;
  color:var(--fa-ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
body.login_admin>*,body.authentication>*{font-size:15px}

/* admin: wrapper, logo, headings */
.authentication-form-wrapper,.authentication-form-wrappe{
  max-width:440px!important;width:100%;margin:0 auto!important;
  padding:calc(28px + env(safe-area-inset-top)) 16px calc(28px + env(safe-area-inset-bottom))!important;
}
body.login_admin .company-logo,body.authentication .company-logo{padding:8px 10px 18px}
body.login_admin .company-logo img,body.authentication .company-logo img{max-height:84px;max-width:80%;width:auto;height:auto}
body.login_admin h1,body.authentication h1{
  font-size:24px!important;line-height:1.2;font-weight:800!important;letter-spacing:-.01em;color:var(--fa-ink)!important;margin:0 0 4px!important;
}
body.login_admin h1+p{color:var(--fa-muted)!important;font-size:15px;margin:0}

/* client: heading with the brand mark above it */
.login-heading,.forgot-password-heading h1,html.fmd-auth body #content h1{
  font-size:24px!important;line-height:1.2;font-weight:800!important;letter-spacing:-.01em;color:var(--fa-ink);margin-bottom:18px!important;
}
.login-heading::before,.forgot-password-heading h1::before{
  content:"";display:block;width:96px;height:96px;margin:0 auto 14px;
  background:#fff url(logo-mark.png) center/84% no-repeat;border-radius:24px;border:1px solid var(--fa-line);box-shadow:var(--fa-shadow);
}
html.fmd-auth body #wrapper,html.fmd-auth body #content{background:transparent!important}
html.fmd-auth body .mtop40{margin-top:calc(24px + env(safe-area-inset-top))}

/* ---------- card ---------- */
body.login_admin .authentication-form-wrapper>div:not(.company-logo):not(.text-center),
body.authentication .authentication-form-wrapper>div:not(.company-logo):not(.text-center),
body.authentication .authentication-form-wrappe>div:not(.company-logo),
body.login_admin .tw-bg-white,body.authentication .tw-bg-white,
html.fmd-auth body .panel_s{
  background:var(--fa-surface)!important;border:1px solid var(--fa-line)!important;border-radius:20px!important;
  box-shadow:var(--fa-shadow)!important;margin-left:0!important;margin-right:0!important;
}
body.login_admin .tw-bg-white,body.authentication .tw-bg-white{padding:26px 22px!important}
html.fmd-auth body .panel_s{margin-bottom:16px}
html.fmd-auth body .panel_s .panel-body{padding:24px 22px!important}
@media (min-width:480px){body.login_admin .tw-bg-white,body.authentication .tw-bg-white,html.fmd-auth body .panel_s .panel-body{padding:30px 30px!important}}

/* ---------- fields ---------- */
body.login_admin label,body.authentication label,html.fmd-auth body .login-form label,html.fmd-auth body #forgot-password-form label,html.fmd-auth body form label.control-label{
  font-size:14px;font-weight:700;color:var(--fa-ink);margin-bottom:8px;
}
body.login_admin .form-group,body.authentication .form-group,html.fmd-auth body .form-group{margin-bottom:16px}
body.login_admin .form-control,body.authentication .form-control,html.fmd-auth body .form-control,
html.fmd-auth body .bootstrap-select>.dropdown-toggle{
  height:48px!important;min-height:48px;padding:10px 14px!important;font-size:16px!important; /* 16px stops iOS zoom-on-focus */
  border:1px solid var(--fa-line)!important;border-radius:12px!important;background:#fff!important;color:var(--fa-ink)!important;
  box-shadow:none!important;transition:border-color .15s,box-shadow .15s;
}
body.login_admin .form-control:focus,body.authentication .form-control:focus,html.fmd-auth body .form-control:focus,
html.fmd-auth body .bootstrap-select.open>.dropdown-toggle,html.fmd-auth body .bootstrap-select>.dropdown-toggle:focus{
  border-color:var(--fa-brand)!important;box-shadow:0 0 0 4px rgba(31,79,143,.14)!important;outline:0!important;
}
html.fmd-auth body .bootstrap-select{width:100%!important}
html.fmd-auth body .bootstrap-select .filter-option-inner-inner{line-height:26px}
html.fmd-auth body textarea.form-control{height:auto!important}

/* checkbox: keep Perfex markup, bigger tap target */
body.login_admin .checkbox label,body.authentication .checkbox label,html.fmd-auth body .checkbox label{font-weight:600;color:var(--fa-muted);min-height:28px;display:inline-flex;align-items:center}
html.fmd-auth body .checkbox input[type=checkbox]:checked+label::before,
body.login_admin .checkbox input[type=checkbox]:checked+label::before{background-color:var(--fa-brand);border-color:var(--fa-brand)}

/* ---------- buttons ---------- */
body.login_admin .btn,body.authentication .btn,html.fmd-auth body .login-form .btn,html.fmd-auth body #forgot-password-form .btn,html.fmd-auth body .panel_s .btn-block{
  min-height:48px;border-radius:12px!important;font-size:16px;font-weight:700!important;letter-spacing:.005em;
}
body.login_admin .btn-primary,body.authentication .btn-primary,html.fmd-auth body .btn-primary{
  background:var(--fa-brand)!important;border-color:var(--fa-brand)!important;color:#fff!important;
  box-shadow:0 1px 2px rgba(15,43,82,.25),0 6px 16px rgba(31,79,143,.25)!important;
}
body.login_admin .btn-primary:hover,body.authentication .btn-primary:hover,html.fmd-auth body .btn-primary:hover,
body.login_admin .btn-primary:focus,body.authentication .btn-primary:focus,html.fmd-auth body .btn-primary:focus{background:var(--fa-brand-deep)!important;border-color:var(--fa-brand-deep)!important}
html.fmd-auth body .btn-default{background:#fff!important;color:var(--fa-brand)!important;border:1px solid var(--fa-line)!important}

/* ---------- links ---------- */
body.login_admin a,body.authentication a,html.fmd-auth body .login-form a,html.fmd-auth body #forgot-password-form+a,html.fmd-auth body .panel_s a{color:var(--fa-brand)}
body.login_admin a.text-muted,body.authentication a.text-muted,html.fmd-auth body .text-muted{color:var(--fa-muted)!important;font-weight:600}
body.login_admin a:hover,body.authentication a:hover,html.fmd-auth body .panel_s a:hover{color:var(--fa-brand-deep);text-decoration:none}

/* ---------- alerts / validation ---------- */
body.login_admin .alert,body.authentication .alert,html.fmd-auth body .alert{border-radius:12px;border:0;font-weight:600;font-size:14px;padding:12px 14px}
body.login_admin .alert-danger,body.authentication .alert-danger,html.fmd-auth body .alert-danger{background:var(--fa-danger-soft);color:var(--fa-danger)}
body.login_admin .alert-success,body.authentication .alert-success,html.fmd-auth body .alert-success{background:var(--fa-success-soft);color:var(--fa-success)}
body.login_admin .alert-info,body.authentication .alert-info,html.fmd-auth body .alert-info{background:var(--fa-info-soft);color:var(--fa-info)}
html.fmd-auth body p.text-danger,html.fmd-auth body .has-error .help-block,html.fmd-auth body p.alert-validation{color:var(--fa-danger);font-size:13px;font-weight:600;margin:6px 0 0}
html.fmd-auth body .has-error .form-control{border-color:var(--fa-danger)!important}

/* reCAPTCHA: keep it inside the card on small screens */
.g-recaptcha{display:flex;justify-content:center;overflow:hidden}
@media (max-width:360px){.g-recaptcha{transform:scale(.88);transform-origin:center top}}

/* client: hide the portal navigation chrome on the sign-in screens only (it is empty for guests) */
html.fmd-auth body .navbar{box-shadow:none}

@media (prefers-reduced-motion:reduce){*{transition:none!important}}
