
  :root{
    --bg:#0b0a11;
    --card:#151121;
    --stroke-soft:#201a3b;
    --stroke:#2f2950;
    --txt:#eceaff;
    --muted:rgba(201,195,233,.82);
    --accent:#6f63ff;
    --accent2:#4f46e5;
    --danger:#ff5f7a;
    --ok:#33d17a;
  }

  #toast-container{ z-index:999999!important; pointer-events:auto; }
  .toast{ box-shadow:0 18px 40px rgba(0,0,0,.55)!important; border:1px solid rgba(255,255,255,.08)!important; border-radius:14px!important; }
  .toast-success{ background-color:rgba(18,38,26,.95)!important; background-image:none!important; color:#eafff2!important; border-color:rgba(51,209,122,.35)!important; }
  .toast-error{ background-color:rgba(44,16,24,.95)!important; background-image:none!important; color:#ffe9ef!important; border-color:rgba(255,138,138,.35)!important; }
  .toast-warning{ background-color:rgba(34,26,54,.95)!important; background-image:none!important; color:rgba(201,195,233,.92)!important; border-color:rgba(111,99,255,.25)!important; }
  .toast-info{ background-color:rgba(18,16,32,.95)!important; background-image:none!important; color:rgba(236,234,255,.92)!important; border-color:rgba(111,99,255,.25)!important; }

  #register-page{
    min-height:calc(100vh - 70px);
    padding:70px 18px 52px;
    background:
      linear-gradient(180deg, rgba(6,4,10,.52), rgba(6,4,10,.94)),
      url('/templates/augment/img/body-background.webp') center top/cover fixed no-repeat;
    color:var(--txt);
  }

  .register-page-container{
    max-width:1260px;
    margin:0 auto;
  }

  .register-hero{
    text-align:center;
    margin-bottom:32px;
  }

  .register-page-title{
    font-family:'Cinzel',serif;
    text-transform:uppercase;
    font-size:clamp(48px,6vw,78px);
    letter-spacing:.15em;
    line-height:1;
    margin:0;
    background:linear-gradient(180deg,#fff 0%,#d8cbff 45%,#7f50ee 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    text-shadow:0 14px 34px rgba(0,0,0,.82);
  }

  .register-box-wrap{
    display:flex;
    justify-content:center;
  }

  #register-box{
    width:min(820px,100%);
    position:relative;
    border-radius:20px;
    border:1px solid var(--stroke-soft);
    background:radial-gradient(150% 220% at 50% 0%, #1f182f 0%, #151121 45%, #0c0a14 100%);
    box-shadow:
      0 26px 60px rgba(0,0,0,.85),
      0 0 0 1px rgba(255,255,255,.02),
      inset 0 1px 0 rgba(255,255,255,.06),
      inset 0 -18px 26px rgba(0,0,0,.6);
    overflow:hidden;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }

  #register-box::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      radial-gradient(140% 180% at 15% 0%, rgba(255,255,255,.08) 0%, transparent 42%),
      radial-gradient(120% 200% at 50% 120%, rgba(0,0,0,.72) 0%, transparent 60%),
      linear-gradient(180deg, rgba(111,99,255,.06) 0%, transparent 22%);
    mix-blend-mode:soft-light;
    opacity:.95;
  }

  #register-inner{
    position:relative;
    padding:2.6rem 3rem 2.3rem;
  }

  .register-top{
    text-align:center;
    margin-bottom:1.65rem;
  }

  .register-title{
    font-family:"Cinzel", ui-serif, Georgia, serif;
    letter-spacing:.18em;
    text-transform:uppercase;
    font-size:1.55rem;
    color:var(--txt);
    margin:0 0 .35rem;
  }

  .register-subtitle{
    font-family:"Cinzel", ui-serif, Georgia, serif;
    font-size:.78rem;
    letter-spacing:.28em;
    text-transform:uppercase;
    color:rgba(201,195,233,.78);
  }

  .rg-field{
    margin-bottom:1.15rem;
  }

  .rg-label{
    display:block;
    color:rgba(201,195,233,.75);
    font-size:.72rem;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:.55rem;
  }

  .rg-input-wrap{
    position:relative;
  }

  .rg-icon{
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    width:18px;
    height:18px;
    opacity:.8;
    pointer-events:none;
    filter:drop-shadow(0 0 6px rgba(111,99,255,.22));
  }

  .rg-icon svg{
    width:18px;
    height:18px;
    fill:rgba(201,195,233,.85);
  }

  .rg-input{
    width:100%;
    background:radial-gradient(120% 260% at 50% 0%, #1d182b 0%, #13101e 40%, #0a0810 100%);
    border:1px solid var(--stroke-soft);
    color:var(--txt);
    border-radius:14px;
    padding:.95rem 1.05rem .95rem 2.85rem;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.05),
      inset 0 -6px 10px rgba(0,0,0,.7);
    transition:.15s ease;
  }

  .rg-input::placeholder{
    color:rgba(201,195,233,.45);
  }

  .rg-input:focus{
    outline:none;
    border-color:var(--accent);
    background:radial-gradient(120% 260% at 50% 0%, #231b3b 0%, #171227 40%, #0b0813 100%);
    box-shadow:
      0 0 0 1px rgba(111,99,255,.45),
      inset 0 1px 0 rgba(255,255,255,.07),
      inset 0 -7px 12px rgba(0,0,0,.8);
    transform:translateY(-1px);
  }

  .field-help{
    display:none;
    margin-top:10px;
    font-size:13px;
    line-height:1.65;
    font-weight:700;
  }

  .rg-field.is-touched .field-help{
    display:block;
  }

  .help-line{
    display:block;
    color:var(--danger);
  }

  .help-line.is-ok{
    color:var(--ok);
  }

  .help-line::before{
    content:"✕ ";
  }

  .help-line.is-ok::before{
    content:"✓ ";
  }

  .rg-btn{
    width:100%;
    margin-top:.45rem!important;
    background:linear-gradient(180deg,var(--accent) 0%,var(--accent2) 45%,#3c35c8 100%);
    border-radius:999px;
    border:1px solid rgba(116,104,255,.8);
    color:#fff;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    font-size:.82rem;
    padding:.95rem 1rem;
    box-shadow:
      0 16px 32px rgba(26,19,75,.9),
      0 0 0 1px rgba(0,0,0,.8),
      inset 0 1px 0 rgba(255,255,255,.18),
      inset 0 -8px 14px rgba(18,10,70,.8);
    position:relative;
    overflow:hidden;
    transition:.12s ease;
  }

  .rg-btn::after{
    content:"";
    position:absolute;
    inset:-2px;
    background:radial-gradient(120% 120% at 20% 0%, rgba(255,255,255,.20) 0%, transparent 40%);
    opacity:.35;
    pointer-events:none;
  }

  .rg-btn:hover{
    transform:translateY(-1px);
    filter:brightness(1.03);
  }

  .rg-btn:disabled{
    opacity:.6;
    cursor:not-allowed;
    transform:none;
    filter:none;
  }

  .register-links{
    display:flex;
    justify-content:center;
    gap:.65rem;
    margin-top:.95rem;
    color:rgba(201,195,233,.82);
    font-size:.86rem;
  }

  .register-links a{
    color:rgba(201,195,233,.82);
    text-decoration:none;
    position:relative;
    transition:.15s ease;
  }

  .register-links a:hover{
    color:rgba(236,234,255,.98);
    text-shadow:0 0 10px rgba(111,99,255,.25);
  }

  .register-divider{
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(111,99,255,.22),transparent);
    margin:1.25rem 0 1.05rem;
  }

.captcha-frame{
  width:100%;
  margin:1rem auto .65rem;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  display:flex;
  justify-content:center;
  align-items:center;
}

.captcha-label,
.captcha-dot{
  display:none!important;
}

.captcha-frame .g-recaptcha{
  display:block!important;
  margin:0 auto!important;
  border:0;
  border-radius:4px;
  overflow:hidden;
  box-shadow:
    0 0 0 1px rgba(166,148,255,.08),
    0 12px 28px rgba(0,0,0,.40),
    0 0 18px rgba(123,100,255,.12);
}

  #register-page .g-recaptcha{
    display:flex;
    justify-content:center;
    margin:.95rem auto .55rem!important;
    filter:drop-shadow(0 10px 26px rgba(0,0,0,.45));
  }

  @media(max-width:640px){
    #register-page{
      padding:42px 10px 36px;
      background:
        linear-gradient(180deg, rgba(6,4,10,.58), rgba(6,4,10,.94)),
        url('/templates/augment/img/body-background.webp') top center / auto 100vh repeat-y;
      background-attachment:scroll;
      background-color:#07050d;
    }

    .register-page-title{
      font-size:38px;
      letter-spacing:.10em;
    }

    .register-hero{
      margin-bottom:24px;
    }

    #register-box{
      border-radius:16px;
    }

    #register-inner{
      padding:2.1rem 1.35rem 1.7rem;
    }

    .register-title{
      font-size:1.25rem;
      letter-spacing:.13em;
    }

    .register-subtitle{
      font-size:.68rem;
      letter-spacing:.20em;
    }

    .register-links{
      flex-wrap:wrap;
      text-align:center;
    }

    .captcha-frame{
      width:100%;
      overflow:hidden;
    }

    .captcha-frame .g-recaptcha{
      transform:scale(.88);
      transform-origin:center;
      margin:-6px auto -10px!important;
    }
  }

  @media(max-width:390px){
    .captcha-frame .g-recaptcha{
      transform:scale(.78);
      margin:-10px auto -18px!important;
    }
  }