/* ==========================================================================\n   twittsocial.com V4.10.93 — unified account access UI\n   Connect. Share. Belong.\n   ========================================================================== */
:root{
  --ts-auth-blue:#0866ff;
  --ts-auth-blue-2:#0057e8;
  --ts-auth-purple:#7a38f2;
  --ts-auth-pink:#ec4ec7;
  --ts-auth-ink:#12213f;
  --ts-auth-muted:#6f7c94;
  --ts-auth-line:#dce4f0;
  --ts-auth-soft:#f4f7fc;
  --ts-auth-card:#fff;
}

html:has(body.sp-auth-v444-body),
body.sp-auth-v444-body{
  min-height:100%!important;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:auto!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(8,102,255,.11),transparent 30%),
    radial-gradient(circle at 90% 88%,rgba(122,56,242,.10),transparent 28%),
    #f3f6fb!important;
  color:var(--ts-auth-ink)!important;
}
body.sp-auth-v444-body *{box-sizing:border-box}
body.sp-auth-v444-body a{-webkit-tap-highlight-color:transparent}

/* Shared login / reset shell ------------------------------------------------ */
.sp-auth-v444-page:not(.sp-register-ref-page){
  width:min(1440px,100%)!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:22px!important;
  gap:22px!important;
  grid-template-columns:minmax(0,1.08fr) minmax(410px,.92fr)!important;
  background:transparent!important;
  align-items:stretch!important;
}
.sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-hero{
  position:relative!important;
  min-height:calc(100dvh - 44px)!important;
  border-radius:30px!important;
  padding:42px clamp(30px,4.6vw,72px)!important;
  overflow:hidden!important;
  background:
    linear-gradient(145deg,rgba(3,31,94,.80),rgba(26,70,190,.70) 48%,rgba(91,33,173,.76)),
    url('../images/twittsocial-register-hero-v41086.webp') center/cover no-repeat!important;
  box-shadow:0 24px 70px rgba(26,53,101,.18)!important;
  isolation:isolate!important;
}
.sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-hero:before{
  width:460px!important;height:460px!important;right:-180px!important;top:-210px!important;
  background:radial-gradient(circle,rgba(255,255,255,.18),transparent 68%)!important;
}
.sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-hero:after{
  width:520px!important;height:520px!important;left:-260px!important;bottom:-300px!important;
  background:radial-gradient(circle,rgba(235,78,199,.22),transparent 68%)!important;
}
.sp-auth-v444-brand{font-size:21px!important;letter-spacing:-.35px!important}
.sp-auth-v444-brand-mark{
  width:44px!important;height:44px!important;border-radius:14px!important;
  background:linear-gradient(145deg,#fff,#eef5ff)!important;
  color:var(--ts-auth-blue)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.17)!important;
}
.sp-auth-v444-hero-copy{margin:auto 0 20px!important;max-width:650px!important}
.sp-auth-v444-kicker{
  padding:7px 13px!important;border-radius:999px!important;
  font-size:11px!important;letter-spacing:.065em!important;
  background:rgba(255,255,255,.13)!important;
}
.sp-auth-v444-hero-copy h1{
  max-width:610px!important;margin:18px 0 14px!important;
  font-size:clamp(42px,4.5vw,66px)!important;line-height:.99!important;
  letter-spacing:-2.8px!important;text-wrap:balance!important;
}
.sp-auth-v444-hero-copy>p{font-size:16px!important;line-height:1.65!important;color:rgba(255,255,255,.88)!important}
.sp-auth-v444-features{gap:10px!important;margin-top:28px!important}
.sp-auth-v444-features>div{
  min-height:118px!important;padding:15px!important;border-radius:17px!important;
  background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09)!important;
}
.sp-auth-v444-features>div>span{width:36px!important;height:36px!important;border-radius:11px!important}
.sp-auth-v444-features strong{font-size:13.5px!important}
.sp-auth-v444-features small{font-size:10.5px!important;line-height:1.45!important;color:rgba(255,255,255,.77)!important}
.sp-auth-v444-preview{display:none!important}

.sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel-wrap{
  min-height:auto!important;padding:28px clamp(18px,4vw,54px)!important;
  background:transparent!important;justify-content:center!important;
}
.sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel{
  width:min(100%,500px)!important;
  padding:34px!important;
  border:1px solid rgba(207,219,237,.88)!important;
  border-radius:28px!important;
  box-shadow:0 24px 70px rgba(31,54,93,.14)!important;
  background:rgba(255,255,255,.97)!important;
}
.sp-auth-v444-title{margin-bottom:24px!important;gap:13px!important}
.sp-auth-v444-title-icon{
  width:48px!important;height:48px!important;border-radius:15px!important;
  background:linear-gradient(145deg,#e8f2ff,#f3edff)!important;color:var(--ts-auth-blue)!important;
  box-shadow:inset 0 0 0 1px rgba(8,102,255,.07)!important;
}
.sp-auth-v444-title h2{font-size:27px!important;letter-spacing:-.7px!important;color:var(--ts-auth-ink)!important}
.sp-auth-v444-title p{font-size:12.5px!important;color:var(--ts-auth-muted)!important}
.sp-auth-v444-field{gap:7px!important;color:#243656!important;font-size:11.5px!important}
.sp-auth-v444-input-wrap{
  height:52px!important;padding:0 13px!important;gap:9px!important;
  border:1px solid var(--ts-auth-line)!important;border-radius:13px!important;
  background:#fff!important;box-shadow:0 1px 2px rgba(20,42,78,.025)!important;
}
.sp-auth-v444-input-wrap:hover{border-color:#c9d7eb!important}
.sp-auth-v444-input-wrap:focus-within{
  border-color:#73a9ff!important;box-shadow:0 0 0 4px rgba(8,102,255,.09)!important;
}
.sp-auth-v444-input-wrap input{font-size:14px!important;color:#182844!important}
.sp-auth-v444-input-wrap input::placeholder{color:#98a5ba!important}
.sp-auth-v444-password-toggle{border-radius:9px!important}
.sp-auth-v444-primary{
  min-height:51px!important;border-radius:13px!important;
  background:linear-gradient(135deg,var(--ts-auth-blue),#126df8 54%,#5a4cf3)!important;
  box-shadow:0 12px 26px rgba(8,102,255,.23)!important;
}
.sp-auth-v444-primary:hover{filter:brightness(.985)!important;transform:translateY(-1px)!important}
.sp-auth-v444-create{
  min-height:48px!important;border-radius:13px!important;
  background:#f4f8ff!important;border-color:#d2e0f4!important;
}
.sp-auth-v444-options{margin-top:0!important}
.sp-auth-v444-divider{margin:21px 0 15px!important}
.sp-auth-v444-security-note{margin-top:18px!important}
.sp-auth-v444-footer{width:min(100%,500px)!important;color:#8e9bb0!important;padding:0 2px!important}
.sp-auth-v444-mobile-brand{color:var(--ts-auth-ink)!important;text-decoration:none!important}

/* Registration -------------------------------------------------------------- */
.sp-register-ref-body{background:#f2f5fa!important}
.sp-register-ref-page{
  width:min(1480px,100%)!important;
  min-height:auto!important;
  height:auto!important;
  margin:0 auto!important;
  padding:20px 22px 18px!important;
  gap:20px!important;
  grid-template-columns:minmax(0,1.08fr) minmax(480px,.92fr)!important;
  align-items:start!important;
  overflow:visible!important;
  background:transparent!important;
}
.sp-register-ref-page .sp-auth-v444-hero{
  position:relative!important;top:auto!important;
  min-height:0!important;height:auto!important;
  padding:0!important;background:transparent!important;
  overflow:visible!important;
}
.sp-register-ref-hero-card{
  width:100%!important;min-height:660px!important;height:auto!important;aspect-ratio:auto!important;
  border:6px solid rgba(255,255,255,.96)!important;border-radius:30px!important;
  overflow:hidden!important;background:#14224b!important;
  box-shadow:0 24px 65px rgba(29,53,94,.17)!important;
}
.sp-register-ref-hero-card img{width:100%!important;height:100%!important;min-height:660px!important;object-fit:cover!important;object-position:center!important;display:block!important}
.sp-register-ref-panel-wrap{
  min-height:0!important;height:auto!important;padding:0!important;background:transparent!important;
  justify-content:flex-start!important;overflow:visible!important;
}
.sp-register-ref-panel-wrap .sp-auth-v444-panel{
  width:100%!important;max-width:none!important;margin:0!important;
  padding:28px!important;border:1px solid #dce4f0!important;border-radius:28px!important;
  background:#fff!important;box-shadow:0 24px 65px rgba(29,53,94,.13)!important;
}
.sp-register-ref-title{margin:0 0 19px!important;gap:13px!important}
.sp-register-ref-title .sp-auth-v444-title-icon{
  width:48px!important;height:48px!important;border-radius:14px!important;
  background:linear-gradient(145deg,#0866ff,#1d77ff)!important;color:#fff!important;
  box-shadow:0 10px 22px rgba(8,102,255,.20)!important;
}
.sp-register-ref-title .sp-auth-v444-title-icon .sp-icon{color:#fff!important}
.sp-register-ref-title h2{font-size:28px!important;letter-spacing:-.75px!important;color:#101e3b!important}
.sp-register-ref-title p{font-size:11.5px!important;color:#71809a!important}
.sp-register-ref-form{gap:13px!important}
.sp-register-ref-section{gap:8px!important}
.sp-register-ref-section-title{font-size:10px!important;letter-spacing:.075em!important;color:#31466d!important}
.sp-register-ref-grid{gap:12px!important}
.sp-register-ref-grid-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.sp-register-ref-stack{gap:9px!important}
.sp-register-ref-field{gap:6px!important}
.sp-register-ref-field>span:first-child:not(.sp-register-ref-sr):not(.sp-register-ref-input):not(.sp-register-ref-textarea){
  font-size:10.5px!important;color:#263b60!important;font-weight:800!important;
}
.sp-register-ref-input{
  height:48px!important;min-height:48px!important;padding:0 12px!important;
  gap:9px!important;border:1px solid #d9e2ef!important;border-radius:12px!important;
  background:#fff!important;box-shadow:none!important;overflow:hidden!important;
}
.sp-register-ref-input:hover{border-color:#c7d6e9!important}
.sp-register-ref-input:focus-within{
  border-color:#76aaff!important;box-shadow:0 0 0 4px rgba(8,102,255,.085)!important;
}
.sp-register-ref-input>.sp-icon{width:17px!important;height:17px!important;min-width:17px!important;color:#526a93!important}
.sp-register-ref-input input,.sp-register-ref-input select{
  width:100%!important;height:46px!important;min-height:0!important;margin:0!important;padding:0!important;
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;
  font-size:12.5px!important;color:#172845!important;
}
.sp-register-ref-input input::placeholder,.sp-register-ref-textarea textarea::placeholder{color:#91a0b8!important}
.sp-register-ref-input.is-password input{padding-right:38px!important}
.sp-register-ref-input.is-password .sp-auth-v444-password-toggle{right:4px!important;width:34px!important;height:34px!important}
.sp-register-ref-textarea{
  min-height:64px!important;padding:10px 12px!important;border:1px solid #d9e2ef!important;border-radius:12px!important;
  background:#fff!important;box-shadow:none!important;
}
.sp-register-ref-textarea:focus-within{border-color:#76aaff!important;box-shadow:0 0 0 4px rgba(8,102,255,.085)!important}
.sp-register-ref-textarea textarea{font-size:12.5px!important;line-height:1.45!important;color:#172845!important}
.sp-register-ref-submit{min-height:50px!important;margin-top:1px!important;border-radius:12px!important}
.sp-register-ref-note{font-size:9.8px!important;line-height:1.5!important;color:#748198!important}
.sp-register-ref-login-link{margin:17px 0 0!important;color:#6c7a91!important}
.sp-register-ref-panel-wrap .sp-auth-v444-footer{width:100%!important;margin-top:14px!important;padding:0 3px!important}

/* Age state stays immediately understandable. */
.sp-age-gate-status{font-size:10px!important;line-height:1.35!important;color:#73819a!important;font-weight:650!important}
.sp-age-gate-field.is-invalid .sp-age-gate-status{color:#d92d35!important;font-weight:800!important}
.sp-age-gate-field.is-invalid .sp-register-ref-input{border-color:#ef6b72!important;background:#fff7f7!important;box-shadow:0 0 0 3px rgba(217,45,53,.07)!important}
.sp-age-gate-field.is-valid .sp-age-gate-status{color:#16864f!important;font-weight:800!important}
.sp-age-gate-field.is-valid .sp-register-ref-input{border-color:#62c492!important;background:#fbfffd!important}

.sp-register-ref-bottom{
  margin-top:4px!important;padding:34px 24px!important;
  background:linear-gradient(120deg,#075eea 0%,#084dc6 48%,#8438d9 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.sp-register-ref-bottom-inner{width:min(1260px,100%)!important;margin:0 auto!important}
.sp-register-ref-feature-grid article{
  border-color:rgba(255,255,255,.23)!important;background:rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}

/* Email verification: same brand language, without changing its logic. */
.sp-email-verify-body{
  background:radial-gradient(circle at 8% 0%,rgba(8,102,255,.12),transparent 31%),radial-gradient(circle at 92% 100%,rgba(122,56,242,.11),transparent 31%),#f3f6fb!important;
}
.sp-email-verify-top{
  height:70px!important;padding:0 clamp(18px,4vw,46px)!important;background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid #e2e8f1!important;backdrop-filter:blur(14px)!important;
}
.sp-email-verify-brand{font-size:19px!important;color:#142445!important;letter-spacing:-.3px!important}
.sp-email-verify-logo{
  width:38px!important;height:38px!important;border-radius:12px!important;
  background:linear-gradient(145deg,#0866ff,#6748f3)!important;box-shadow:0 8px 18px rgba(8,102,255,.22)!important;
}
.sp-email-verify-wrap{padding:40px 16px!important}
.sp-email-verify-card{
  width:min(100%,500px)!important;padding:30px!important;border:1px solid #dce4ef!important;border-radius:24px!important;
  box-shadow:0 24px 70px rgba(29,53,94,.13)!important;
}
.sp-email-icon{width:66px!important;height:66px!important;border-radius:20px!important;background:linear-gradient(145deg,#e9f2ff,#f0ebff)!important}
.sp-email-verify-card h1{font-size:26px!important;letter-spacing:-.65px!important;color:#12213f!important}
.sp-email-code-form input{border-radius:12px!important;border-color:#d8e2ef!important}
.sp-email-primary,.sp-email-link.primary{border-radius:12px!important;background:linear-gradient(135deg,#0866ff,#5a4cf3)!important;box-shadow:0 10px 24px rgba(8,102,255,.19)!important}
.sp-email-address{border:1px solid #e2e8f1!important;background:#f6f8fc!important}

@media (max-width:1040px){
  .sp-auth-v444-page:not(.sp-register-ref-page){grid-template-columns:minmax(0,1fr) minmax(390px,.9fr)!important;padding:14px!important;gap:14px!important}
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-hero{padding:34px!important;min-height:calc(100dvh - 28px)!important;border-radius:24px!important}
  .sp-auth-v444-hero-copy h1{font-size:46px!important}
  .sp-auth-v444-features{grid-template-columns:1fr!important;max-width:370px!important}
  .sp-auth-v444-features>div{min-height:auto!important;display:grid!important;grid-template-columns:38px 1fr!important;column-gap:10px!important}
  .sp-auth-v444-features>div>span{grid-row:1/3!important;margin-bottom:0!important}

  .sp-register-ref-page{grid-template-columns:minmax(0,1fr) minmax(440px,.95fr)!important;padding:14px!important;gap:14px!important}
  .sp-register-ref-hero-card,.sp-register-ref-hero-card img{min-height:610px!important}
  .sp-register-ref-panel-wrap .sp-auth-v444-panel{padding:23px!important}
}

@media (max-width:820px){
  .sp-auth-v444-page:not(.sp-register-ref-page){display:block!important;padding:0!important;min-height:100dvh!important}
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-hero{display:none!important}
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel-wrap{
    min-height:100dvh!important;padding:22px 16px 26px!important;
    background:linear-gradient(180deg,#eef4ff 0,#f6f8fc 32%,#f3f6fb 100%)!important;
  }
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel{padding:24px 19px!important;border-radius:22px!important}
  .sp-auth-v444-mobile-brand{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;margin:0 auto 22px!important;font-size:17px!important}
  .sp-auth-v444-mobile-brand>span{
    width:36px!important;height:36px!important;border-radius:11px!important;display:grid!important;place-items:center!important;
    color:#fff!important;background:linear-gradient(145deg,#0866ff,#6548f2)!important;font-weight:900!important;
  }
  .sp-auth-v444-footer{margin-top:16px!important}

  .sp-register-ref-page{display:flex!important;flex-direction:column!important;width:100%!important;padding:10px!important;gap:10px!important}
  .sp-register-ref-page .sp-auth-v444-hero{display:block!important;order:1!important;width:100%!important}
  .sp-register-ref-panel-wrap{order:2!important;width:100%!important}
  .sp-register-ref-hero-card{min-height:0!important;height:auto!important;aspect-ratio:16/9!important;border-width:4px!important;border-radius:22px!important}
  .sp-register-ref-hero-card img{min-height:0!important;height:100%!important;object-fit:cover!important;object-position:center 48%!important}
  .sp-register-ref-panel-wrap .sp-auth-v444-panel{padding:21px 16px 19px!important;border-radius:22px!important}
  .sp-register-ref-title h2{font-size:24px!important}
  .sp-register-ref-grid-two{grid-template-columns:1fr!important}
  .sp-register-ref-grid{gap:9px!important}
  .sp-register-ref-form{gap:11px!important}
  .sp-register-ref-bottom{padding:28px 16px!important}
  .sp-register-ref-bottom-inner{grid-template-columns:1fr!important;text-align:center!important;gap:26px!important}
  .sp-register-ref-feature-grid{grid-template-columns:1fr!important;max-width:430px!important;margin:0 auto!important}
  .sp-register-ref-feature-grid article{padding:18px!important}
}

@media (max-width:480px){
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel-wrap{padding:15px 10px 22px!important}
  .sp-auth-v444-page:not(.sp-register-ref-page) .sp-auth-v444-panel{padding:21px 15px!important;border-radius:19px!important}
  .sp-auth-v444-title h2{font-size:24px!important}
  .sp-auth-v444-title-icon{width:44px!important;height:44px!important;border-radius:13px!important}
  .sp-auth-v444-options{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  .sp-auth-v444-footer{padding:0 2px!important;flex-direction:column!important;align-items:center!important;gap:4px!important}

  .sp-register-ref-page{padding:6px!important}
  .sp-register-ref-hero-card{border-radius:18px!important}
  .sp-register-ref-panel-wrap .sp-auth-v444-panel{padding:18px 12px!important;border-radius:19px!important}
  .sp-register-ref-title{align-items:flex-start!important}
  .sp-register-ref-title h2{font-size:22px!important}
  .sp-register-ref-title p{font-size:10.5px!important}
  .sp-register-ref-input{height:47px!important;min-height:47px!important}
  .sp-register-ref-input input,.sp-register-ref-input select{height:45px!important;font-size:12px!important}
  .sp-register-ref-bottom{padding:24px 12px!important}
}
