/* XPROTEC v100.19 CP13 — portal registration/password context */
/* ===== SOURCE: xprotec-v80.css ===== */
/* XPROTEC v80 — approval workflow, Email Center, registration and datasheet polish */
.xpc-datasheet-card{
  border-top:1px solid rgba(255,215,0,.42)!important;
  box-shadow:inset 0 2px 0 rgba(255,215,0,.08)!important;
}

.xpc-v76-register-actions [hidden],
.xpc-v76-register-step[hidden],
.xpc-v80-register-submit[hidden]{display:none!important}
.xpc-v76-register-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-top:20px!important;
}
.xpc-v76-register-actions .xpc-v80-register-submit{margin-left:auto!important}

.xpc-dealer-review-form,
.xpc-front-request-actions{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
.xpc-dealer-workflow-summary{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-bottom:4px!important;
}
.xpc-dealer-workflow-summary>div{
  padding:11px 12px!important;
  background:#111212!important;
  border:1px solid rgba(255,215,0,.14)!important;
}
.xpc-dealer-workflow-summary small{
  display:block!important;
  margin-bottom:5px!important;
  color:#AAA58F!important;
  font-family:"JetBrains Mono",monospace!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
.xpc-dealer-workflow-summary strong{color:#fff!important;font-size:14px!important;line-height:1.4!important}
.xpc-dealer-notify{display:flex!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;background:#111212!important;border:1px solid rgba(255,215,0,.14)!important}
.xpc-dealer-notify input{width:18px!important;height:18px!important;margin:0!important}
.xpc-dealer-notify span{color:#F4F2E8!important;font-size:13px!important;font-weight:750!important}
.xpc-dealer-audit{margin-top:4px!important;padding:11px 12px!important;border:1px solid rgba(255,215,0,.13)!important;background:#0D0E0E!important}
.xpc-dealer-audit summary{cursor:pointer!important;color:#FFD700!important;font-size:12px!important;font-weight:850!important;text-transform:uppercase!important}
.xpc-dealer-audit ul{margin:12px 0 0 18px!important;padding:0!important;color:#D7D2C0!important}
.xpc-dealer-audit li{margin:0 0 8px!important;font-size:12px!important;line-height:1.55!important}
.xpc-application-actions .xpc-dealer-review-form select,
.xpc-front-request-actions select{min-height:48px!important;font-size:15px!important}
.xpc-button-danger,.xpc-btn-danger{border-color:#A8443D!important;color:#FFB1AA!important;background:#151010!important}
.xpc-button-danger:hover,.xpc-btn-danger:hover{background:#A8332D!important;color:#fff!important}

.xpc-email-center-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:20px!important;
}
.xpc-email-center-card{
  padding:24px!important;
  background:#101111!important;
  border:1px solid rgba(255,215,0,.18)!important;
}
.xpc-email-center-card-head{margin-bottom:18px!important}
.xpc-email-center-card-head>span{display:block!important;margin-bottom:7px!important;color:#FFD700!important;font-family:"JetBrains Mono",monospace!important;font-size:11px!important;font-weight:900!important;letter-spacing:.09em!important;text-transform:uppercase!important}
.xpc-email-center-card-head h3{margin:0!important;color:#fff!important;font-size:27px!important;line-height:1.15!important;text-transform:uppercase!important}
.xpc-email-settings-form{display:grid!important;gap:14px!important}
.xpc-email-settings-form label{display:grid!important;gap:7px!important;color:#F2EFE5!important;font-size:13px!important;font-weight:800!important}
.xpc-email-settings-form label>span{color:#C9C4B1!important;font-family:"JetBrains Mono",monospace!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.xpc-email-settings-form input{min-height:50px!important;background:#171818!important;border:1px solid rgba(255,215,0,.24)!important;color:#fff!important;font-size:15px!important;padding:0 13px!important}
.xpc-email-settings-form input[type="color"]{padding:5px!important}
.xpc-email-template-list{display:grid!important;gap:9px!important}
.xpc-email-template-list form{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:11px 12px!important;background:#151616!important;border:1px solid rgba(255,215,0,.12)!important}
.xpc-email-template-list form span{color:#F4F2E8!important;font-size:14px!important;font-weight:750!important;line-height:1.35!important}
.xpc-email-template-list .xpc-btn{min-width:110px!important;min-height:42px!important}
.xpc-email-log-card{margin-top:20px!important}
.xpc-email-log-scroll{overflow:auto!important;border:1px solid rgba(255,215,0,.12)!important}
.xpc-email-log-scroll table{width:100%!important;min-width:1050px!important;border-collapse:collapse!important}
.xpc-email-log-scroll th{padding:12px!important;background:#1B1C1C!important;color:#FFD700!important;border:1px solid rgba(255,215,0,.12)!important;font-size:11px!important;text-align:left!important;text-transform:uppercase!important}
.xpc-email-log-scroll td{padding:12px!important;background:#0D0E0E!important;color:#E3DECD!important;border:1px solid rgba(255,215,0,.08)!important;font-size:13px!important;line-height:1.45!important}
.xpc-email-result{display:inline-flex!important;padding:5px 8px!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase!important}
.xpc-email-result.is-sent{background:#15391F!important;color:#8BFF9F!important}
.xpc-email-result.is-failed{background:#431915!important;color:#FFAEA7!important}

@media(max-width:1100px){
  .xpc-email-center-grid{grid-template-columns:1fr!important}
}
@media(max-width:680px){
  .xpc-v76-register-actions{flex-wrap:wrap!important}
  .xpc-v76-register-actions .xpc-btn{width:100%!important;margin:0!important}
  .xpc-email-center-card{padding:18px!important}
  .xpc-email-template-list form{align-items:stretch!important;flex-direction:column!important}
  .xpc-email-template-list .xpc-btn{width:100%!important}
}

/* Nine admin modules in v80 */
.xpc-front-admin-nav{grid-template-columns:repeat(9,minmax(140px,1fr))!important}
@media(max-width:1500px){.xpc-front-admin-nav{grid-template-columns:repeat(5,minmax(150px,1fr))!important}}
@media(max-width:920px){.xpc-front-admin-nav{grid-template-columns:repeat(2,minmax(150px,1fr))!important;position:relative!important;top:auto!important}}
@media(max-width:560px){.xpc-front-admin-nav{grid-template-columns:1fr!important}}
.xpc-email-template-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.xpc-email-log-scroll td .xpc-btn{min-height:36px!important;padding:0 10px!important;font-size:10px!important}
@media(max-width:680px){.xpc-email-template-actions{width:100%!important}.xpc-email-template-actions .xpc-btn{flex:1!important}}


/* ===== SOURCE: xprotec-v81.css ===== */
/* XPROTEC Core v81 — branded password recovery and UTF-8 email support UI */

.xpc-portal-forgot,
.xpc-password-back-link{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  background:transparent!important;
  padding:0!important;
  cursor:pointer!important;
  font-family:Inter,Arial,sans-serif!important;
}
.xpc-portal-forgot{
  min-height:34px!important;
  align-items:center!important;
  font-size:13px!important;
  font-weight:700!important;
}
.xpc-password-back-link{
  display:inline-flex!important;
  align-items:center!important;
  min-height:42px!important;
  margin-top:18px!important;
  color:#d8d2c0!important;
  font-size:13px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.xpc-password-back-link:hover,
.xpc-password-back-link:focus-visible{
  color:var(--xpc-yellow)!important;
}

.xpc-password-panel .xpc-portal-form-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:620px!important;
}
.xpc-password-panel .xpc-portal-form-card h3{
  margin-bottom:22px!important;
}
.xpc-password-panel .xpc-inquiry-form{
  max-width:620px!important;
}
.xpc-password-panel .xpc-inquiry-form label{
  gap:9px!important;
}
.xpc-password-panel .xpc-inquiry-form input{
  min-height:54px!important;
  font-size:16px!important;
}
.xpc-password-panel .xpc-btn{
  min-height:50px!important;
  padding:0 22px!important;
  font-size:12px!important;
}

.xpc-password-input-wrap{
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
}
.xpc-password-input-wrap input{
  width:100%!important;
  padding-right:88px!important;
}
.xpc-password-input-wrap button{
  position:absolute!important;
  top:1px!important;
  right:1px!important;
  bottom:1px!important;
  min-width:76px!important;
  border:0!important;
  border-left:1px solid rgba(255,215,0,.22)!important;
  background:#191a1a!important;
  color:#f4f1e7!important;
  font-family:"JetBrains Mono",monospace!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.xpc-password-input-wrap button:hover,
.xpc-password-input-wrap button:focus-visible{
  background:var(--xpc-yellow)!important;
  color:#090909!important;
}

.xpc-password-strength{
  display:grid!important;
  grid-template-columns:minmax(90px,180px) 1fr!important;
  align-items:center!important;
  gap:12px!important;
  margin:-2px 0 4px!important;
}
.xpc-password-strength>span{
  position:relative!important;
  display:block!important;
  height:7px!important;
  overflow:hidden!important;
  background:#2a2b2b!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.xpc-password-strength>span:after{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:0!important;
  background:#d5483f!important;
  transition:width .2s ease,background .2s ease!important;
}
.xpc-password-strength strong{
  color:#aaa48f!important;
  font-size:12px!important;
  font-weight:700!important;
}
.xpc-password-strength.is-weak>span:after{width:32%!important;background:#d5483f!important}
.xpc-password-strength.is-fair>span:after{width:58%!important;background:#d99c25!important}
.xpc-password-strength.is-good>span:after{width:78%!important;background:#c6c72c!important}
.xpc-password-strength.is-strong>span:after{width:100%!important;background:#42c96b!important}
.xpc-password-strength.is-weak strong{color:#ff8c84!important}
.xpc-password-strength.is-fair strong{color:#ffc463!important}
.xpc-password-strength.is-good strong{color:#e4e56a!important}
.xpc-password-strength.is-strong strong{color:#76e59a!important}

.xpc-password-success-panel .xpc-portal-form-card{
  align-items:flex-start!important;
}
.xpc-password-success-mark{
  display:flex!important;
  width:76px!important;
  height:76px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 20px!important;
  border:2px solid #42c96b!important;
  background:rgba(66,201,107,.08)!important;
  color:#76e59a!important;
  font-size:42px!important;
  font-weight:900!important;
}
.xpc-password-success-copy{
  max-width:610px!important;
  margin:0 0 22px!important;
  color:#ddd7c4!important;
  font-size:15px!important;
  line-height:1.75!important;
}

/* Special recovery panels do not need an active yellow Login/Register tab. */
.xpc-portal-tabs.is-password-flow .xpc-portal-tab-nav button{
  background:#101111!important;
  color:#aaa48f!important;
}
.xpc-portal-tabs.is-password-flow .xpc-portal-tab-nav button:hover{
  background:#181919!important;
  color:#fff!important;
}

@media(max-width:920px){
  .xpc-password-panel .xpc-portal-form-card{min-height:0!important}
  .xpc-password-strength{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .xpc-password-panel .xpc-portal-panel-copy,
  .xpc-password-panel .xpc-portal-form-card{padding:26px 20px!important}
  .xpc-password-panel .xpc-portal-panel-copy h2{font-size:42px!important}
  .xpc-password-panel .xpc-portal-form-card h3{font-size:32px!important}
  .xpc-password-panel .xpc-btn{width:100%!important}
}


/* ===== SOURCE: xprotec-v82.css ===== */
/* XPROTEC Core v82 — password reset routing safeguards and Contact email fit */

/* Keep the commercial email complete and on one line on desktop. */
.xpc-support-hero-v79-inner{
  grid-template-columns:minmax(0,1.45fr) minmax(390px,.68fr)!important;
  gap:58px!important;
}
.xpc-support-direct-v79{
  min-width:390px!important;
}
.xpc-support-direct-v79>a[href^="mailto:"]:not(.xpc-support-direct-button-v79){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  color:#fff!important;
  font-size:clamp(18px,1.55vw,25px)!important;
  line-height:1.25!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  text-overflow:clip!important;
}

/* Password routes are intentionally rendered as the focused recovery workspace. */
.xpc-portal-tabs.is-password-flow .xpc-portal-tab-nav{
  display:none!important;
}
.xpc-portal-tabs.is-password-flow{
  border-top:3px solid var(--xpc-yellow,#ffd700)!important;
}
.xpc-password-panel.is-active{
  display:grid!important;
}

@media(max-width:1120px){
  .xpc-support-hero-v79-inner{
    grid-template-columns:minmax(0,1fr) minmax(350px,390px)!important;
    gap:34px!important;
  }
  .xpc-support-direct-v79{min-width:350px!important;}
  .xpc-support-direct-v79>a[href^="mailto:"]:not(.xpc-support-direct-button-v79){
    font-size:clamp(16px,1.9vw,21px)!important;
  }
}
@media(max-width:820px){
  .xpc-support-hero-v79-inner{grid-template-columns:1fr!important;}
  .xpc-support-direct-v79{min-width:0!important;width:100%!important;}
  .xpc-support-direct-v79>a[href^="mailto:"]:not(.xpc-support-direct-button-v79){
    font-size:clamp(15px,4.2vw,22px)!important;
    letter-spacing:-.035em!important;
  }
}
@media(max-width:420px){
  .xpc-support-direct-v79>a[href^="mailto:"]:not(.xpc-support-direct-button-v79){
    font-size:14px!important;
    letter-spacing:-.045em!important;
  }
}


