/* NYAMBAI STEP 04.2 — login page only. Brand-book palette. */
:root { --ny-violet:#6C3BFF; --ny-purple:#8B56FC; --ny-lime:#84E635; --ny-ink:#0F172A; --ny-muted:#667085; }
body:has(.ny-auth-shell) { background:#fff; color:var(--ny-ink); font-family:'Inter',Arial,sans-serif; }
.ny-auth-shell { min-height:100vh; display:grid; grid-template-columns:minmax(0,1fr) minmax(440px,0.86fr); }
.ny-auth-panel--intro { min-height:100vh; background:radial-gradient(circle at 92% 35%,rgba(108,59,255,.32),transparent 35%),linear-gradient(145deg,#11142B,#211342 86%); padding:45px clamp(30px,6vw,100px); display:flex; flex-direction:column; color:#fff; overflow:hidden; }
.ny-auth-logo { display:inline-flex;align-items:center;gap:12px;align-self:flex-start;color:#fff!important; }
.ny-auth-logo img,.ny-auth-mobile-brand img { object-fit:contain; }
.ny-auth-logo strong,.ny-auth-mobile-brand strong { display:block;font-family:'Plus Jakarta Sans',Inter,sans-serif;font-size:25px;font-weight:800;letter-spacing:-.06em;line-height:1.1; }
.ny-auth-logo small { display:block;font-size:10px;letter-spacing:.015em;color:#d3c6f6;margin-top:4px; }
.ny-auth-intro-text { margin:auto 0;max-width:610px; }
.ny-auth-kicker {font-size:11px;font-weight:800;letter-spacing:.13em;color:#ccb5ff;display:inline-flex;gap:10px;align-items:center;}
.ny-auth-dot {height:8px;width:8px;background:var(--ny-lime);border-radius:50%;box-shadow:0 0 0 5px rgba(132,230,53,.14);}
.ny-auth-intro-text h1 {font-family:'Plus Jakarta Sans',Inter,sans-serif;font-size:clamp(36px,4.1vw,64px);font-weight:800;line-height:1.17;letter-spacing:-.055em;margin:30px 0 22px;}
.ny-auth-intro-text h1 em {font-style:normal;color:#b48aff;}
.ny-auth-intro-text p {font-size:17px;line-height:1.8;color:#d7d0e9;max-width:490px;}
.ny-auth-feature {display:inline-flex;align-items:center;gap:12px;margin-top:32px;background:rgba(255,255,255,.08);border:1px solid rgba(132,230,53,.3);border-radius:14px;padding:14px 18px;font-size:13px;color:#e6fbd4;}
.ny-auth-feature i {color:var(--ny-lime);}
.ny-auth-slogan {letter-spacing:.24em;font-weight:700;color:#b8afd7;font-size:10px;}
.ny-auth-panel--form {display:flex;justify-content:center;align-items:center;padding:54px 25px;min-height:100vh;background:linear-gradient(170deg,#fff 55%,#f6f3ff);}
.ny-auth-form-inner {width:100%;max-width:420px;}
.ny-auth-mobile-brand {display:none;align-items:center;gap:10px;margin-bottom:35px;color:var(--ny-ink);}
.ny-auth-eyebrow {font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--ny-violet);margin-bottom:8px;}
.ny-auth-form-inner h2 {font-family:'Plus Jakarta Sans',Inter,sans-serif;font-size:36px;font-weight:800;letter-spacing:-.05em;margin:0 0 10px;}
.ny-auth-subtitle {font-size:14px;color:var(--ny-muted);margin-bottom:30px;}
.ny-auth-tabs {display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;background:#f1eff7;border-radius:14px;margin-bottom:28px;}
.ny-auth-tabs a {display:block;text-align:center;padding:12px 8px;font-weight:700;font-size:13px;color:#6d7183;border-radius:10px;}
.ny-auth-tabs a.is-active {color:var(--ny-violet);background:#fff;box-shadow:0 2px 10px rgba(25,16,74,.08);}
.ny-auth-field {margin-bottom:20px;}
.ny-auth-field label,.ny-auth-verify label {display:block;font-size:13px;font-weight:700;margin-bottom:9px;}
.ny-auth-field .form-control,.ny-auth-verify .form-control {background:#fff!important;border:1px solid #e1e1ed!important;box-shadow:none!important;border-radius:12px!important;min-height:52px;padding:12px 15px;font-size:14px;}
.ny-auth-field .form-control:focus,.ny-auth-verify .form-control:focus {border-color:var(--ny-violet)!important;box-shadow:0 0 0 3px rgba(108,59,255,.12)!important;}
.ny-auth-submit {margin-top:5px;border:0;width:100%;background:var(--ny-violet);color:white;padding:15px 20px;border-radius:12px;font-size:14px;font-weight:800;display:flex;gap:10px;align-items:center;justify-content:center;cursor:pointer;}
.ny-auth-submit:hover,.ny-auth-submit:focus-visible {background:#592cda;color:#fff;}
.ny-auth-switch {border:0;background:none;display:block;margin:22px auto 0;color:var(--ny-violet);font-size:13px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
.ny-auth-verify {padding-top:6px;}
.ny-auth-verify h3 {font-size:18px;font-weight:800;}
.ny-auth-verify p {font-size:13px;line-height:1.6;color:var(--ny-muted);}
.ny-auth-recaptcha {display:flex;justify-content:center;min-height:72px;margin:18px 0;}
.ny-auth-verify .form-control {margin-bottom:16px;}
.ny-auth-footnote {margin:26px 0 12px;color:#81859a;text-align:center;font-size:11px;}
.ny-auth-footnote i {color:#64a629;}
.ny-auth-return {text-align:center;font-size:13px;margin-top:12px;}
.ny-auth-return a {color:#6e7385;}
.ny-auth-return a:hover {color:var(--ny-violet);}
@media(max-width:960px) {.ny-auth-shell {grid-template-columns:1fr 1fr;}.ny-auth-panel--intro {padding:38px 28px;}}
@media(max-width:760px) {.ny-auth-shell {display:block;}.ny-auth-panel--intro {display:none;}.ny-auth-panel--form {padding:35px 22px;min-height:100dvh;}.ny-auth-mobile-brand {display:flex;}.ny-auth-form-inner h2 {font-size:30px;}}
