body { margin:0; background:var(--neo-color-bg); font-family:var(--neo-font-body); color:var(--neo-color-text); -webkit-font-smoothing:antialiased; }
  a { color:var(--neo-color-accent); text-decoration:none; }
  a:hover { color:var(--neo-color-accent-hover); }
  input::placeholder { color:#5A6063; }
  input:focus { outline:none; border-color:rgba(135,233,169,.55) !important; }

  .auth-flow:has([data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login)) .auth-login-only {
    display:none !important;
  }

  /* Keep every Outseta auth state inside the supplied V2 form. */
  [data-o-auth] .o--Reset--scope,
  [data-o-auth] .o--Widget--widget,
  [data-o-auth] .o--Widget--widgetBody,
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"] {
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:var(--neo-color-text) !important;
    font-family:var(--neo-font-body) !important;
  }
  [data-o-auth] .o--Widget--widgetBody > div,
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"] > form {
    width:100% !important;
    max-width:none !important;
  }
  [data-o-auth] .state-login > .o--SectionGroup--sectionGroup:first-child {
    display:none !important;
  }
  [data-o-auth] .o--SectionGroup--sectionGroup,
  [data-o-auth] .o--FormGroup--formGroup {
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }
  [data-o-auth] .state-login > form > .o--SectionGroup--sectionGroup {
    display:grid !important;
    gap:18px !important;
  }
  [data-o-auth] .state-login .o--ErrorMessages--errorMessages {
    display:block !important;
    box-sizing:border-box !important;
    margin:0 0 18px !important;
    padding:12px 14px !important;
    border:1px solid rgba(233,160,160,.42) !important;
    border-radius:10px !important;
    background:rgba(145,57,70,.14) !important;
    color:#E9A0A0 !important;
    font-family:var(--neo-font-body) !important;
    font-size:13px !important;
    line-height:1.5 !important;
  }
  [data-o-auth] .state-login .o--ErrorMessages--errorMessages:empty {
    display:none !important;
  }
  [data-o-auth] .state-login .o--ErrorMessages--errorMessages * {
    color:inherit !important;
  }
  [data-o-auth] .o--Label--label {
    display:block !important;
    margin:0 0 9px !important;
    color:var(--neo-color-text-secondary) !important;
    font-family:var(--neo-font-body) !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1.4 !important;
  }
  [data-o-auth] .o--Input--input {
    display:block !important;
    width:100% !important;
    height:auto !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:14px 15px !important;
    border:1px solid var(--neo-color-border) !important;
    border-radius:10px !important;
    background:#161A1C !important;
    color:var(--neo-color-text) !important;
    font-family:var(--neo-font-body) !important;
    font-size:15px !important;
    font-weight:400 !important;
    line-height:1.35 !important;
    box-shadow:none !important;
  }
  [data-o-auth] .o--Input--input:focus {
    border-color:rgba(135,233,169,.55) !important;
    box-shadow:0 0 0 3px rgba(135,233,169,.09) !important;
    outline:none !important;
  }
  [data-o-auth] .o--PasswordInput--passwordInput {
    position:relative !important;
  }
  [data-o-auth] .o--PasswordInput--passwordInput > div {
    margin-top:8px !important;
    color:var(--neo-color-text-subtle) !important;
    font-family:var(--neo-font-body) !important;
    font-size:12.5px !important;
    line-height:1.4 !important;
  }
  [data-o-auth] .o--PasswordInput--passwordInput > div:hover {
    color:var(--neo-color-accent) !important;
  }
  [data-o-auth] form > .o--FormGroup--formGroup {
    margin-top:22px !important;
  }
  [data-o-auth] .o--Login--login {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:49px !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:14px 18px !important;
    border:0 !important;
    border-radius:10px !important;
    background:var(--neo-color-accent) !important;
    color:var(--neo-color-on-accent) !important;
    font-family:var(--neo-font-body) !important;
    font-size:15.5px !important;
    font-weight:600 !important;
    line-height:1.35 !important;
    box-shadow:none !important;
    cursor:pointer !important;
    transition:background-color .16s ease, opacity .16s ease !important;
  }
  [data-o-auth] .o--Login--login:hover:not(:disabled) {
    background:var(--neo-color-accent-hover) !important;
  }
  [data-o-auth] .o--Login--login:disabled {
    opacity:.48 !important;
    cursor:not-allowed !important;
  }
  [data-o-auth] .o--Button--children {
    font:inherit !important;
  }
  [data-o-auth] .o--Reset--scope .o--Widget--widget .o--Login--login .o--Button--children,
  [data-o-auth] .o--Reset--scope .o--Widget--widget .o--Login--login .o--Button--children * {
    color:var(--neo-color-on-accent) !important;
  }
  [data-o-auth] .o--SignInWithGoogle--btnGoogleSignin {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:49px !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:13px 18px !important;
    border:1px solid var(--neo-color-border) !important;
    border-radius:10px !important;
    background:#161A1C !important;
    color:var(--neo-color-text-strong) !important;
    font-family:var(--neo-font-body) !important;
    font-size:14.5px !important;
    font-weight:600 !important;
    line-height:1.4 !important;
    box-shadow:none !important;
    cursor:pointer !important;
    transition:background-color .16s ease, border-color .16s ease !important;
  }
  [data-o-auth] .o--SignInWithGoogle--btnGoogleSignin:hover {
    border-color:#3A4045 !important;
    background:#1B2022 !important;
  }
  [data-o-auth] .o--SignInWithGoogle--btnGoogleSignin:focus-visible {
    border-color:rgba(135,233,169,.55) !important;
    outline:3px solid rgba(135,233,169,.09) !important;
    outline-offset:0 !important;
  }
  [data-o-auth] .o--SignInWithGoogle--btnGoogleSignin .o--Button--children {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    color:var(--neo-color-text-strong) !important;
  }
  [data-o-auth] .o--SignInWithGoogle--googleIcon {
    flex:none !important;
    width:18px !important;
    height:18px !important;
    margin:0 !important;
  }
  [data-o-auth] .o--HrLabel--hrLabel {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;
    align-items:center !important;
    gap:12px !important;
    margin:17px 0 !important;
  }
  [data-o-auth] .o--HrLabel--line {
    height:1px !important;
    background:#292E31 !important;
  }
  [data-o-auth] .o--HrLabel--label {
    color:var(--neo-color-text-faint) !important;
    font-family:var(--neo-font-body) !important;
    font-size:11px !important;
    font-weight:500 !important;
    line-height:1 !important;
    letter-spacing:.08em !important;
  }
  [data-o-auth] .state-login > div:last-child {
    margin-top:14px !important;
    text-align:center !important;
  }
  [data-o-auth] .state-login > div:last-child a {
    color:var(--neo-color-text-subtle) !important;
    font-family:var(--neo-font-body) !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.4 !important;
    cursor:pointer !important;
  }
  [data-o-auth] .state-login > div:last-child a:hover {
    color:var(--neo-color-accent) !important;
  }

  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) > .o--SectionGroup--sectionGroup:first-child {
    margin-bottom:8px !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) > .o--SectionGroup--sectionGroup + .o--SectionGroup--sectionGroup {
    margin-bottom:24px !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) h1,
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) h2 {
    margin:0 !important;
    color:var(--neo-color-text) !important;
    font-family:var(--neo-font-display) !important;
    font-size:26px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    letter-spacing:-.3px !important;
    text-align:left !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) p {
    margin:0 !important;
    color:var(--neo-color-text-subtle) !important;
    font-family:var(--neo-font-body) !important;
    font-size:14.5px !important;
    line-height:1.6 !important;
    text-align:left !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) > form > .o--SectionGroup--sectionGroup {
    display:block !important;
    margin:0 !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) > form > .o--FormGroup--formGroup {
    display:flex !important;
    flex-direction:row-reverse !important;
    align-items:center !important;
    gap:10px !important;
    margin-top:22px !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:45px !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:12px 17px !important;
    border:0 !important;
    border-radius:10px !important;
    background:var(--neo-color-accent) !important;
    color:var(--neo-color-on-accent) !important;
    font-family:var(--neo-font-body) !important;
    font-size:14.5px !important;
    font-weight:600 !important;
    line-height:1.35 !important;
    box-shadow:none !important;
    cursor:pointer !important;
    transition:background-color .16s ease, border-color .16s ease, opacity .16s ease !important;
  }
  [data-o-auth] .o--Reset--scope .o--Widget--widget .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn:not(.o--Button--buttonType-cancel) .o--Button--children,
  [data-o-auth] .o--Reset--scope .o--Widget--widget .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn:not(.o--Button--buttonType-cancel) .o--Button--children * {
    color:var(--neo-color-on-accent) !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn:not(.o--Button--buttonType-cancel):hover:not(:disabled) {
    background:var(--neo-color-accent-hover) !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--buttonType-cancel {
    border:1px solid #3A4045 !important;
    background:transparent !important;
    color:var(--neo-color-text-strong) !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--buttonType-cancel .o--Button--children {
    color:var(--neo-color-text-strong) !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--buttonType-cancel:hover:not(:disabled) {
    border-color:#4B5257 !important;
    background:#161A1C !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn:disabled {
    opacity:.48 !important;
    cursor:not-allowed !important;
  }
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Error--error,
  [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--text-danger {
    margin-top:8px !important;
    color:#E9A0A0 !important;
    font-size:13px !important;
    line-height:1.5 !important;
  }
  .desktop-view [data-o-auth] { margin-bottom:18px; }
  .desktop-view .auth-flow:has([data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login)) [data-o-auth] { margin-bottom:0; }
  @media (max-width:900px) { [data-signin-grid] { grid-template-columns:1fr !important; } [data-signin-aside] { display:none !important; } }
  /* ---------- responsive: tablet ---------- */
  @media (max-width:1024px) {
    .wrapx { padding-left:28px !important; padding-right:28px !important; }
    .gcol { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    .fs-a { font-size:44px !important; }
    .fs-b { font-size:32px !important; }
  }
  /* ---------- responsive: phone ---------- */
  @media (max-width:760px) {
    .wrapx { padding-left:20px !important; padding-right:20px !important; }
    .gcol { grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
    .frow { flex-direction:column !important; align-items:flex-start !important; gap:20px !important; flex-wrap:wrap !important; }
    .frow > * { min-width:0; }
    .fs-a { font-size:34px !important; line-height:1.15 !important; }
    .fs-b { font-size:27px !important; line-height:1.2 !important; }
    .fs-c { font-size:22px !important; line-height:1.3 !important; }
    .fs-d { font-size:17px !important; }
    [data-chiprow] { flex-wrap:wrap !important; row-gap:7px !important; }
    [data-tabs] { overflow-x:auto !important; gap:14px !important; -webkit-overflow-scrolling:touch; padding-bottom:2px !important; }
    div[style*="space-between"]:not([data-nav-bar]):not([style*="auto"]) { flex-wrap:wrap !important; row-gap:12px !important; }
    div[style*="space-between"]:not([data-nav-bar]):not([style*="auto"]) > * { min-width:0 !important; max-width:100% !important; }
    div[style*="space-between"] > [style*="text-align: right"],
    div[style*="space-between"] > [style*="text-align:right"] { text-align:left !important; }
    [data-barrow] { gap:5px !important; }
    [data-barrow] [style*="nowrap"] { font-size:10.5px !important; letter-spacing:0 !important; }
    [data-barrow] [style*="nowrap"] span { font-size:9px !important; }
    [data-shot] { overflow-x:auto !important; overflow-y:hidden !important; max-width:100% !important; -webkit-overflow-scrolling:touch; }
    [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) > form > .o--FormGroup--formGroup {
      flex-direction:column !important;
      align-items:stretch !important;
    }
    [data-o-auth] .o--Widget--widgetBody > [class*="state-"]:not(.state-login) .o--Button--btn {
      width:100% !important;
    }
  }
body.auth-check-pending .desktop-view,
body.auth-check-pending .mobile-view {
  visibility:hidden;
}
