:root{
  --bg0:#F6F7F8;
  --bg1:#E5E7EA;
  --bg2:#D1D3D6;

  --cardA: rgba(255,255,255,.98);
  --cardB: rgba(246,247,248,.96);

  --gold:#0710A8;
  --gold2:#1565C0;
  --blue:#1976D2;

  --text:#000000;
  --muted: rgba(0,0,0,.70);
  --dim: rgba(0,0,0,.45);

  --border: rgba(255,255,255,.08);
  --borderGold: rgba(7,16,168,.22);

  --shadow: rgba(0,0,0,.78);

  --error:#ff6b6b;
  --ok:#4ade80;

  --r: 26px;
}

*{box-sizing:border-box}
html,body{height:100%}

body{
  margin:0;
  font-family:
    "Inter",
    "Noto Sans",
    "Noto Sans Arabic",
    "Noto Sans Devanagari",
    "Noto Sans SC",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Arial,
    sans-serif;
  background:
    radial-gradient(circle at top, rgba(7,16,168,.10) 0%, rgba(0,0,0,0) 35%),
    radial-gradient(circle at 20% 80%, rgba(96,165,250,.08) 0%, rgba(0,0,0,0) 45%),
    radial-gradient(circle at 80% 75%, rgba(21,101,192,.06) 0%, rgba(0,0,0,0) 50%),
    linear-gradient(135deg, #F6F7F8 0%, #E5E7EA 55%, #D1D3D6 100%);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

a{color:inherit}
button,input{font:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid rgba(21,101,192,.45); outline-offset:2px; border-radius:14px}

/* Background layers */
.fd-bg{position:fixed; inset:0; z-index:0; pointer-events:none;}
.fd-bg__mesh{
  position:absolute; inset:-20%;
  background:
    conic-gradient(from 140deg, rgba(7,16,168,.08), rgba(96,165,250,.06), rgba(21,101,192,.06), rgba(7,16,168,.08));
  filter: blur(26px);
  opacity:.40;
}
.fd-bg__glow{position:absolute; inset:-25%; filter: blur(2px);}
.fd-bg__glow--a{
  background: radial-gradient(circle at 18% 22%, rgba(7,16,168,.18), transparent 55%);
}
.fd-bg__glow--b{
  background: radial-gradient(circle at 84% 72%, rgba(96,165,250,.12), transparent 60%);
}
.fd-bg__vignette{
  position:absolute; inset:0;
  background:
    radial-gradient(circle at 50% 35%, rgba(255,255,255,.10) 0%, rgba(246,247,248,.18) 55%, rgba(209,211,214,.25) 100%);
}
.fd-bg__grain{
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");
  opacity:.06;
  mix-blend-mode:overlay;
}

/* Topbar */
.fd-topbar{
  position:relative;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 18px;
  gap:12px;
}

.fd-brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:inherit;
  min-width: 200px;
}
.fd-brand__mark{
  width:44px; height:44px; border-radius:16px;
  background: linear-gradient(135deg, rgba(7,16,168,.24), rgba(96,165,250,.06));
  border:1px solid rgba(7,16,168,.22);
  box-shadow:0 18px 55px rgba(0,0,0,.55);
  display:flex; align-items:center; justify-content:center;
}
.fd-brand__markText{
  font-weight:1000;
  letter-spacing:.6px;
  color:var(--gold);
  text-shadow:0 12px 40px rgba(7,16,168,.22);
}
.fd-brand__text{line-height:1}
.fd-brand__name{
  font-weight:950;
  letter-spacing:.35px;
  color:var(--gold);
  font-size:16px;
}
.fd-brand__sub{
  margin-top:3px;
  font-size:11px;
  color:rgba(0,0,0,.72);
}

.fd-topbar__actions{display:flex; align-items:center; gap:10px;}

.fd-pill{
  appearance:none;
  border:1px solid rgba(0,0,0,.12);
  background: rgba(255,255,255,.96);
  color:var(--text);
  border-radius:18px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.fd-pill--ghost{border-color: rgba(96,165,250,.18);}
.fd-pill--lang{border-color: rgba(7,16,168,.22);}
.fd-pill__ico{opacity:.92}
.fd-pill__caret{opacity:.70}

/* Wrap + Card */
.fd-wrap{
  position:relative;
  z-index:5;
  min-height:calc(100vh - 76px);
  display:flex;
  justify-content:center;
  align-items:center;
  padding:22px 16px 44px;
}

.fd-card{
  width:min(640px, 100%);
  background: linear-gradient(180deg, var(--cardA), var(--cardB));
  border:1px solid rgba(0,0,0,.08);
  border-radius: var(--r);
  box-shadow:0 55px 160px var(--shadow);
  padding:22px 18px 18px;
  backdrop-filter: blur(10px);
}

/* Head */
.fd-head{padding:6px 6px 10px}
.fd-kicker{
  font-size:12px;
  color:rgba(96,165,250,.82);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.fd-title{
  margin:10px 0 6px;
  font-size:36px;
  line-height:1.08;
  color:var(--gold);
  letter-spacing:.2px;
}
.fd-subtitle{
  margin:0;
  font-size:14px;
  color:rgba(0,0,0,.72);
}

/* AI device box */
.fd-ai{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(96,165,250,.18);
  background: rgba(96,165,250,.06);
}
.fd-ai__left{display:flex; flex-direction:column; gap:6px;}
.fd-ai__chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(96,165,250,.20);
  background: rgba(0,0,0,.025);
  width: fit-content;
}
.fd-ai__dot{
  width:10px; height:10px; border-radius:999px;
  background: rgba(96,165,250,.95);
  box-shadow:0 0 0 4px rgba(96,165,250,.12);
}
.fd-ai__txt{font-size:12px; color: rgba(0,0,0,.88); font-weight:900;}
.fd-ai__meta{font-size:12px; color: rgba(0,0,0,.70);}
.fd-ai__pill{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(7,16,168,.22);
  background: rgba(7,16,168,.08);
  color: rgba(0,0,0,.86);
  font-weight:950;
  font-size:12px;
  text-align:center;
  min-width:110px;
}

/* Note */
.fd-note{
  margin-top:12px;
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(7,16,168,.16);
  background: rgba(7,16,168,.06);
  color: rgba(0,0,0,.74);
  font-size:13px;
}
.fd-note__dot{
  width:10px;height:10px;border-radius:999px;
  margin-top:4px;
  background: rgba(7,16,168,.9);
  box-shadow:0 0 0 4px rgba(7,16,168,.12);
}

/* Alerts */
.fd-alert{
  margin:10px 6px 0;
  padding:12px 12px;
  border-radius:18px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.025);
  font-size:13px;
}
.fd-alert--error{border-color: rgba(255,107,107,.25); color: var(--error);}
.fd-alert--ok{border-color: rgba(74,222,128,.25); color: var(--ok);}

/* Form */
.fd-form{padding:6px}
.fd-field{margin-top:14px}
.fd-label{
  display:block;
  margin:0 0 8px;
  font-size:13px;
  color: rgba(0,0,0,.75);
}

.fd-input{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.94);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.25);
}
.fd-ico{opacity:.75; width:22px; text-align:center}
.fd-input input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color: var(--text);
  font-size:15px;
}
.fd-input input::placeholder{color: rgba(0,0,0,.35);}

.fd-mini{
  border:1px solid rgba(0,0,0,.12);
  background: #F6F7F8;
  color: rgba(0,0,0,.86);
  border-radius:14px;
  padding:8px 10px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.fd-mini:hover{border-color: rgba(21,101,192,.22)}
.fd-mini__ico{opacity:.9}
.fd-mini__txt{font-size:12px; font-weight:900}

.fd-hint{
  margin-top:8px;
  font-size:12px;
  color: rgba(0,0,0,.50);
}

/* Trust row */
.fd-trust{
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.025);
}
.fd-trust__item{display:flex; align-items:center; gap:10px; min-width:0;}
.fd-trust__ico{opacity:.9}
.fd-trust__txt{
  font-size:12px;
  color: rgba(0,0,0,.72);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fd-trust__sep{
  width:1px;
  height:18px;
  background: rgba(255,255,255,.10);
}

/* Submit button */
.fd-btn{
  width:100%;
  margin-top:16px;
  border:0;
  border-radius:22px;
  padding:16px 16px;
  font-weight:950;
  letter-spacing:.2px;
  color:#FFFFFF;
  background: linear-gradient(135deg, var(--gold), var(--gold2));
  position:relative;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(7,16,168,.22);
}
.fd-btn__shine{
  position:absolute;
  inset:-50% -20%;
  background: radial-gradient(circle at 30% 40%, rgba(255,255,255,.35) 0%, rgba(255,255,255,0) 55%);
  transform: rotate(18deg);
  opacity:.55;
}
.fd-btn__txt{position:relative; z-index:2}
.fd-btn__loader{
  position:absolute;
  right:16px;
  top:50%;
  transform: translateY(-50%);
  width:18px; height:18px;
  border-radius:999px;
  border:2px solid rgba(0,0,0,.22);
  border-top-color: rgba(0,0,0,.70);
  display:none;
  animation:fdSpin .8s linear infinite;
}
@keyframes fdSpin{to{transform: translateY(-50%) rotate(360deg)}}
.fd-btn.is-loading{opacity:.92}
.fd-btn.is-loading .fd-btn__loader{display:block}
.fd-btn:disabled{opacity:.75; cursor:not-allowed}

/* Footer */
.fd-foot{
  margin-top:14px;
  text-align:center;
  font-size:13px;
  color: rgba(0,0,0,.65);
}
.fd-link{color: rgba(21,101,192,.95); text-decoration:none}
.fd-link:hover{text-decoration:underline}
.fd-sep{opacity:.55; margin:0 8px}

/* Modal */
.fd-modal{position:fixed; inset:0; z-index:50; display:none;}
.fd-modal.is-open{display:block}
.fd-modal__bg{
  position:absolute; inset:0;
  background: rgba(0,0,0,.62);
  backdrop-filter: blur(2px);
}
.fd-modal__panel{
  position:absolute;
  left:50%; top:50%;
  transform: translate(-50%,-50%);
  width: min(640px, 92vw);
  background: rgba(255,255,255,.98);
  border:1px solid rgba(0,0,0,.10);
  border-radius: var(--r);
  box-shadow:0 55px 170px rgba(0,0,0,.86);
  padding:16px;
}
.fd-modal__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.fd-modal__title{
  font-weight:950;
  color: var(--gold);
  font-size:18px;
}
.fd-x{
  width:44px; height:44px; border-radius:16px;
  border:1px solid rgba(0,0,0,.10);
  background: #F6F7F8;
  color: rgba(0,0,0,.9);
  font-size:22px;
}
.fd-modal__note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(7,16,168,.16);
  background: rgba(7,16,168,.06);
  color: rgba(0,0,0,.74);
  font-size:13px;
  margin-bottom:12px;
}
.fd-modal__noteDot{
  width:10px;height:10px;border-radius:999px;
  margin-top:4px;
  background: rgba(7,16,168,.9);
  box-shadow:0 0 0 4px rgba(7,16,168,.12);
}

/* Language list */
.fd-langlist{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:52vh;
  overflow:auto;
  padding-right:2px;
}
.fd-lang-item{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px;
  border-radius:22px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(0,0,0,.025);
  text-align:left;
  color: var(--text);
}
.fd-lang-item.is-selected{
  border-color: rgba(21,101,192,.35);
  box-shadow:0 0 0 1px rgba(21,101,192,.12) inset;
}
.fd-lang-left{display:flex; align-items:center; gap:12px}
.fd-lang-pill{
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(7,16,168,.22);
  background: rgba(7,16,168,.07);
  font-weight:950;
  color: rgba(0,0,0,.90);
  font-size:12px;
  min-width:52px;
  text-align:center;
}
.fd-lang-name{font-weight:950}
.fd-lang-sub{font-size:12px; color: rgba(0,0,0,.55); margin-top:2px}
.fd-lang-check{opacity:.85}

/* Help */
.fd-help{display:flex; flex-direction:column; gap:12px; padding:6px 2px 0;}
.fd-help__row{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 12px;
  border-radius:20px;
  border:1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.94);
}
.fd-help__ico{opacity:.95}
.fd-help__txt{font-size:13px; color: rgba(0,0,0,.78); line-height:1.5}

/* Modal actions */
.fd-modal__actions{
  display:flex;
  gap:10px;
  margin-top:12px;
}
.fd-btn2{
  flex:1;
  border-radius:18px;
  padding:14px 14px;
  font-weight:950;
  border:1px solid rgba(0,0,0,.12);
}
.fd-btn2--ghost{background: #F6F7F8; color: rgba(0,0,0,.88);}
.fd-btn2--gold{border:0; background: linear-gradient(135deg, var(--gold), var(--gold2)); color:#FFFFFF;}

/* RTL */
html[dir="rtl"] body{direction:rtl}
html[dir="rtl"] .fd-topbar{direction:rtl}
html[dir="rtl"] .fd-brand{flex-direction:row-reverse}
html[dir="rtl"] .fd-brand__text{text-align:right}
html[dir="rtl"] .fd-topbar__actions{flex-direction:row-reverse}
html[dir="rtl"] .fd-input{flex-direction:row-reverse}
html[dir="rtl"] .fd-note{flex-direction:row-reverse}
html[dir="rtl"] .fd-trust{flex-direction:row-reverse}
html[dir="rtl"] .fd-lang-item{text-align:right}
html[dir="rtl"] .fd-modal__actions{flex-direction:row-reverse}
html[dir="rtl"] .fd-foot .fd-sep{margin:0 10px}

/* Device classes (AI) */
html.fd-mobile .fd-card{width:min(640px, 100%)}
html.fd-mobile .fd-title{font-size:34px}
html.fd-mobile .fd-trust{flex-wrap:wrap; justify-content:center}
html.fd-mobile .fd-trust__sep{display:none}

html.fd-tablet .fd-card{width:min(720px, 100%)}

html.fd-desktop .fd-card{width:min(680px, 100%)}

/* Small screens */
@media (max-width:420px){
  .fd-title{font-size:32px}
  .fd-card{padding:18px 14px}
  .fd-pill__txt{display:none}
  .fd-brand__sub{display:none}
}

/* FD_CORRECT_PARENT_LOGO_V1 */
.fd-parent-logo{
  width:74px;
  height:86px;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.fd-parent-logo .fd-logo-svg{
  width:100%;
  height:100%;
  display:block;
}


/* FD_MOBILE_ACCOUNT_FIX_20260928 */
@media (max-width: 700px){
 html,body{max-width:100%!important;overflow-x:hidden!important}
 .fd-header,.fd-topbar{padding-left:12px!important;padding-right:12px!important}
 .fd-header-inner,.fd-topbar{max-width:100%!important;box-sizing:border-box!important}
 .fd-brand{min-width:0!important;max-width:58%!important}
 .fd-langbtn,.fd-pill--lang{max-width:42vw!important;min-width:0!important;white-space:normal!important}
 .fd-modal__sheet{width:calc(100vw - 24px)!important;max-width:520px!important;max-height:calc(100dvh - 28px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;box-sizing:border-box!important;overflow:hidden!important}
 .fd-langList,.fd-langlist{max-height:52dvh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
 .fd-input{display:flex!important;align-items:center!important;min-width:0!important}
 .fd-input input{min-width:0!important;width:100%!important;box-sizing:border-box!important}
 .fd-ico{flex:0 0 auto!important}
 .fd-clear,.fd-paste{flex:0 0 auto!important}
}

.fd-input input{padding-inline:12px!important}
html[dir="rtl"] .fd-input input{text-align:right!important}
@media(max-width:700px){
 .fd-card{width:calc(100vw - 28px)!important;max-width:none!important;box-sizing:border-box!important}
 .fd-trust{flex-wrap:wrap!important}
}

/* Rider forgot mobile auth header: brand + language only */
#helpBtn{display:none!important}
@media(max-width:700px){
 .fd-topbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;background:linear-gradient(180deg,#fff 0%,#f5f8ff 100%)!important;overflow:hidden!important}
 .fd-brand{display:flex!important;min-width:0!important;max-width:60%!important}
 .fd-topbar__actions{display:flex!important;flex:0 0 auto!important;max-width:36%!important}
 #langBtn{display:flex!important;width:auto!important;max-width:100%!important;padding:10px 12px!important}
 #langBtn .fd-pill__ico{display:none!important}
 #langBtnLabel{display:inline!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}

/* Forgot-password page: device diagnostics are internal, not user-facing */
#aiBox,.fd-ai{display:none!important}

/* Rider forgot cleanup: email field is plain input; no device pill or paste control */
#aiTypePill,.fd-ai__right,#pasteBtn{display:none!important}
@media(max-width:700px){
 .fd-input input{width:100%!important;flex:1 1 auto!important}
}
