:root{--auth-ink:#f5f5f5;--auth-muted:#a7a7ad;--auth-line:#454548;--auth-blue:#e53935;--auth-cyan:#ff625d}
.auth-body{margin:0;min-width:320px;background:#edf3f8;color:var(--auth-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.auth-body:before{display:none!important}
.auth-shell{min-height:100vh;display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(500px,.92fr);overflow:hidden;background:#edf3f8}
.auth-visual{position:relative;min-height:100vh;padding:34px clamp(34px,4.4vw,76px) 46px!important;display:flex!important;flex-direction:column;overflow:hidden;background:linear-gradient(98deg,rgba(3,15,26,.98) 0%,rgba(5,25,42,.91) 52%,rgba(4,22,38,.58) 100%),url("visuals/portal-tuning-banner-v1.png") 64% center/cover no-repeat!important;color:#fff}
.auth-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,30,.08),rgba(5,18,30,.04) 46%,rgba(5,18,30,.68));pointer-events:none}
.auth-visual:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--auth-blue),var(--auth-cyan),transparent 86%)}
.auth-brand,.auth-copy{position:relative;z-index:2}
.auth-brand{min-height:58px;display:flex;align-items:center}
.auth-brand-logo{display:block;width:min(210px,52vw)!important;height:auto!important;filter:drop-shadow(0 8px 26px rgba(0,0,0,.22))}
.auth-visual-art{display:none!important}
.auth-copy{max-width:780px;margin-top:auto}
.auth-copy .pill{width:max-content;max-width:100%;min-height:34px;padding:0 13px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,98,93,.34);border-radius:999px;background:rgba(63,12,12,.62);color:#ffaaa7;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(10px)}
.auth-copy .pill i{width:8px;height:8px;border-radius:50%;background:#e53935;box-shadow:0 0 0 5px rgba(229,57,53,.12)}
.auth-copy h1{max-width:800px;margin:22px 0 16px;color:#fff!important;font-size:clamp(56px,5.3vw,88px);line-height:.94;letter-spacing:-.06em;text-wrap:balance}
.auth-copy>p{max-width:680px;margin:0;color:#b9b9be!important;font-size:15px;line-height:1.65}
.feature-list{margin-top:30px;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.feature-list>div{min-height:98px;padding:15px;display:grid!important;grid-template-columns:34px 1fr;gap:10px;align-items:start;border:1px solid rgba(255,98,93,.16);border-radius:14px;background:rgba(22,22,24,.76);backdrop-filter:blur(12px)}
.feature-list>div>.icon{width:32px;height:32px;padding:8px;border-radius:9px;background:#3a2022;color:#ff6b66}
.feature-list strong,.feature-list small{display:block}.feature-list strong{color:#fff;font-size:12px}.feature-list small{margin-top:5px;color:#aaaab0;font-size:9px;line-height:1.45}
.auth-panel{min-width:0;padding:34px clamp(28px,4vw,74px)!important;display:flex!important;align-items:center;justify-content:center;background:radial-gradient(circle at 78% 18%,rgba(229,57,53,.12),transparent 26%),linear-gradient(145deg,#171718,#101011)!important}
.auth-panel:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.28;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px}
.auth-card{position:relative;z-index:2;width:min(560px,100%)!important;max-width:none!important;margin:0!important;padding:42px 42px 36px!important;border:1px solid rgba(191,207,221,.8)!important;border-radius:24px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 28px 85px rgba(11,38,63,.14)!important;backdrop-filter:blur(18px)}
.auth-mobile-brand{display:none!important}
.auth-heading{margin-bottom:27px}.auth-heading .page-kicker{display:block;margin-bottom:9px;color:var(--auth-blue)!important;font-size:10px;font-weight:950;letter-spacing:.17em;text-transform:uppercase}.auth-heading h2{margin:0;color:var(--auth-ink)!important;font-size:clamp(30px,2.2vw,40px)!important;line-height:1.05;letter-spacing:-.045em}.auth-heading p{margin:10px 0 0;color:var(--auth-muted)!important;font-size:13px;line-height:1.58}
.auth-form{display:flex;flex-direction:column;gap:17px}.auth-form .form-grid{gap:12px}.auth-form .field{margin:0}.auth-form label,.auth-form .label-row{color:#e3e3e6!important;font-size:11px;font-weight:850}.auth-form .label-row{margin-bottom:7px}.auth-form .label-row a{color:#ff6b66;font-size:10px}
.auth-form .input{width:100%;height:52px!important;margin-top:7px;padding:0 14px!important;border:1px solid var(--auth-line)!important;border-radius:11px!important;background:#fff!important;color:var(--auth-ink)!important;font:600 15px/1 Inter,ui-sans-serif,system-ui!important;box-shadow:0 1px 0 rgba(8,29,49,.02);outline:0;transition:border-color .18s,box-shadow .18s}
.auth-form .input:focus{border-color:#e53935!important;box-shadow:0 0 0 4px rgba(229,57,53,.16)!important}
.password-field{position:relative}.password-field .input{padding-right:52px!important}.password-toggle{right:5px!important;top:12px!important;width:42px!important;height:42px!important;border-radius:9px!important;color:#6f8498!important}.password-toggle .icon{width:18px}
.remember-row,.switch-row{min-height:42px;display:grid!important;grid-template-columns:20px 1fr;gap:10px;align-items:start;color:#61758a!important;font-size:11px!important;line-height:1.5}.remember-row input,.switch-row input{width:17px;height:17px;margin:1px 0 0;accent-color:var(--auth-blue)}
.switch-row b,.switch-row small{display:block}.switch-row b{color:#e3e3e6;font-size:11px}.switch-row small{margin-top:4px;color:#929299;font-size:10px;font-weight:500}
.auth-submit{width:100%;min-height:52px!important;border-radius:11px!important;background:linear-gradient(135deg,#ed3f3a,#b7191f)!important;color:#fff!important;box-shadow:0 13px 30px rgba(229,57,53,.24)!important;font-size:12px!important;font-weight:900!important}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 16px 36px rgba(229,57,53,.3)!important}.auth-submit .icon{width:18px}
.auth-divider{margin:22px 0;border-top:1px solid #e5ecf2}.auth-callout,.auth-links{margin-top:21px;padding-top:20px;display:flex!important;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e5ecf2;color:#7a8ca0;font-size:11px}.auth-callout .button,.auth-links a{min-height:43px;padding:0 15px;border:1px solid #d5e0e9;border-radius:10px;background:#fff;color:#14324e;font-weight:850}
.auth-trust,.auth-footer{margin-top:19px;display:flex!important;justify-content:center;gap:14px;flex-wrap:wrap;color:#93a2b2!important;font-size:9px}.auth-trust span{display:flex;align-items:center;gap:5px}.auth-trust .icon{width:13px}
.form-help,.auth-security-note{margin:0;padding:11px 12px;border-radius:9px;background:#f2f6fa;color:#718499!important;font-size:10px;line-height:1.5}
.verification-card,.verification-result{border-radius:12px!important}
.verification-card.is-warning{margin:20px 0 22px!important;padding:17px 18px!important;border:1px solid #f1b64a!important;background:linear-gradient(135deg,#fff9e9 0%,#fff1c7 100%)!important;color:#4b2b00!important;box-shadow:0 12px 28px rgba(176,108,0,.16)!important}
.verification-card.is-warning .verification-card-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#f59e0b;color:#fff;box-shadow:0 7px 16px rgba(217,119,6,.24)}
.verification-card.is-warning .verification-card-icon .icon{width:22px;height:22px;color:inherit}
.verification-card.is-warning strong{display:block;color:#3d2300!important;font-size:15px!important;font-weight:900!important;letter-spacing:-.01em}
.verification-card.is-warning span{display:block;margin-top:4px;color:#72501d!important;font-size:13px!important;line-height:1.45}
.verification-card.is-warning span b{color:#a64b00!important;font-weight:900}
@media(max-width:1000px){
  .auth-shell{grid-template-columns:1fr}
  .auth-visual{min-height:270px;padding:24px 30px 30px!important;background-position:64% center!important}
  .auth-copy{margin-top:auto}.auth-copy h1{margin:12px 0 8px;font-size:46px}.auth-copy>p{max-width:560px;font-size:12px}.auth-copy .pill{min-height:30px;font-size:8px}
  .feature-list{display:none!important}.auth-panel{min-height:calc(100vh - 270px);padding:26px!important}
}
@media(max-width:560px){
  .auth-shell{display:block!important;min-height:100vh;overflow:visible}
  .auth-visual{min-height:205px;padding:19px 20px 42px!important;background-position:61% center!important}
  .auth-brand{min-height:38px}.auth-brand-logo{width:160px!important}.auth-copy .pill{display:none}.auth-copy h1{max-width:330px;margin:18px 0 0;font-size:35px;line-height:.98}.auth-copy>p{display:none}
  .auth-panel{min-height:calc(100vh - 175px);margin-top:-30px;padding:0 12px 24px!important;align-items:flex-start;background:linear-gradient(180deg,#eef4f9,#f7faff)!important}
  .auth-panel:before{display:none}.auth-card{width:100%!important;padding:26px 20px 22px!important;border-radius:20px!important;box-shadow:0 18px 55px rgba(11,38,63,.13)!important}
  .auth-heading{margin-bottom:22px}.auth-heading h2{font-size:30px!important}.auth-heading p{font-size:11px}.auth-form .form-grid{grid-template-columns:1fr!important;gap:17px}.auth-form .input{height:50px!important;font-size:16px!important}
  .auth-callout,.auth-links{align-items:stretch;flex-direction:column}.auth-callout .button,.auth-links a{width:100%;display:flex;align-items:center;justify-content:center}.auth-trust{gap:9px}
}
.auth-security-note{display:flex;align-items:flex-start;gap:8px;margin:0;color:#b2b2b8;font-size:13px;line-height:1.55}.auth-security-note .icon{flex:0 0 18px;width:18px;color:#ff625d}.auth-code-input{text-align:center;font-size:26px!important;letter-spacing:.28em;font-weight:850}

/* v6.11.1 — graphite / black / red authentication system */
:root{--auth-ink:#f5f5f5;--auth-muted:#a7a7ad;--auth-line:#454548;--auth-blue:#e53935;--auth-cyan:#ff625d}
.auth-body,.auth-shell{background:#141414!important;color:#f5f5f5}
.auth-visual{background:linear-gradient(100deg,rgba(8,8,9,.98),rgba(18,18,19,.91) 55%,rgba(30,8,8,.62)),url("visuals/portal-tuning-banner-v1.png") 64% center/cover no-repeat!important}
.auth-visual:before{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.08) 44%,rgba(0,0,0,.78))}
.auth-visual:after{background:linear-gradient(90deg,#b71c1c,#e53935,#ff625d,transparent 88%)}
.auth-panel{background:radial-gradient(circle at 82% 16%,rgba(229,57,53,.12),transparent 29%),linear-gradient(145deg,#171718,#101011)!important}
.auth-panel:before{opacity:.22;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)}
.auth-card{border-color:#39393c!important;background:rgba(31,31,33,.97)!important;box-shadow:0 30px 90px rgba(0,0,0,.42)!important}
.auth-heading h2{color:#fafafa!important}.auth-heading p{color:#aaaab0!important}.auth-heading .page-kicker{color:#ff625d!important}
.auth-form label,.auth-form .label-row,.switch-row b{color:#e3e3e6!important}.auth-form .label-row a{color:#ff7772}
.auth-form .input{border-color:#49494d!important;background:#29292c!important;color:#f7f7f8!important;box-shadow:none}.auth-form .input::placeholder{color:#85858c}
.auth-form .input:focus{border-color:#e53935!important;box-shadow:0 0 0 4px rgba(229,57,53,.16)!important}
.password-toggle{color:#b2b2b8!important}.remember-row,.switch-row{color:#b1b1b7!important}.switch-row small{color:#929299}
.auth-submit{background:linear-gradient(135deg,#c62828,#e53935)!important;box-shadow:0 13px 30px rgba(229,57,53,.23)!important}
.auth-submit:hover{box-shadow:0 16px 36px rgba(229,57,53,.31)!important}
.auth-divider,.auth-callout,.auth-links{border-color:#3d3d40}.auth-callout,.auth-links{color:#aaaab0}
.auth-callout .button,.auth-links a{border-color:#4b4b4f;background:#29292c;color:#f2f2f3}
.auth-trust,.auth-footer{color:#8e8e95!important}.form-help,.auth-security-note{background:#29292c;color:#b2b2b8!important}
.auth-security-note .icon{color:#ff625d}.auth-copy .pill{border-color:rgba(255,98,93,.38);background:rgba(63,12,12,.5);color:#ffaaa7}.auth-copy .pill i{background:#e53935;box-shadow:0 0 0 5px rgba(229,57,53,.16)}
@media(max-width:560px){.auth-panel{background:linear-gradient(180deg,#151516,#101011)!important}.auth-card{box-shadow:0 20px 58px rgba(0,0,0,.38)!important}}

/* v6.11.2 — compact responsive auth and red-only visual language */
.auth-visual{background:linear-gradient(96deg,rgba(5,5,6,.97),rgba(13,13,14,.84) 55%,rgba(38,9,10,.48)),url("visuals/portal-tuning-banner-red-v2.png") 64% center/cover no-repeat!important}
.auth-heading .page-kicker,.auth-form .label-row a{color:#ff6b66!important}
.auth-submit{background:linear-gradient(135deg,#ed3f3a,#b7191f)!important;border-color:#ed3f3a!important}
.auth-form .input:focus{border-color:#e53935!important;box-shadow:0 0 0 4px rgba(229,57,53,.16)!important}
.auth-copy>p{color:#b9b9be!important}.feature-list>div{border-color:#38383c;background:rgba(22,22,24,.76)}
.feature-list>div>.icon{background:#3a2022;color:#ff6b66}.feature-list small{color:#aaaab0}
@media(max-width:1000px){
  html,.auth-body{min-height:100%;background:#101011!important}
  .auth-shell{display:flex!important;flex-direction:column!important;width:100%!important;min-height:100dvh!important;overflow:visible!important;background:#101011!important}
  .auth-visual,.auth-panel{width:100%!important;min-width:0!important;grid-column:1!important}
  .auth-panel{flex:1!important;min-height:0!important;background:#101011!important}
}
@media(max-width:560px){
  .auth-visual{min-height:124px!important;height:124px!important;padding:18px 20px!important;background-position:70% center!important}
  .auth-brand{min-height:34px!important}.auth-brand-logo{width:166px!important}
  .auth-copy{display:none!important}
  .auth-panel{margin:0!important;padding:12px 12px 24px!important;align-items:flex-start!important}
  .auth-card{padding:24px 19px 21px!important;border-radius:18px!important}
  .auth-heading{margin-bottom:20px!important}.auth-heading h2{font-size:27px!important}.auth-heading p{margin-top:8px!important}
  .auth-form{gap:15px!important}.auth-submit{min-height:50px!important}
}

/* v6.11.3 — enforce the graphite/red auth palette over legacy auth layers */
.auth-card:before{
  background:linear-gradient(90deg,#8f171b 0%,#e53935 52%,#ff6b66 100%)!important;
}
.auth-submit,
.auth-card .button.primary.auth-submit{
  background:linear-gradient(135deg,#ed3f3a 0%,#b7191f 100%)!important;
  border-color:#ed3f3a!important;
  color:#fff!important;
  box-shadow:0 13px 30px rgba(229,57,53,.25)!important;
}
.auth-submit:hover,
.auth-card .button.primary.auth-submit:hover{
  background:linear-gradient(135deg,#ff514b 0%,#c51f24 100%)!important;
  box-shadow:0 16px 36px rgba(229,57,53,.32)!important;
}
.auth-body input[type="checkbox"],
.auth-body input[type="radio"]{accent-color:#e53935!important}

/* v6.11.10 - exact raster wordmark from the approved brand artwork */
.auth-brand{width:min(390px,88%)}
.auth-brand-logo{
  width:100%!important;
  max-width:360px!important;
  max-height:84px!important;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 10px 28px rgba(0,0,0,.34))
}
@media(max-width:560px){
  .auth-brand{width:min(250px,calc(100vw - 40px))!important}
  .auth-brand-logo{width:100%!important;max-width:250px!important;max-height:58px!important}
}

/* v6.11.4 — hard red-only auth palette; no legacy blue/cyan fallback */
.auth-card::before,
.auth-card:before{
  background:linear-gradient(90deg,#8f171b 0%,#e53935 52%,#ff6b66 100%)!important;
}
.auth-body .auth-submit,
.auth-body .auth-card .button.primary,
.auth-body .auth-card button[type="submit"]{
  background:linear-gradient(135deg,#ed3f3a 0%,#b7191f 100%)!important;
  border-color:#ed3f3a!important;
  color:#fff!important;
  box-shadow:0 13px 30px rgba(229,57,53,.23)!important;
}
.auth-body a,
.auth-body .auth-form .label-row a,
.auth-body .auth-security-note .icon{
  color:#ff6b66;
}
.auth-body input[type="checkbox"],
.auth-body input[type="radio"]{
  accent-color:#e53935!important;
}
@media(max-width:560px){
  .auth-body{overflow-x:hidden!important;overflow-y:auto!important}
  .auth-shell{height:auto!important;min-height:100dvh!important}
  .auth-visual,.auth-panel,.auth-card{overflow:visible!important}
}

/* v6.11.5 — source-level removal of legacy blue interaction states */
.auth-body ::selection{background:#8f171b;color:#fff}
.auth-body :is(a,button,input,select,textarea):focus-visible{
  outline:2px solid #ff625d!important;
  outline-offset:2px
}

/* v6.11.6 — contain the legacy decorative orb and prevent mobile overflow */
.auth-panel::after,.auth-panel:after{
  background:radial-gradient(circle,rgba(229,57,53,.12),transparent 65%)!important
}
@media(max-width:1000px){
  .auth-panel::after,.auth-panel:after{display:none!important}
  html,.auth-body,.auth-shell,.auth-visual,.auth-panel{width:100%!important;max-width:100%!important}
}

/* v6.11.8 — continuous tablet layout, neutral text and semantic verification states */
.auth-body .marketing-consent small{color:#a7a7ad!important}
.auth-body .verification-result .icon{color:currentColor!important}
.auth-body .verification-result.success .icon{color:#56d69a!important}
.auth-body .verification-result.danger .icon{color:#ff625d!important}
@media (min-width:561px) and (max-width:1000px){
  .auth-visual{min-height:225px!important;height:225px!important}
  .auth-panel{min-height:calc(100dvh - 225px)!important;overflow:visible!important}
}

/* v6.11.9 — red/neutral interactive colors and mobile-size recovery link target */
.auth-body .auth-callout .button,
.auth-body .auth-links a{color:#29292c!important}
.auth-body .auth-form .label-row a{
  display:inline-flex;
  min-height:40px;
  margin:-12px -5px;
  padding:0 5px;
  align-items:center
}

/* v6.11.11 — clear four-step explanation on the login screen */
.auth-how{position:relative;z-index:2;color:#fff}
.auth-how-desktop{width:min(760px,100%);margin-top:auto;padding:24px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(14,14,16,.78);box-shadow:0 24px 70px rgba(0,0,0,.3);backdrop-filter:blur(14px)}
.auth-how-heading>span{display:block;color:#ff6b66;font-size:10px;font-weight:950;letter-spacing:.18em}
.auth-how-heading h2{margin:7px 0 5px;color:#fff;font-size:clamp(24px,2.2vw,34px);line-height:1.08;letter-spacing:-.035em}
.auth-how-heading p{margin:0;color:#aaaab0;font-size:13px;line-height:1.5}
.auth-how-steps{margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none}
.auth-how-steps li{min-width:0;padding:13px;display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;align-items:start;border:1px solid #3a3a3e;border-radius:12px;background:rgba(35,35,38,.88)}
.auth-how-steps li>b{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#3a2022;color:#ff6b66;font-size:11px}
.auth-how-steps strong,.auth-how-steps small{display:block}.auth-how-steps strong{color:#f6f6f7;font-size:12px;line-height:1.3}.auth-how-steps small{margin-top:4px;color:#9d9da4;font-size:10px;line-height:1.45}
.auth-how-mobile{display:none}
@media(max-width:1000px){.auth-how-desktop{display:none}}
@media(max-width:560px){
  .auth-how-mobile{margin-top:22px;padding-top:21px;display:block;border-top:1px solid #3d3d40}
  .auth-how-mobile .auth-how-heading h2{font-size:21px}
  .auth-how-mobile .auth-how-heading p{font-size:11px}
  .auth-how-mobile .auth-how-steps{grid-template-columns:1fr;gap:8px;margin-top:15px}
  .auth-how-mobile .auth-how-steps li{padding:11px}
}

/* v6.11.12 — true 320px containment and tighter mobile auth spacing */
.auth-body{min-width:0!important;max-width:100%;overflow-x:clip!important}
.auth-shell,.auth-panel,.auth-card,.auth-form,.auth-form .field,.auth-form .label-row{min-width:0;max-width:100%;box-sizing:border-box}
.auth-form .label-row a{margin:-12px 0!important;padding-inline:0!important}
@media(max-width:360px){
  .auth-visual{min-height:104px!important;height:104px!important;padding:14px 16px!important}
  .auth-brand{width:min(220px,calc(100vw - 32px))!important}
  .auth-brand-logo{max-width:220px!important;max-height:52px!important}
  .auth-panel{padding:8px 8px 20px!important}
  .auth-card{padding:22px 16px 19px!important;border-radius:16px!important}
  .auth-heading{margin-bottom:17px!important}.auth-heading h2{font-size:25px!important}
  .auth-form{gap:13px!important}.auth-callout,.auth-links{margin-top:17px;padding-top:16px}
}
