/* Otto Trade — auth theme (login / register / forgot / reset). Loaded last; overrides base. */
:root{ --ot-felt:#0b3d2e; --ot-ink:#080b09; --ot-panel:#101a14; --ot-line:rgba(255,255,255,.10);
  --ot-gold:#d9a441; --ot-gold2:#e6c976; --ot-ivory:#f4efe4; --ot-dim:#9fb0a6; }

.auth-shell{min-height:100vh;display:grid!important;grid-template-columns:1.05fr .95fr!important;background:var(--ot-ink)!important}

/* ---- left brand panel ---- */
.auth-side{position:relative;overflow:hidden;display:flex!important;flex-direction:column;justify-content:space-between;
  padding:48px 54px!important;border-right:1px solid var(--ot-line);
  background:radial-gradient(125% 95% at 12% 8%,#0f4c39 0%,#0b3d2e 38%,#082a20 70%,#060f0b 100%)!important}
.auth-side::before{content:"";position:absolute;right:-150px;bottom:-150px;width:480px;height:480px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,rgba(233,201,118,.22),rgba(217,164,65,.06) 45%,transparent 68%);pointer-events:none}
.auth-side::after{content:"8";position:absolute;right:32px;bottom:6px;font-family:'Sora',system-ui,sans-serif;font-weight:800;
  font-size:240px;line-height:1;color:rgba(255,255,255,.035);pointer-events:none}
.auth-brand{display:flex;align-items:center;gap:12px;position:relative;z-index:2;text-decoration:none}
.auth-brand img{width:auto!important;height:42px!important}
.brand-text{font-family:'Sora',system-ui,sans-serif!important;font-weight:700!important;font-size:20px!important;color:var(--ot-ivory)!important;letter-spacing:-.01em}
.pitch{position:relative;z-index:2;margin:auto 0}
.pitch h2{font-family:'Sora',system-ui,sans-serif!important;font-weight:800!important;font-size:clamp(30px,3.6vw,46px)!important;
  line-height:1.05!important;letter-spacing:-.02em;color:var(--ot-ivory)!important;margin:0 0 18px!important}
.pitch h2 span{background:linear-gradient(90deg,var(--ot-gold2),var(--ot-gold))!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
.pitch p{color:#c7d3cb!important;font-size:16.5px!important;line-height:1.6!important;max-width:32ch;margin:0!important}
.trust-row{position:relative;z-index:2;display:flex!important;flex-direction:column;gap:14px}
.trust-row .it{display:flex;align-items:center;gap:12px;color:#d7e0d9!important;font-size:14.5px;font-weight:500}
.trust-row .it svg{width:20px!important;height:20px!important;flex:none;color:#0c1410;
  background:linear-gradient(180deg,var(--ot-gold2),var(--ot-gold));border-radius:50%;padding:4px;box-sizing:border-box}

/* ---- right form panel ---- */
.auth-form-side{display:flex!important;align-items:center;justify-content:center;padding:40px 24px!important;background:var(--ot-ink)!important}
.auth-card{width:100%;max-width:412px;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}
.crumb{font-size:12.5px;color:var(--ot-dim);margin-bottom:22px;letter-spacing:.01em}
.crumb a{color:var(--ot-gold2);text-decoration:none}
.auth-card h1{font-family:'Sora',system-ui,sans-serif!important;font-weight:700!important;font-size:clamp(26px,3.2vw,32px)!important;
  letter-spacing:-.02em;color:var(--ot-ivory)!important;margin:0 0 8px!important}
.auth-card .sub{color:var(--ot-dim)!important;font-size:15px!important;line-height:1.55;margin:0 0 28px!important}
.auth-card form{display:flex;flex-direction:column;gap:16px}
.auth-card .field{display:flex;flex-direction:column;gap:8px}
.auth-card .field label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ot-dim)}
.auth-card .field input,.auth-card .field select{width:100%;background:#0c1510!important;border:1px solid var(--ot-line)!important;
  border-radius:11px!important;padding:14px 15px!important;color:var(--ot-ivory)!important;font-size:15px!important;font-family:'Inter',system-ui,sans-serif}
.auth-card .field input::placeholder{color:#5f6f66}
.auth-card .field input:focus,.auth-card .field select:focus{outline:none;border-color:var(--ot-gold)!important;box-shadow:0 0 0 3px rgba(217,164,65,.20)!important}
.between{display:flex;align-items:center;justify-content:space-between;margin:2px 0 4px;font-size:13.5px}
.between .check{display:flex;align-items:center;gap:8px;color:var(--ot-dim);cursor:pointer}
.between .check input{accent-color:var(--ot-gold);width:15px;height:15px}
.between a{color:var(--ot-gold2);text-decoration:none}
.between a:hover{text-decoration:underline}
.auth-card .btn-accent,.auth-card .btn.btn-accent,.auth-card button[type=submit]{width:100%!important;justify-content:center;margin-top:6px;
  background:linear-gradient(180deg,var(--ot-gold2),var(--ot-gold))!important;color:#241a06!important;border:none!important;
  font-family:'Sora',system-ui,sans-serif!important;font-weight:700!important;font-size:16px!important;padding:15px 24px!important;
  border-radius:11px!important;cursor:pointer;transition:transform .15s,box-shadow .2s,filter .15s}
.auth-card .btn-accent:hover,.auth-card button[type=submit]:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 14px 30px rgba(217,164,65,.28)}
.auth-divider{margin-top:24px;text-align:center;color:var(--ot-dim);font-size:14px}
.auth-divider a{color:var(--ot-gold2);text-decoration:none;font-weight:600}
.auth-divider a:hover{text-decoration:underline}
.form-error{font-family:'Inter',system-ui,sans-serif;font-size:14px}

/* ---- responsive ---- */
@media(max-width:900px){
  .auth-shell{grid-template-columns:1fr!important}
  .auth-side{padding:26px 24px!important;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;min-height:auto}
  .auth-side::after{font-size:120px;right:8px;bottom:-14px}
  .auth-side::before{width:220px;height:220px;right:-90px;bottom:-90px}
  .pitch,.trust-row{display:none!important}
  .auth-form-side{padding:32px 20px 56px!important}
}