/* Модуль регистрации главной: правила формы и её окон из прежней главной, в контейнере #ngsReg (переменные и классы
   прежней страницы не пересекаются с лендингом). Календарь flatpickr крепится к body — его правила глобальные. */
:root{--accent:#C6DB4E;--accent2:#DAE56E;--shadow:0 18px 70px rgba(0,0,0,.42)}   /* всплывашка toast() висит на body */
#ngsReg{--bg:#101216; --bg-2:#0b0c0f; --surface:#101115; --surface-2:#14161b; --surface-3:#191b21; --line:rgba(255,255,255,.075); --line-2:rgba(255,255,255,.13); --text:#f5f6f7; --text-2:#c7cad1; --muted:#8a909b; --faint:#5d636e; --accent:#C6DB4E; --accent2:#DAE56E; --accent-ink:#111409; --accent-soft:rgba(198,219,78,.105); /* приглушённая вторичная палитра — разбавляет лайм (пастельно, не кричаще) */ --c-amber:#d9a45e; --c-amber-soft:rgba(217,164,94,.12); --c-coral:#d98a7a; --c-coral-soft:rgba(217,138,122,.12); --c-lilac:#a99ad6; --c-lilac-soft:rgba(169,154,214,.14); --success:#4ade80; --warning:#fbbf24; --error:#f87171; --radius:18px; --radius-md:14px; --radius-sm:10px; --shadow:0 18px 70px rgba(0,0,0,.42); --shadow-soft:0 8px 30px rgba(0,0,0,.24); --container:min(1180px,92vw);}
#ngsReg{font:15px/1.62 Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;letter-spacing:-.012em;color:var(--text-2)}
#ngsReg *{box-sizing:border-box}
#ngsReg .reg-toggle{display:flex;gap:6px;padding:5px;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.18)}
#ngsReg .reg-toggle-btn{flex:1;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;transition:.16s ease}
#ngsReg .reg-toggle-btn:hover{color:var(--text-2)}
#ngsReg .reg-toggle-btn.is-active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#23261E}
#ngsReg .reg-fields[hidden]{display:none}
#ngsReg .reg-row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
@media (max-width:560px){#ngsReg .reg-row3{grid-template-columns:1fr}}
#ngsReg #reg-agreement-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(5,6,8,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .25s ease}
#ngsReg #reg-agreement-overlay.visible{opacity:1;pointer-events:auto}
#ngsReg .reg-agreement-card{width:min(640px,94vw);max-height:88vh;display:flex;flex-direction:column;border-radius:22px;background:var(--surface-2);border:1px solid var(--line-2);box-shadow:var(--shadow);overflow:hidden}
#ngsReg .reg-agreement-head{padding:20px 24px 12px}
#ngsReg .reg-agreement-title{font-size:18px;font-weight:650;color:var(--text);display:flex;align-items:center;gap:10px}
#ngsReg .reg-agreement-title i{color:var(--accent)}
#ngsReg .reg-agreement-body{overflow:auto;padding:4px 24px 8px;color:var(--muted);font-size:13.5px;line-height:1.6}
#ngsReg .reg-agreement-body h4{color:var(--text);font-size:14px;margin:16px 0 4px}
#ngsReg .reg-agreement-body p{margin:0 0 8px}
#ngsReg .reg-agreement-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
#ngsReg .reg-agreement-body strong{color:var(--text-2)}
#ngsReg .reg-agreement-body ul{margin:0 0 8px;padding-left:20px}
#ngsReg .reg-agreement-body li{margin:0 0 5px}
#ngsReg .reg-agreement-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 24px 20px;border-top:1px solid var(--line)}
#ngsReg .reg-agreement-hint{margin-right:auto;font-size:12px;color:var(--faint)}
#ngsReg #reg-agreement-agree[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}
#ngsReg .reg-agreement-consents{display:flex;flex-direction:column;gap:9px;padding:14px 24px 4px;border-top:1px solid var(--line)}
#ngsReg .reg-consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--muted);line-height:1.55;cursor:pointer;text-transform:none;font-weight:400;letter-spacing:normal}
#ngsReg .reg-consent input{margin-top:2px;flex:0 0 auto;width:16px;height:16px;accent-color:var(--accent);cursor:pointer}
#ngsReg .reg-consent a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-transform:none;font-weight:500;letter-spacing:normal}
#ngsReg #reg-legal-viewer{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(5,6,8,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#ngsReg #reg-legal-viewer.visible{display:flex}
#ngsReg #reg-legal-viewer .reg-agreement-actions{justify-content:flex-end}
#ngsReg #register input.flatpickr-input{cursor:pointer}
.flatpickr-calendar{z-index:40;background:#16171c;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.6);color:#e9edf3}
.flatpickr-calendar.arrowTop:before{border-bottom-color:rgba(255,255,255,.12)}
.flatpickr-calendar.arrowTop:after{border-bottom-color:#16171c}
.flatpickr-calendar.arrowBottom:before{border-top-color:rgba(255,255,255,.12)}
.flatpickr-calendar.arrowBottom:after{border-top-color:#16171c}
.flatpickr-months,.flatpickr-month,.flatpickr-current-month,.flatpickr-weekdays,.flatpickr-weekdaycontainer{background:transparent;color:#e9edf3}
.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year{color:#e9edf3;font-weight:600}
.flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background:#16171c;color:#e9edf3}
.flatpickr-weekday{color:#9aa3b2}
.flatpickr-day{color:#cfd6e2}
.flatpickr-day:hover,.flatpickr-day:focus{background:rgba(255,255,255,.08);border-color:transparent}
.flatpickr-day.today{border-color:rgba(198,219,78,.6)}
.flatpickr-day.selected,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.endRange{background:#c6db4e;border-color:#c6db4e;color:#23261E}
.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{color:#5b6270;background:transparent}
.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{fill:#cfd6e2}
.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#c6db4e}
#ngsReg a{color:inherit;text-decoration:none}
#ngsReg h1,#ngsReg h2,#ngsReg h3,#ngsReg p{margin-top:0}
#ngsReg h1,#ngsReg h2,#ngsReg h3{color:var(--text)}
#ngsReg .container{width:var(--container);margin:0 auto;position:relative;z-index:1}
#ngsReg .btn{border:1px solid var(--line-2);background:rgba(255,255,255,.045);color:var(--text);height:40px;padding:0 15px;border-radius:999px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;transition:transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease;white-space:nowrap}
#ngsReg .btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.18)}
#ngsReg .btn:focus-visible,#ngsReg .input:focus-visible,#ngsReg .pass-gen:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(198,219,78,.18)}
#ngsReg .btn-primary{background:var(--accent);border-color:transparent;color:var(--accent-ink);box-shadow:0 0 0 1px rgba(255,255,255,.08) inset,0 12px 28px rgba(198,219,78,.12)}
#ngsReg .btn-primary:hover{background:var(--accent2);border-color:transparent;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 18px 40px rgba(198,219,78,.18)}
#ngsReg .btn-ghost{background:transparent;border-color:var(--line);color:var(--text-2)}
#ngsReg .shine::before{content:none!important}
#ngsReg .kicker{font-size:12px;text-transform:uppercase;letter-spacing:.105em;font-weight:700;color:var(--accent);margin-bottom:14px}
#ngsReg .t-dim{color:var(--muted)}
#ngsReg .section-head{max-width:720px;margin:0 auto 40px;text-align:center}
#ngsReg .h2{font-size:clamp(27px,3.2vw,42px);line-height:1.08;letter-spacing:-.03em;font-weight:640;margin:0 0 14px}
#ngsReg .lead{font-size:16px;color:var(--muted);max-width:680px;margin:0 auto;line-height:1.72}
#ngsReg .tiny{color:var(--faint);font-size:12.5px}
#ngsReg .register{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}
#ngsReg .form{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.026);box-shadow:var(--shadow-soft)}
#ngsReg .form{display:flex;flex-direction:column}
#ngsReg .form{padding:30px}
#ngsReg .form-foot{margin-top:auto;padding-top:20px;color:var(--faint);font-size:12.5px;line-height:1.5}
#ngsReg .form-foot strong{color:var(--text-2)}
#ngsReg label{display:block;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.075em;margin:0 0 8px}
#ngsReg .input{width:100%;height:44px;border:1px solid var(--line-2);border-radius:12px;background:rgba(0,0,0,.19);color:var(--text);padding:0 13px;font:inherit;font-size:14px;outline:0;transition:.16s ease}
#ngsReg .input::placeholder{color:var(--faint)}
#ngsReg .input:focus{border-color:rgba(198,219,78,.55);box-shadow:0 0 0 4px rgba(198,219,78,.12)}
#ngsReg .email-row,#ngsReg .pass-row{display:flex;gap:10px;align-items:center}
#ngsReg .email-row .input,#ngsReg .pass-row .input{flex:1}
#ngsReg .email-domain{white-space:nowrap;color:var(--muted);font-size:13px}
#ngsReg .pass-gen{width:44px;height:44px;border:1px solid var(--line-2);background:rgba(255,255,255,.045);color:var(--muted);border-radius:12px;cursor:pointer}
#ngsReg .pass-gen:hover{color:var(--accent);background:rgba(255,255,255,.07)}
#ngsReg #emailError,#ngsReg #passError{min-height:20px;margin-top:7px;color:var(--faint);font-size:12.5px}
#ngsReg #emailError.ok,#ngsReg #passError.ok{color:var(--success)}
#ngsReg #emailError.error,#ngsReg #passError.error{color:var(--error)}
#ngsReg #org-create-overlay,#ngsReg #org-success-overlay{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;background:rgba(5,6,8,.64);backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .25s ease}
#ngsReg #org-create-overlay.visible,#ngsReg #org-success-overlay.visible{opacity:1;pointer-events:auto}
#ngsReg .org-create-inner{text-align:center;display:grid;place-items:center;gap:9px}
#ngsReg .org-create-logo{width:72px;height:72px}
#ngsReg .org-create-title{color:var(--text);font-weight:650}
#ngsReg .org-create-sub{color:var(--muted);font-size:14px}
#ngsReg .org-success-card{width:min(500px,92vw);padding:24px;border-radius:22px;background:var(--surface-2);border:1px solid var(--line-2);box-shadow:var(--shadow)}
#ngsReg .org-success-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}
#ngsReg .org-success-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(198,219,78,.1);border:1px solid rgba(198,219,78,.2);color:var(--accent)}
#ngsReg .org-success-title{font-size:18px;font-weight:650;color:var(--text)}
#ngsReg .org-success-text{font-size:14px;color:var(--muted);margin:0 0 18px}
#ngsReg .org-success-field{margin-bottom:13px}
#ngsReg .org-success-field label{font-size:11px}
#ngsReg .org-success-value-box{display:flex;align-items:center;gap:8px}
#ngsReg .org-success-value{flex:1;min-height:38px;padding:9px 11px;border-radius:12px;background:rgba(0,0,0,.18);border:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ngsReg .org-success-copy{border:1px solid var(--line-2);border-radius:12px;width:38px;height:38px;display:grid;place-items:center;background:rgba(255,255,255,.04);color:var(--muted);cursor:pointer}
#ngsReg .org-success-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px}
#ngsReg .org-success-note{text-align:right;font-size:11.5px;color:var(--faint);margin-top:12px}
@media (max-width:1050px){#ngsReg .register{grid-template-columns:1fr}}
@media (max-width:680px){#ngsReg .email-row{align-items:stretch;flex-direction:column}#ngsReg .email-domain{padding-left:2px}#ngsReg .btn{width:auto}}
/* окно формы поверх страницы */
#ngsReg .ngsr-modal{position:fixed;inset:0;z-index:9500;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:rgba(9,10,9,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#ngsReg .ngsr-modal[hidden]{display:none}
#ngsReg #register{min-height:100%;display:flex;align-items:center;padding:56px 0 40px}
#ngsReg #register>.container{width:min(600px,92vw);margin:0 auto}
#ngsReg #register .register{grid-template-columns:1fr}
#ngsReg #register .section-head{text-align:center;margin-bottom:18px}
#ngsReg .ngsr-x{position:fixed;top:max(14px,env(safe-area-inset-top));right:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:rgba(16,18,16,.9);color:#eef0ea;font:400 22px/1 system-ui,sans-serif;cursor:pointer}
#ngsReg .ngsr-x:focus-visible{outline:2px solid #c6db4e;outline-offset:2px}
html.reg-open,html.reg-open body{overflow:hidden}
/* у лендинга свой .btn (шрифт, межстрочный): кнопкам формы — как на прежней главной */
#ngsReg button.btn{font-family:revert;line-height:revert}
#ngsReg a.btn{font-family:inherit;line-height:inherit}
/* на телефоне ряд почты в колонку, и flex:1 схлопывал поле до 19 px (так было и на прежней главной) */
@media (max-width:680px){#ngsReg .email-row .input{flex:none}}
