/* =====================================================================
   Nanoq Intranet / Umimmak – sign-up, new members and the member's own account (1.27.0)
   ===================================================================== */

/* ---------- Sign-up page (same frame as the login page) ---------- */
#Nanoq-login-page.nq-reg-page { min-height: 100vh; min-height: 100dvh; }
#Nanoq-login-page.nq-reg-page:not(.nanoq-login-scene) #Nanoq-login-page-form { padding: 24px 16px; }
#Nanoq-login-page-form .card.nq-reg-card { width: min(520px, calc(100vw - 32px)); max-width: 520px; }
body.nanoq-arctic #Nanoq-login-page .card.nq-reg-card { width: min(520px, calc(100vw - 32px)); }
.nq-reg-title { font-size: 1.45rem; text-align: center; margin: 0 0 0.4rem; }
.nq-reg-lead { text-align: center; color: var(--nq-muted, #7a8794); margin-bottom: 1.2rem; }
.nq-reg-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 0.75rem; }
@media (max-width: 479.98px) { .nq-reg-row { grid-template-columns: 1fr; } }
.nq-reg-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.nq-reg-fields-in { border: 0; padding: 0; margin: 0 0 0.5rem; }
.nq-reg-fields-in legend { font-size: 0.95rem; font-weight: 700; margin-bottom: 0.5rem; }
.nq-reg-fields-in .Nanoq-pf-checks label { display: inline-flex; align-items: center; gap: 0.3rem; margin-right: 0.8rem !important; }
.nq-reg-terms { border: 1px solid var(--nq-frost, #e3e6ea); border-radius: 10px; padding: 0.5rem 0.75rem; margin-bottom: 0.6rem; }
.nq-reg-terms summary { cursor: pointer; font-weight: 700; }
.nq-reg-terms-text { max-height: 220px; overflow-y: auto; margin-top: 0.5rem; font-size: 0.9rem; color: var(--nq-text, #3e4c5a); }
.nq-reg-msg { text-align: center; }
.nq-reg-msg > i { font-size: 3rem; color: var(--nq-accent, var(--nanoq-primary, #1f74ad)); }
.nq-reg-msg h1 { font-size: 1.4rem; margin: 0.5rem 0; }
.nq-reg-msg p { color: var(--nq-text, #3e4c5a); margin-bottom: 1.2rem; }
.nq-reg-login-link { text-align: center; font-size: 0.95rem; }
#Nanoq-login-page .nq-reg-login-link { margin-top: 1rem; margin-bottom: 0; }

/* ---------- New members (?page=membership) ---------- */
.nq-reg-apps { display: flex; flex-direction: column; gap: 1rem; }
.nq-reg-app { background: var(--nq-surface, #fff); border: 1px solid var(--nq-frost, #e3e6ea); border-radius: var(--nq-r-card, 16px); padding: 1rem 1.1rem; transition: opacity 0.25s; min-width: 0; }
.nq-reg-app.is-gone { opacity: 0; }
.nq-reg-app-head { display: flex; gap: 0.75rem; align-items: center; min-width: 0; }
.nq-reg-app-head > div { min-width: 0; overflow-wrap: anywhere; }
.nq-reg-app-head img { width: 48px; height: 48px; border-radius: 50%; flex: none; }
.nq-reg-answer, .nq-reg-fields { margin-top: 0.75rem; background: var(--nq-ice, #f2f4f7); border-radius: 12px; padding: 0.7rem 0.9rem; color: var(--nq-text, #3e4c5a); overflow-wrap: anywhere; }
.nq-reg-q { font-weight: 700; color: var(--nq-ink, #22303e); margin-bottom: 0.25rem; }
.nq-reg-app-btns { display: flex; gap: 0.5rem; flex-wrap: wrap; align-items: center; margin-top: 0.9rem; }
.nq-reg-tell { display: inline-flex; align-items: center; gap: 0.35rem; color: var(--nq-muted, #7a8794); font-size: 0.875rem; }
.nq-reg-invite-form textarea { min-height: 5rem; }
.nq-reg-invites { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.6rem; }
.nq-reg-invites li { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; padding-bottom: 0.6rem; border-bottom: 1px solid var(--nq-frost, #e3e6ea); }
.nq-reg-invites li > div:first-child { flex: 1; min-width: 12rem; overflow-wrap: anywhere; }
.nq-reg-invite-btns { display: flex; gap: 0.4rem; }

/* ---------- Your data and your account (Settings) ---------- */
.nq-account-row { display: flex; gap: 1rem; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.nq-account-row > div { flex: 1; min-width: 14rem; }
.nq-account-row .btn { white-space: nowrap; }
.nq-account-delete { margin-top: 1rem; max-width: 26rem; }
