
:root{
  --af-orange:#FE790D;
  --af-orange-dark:#E05D00;
  --af-bg:#0B0E14;
  --af-card:#121722;
  --af-card-2:#1A2130;
  --af-text:#F8FAFC;
  --af-muted:#94A3B8;
  --af-border:#2E384D;
  --af-light-bg:#F8FAFC;
  --af-light-card:#FFFFFF;
  --af-light-text:#0F172A;
  --af-light-muted:#64748B;
  --af-light-border:#CBD5E1;
}
html,body{min-height:100%}
body.auth-page{
  margin:0;
  color:var(--af-text);
  background:
    radial-gradient(circle at 75% 15%,rgba(254,121,13,.11),transparent 24rem),
    radial-gradient(circle at 10% 80%,rgba(31,58,95,.24),transparent 28rem),
    var(--af-bg)!important;
  font-family:Tahoma,"Segoe UI",Arial,sans-serif;
}
html[data-theme="light"] body.auth-page{
  color:var(--af-light-text);
  background:
    radial-gradient(circle at 75% 15%,rgba(254,121,13,.08),transparent 24rem),
    linear-gradient(180deg,#fff,var(--af-light-bg))!important;
}
body.auth-page::before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.32;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:46px 46px;
}
.header{position:relative;z-index:5;border-bottom:1px solid rgba(148,163,184,.18)!important;background:rgba(11,14,20,.84);backdrop-filter:blur(18px)}
html[data-theme="light"] .header{background:rgba(248,250,252,.9);border-color:rgba(15,23,42,.11)!important}
.shell{width:min(1180px,calc(100% - 36px))!important;margin-inline:auto}
.nav{min-height:82px!important;display:flex;align-items:center;justify-content:space-between;gap:18px}
.auth-brand{display:inline-flex!important;align-items:center;text-decoration:none}
.auth-brand img{display:block;width:min(260px,42vw);height:54px;object-fit:contain;object-position:center left}
html[dir="rtl"] .auth-brand img{object-position:center right}
.auth-brand-logo-dark{display:none!important}
html[data-theme="light"] .auth-brand-logo-light{display:none!important}
html[data-theme="light"] .auth-brand-logo-dark{display:block!important}
.nav-actions{display:flex;align-items:center;gap:12px}
.theme-toggle,.lang{min-width:44px;min-height:44px;border-radius:13px!important;border:1px solid var(--af-border)!important;background:var(--af-card)!important;color:var(--af-text)!important;cursor:pointer}
html[data-theme="light"] .theme-toggle,html[data-theme="light"] .lang{background:#fff!important;color:var(--af-light-text)!important;border-color:var(--af-light-border)!important}
.langs{display:flex;gap:7px}
.lang.active{border-color:var(--af-orange)!important;box-shadow:0 0 0 2px rgba(254,121,13,.14)}
.auth-wrap{position:relative;z-index:1;min-height:calc(100svh - 83px)!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(380px,500px)!important;gap:clamp(30px,5vw,76px)!important;align-items:center;padding:48px 0!important}
.auth-story{padding:18px 0}
.auth-story .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--af-orange)!important;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.auth-story h1{max-width:760px;margin:16px 0 18px!important;color:inherit;font-size:clamp(42px,5vw,72px)!important;line-height:1.06!important;letter-spacing:-.035em}
.auth-story p{max-width:690px;color:var(--af-muted)!important;font-size:17px;line-height:1.9}
html[data-theme="light"] .auth-story p{color:var(--af-light-muted)!important}
.auth-v22-showcase{border:1px solid rgba(148,163,184,.2)!important;background:linear-gradient(145deg,rgba(26,33,48,.92),rgba(18,23,34,.76))!important;box-shadow:0 25px 70px rgba(0,0,0,.22)!important}
html[data-theme="light"] .auth-v22-showcase{background:rgba(255,255,255,.92)!important;border-color:var(--af-light-border)!important;box-shadow:0 22px 60px rgba(15,23,42,.08)!important}
.auth-card{
  position:relative;overflow:hidden;padding:32px!important;border-radius:26px!important;
  border:1px solid var(--af-border)!important;background:linear-gradient(180deg,rgba(18,23,34,.98),rgba(14,18,27,.98))!important;
  box-shadow:0 28px 90px rgba(0,0,0,.34)!important;
}
.auth-card::before{content:"";position:absolute;inset-inline:0;top:0;height:4px;background:linear-gradient(90deg,transparent,var(--af-orange),transparent)}
html[data-theme="light"] .auth-card{background:rgba(255,255,255,.98)!important;border-color:var(--af-light-border)!important;box-shadow:0 25px 80px rgba(15,23,42,.11)!important}
.auth-card h2{margin:0!important;font-size:29px!important;color:inherit}
.auth-card .sub{margin:10px 0 24px!important;color:var(--af-muted)!important;line-height:1.75}
html[data-theme="light"] .auth-card .sub{color:var(--af-light-muted)!important}
.field{display:grid!important;gap:8px!important;margin:17px 0!important}
.field label{font-size:14px;font-weight:800;color:inherit}
.field small{color:var(--af-muted);line-height:1.55}
html[data-theme="light"] .field small{color:var(--af-light-muted)}
.field input{
  width:100%;height:54px!important;border-radius:14px!important;border:1px solid var(--af-border)!important;
  background:var(--af-card-2)!important;color:var(--af-text)!important;padding:0 15px!important;outline:0;transition:.2s ease;
}
.field input:focus{border-color:var(--af-orange)!important;box-shadow:0 0 0 4px rgba(254,121,13,.14)!important}
html[data-theme="light"] .field input{background:#fff!important;color:var(--af-light-text)!important;border-color:var(--af-light-border)!important}
.password-input-wrap{position:relative;display:flex;align-items:center}
.password-input-wrap input{padding-inline-end:56px!important}
.password-visibility-toggle{position:absolute;inset-inline-end:7px;width:42px;height:42px;border:0;border-radius:11px;background:transparent;color:var(--af-muted);display:grid;place-items:center;cursor:pointer}
.password-visibility-toggle:hover,.password-visibility-toggle:focus-visible{background:rgba(254,121,13,.12);color:var(--af-orange)}
.password-visibility-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.password-visibility-toggle .eye-off{display:none}
.password-visibility-toggle[aria-pressed="true"] .eye-open{display:none}
.password-visibility-toggle[aria-pressed="true"] .eye-off{display:block}
.btn.btn-primary,.login-btn{
  min-height:54px!important;border:0!important;border-radius:14px!important;background:linear-gradient(135deg,var(--af-orange),#ff9638)!important;
  color:#fff!important;font-size:16px!important;font-weight:900!important;box-shadow:0 14px 34px rgba(254,121,13,.25)!important;cursor:pointer;
}
.btn.btn-primary:hover,.login-btn:hover{transform:translateY(-1px);filter:saturate(1.08)}
.auth-message{margin-top:14px!important;padding:12px 14px!important;border-radius:13px!important;border:1px solid var(--af-border)!important;background:rgba(26,33,48,.86)!important;color:var(--af-text)!important}
.auth-message[data-type="error"]{border-color:#EF4444!important;background:rgba(239,68,68,.09)!important}
.auth-message[data-type="success"]{border-color:#10B981!important;background:rgba(16,185,129,.09)!important}
html[data-theme="light"] .auth-message{background:#f8fafc!important;color:var(--af-light-text)!important;border-color:var(--af-light-border)!important}
.auth-switch,.auth-aux-links{margin:19px 0 0;text-align:center;color:var(--af-muted)!important;line-height:1.8}
.auth-switch a,.auth-aux-links a,.auth-forgot{color:var(--af-orange)!important;font-weight:900;text-decoration:none}
.auth-switch a:hover,.auth-aux-links a:hover,.auth-forgot:hover{text-decoration:underline}
.auth-v22-forgot{display:inline-flex!important;margin-top:-3px!important}
.note{color:var(--af-muted)!important;line-height:1.6;font-size:13px;text-align:center}
.auth-v22-consents label{display:flex;align-items:flex-start;gap:10px;color:var(--af-muted);line-height:1.6}
.auth-v22-consents input{accent-color:var(--af-orange);margin-top:5px}
.turnstile-shell{margin:18px 0!important;min-height:68px}
.auth-forgot-page .auth-card{max-width:500px}
.auth-forgot-page .auth-back-link{color:var(--af-orange);font-weight:900;text-decoration:none}
@media(max-width:900px){
  .auth-wrap{grid-template-columns:1fr!important;gap:18px!important;padding:28px 0 44px!important}
  .auth-story{display:none}
  .auth-card{width:min(100%,560px);margin-inline:auto;padding:25px!important}
}
@media(max-width:560px){
  .shell{width:min(100% - 22px,1180px)!important}
  .nav{min-height:70px!important}
  .auth-brand img{width:185px;height:42px}
  .langs .lang{min-width:40px}
  .auth-card{border-radius:21px!important;padding:22px 18px!important}
  .auth-card h2{font-size:25px!important}
}


/* V32.4 — restored Google authentication without changing the approved AF identity. */
.auth-provider-google{
  width:100%;min-height:54px!important;padding:0 18px!important;border-radius:14px!important;
  border:1px solid var(--af-border)!important;background:var(--af-card-2)!important;color:var(--af-text)!important;
  display:flex!important;align-items:center;justify-content:center;gap:12px;font-size:15px;font-weight:900;
  box-shadow:none!important;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.auth-provider-google:hover{transform:translateY(-1px);border-color:rgba(254,121,13,.72)!important;background:#20293a!important}
.auth-provider-google:focus-visible{outline:3px solid rgba(254,121,13,.28);outline-offset:2px}
.auth-provider-google:disabled{opacity:.62;cursor:wait;transform:none}
.auth-provider-google .google-provider-icon{width:22px;height:22px;flex:0 0 22px}
.auth-provider-google span{unicode-bidi:plaintext}
.auth-provider-divider{display:flex!important;align-items:center;gap:13px;margin:17px 0!important;color:var(--af-muted)!important;font-size:13px;font-weight:800;text-align:center}
.auth-provider-divider::before,.auth-provider-divider::after{content:"";height:1px;flex:1;background:var(--af-border)!important}
html[data-theme="light"] .auth-provider-google{background:#fff!important;color:var(--af-light-text)!important;border-color:var(--af-light-border)!important}
html[data-theme="light"] .auth-provider-google:hover{background:#f8fafc!important;border-color:rgba(254,121,13,.62)!important}
html[data-theme="light"] .auth-provider-divider{color:var(--af-light-muted)!important}
html[data-theme="light"] .auth-provider-divider::before,html[data-theme="light"] .auth-provider-divider::after{background:var(--af-light-border)!important}


/* V32.5 — long auth forms must remain fully reachable on desktop and mobile. */
html{
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
}
body.auth-page{
  width:100%!important;
  height:100svh!important;
  min-height:100svh!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:contain;
  -webkit-overflow-scrolling:touch;
}
body.auth-page main{display:block!important;min-height:0!important;overflow:visible!important}
body.auth-page .auth-wrap{
  height:auto!important;
  min-height:calc(100svh - 83px)!important;
  align-items:start!important;
  padding-top:clamp(28px,5vh,56px)!important;
  padding-bottom:clamp(56px,9vh,110px)!important;
  overflow:visible!important;
}
body.auth-page .auth-card{align-self:start!important;overflow:visible!important}
body.auth-page .auth-story{align-self:start!important}
@media (min-width:901px){
  body.auth-page .auth-story{position:sticky;top:126px}
}
@media (max-width:900px){
  body.auth-page .auth-wrap{min-height:auto!important;padding-top:28px!important;padding-bottom:72px!important}
}
