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; }

  /* Keep Outseta's real registration behavior 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--Register--register {
    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--Register--register > div {
    width:100% !important;
    max-width:none !important;
  }
  [data-o-auth] .o--header,
  [data-o-auth] .o--plan-info,
  [data-o-auth] .o--ChargeSummary--chargeSummary,
  [data-o-auth] .o--Separator--separator {
    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] .o--Person-Email {
    margin-bottom:18px !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--Label--required::after {
    color:var(--neo-color-accent) !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--Register--nextButton {
    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 0 18px !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--Register--nextButton:hover:not(:disabled) {
    background:var(--neo-color-accent-hover) !important;
  }
  [data-o-auth] .o--Register--nextButton: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--Register--nextButton .o--Button--children,
  [data-o-auth] .o--Reset--scope .o--Widget--widget .o--Register--nextButton .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;
  }
  .signup-legal-disclosure {
    margin:16px 0 20px;
    color:var(--neo-color-text-faint);
    font-size:12px;
    line-height:1.55;
    text-align:center;
    text-wrap:pretty;
  }
  .signup-legal-disclosure a {
    color:var(--neo-color-text-subtle);
    text-decoration:underline;
    text-decoration-color:#4A5054;
    text-underline-offset:2px;
  }
  .signup-legal-disclosure a:hover {
    color:var(--neo-color-text-secondary);
  }
  @media (max-width:900px) { [data-grid] { grid-template-columns:1fr !important; } [data-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; }
  }
