:root{
  --auth-bg:#eaf5f8;
  --auth-card:#ffffff;
  --auth-ink:#153443;
  --auth-muted:#65818c;
  --auth-line:#c8dfe7;
  --auth-ocean:#0d405e;
  --auth-ocean-2:#082c43;
  --auth-accent:#24b5da;
  --auth-accent-dark:#08799b;
  --auth-danger:#b33a49;
  --auth-ok:#247d5e;
}
html,body{background:var(--auth-bg)!important;color:var(--auth-ink)!important}
.login-layout{grid-template-columns:minmax(420px,.95fr) minmax(520px,1.05fr)!important;background:var(--auth-bg)!important}
.login-brand-panel{
  min-height:100vh!important;
  padding:44px clamp(38px,5vw,78px)!important;
  border-right:0!important;
  background:
    linear-gradient(180deg,rgba(4,32,48,.06),rgba(4,32,48,.32)),
    radial-gradient(900px 620px at 68% 20%,rgba(75,200,235,.28),transparent 62%),
    linear-gradient(145deg,#0d4d70 0%,#0a3d5a 48%,#072c43 100%)!important;
}
.login-brand{color:#fff!important;font-size:13px!important;letter-spacing:.12em!important}
.login-brand-mark{width:44px!important;height:44px!important;border:0!important;border-radius:6px!important;background:rgba(255,255,255,.1)!important;box-shadow:none!important}
.login-brand-copy{margin:auto 0 44px!important;max-width:650px!important}
.login-kicker{margin:0 0 15px!important;color:#8edff2!important;font-size:10px!important;letter-spacing:.13em!important}
.login-brand-copy h1{max-width:620px;font-size:clamp(52px,5.4vw,82px)!important;line-height:.94!important;letter-spacing:-.06em!important;color:#fff!important}
.login-brand-copy h1 strong{color:#9be8f7!important;background:none!important;-webkit-text-fill-color:initial!important}
.login-brand-copy>p:last-child{max-width:570px!important;margin-top:24px!important;color:#c2dce4!important;font-size:16px!important;line-height:1.65!important}
.login-benefits{gap:0!important;border-top:1px solid rgba(255,255,255,.16)!important}
.login-benefits>div{
  grid-template-columns:34px 1fr!important;
  gap:12px!important;
  padding:15px 0!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  border-radius:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
}
.login-benefits>div>span{width:26px!important;height:26px!important;border-radius:3px!important;background:rgba(255,255,255,.09)!important;color:#a5e7f5!important;font-size:8px!important}
.login-benefits b{color:#fff!important;font-size:12px!important}
.login-benefits small{color:#a9c8d2!important;font-size:10px!important}
.login-brand-foot{color:#8eb2be!important;font-size:9px!important}
.login-form-panel{position:relative;justify-content:center!important;min-height:100vh!important;padding:70px clamp(34px,7vw,110px)!important;background:#f4fafc!important}
.login-back{top:30px!important;right:38px!important;color:#5f7d89!important;font-size:11px!important}
.login-back:hover{color:#173847!important}
.auth-card{max-width:500px!important}
.auth-tabs{
  gap:24px!important;
  padding:0!important;
  margin-bottom:36px!important;
  border:0!important;
  border-bottom:1px solid var(--auth-line)!important;
  border-radius:0!important;
  background:transparent!important;
}
.auth-tabs button{position:relative;padding:13px 0!important;border-radius:0!important;color:#78909a!important;font-size:12px!important;font-weight:750!important}
.auth-tabs button.active{background:transparent!important;color:#173847!important;box-shadow:none!important}
.auth-tabs button.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--auth-accent)}
.auth-heading{margin-bottom:26px!important}
.auth-heading>span{margin-bottom:7px!important;color:#0d7fa2!important;font-size:9px!important;letter-spacing:.12em!important}
.auth-heading h2{color:#143443!important;font-size:36px!important;font-weight:760!important;letter-spacing:-.045em!important}
.auth-heading p{max-width:470px!important;margin-top:9px!important;color:#67828c!important;font-size:12px!important;line-height:1.55!important}
.auth-form{gap:15px!important}
.auth-field{gap:7px!important}
.auth-field>span:first-child{color:#294a58!important;font-size:10px!important;font-weight:760!important}
.auth-field input{
  height:48px!important;
  border:1px solid var(--auth-line)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#153443!important;
  padding:0 13px!important;
  font-size:13px!important;
  box-shadow:none!important;
}
.auth-field input::placeholder{color:#94a9b1!important}
.auth-field input:focus{border-color:#6dbfd4!important;box-shadow:0 0 0 3px rgba(36,181,218,.09)!important;background:#fff!important}
.auth-field small{color:#78909a!important;font-size:9px!important;line-height:1.45!important}
.password-toggle{right:6px!important;border-radius:3px!important;color:#5d7a86!important;font-size:9px!important}
.password-toggle:hover{color:#123b4c!important;background:#edf6f8!important}
.auth-row{font-size:10px!important}
.auth-row a,.auth-link-button{color:#0b7b9d!important;font-size:10px!important;font-weight:720!important}
.remember-check{color:#607c87!important;font-size:10px!important}
.remember-check input{accent-color:var(--auth-accent)}
.auth-recovery-links,.auth-secondary-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.auth-primary{
  min-height:48px!important;
  border:1px solid var(--auth-accent)!important;
  border-radius:5px!important;
  background:var(--auth-accent)!important;
  color:#073344!important;
  font-size:11px!important;
  font-weight:850!important;
  box-shadow:none!important;
  transform:none!important;
}
.auth-primary:hover{background:#4cc4e1!important;filter:none!important;transform:none!important}
.auth-primary.compact{display:inline-flex;min-height:38px!important;padding:0 14px!important;text-decoration:none}
.auth-message{min-height:16px!important;color:#69848f!important;font-size:10px!important}
.auth-message.error{color:var(--auth-danger)!important}.auth-message.success{color:var(--auth-ok)!important}
.auth-divider{margin:22px 0 14px!important;color:#8aa0a8!important;font-size:8px!important;letter-spacing:.08em!important}
.auth-divider:before,.auth-divider:after{background:#d9e7eb!important}
.provider-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}
.provider-button{
  min-height:44px!important;
  border:1px solid var(--auth-line)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#294b59!important;
  font-size:10px!important;
  font-weight:760!important;
}
.provider-button:hover{background:#edf6f8!important;border-color:#9bcbd7!important}
.provider-icon{width:22px!important;height:22px!important;border-radius:3px!important;border:1px solid #d9e5e9!important;background:#fff!important}
.microsoft-grid{border:0!important}
.microsoft-grid i{background:#5b7180!important}
.auth-legal{margin-top:22px!important;color:#8298a1!important;font-size:8px!important}.auth-legal a{color:#557a88!important}
.register-details{display:grid;gap:15px}
.signup-captcha,.signup-code-panel,.signup-legal-check,.auth-recovery-options,.security-recovery-list{
  border:1px solid var(--auth-line)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#5c7782!important;
  box-shadow:none!important;
}
.signup-captcha{padding:10px!important}
.signup-captcha-label{color:#5b7e8b!important}
.signup-code-panel{padding:16px!important}
.signup-code-head span{color:#0b7c9f!important}
.signup-code-head b{color:#173847!important}
.signup-code-head button{color:#0b7b9d!important}
.signup-resend{border-color:var(--auth-line)!important;border-radius:4px!important;background:#eef7f9!important;color:#315c6c!important}
.signup-security-note{color:#708a94!important}.signup-security-note i{box-shadow:none!important}
.signup-legal-check{margin:2px 0!important;padding:10px!important;color:#637d87!important}.signup-legal-check a{color:#0b7b9d!important}
.signup-provider-note{color:#6d8791!important}
.auth-field input[type="date"]{color-scheme:light!important}
.auth-recovery-options{margin-top:22px;padding:14px}.auth-recovery-options>p{margin:0 0 10px;color:#6b858f;font-size:10px;line-height:1.5}
.security-recovery-list{display:grid;margin-bottom:18px;overflow:hidden}.security-recovery-list>div{display:grid;gap:3px;padding:14px;border-bottom:1px solid #e0ecef}.security-recovery-list>div:last-child{border-bottom:0}.security-recovery-list b{color:#173847;font-size:11px}.security-recovery-list span{color:#6d8791;font-size:10px;line-height:1.5}
.reset-confirm{margin-top:16px;padding-top:16px;border-top:1px solid #dae8ec}
.device-flow{margin-top:20px!important;border:1px solid var(--auth-line)!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important;color:#153443!important}.device-flow-head{color:#0b7b9d!important}.device-flow-head button{color:#67838e!important}.device-flow h3{color:#153443!important}.device-flow>p{color:#6a858f!important}.device-code{border-color:#bcd5de!important;border-radius:4px!important;background:#eef7f9!important;color:#143e50!important}.device-stages span{border-radius:3px!important;background:#eef5f7!important;color:#78909a!important}.device-stages span.active{background:#dff3f8!important;color:#0d7596!important}.device-stages span.done{color:#247d5e!important}
.auth-challenge[hidden]{display:none!important}.auth-challenge{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px}.auth-challenge-backdrop{position:absolute;inset:0;border:0;background:rgba(5,24,35,.56);backdrop-filter:blur(5px);cursor:default}.auth-challenge-dialog{position:relative;z-index:1;width:min(440px,100%);padding:26px;border:1px solid var(--auth-line);border-radius:7px;background:#fff;box-shadow:0 24px 70px rgba(4,33,48,.24);color:#153443}.auth-challenge-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:18px;border-radius:50%;background:#dff4f8;color:#08799b;font-weight:900}.auth-challenge-dialog header>span{color:#0c7fa2;font-size:8px;font-weight:900;letter-spacing:.12em}.auth-challenge-dialog h2{margin:5px 0 7px;color:#153443;font-size:27px;letter-spacing:-.035em}.auth-challenge-dialog header p{margin:0 0 18px;color:#67828c;font-size:11px;line-height:1.5}.auth-challenge-dialog form{display:grid;gap:12px}.challenge-email{width:100%;margin-top:9px;min-height:40px;border:1px solid var(--auth-line);border-radius:4px;background:#edf7f9;color:#0d6f8e;font:750 10px/1 system-ui;cursor:pointer}.challenge-email:hover{background:#e3f1f4}.challenge-help,.challenge-cancel{display:block;margin:12px auto 0}.auth-modal-open{overflow:hidden}
@media(max-width:980px){.login-layout{grid-template-columns:1fr!important}.login-brand-panel{min-height:auto!important;padding:24px!important}.login-brand-copy{margin:58px 0 18px!important}.login-brand-copy h1{font-size:clamp(46px,10vw,68px)!important}.login-benefits,.login-brand-foot{display:none!important}.login-form-panel{min-height:auto!important;padding:72px 24px 42px!important}.login-back{top:24px!important;right:24px!important}.auth-card{max-width:560px!important}}
@media(max-width:560px){.provider-grid{grid-template-columns:1fr!important}.auth-recovery-links,.auth-secondary-row{align-items:flex-start;flex-direction:column}.auth-heading h2{font-size:31px!important}}
[hidden]{display:none!important}

.login-top-actions{position:absolute;top:28px;right:36px;display:flex;align-items:center;gap:8px;z-index:4}
.login-top-actions .login-back{position:static!important;top:auto!important;right:auto!important}
.login-theme-toggle{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--auth-line);border-radius:4px;background:#fff;color:#4f6f7c;cursor:pointer}
.login-theme-toggle:hover{background:#edf6f8;color:#0d6b89}
.login-theme-toggle svg{width:17px;height:17px}

html[data-theme="dark"]{
  --auth-bg:#071118;
  --auth-card:#0d1d26;
  --auth-ink:#e8f1f3;
  --auth-muted:#8eabb4;
  --auth-line:#294955;
  --auth-ocean:#0d405e;
  --auth-ocean-2:#082c43;
  --auth-accent:#45bdd8;
  --auth-accent-dark:#73d6e8;
  --auth-danger:#f08089;
  --auth-ok:#63d7ad;
}
html[data-theme="dark"],html[data-theme="dark"] body{background:#071118!important;color:#e8f1f3!important}
html[data-theme="dark"] .login-form-panel{background:#09161e!important}
html[data-theme="dark"] .login-back{color:#91aab3!important}
html[data-theme="dark"] .login-back:hover{color:#d8e8ec!important}
html[data-theme="dark"] .auth-tabs{border-color:#294955!important}
html[data-theme="dark"] .auth-tabs button{color:#819ba5!important}
html[data-theme="dark"] .auth-tabs button.active{color:#e8f1f3!important}
html[data-theme="dark"] .auth-heading h2{color:#e8f1f3!important}
html[data-theme="dark"] .auth-heading p{color:#8eabb4!important}
html[data-theme="dark"] .auth-field>span:first-child{color:#c2d5da!important}
html[data-theme="dark"] .auth-field input,
html[data-theme="dark"] .auth-field select,
html[data-theme="dark"] .auth-field textarea{
  border-color:#294955!important;background:#0d1d26!important;color:#e8f1f3!important
}
html[data-theme="dark"] .auth-field input::placeholder{color:#708b95!important}
html[data-theme="dark"] .auth-field input:focus{border-color:#45bdd8!important;box-shadow:0 0 0 3px rgba(69,189,216,.1)!important;background:#0d1d26!important}
html[data-theme="dark"] .password-toggle{color:#8eabb4!important}
html[data-theme="dark"] .password-toggle:hover{background:#132a35!important;color:#dbecef!important}
html[data-theme="dark"] .remember-check{color:#8eabb4!important}
html[data-theme="dark"] .auth-link-button,
html[data-theme="dark"] .auth-row a{color:#73d6e8!important}
html[data-theme="dark"] .auth-divider{color:#78929c!important}
html[data-theme="dark"] .auth-divider:before,
html[data-theme="dark"] .auth-divider:after{background:#294955!important}
html[data-theme="dark"] .provider-button{
  border-color:#294955!important;background:#0d1d26!important;color:#dbecef!important
}
html[data-theme="dark"] .provider-button:hover{border-color:#3f6572!important;background:#132a35!important}
html[data-theme="dark"] .provider-icon{border-color:#36515b!important;background:#f5f7f8!important}
html[data-theme="dark"] .signup-captcha,
html[data-theme="dark"] .signup-code-panel,
html[data-theme="dark"] .signup-legal-check,
html[data-theme="dark"] .auth-recovery-options,
html[data-theme="dark"] .security-recovery-list{
  border-color:#294955!important;background:#0d1d26!important;color:#8eabb4!important
}
html[data-theme="dark"] .signup-code-head b,
html[data-theme="dark"] .security-recovery-list b{color:#e8f1f3!important}
html[data-theme="dark"] .signup-resend,
html[data-theme="dark"] .challenge-email{
  border-color:#294955!important;background:#132a35!important;color:#9bddec!important
}
html[data-theme="dark"] .device-flow{
  border-color:#294955!important;background:#0d1d26!important;color:#e8f1f3!important
}
html[data-theme="dark"] .device-flow h3{color:#e8f1f3!important}
html[data-theme="dark"] .device-flow>p{color:#8eabb4!important}
html[data-theme="dark"] .device-code{border-color:#355864!important;background:#132a35!important;color:#b7e5ef!important}
html[data-theme="dark"] .auth-challenge-dialog{
  border-color:#294955;background:#0d1d26;color:#e8f1f3;box-shadow:0 24px 70px rgba(0,0,0,.45)
}
html[data-theme="dark"] .auth-challenge-dialog h2{color:#e8f1f3}
html[data-theme="dark"] .auth-challenge-dialog header p{color:#8eabb4}
html[data-theme="dark"] .login-theme-toggle{border-color:#294955;background:#0d1d26;color:#a7c2ca}
html[data-theme="dark"] .login-theme-toggle:hover{background:#132a35;color:#73d6e8}

@media(max-width:980px){
  .login-top-actions{top:22px;right:22px}
}
@media(max-width:560px){
  .login-top-actions{right:14px;top:16px}
  .login-theme-toggle{width:34px;height:34px}
}


/* Crisp OAuth provider brand icons */
.provider-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
}
.provider-icon.provider-icon-google,
.provider-icon.provider-icon-microsoft{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.provider-icon.provider-icon-google svg,
.provider-icon.provider-icon-microsoft svg{
  display:block!important;
  width:18px!important;
  height:18px!important;
}
html[data-theme="dark"] .provider-icon.provider-icon-google,
html[data-theme="dark"] .provider-icon.provider-icon-microsoft{
  border:0!important;
  background:transparent!important;
}


/* Registration consent + security flow */
.signup-consent-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid #cfe0e6;
  border-radius:8px;
  background:linear-gradient(180deg,#f9fcfd 0%,#f3f8fa 100%);
}
.signup-consent-head{
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.signup-consent-icon{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  flex:0 0 28px;
  border-radius:50%;
  background:#daf1f6;
  color:#0a7899;
  font-size:12px;
  font-weight:900;
}
.signup-consent-head>div{
  display:grid;
  gap:3px;
}
.signup-consent-head b{
  color:#153443;
  font-size:11px;
  font-weight:850;
}
.signup-consent-head small{
  color:#6b858f;
  font-size:9px;
  line-height:1.5;
}
.signup-legal-check{
  display:grid!important;
  grid-template-columns:18px 1fr;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding:11px 12px!important;
  border:1px solid #d7e6ea!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#496672!important;
  cursor:pointer;
}
.signup-legal-check:hover{
  border-color:#9fcbd6!important;
  background:#fbfeff!important;
}
.signup-legal-check input{
  width:16px;
  height:16px;
  margin:2px 0 0!important;
  accent-color:#13a0c5;
}
.signup-legal-check>span{
  display:grid;
  gap:3px;
}
.signup-legal-check b{
  color:#153443;
  font-size:10px;
}
.signup-legal-check small{
  color:#6a838d;
  font-size:9px;
  line-height:1.55;
}
.signup-legal-check a{
  color:#0b7b9d!important;
  font-weight:750;
  text-decoration:none;
}
.signup-legal-check a:hover{text-decoration:underline}
.signup-security-panel{
  display:grid;
  gap:10px;
  padding:13px 14px;
  border:1px solid #cfe0e6;
  border-radius:8px;
  background:#f7fbfc;
}
.signup-security-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.signup-security-head>div{
  display:flex;
  align-items:center;
  gap:9px;
}
.signup-security-head>div>span:last-child{
  display:grid;
  gap:2px;
}
.signup-security-head b{
  color:#153443;
  font-size:10px;
}
.signup-security-head small{
  color:#78919a;
  font-size:8px;
}
.signup-shield{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:6px;
  background:#e4f3f6;
  color:#0c7f9f;
  font-size:12px;
  font-weight:900;
}
.signup-security-head em{
  padding:4px 7px;
  border-radius:999px;
  background:#e8f3f6;
  color:#53727e;
  font-size:8px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.signup-security-panel.is-ready .signup-security-head em{
  background:#def4e9;
  color:#237653;
}
.signup-security-panel.is-fallback .signup-security-head em{
  background:#e7f2fb;
  color:#316f9b;
}
.signup-security-panel.is-error .signup-security-head em{
  background:#fde8e8;
  color:#a63f46;
}
.signup-security-panel>p{
  margin:0;
  color:#708993;
  font-size:9px;
  line-height:1.5;
}
.signup-security-host{
  min-height:0;
}
.signup-security-host:empty{display:none}
.signup-security-retry{
  justify-self:start;
  min-height:32px;
  padding:0 10px;
  border:1px solid #bdd6de;
  border-radius:5px;
  background:#fff;
  color:#24596d;
  font-size:9px;
  font-weight:800;
  cursor:pointer;
}
.signup-security-retry:hover{background:#edf7f9}
.signup-remember{
  margin:0!important;
  padding:0 2px;
}
.signup-create[disabled]{
  opacity:.48;
  cursor:not-allowed;
  filter:saturate(.5);
}
.signup-security-note{
  display:flex!important;
  align-items:center;
  gap:7px;
  margin:0!important;
  color:#718b95!important;
  font-size:9px!important;
}
.signup-security-note i{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#3aa47a;
}
html[data-theme="dark"] .signup-consent-card,
html[data-theme="dark"] .signup-security-panel{
  border-color:#294955!important;
  background:linear-gradient(180deg,#0d1d26 0%,#0b1921 100%)!important;
}
html[data-theme="dark"] .signup-consent-head b,
html[data-theme="dark"] .signup-legal-check b,
html[data-theme="dark"] .signup-security-head b{
  color:#e8f1f3!important;
}
html[data-theme="dark"] .signup-consent-head small,
html[data-theme="dark"] .signup-legal-check small,
html[data-theme="dark"] .signup-security-head small,
html[data-theme="dark"] .signup-security-panel>p{
  color:#8fa9b2!important;
}
html[data-theme="dark"] .signup-consent-icon,
html[data-theme="dark"] .signup-shield{
  background:#12303b!important;
  color:#78d5e7!important;
}
html[data-theme="dark"] .signup-legal-check{
  border-color:#294955!important;
  background:#0f222c!important;
}
html[data-theme="dark"] .signup-legal-check:hover{
  border-color:#3d6674!important;
  background:#122a35!important;
}
html[data-theme="dark"] .signup-security-retry{
  border-color:#355864!important;
  background:#122a35!important;
  color:#a9dce7!important;
}
html[data-theme="dark"] .signup-security-head em{
  background:#17303a;
  color:#9bb5be;
}
html[data-theme="dark"] .signup-security-panel.is-ready .signup-security-head em{
  background:#15352b;
  color:#90d8b8;
}
html[data-theme="dark"] .signup-security-panel.is-fallback .signup-security-head em{
  background:#142d3d;
  color:#9bc8e8;
}
html[data-theme="dark"] .signup-security-panel.is-error .signup-security-head em{
  background:#3b2024;
  color:#f0a0a7;
}
