/* Relay 2.0: dark jade look for sign-in, sign-up, password and privacy pages.
   Loaded after assets/css/style.css and only active on <body class="dark">,
   so the dashboard (which also uses style.css) is not affected. */
body.dark{
  --bg:#06130f; --surface:#0b1a16;
  --ink-900:#ecf3ef; --ink-700:#aec2b9; --ink-500:#74897f; --ink-300:#4c6159;
  --border:rgba(255,255,255,.08); --border-strong:rgba(255,255,255,.16);
  --teal-050:rgba(23,185,138,.12); --teal-400:#43d6a6; --teal-500:#17b98a; --teal-600:#43d6a6;
  --navy-900:#ffffff; --red-bg:rgba(207,91,82,.14); --amber-bg:rgba(227,162,59,.14);
  --shadow-card:none;
  background:#06130f;
  background-image:radial-gradient(1000px 600px at 85% -10%,rgba(23,185,138,.18),transparent 60%);
  background-attachment:fixed;
  color:var(--ink-900);
}
body.dark ::selection{background:#43d6a6;color:#04140e}

/* buttons and inputs */
body.dark .btn{border-radius:12px;padding:13px 18px;font-weight:600;transition:transform .15s ease,box-shadow .2s ease,background .2s,border-color .2s}
body.dark .btn-primary{background:#17b98a;color:#03170f;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
body.dark .btn-primary:hover{background:#43d6a6}
body.dark .btn-primary:disabled{opacity:.55;transform:none;cursor:not-allowed}
body.dark .btn-ghost{color:var(--ink-700);border-color:var(--border-strong)}
body.dark .field label{color:var(--ink-700);font-weight:600}
body.dark .field input,body.dark .field select,body.dark .field textarea{background:rgba(255,255,255,.04);color:var(--ink-900);border:1px solid var(--border-strong);border-radius:12px;padding:13px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s,background .15s}
body.dark .field input::placeholder{color:#58706a}
body.dark .field input:focus,body.dark .field input:focus-visible{outline:none;border-color:#43d6a6;box-shadow:0 0 0 4px rgba(23,185,138,.16);background:rgba(255,255,255,.06)}
body.dark input:-webkit-autofill{-webkit-text-fill-color:#eaf4f0;-webkit-box-shadow:0 0 0 40px #0d211b inset;caret-color:#eaf4f0}
body.dark .error-msg{color:#ffb4ad;border:1px solid rgba(207,91,82,.3);border-radius:12px}
body.dark .card{background:rgba(255,255,255,.035);border-color:var(--border);border-radius:16px}
body.dark a{transition:color .15s}

/* brand dot */
body.dark .dot{background:#43d6a6!important;box-shadow:0 0 0 5px rgba(67,214,166,.16)}

/* glass panel for every auth form */
body.dark .login-card,body.dark .auth-card,body.dark .signup-card{
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  border:1px solid var(--border);border-radius:24px;padding:36px 34px;
  box-shadow:0 40px 90px -40px rgba(0,0,0,.8);
}
body.dark .login-card{max-width:420px}
body.dark .auth-card{max-width:440px}
body.dark .signup-card{max-width:580px}
body.dark .login-card h2,body.dark .auth-card h2,body.dark .signup-card h2{font-size:27px!important;font-weight:650;letter-spacing:-.03em}

/* sign-in page split layout */
body.dark .login-main{background:transparent}
body.dark .login-aside{background:radial-gradient(120% 90% at 0% 100%,#15463a 0%,#0c2620 55%,#071a15 100%);position:relative;overflow:hidden;border-right:1px solid var(--border)}
body.dark .login-aside::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 30% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 60% at 30% 40%,#000 20%,transparent 75%)}
body.dark .login-aside::after{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-160px;border-radius:50%;background:radial-gradient(closest-side,rgba(23,185,138,.3),transparent);pointer-events:none}
body.dark .login-aside>*{position:relative;z-index:1}
body.dark .login-aside .pitch h1{font-size:44px;line-height:1.06;font-weight:650;letter-spacing:-.04em}
body.dark .login-aside .pitch em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;background:linear-gradient(100deg,#8fe8c8,#35c79a 45%,#d7f7ec);-webkit-background-clip:text;background-clip:text;color:transparent}
body.dark .login-aside .pitch p{color:#aec2b9;font-size:16px;line-height:1.7}
body.dark .home-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ink-500);margin-bottom:22px}
body.dark .home-link:hover{color:#fff}

/* sign-up plan picker */
body.dark .step-dots span{background:rgba(255,255,255,.1)}
body.dark .step-dots span.active{background:#43d6a6}
body.dark .plan-pick{border-color:var(--border-strong);border-radius:16px;background:rgba(255,255,255,.025)}
body.dark .plan-pick:hover{border-color:rgba(67,214,166,.45)}
body.dark .plan-pick.selected{border-color:#43d6a6;background:rgba(23,185,138,.1);box-shadow:0 0 0 4px rgba(23,185,138,.12)}

/* privacy page */
body.dark.legal .card{padding:40px 44px}
body.dark.legal a{color:#43d6a6}

@media (max-width:880px){
  body.dark .login-aside{display:none}
  body.dark .login-main{min-height:100vh;min-height:100dvh;padding:24px 16px}
}
@media (max-width:640px){
  body.dark .login-card,body.dark .auth-card,body.dark .signup-card{padding:28px 20px;border-radius:20px}
  body.dark.legal .card{padding:26px 20px}
}
body.dark .login-main{background:transparent}
body.dark .login-card .home-link{margin-bottom:22px}
body.dark .error-msg{background:rgba(207,91,82,.14)}
