/* Aveade Business Central — Keycloak realm login only. No Administration Central changes. */
:root{--aveade-orange:#f26517;--aveade-ink:#171b25;--aveade-muted:#697589}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0!important}
body.login-pf{background:#fff!important;color:var(--aveade-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
body.login-pf:before{content:"";position:fixed;inset:0 auto 0 0;width:50%;height:100vh;background:#121212 url("../img/merchant.jpg") center 30% / cover no-repeat;z-index:0}
body.login-pf:after{content:"";position:fixed;left:50%;top:0;bottom:0;width:1px;background:#e4e6ea;z-index:1}
.login-pf-page{display:block!important;margin:0 0 0 50%!important;width:50%!important;min-height:100vh!important;padding:0!important;background:#fff!important}
#kc-header{display:none!important}
#kc-container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;min-height:100vh!important;background:#fff!important}
#kc-container-wrapper{margin:0!important;padding:0!important}
#kc-content{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
#kc-content-wrapper{padding:0!important;margin:0!important}
.card-pf,.login-pf-page .card-pf{max-width:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;padding:0!important;min-height:100vh!important}
#kc-form,#kc-form-wrapper,#kc-info,#kc-info-wrapper{width:100%!important;max-width:none!important;margin:0!important;float:none!important;background:transparent!important;box-shadow:none!important}
#kc-page-title,.login-pf-header{display:none!important}
.aveade-auth-shell{margin:0 auto;min-height:100vh;width:min(100%,640px);display:flex;flex-direction:column;justify-content:center;padding:22px clamp(28px,4vw,62px) 24px}
.aveade-brand-head{display:flex;align-items:center;gap:15px;margin-bottom:25px;white-space:nowrap}
.aveade-logo{display:block;width:154px;max-width:49%;height:auto}
.aveade-brand-rule{width:1px;height:34px;background:#d4d9e1;flex:none}
.aveade-brand-label{font-size:16px;font-weight:650;letter-spacing:-.025em;line-height:1.3;color:#1d2531}
.aveade-eyebrow{font-size:10px;font-weight:750;letter-spacing:.20em;color:#e35417;margin-bottom:10px}
.aveade-intro h1{font-size:clamp(27px,2.5vw,36px)!important;line-height:1.11;letter-spacing:-.041em;margin:0 0 9px;font-weight:750;color:#141a24}
.aveade-intro p{font-size:13px;line-height:1.5;color:#657285;max-width:470px;margin:0 0 19px}
.aveade-field{margin-bottom:14px}
.aveade-field label{display:block;margin:0 0 6px;font-size:12px;font-weight:650;color:#252e3b}
.aveade-field input{display:block;background:#fff!important;border:1px solid #d6dce4!important;border-radius:10px!important;box-shadow:none!important;width:100%!important;height:45px!important;padding:0 15px!important;font-size:15px!important;color:#161b25!important;outline:none!important}
.aveade-field input:focus{border-color:#e65c19!important;box-shadow:0 0 0 3px rgba(242,101,23,.12)!important}
.aveade-password-wrap{position:relative}
.aveade-password-wrap input{padding-right:78px!important}
.aveade-reveal{position:absolute;right:6px;top:5px;height:35px;padding:0 10px;border:0;background:#fff;font-size:12px;font-weight:650;color:#717b89;cursor:pointer;border-radius:6px}
.aveade-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:3px 0 18px;flex-wrap:wrap}
.aveade-remember{display:flex!important;align-items:center;gap:10px;margin:0!important;font-size:14px!important;color:#3a4553;cursor:pointer;font-weight:500!important}
.aveade-remember input{appearance:none!important;-webkit-appearance:none!important;width:19px!important;height:19px!important;min-width:19px!important;margin:0!important;border:1px solid #b8c0cd!important;border-radius:5px!important;background:#fff!important;display:grid;place-items:center;cursor:pointer;box-shadow:none!important}
.aveade-remember input:checked{background:var(--aveade-orange)!important;border-color:var(--aveade-orange)!important}
.aveade-remember input:checked:after{content:"";display:block;width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
.aveade-remember input:focus-visible{outline:3px solid rgba(242,101,23,.28);outline-offset:2px}
.aveade-forgot{color:#dd5418!important;font-size:13px;font-weight:650;text-decoration:none!important}
.aveade-forgot:hover{text-decoration:underline!important}
.aveade-primary,.aveade-secondary{display:flex!important;align-items:center;justify-content:center;gap:15px;width:100%;height:47px;border-radius:9px;text-decoration:none!important;font-size:15px;font-weight:700;cursor:pointer;transition:filter .2s,transform .2s}
.aveade-primary{color:#fff!important;background:linear-gradient(100deg,#ff790a,#e74d0b)!important;border:0!important;box-shadow:0 10px 22px rgba(235,83,15,.12)!important}
.aveade-primary:hover{filter:brightness(.97)}
.aveade-primary:active,.aveade-secondary:active{transform:translateY(1px)}
.aveade-secondary{border:1px solid #b4beca;color:#1d2734!important;background:#fff}
.aveade-secondary:hover{background:#f7f8fa}
.aveade-register-divider{display:flex;align-items:center;gap:13px;margin:16px 0;color:#8b95a4;font-size:13px;white-space:nowrap}
.aveade-register-divider:before,.aveade-register-divider:after{content:"";height:1px;background:#e3e6eb;flex:1}
.aveade-error{color:#9f2625;background:#fff2f1;border:1px solid #f3cbc8;border-radius:8px;padding:11px 13px;font-size:13px;margin-bottom:16px}
.aveade-screen-reader-heading{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
/* Inherited Keycloak required-action pages remain available and use a clear white surface. */
#kc-form-options,#kc-form-buttons{max-width:100%}
@media(max-width:980px){body.login-pf:before{width:38%}.login-pf-page{margin-left:38%!important;width:62%!important}body.login-pf:after{left:38%}.aveade-auth-shell{padding:24px 30px}.aveade-brand-head{gap:13px;margin-bottom:21px}.aveade-logo{width:145px}.aveade-brand-label{font-size:16px}}
@media(max-width:680px){body.login-pf:before,body.login-pf:after{display:none}.login-pf-page{margin-left:0!important;width:100%!important}.aveade-auth-shell{min-height:100dvh;padding:28px 25px 34px;justify-content:center}.aveade-brand-head{margin-bottom:26px}.aveade-logo{width:156px}.aveade-brand-label{font-size:15px}.aveade-intro h1{font-size:30px!important}.aveade-intro p{font-size:13px;margin-bottom:19px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* v1.2: user-supplied merchant portrait, fully photographic left panel. */
body.login-pf { background:#fff!important; }
body.login-pf:before { background-image:url("../img/merchant.jpg")!important; background-color:#ece8e1!important; background-position:center 42%!important; background-size:cover!important; opacity:1!important; }
body.login-pf .login-pf-page { background:#fff!important; }
/* Compensate for the Keycloak wrapper on compact laptop viewports. */
@media (min-width:681px) and (max-height:780px) {
 .aveade-auth-shell{min-height:100vh;padding-top:12px;padding-bottom:12px;}
 .aveade-brand-head{margin-bottom:17px;}
 .aveade-intro p{margin-bottom:12px;}
 .aveade-field{margin-bottom:10px;}
 .aveade-options{margin-bottom:12px;}
 .aveade-register-divider{margin:11px 0;}
}
/* Preserve full form access on narrow/mobile devices: page may scroll only when necessary. */
@media(max-width:680px){body.login-pf:before{display:none!important;}}

.aveade-photo-panel {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 50vw !important;
  height: 100vh !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center 42% !important;
  z-index: 1000 !important;
  opacity: 1 !important;
  pointer-events: none !important;
}
@media (max-width: 680px) {
  .aveade-photo-panel {
    display: none !important;
  }
}
