/* Registration retains every field, validation hook and success state. */
:root { --bg:#0b141d; --panel:#13212df2; --panel-2:#1a2c39; --text:#e8edf0; --muted:#b0c0cd; --gold:#d9b779; --gold-light:#f0d9a7; --gold-dark:#9d7947; --line:rgba(217,183,121,.26); color-scheme:dark; }
body { background:linear-gradient(90deg,#0b1620e6 12%,#0b1620b3 55%,#0b1620ad),url('visual/v2.20.113/chantra-hero.webp') center/cover fixed; font-size:15px; line-height:1.7; }
body::before,.ambient,.card-glow { display:none; }
:focus-visible { outline:2px solid var(--gold-light); outline-offset:4px; }
.page-shell { width:min(1440px,100%); }
.topbar { min-height:86px; padding:18px 5%; gap:22px; border-color:#a9c4d125; background:#0a141d8c; }
.brand-mark { color:var(--gold-light); border-color:var(--gold); border-radius:4px; background:#23323d; }
.brand strong { color:#eee1c7; font-size:19px; }
.top-actions { display:flex; flex-wrap:wrap; gap:20px; align-items:center; }
.top-actions a { color:#cbd6df; font-size:12px; }
.content { grid-template-columns:minmax(0,1fr) minmax(360px,500px); gap:65px; padding:70px 5%; align-items:center; }
.hero { padding:0; }
.eyebrow { font-size:10px; color:var(--gold); letter-spacing:.19em; }
.hero h1 { font-size:clamp(38px,4.9vw,70px); line-height:1.18; color:#f2e5cb; margin:25px 0; }
.hero h1 em { color:#d9b779; }
.hero>p { color:#c1ccd4; font-size:16px; line-height:1.8; }
.features { gap:22px; margin-top:37px; }
.features strong { font-size:14px; color:#e1e7eb; }
.features small { font-size:12px; color:#b7c5d0; }
.feature-icon { color:var(--gold); background:#1e303d9c; border-color:var(--line); }
.registration-card { padding:36px; border:1px solid var(--line); border-radius:8px; background:#121f2aef; box-shadow:0 25px 75px #0006; backdrop-filter:blur(12px); }
.registration-card::before,.registration-card::after { display:none; }
.card-heading { padding-bottom:25px; border-color:#b5cbd421; }
.card-heading h2 { color:#efe4cf; font-size:25px; }
.card-heading p { color:var(--gold); font-size:10px; }
.step { color:var(--gold-light); border-color:var(--line); background:#26323a; }
.field>span { color:#cbd6de; font-size:13px; }
.field small { color:#a8bac8; font-size:11px; line-height:1.7; }
.field input { min-height:49px; border:1px solid #425765; border-radius:4px; background:#0a1620; color:#e5ecf1; font-size:15px; }
.field input:focus { border-color:var(--gold); box-shadow:0 0 0 3px #d9b77919; }
.field input::placeholder { color:#8fa4b5; }
.primary-button { min-height:50px; border:1px solid var(--gold); border-radius:4px; background:linear-gradient(110deg,#e6c88e,#be965b); color:#17222a; font:700 14px Inter,Arial,sans-serif; box-shadow:0 6px 20px #0002; }
.primary-button:hover { background:#edd5a7; }
.secondary-button,.button-small { border-radius:4px; border-color:#566875; background:#1d2c38; color:#dbe4eb; font-size:12px; }
.alert { border-radius:5px; font-size:13px; line-height:1.7; }
.terms,.checkbox-row,.form-footer { color:#b4c4d0; font-size:12px; }
.language-current { background:#142430; border-radius:4px; border-color:var(--line); }
.language-menu { background:#162734; border-color:var(--line); border-radius:5px; }
.footer { color:#a6b7c4; font-size:12px; }
@media(max-width:1000px) { .content { grid-template-columns:1fr; gap:38px; padding:40px 6%; } .hero { max-width:720px; } .hero h1 { font-size:48px; } .registration-card { width:min(600px,100%); justify-self:center; } .features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; } }
@media(max-width:600px) { body { background-attachment:scroll; } .topbar { flex-wrap:wrap; padding:17px 6%; gap:14px; } .brand strong { font-size:17px; } .top-actions { width:100%; justify-content:space-between; gap:12px; } .content { padding:35px 5%; gap:30px; } .hero h1 { font-size:40px; } .hero>p { font-size:14px; } .features { grid-template-columns:1fr; gap:15px; margin-top:25px; } .registration-card { padding:25px 21px; } .card-heading h2 { font-size:23px; } .field input { font-size:16px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; } }
.input-wrap { background:#0a1620; border:1px solid #425765; border-radius:4px; }
.input-wrap:focus-within { border-color:var(--gold); box-shadow:0 0 0 3px #d9b77919; }
.field .input-wrap input { background:transparent; border:0; box-shadow:none; }
.input-icon { color:#d2b77e; }
.password-toggle { color:#bbc9d3; font-size:12px; }
@media(max-width:600px) {
 .registration-language-switcher .language-menu { left:0; right:auto; max-width:calc(100vw - 40px); }
}
