/* Registration, the restricted station preview and platform review. */
.registration-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0 0 1.5rem;padding:1.2rem 1.4rem;border:1px solid var(--home-line,#dae4e7);border-radius:1rem;background:var(--surface,#fff)}.registration-progress li{display:flex;align-items:center;gap:.7rem;min-width:0;font-size:.77rem;font-weight:600;line-height:1.45;color:var(--home-muted,#597080)}.registration-progress-number{display:grid;place-items:center;flex:none;width:1.9rem;height:1.9rem;border:1px solid var(--border-strong,#c6d5e5);border-radius:50%;background:var(--surface-alt,#f5f9fd);font-size:.75rem;font-weight:750}.registration-progress-number svg{width:1rem;height:1rem}.registration-progress .is-done .registration-progress-number{border-color:#bdd7c7;background:#eaf5ee;color:#2a6449}.registration-progress .is-current{color:var(--ink,#24374b)}.registration-progress .is-current .registration-progress-number{border-color:var(--accent-strong,#1d427b);background:var(--accent-strong,#1d427b);color:#fff}.registration-progress small{display:block;margin-top:.2rem;color:var(--danger,#9f1239);font-size:.72rem}
.registration-body .auth-card{max-width:38rem}.registration-form{gap:1.4rem}.registration-fieldset{display:grid;gap:1rem;min-width:0;border:0}.registration-fieldset>legend{margin-bottom:.85rem;font-size:.875rem;font-weight:750;color:var(--ink,#24374b)}.registration-fieldset+.registration-fieldset{padding-top:1.25rem;border-top:1px solid var(--border,#dbe5f0)}.registration-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.registration-full{grid-column:1/-1;min-width:0}.registration-fields select{width:100%;font:inherit}.registration-explainer{display:flex;gap:.7rem;align-items:flex-start;padding:.9rem;border:1px solid var(--accent-border,#bad4eb);border-radius:.85rem;background:var(--accent-soft,#eaf3fb);color:var(--accent-strong,#1d427b)}.registration-explainer>span{flex:none;padding-top:.1rem}.registration-explainer svg{width:1.2rem;height:1.2rem}.registration-explainer p{font-size:.8125rem;line-height:1.55}

.registration-lobby{--home-ink:#18374b;--home-muted:#597080;--home-line:#dae4e7;--home-paper:#f7f9f8;background:var(--home-paper);color:var(--home-ink)}.registration-lobby *,.registration-lobby *::before,.registration-lobby *::after{box-sizing:border-box}.registration-lobby h1,.registration-lobby h2,.registration-lobby h3,.registration-lobby p,.registration-lobby form{margin:0}.registration-topbar{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;min-height:5.5rem;padding:1rem max(2rem,calc((100vw - 1220px)/2));border-bottom:1px solid var(--home-line);background:var(--surface,#fff)}.registration-topbar .auth-lockup{color:var(--home-ink)}.registration-topbar .auth-lockup-text small{color:var(--home-muted)}.registration-identity{display:flex;align-items:center;gap:1.25rem;min-width:0}.registration-identity>span{overflow-wrap:anywhere;font-size:.8rem;color:var(--home-muted)}.registration-signout{min-height:2.75rem;padding:.55rem .8rem;border:1px solid var(--home-line);border-radius:.65rem;background:transparent;color:var(--home-ink);font:inherit;font-size:.8rem;font-weight:650;white-space:nowrap;cursor:pointer}.registration-signout:hover{background:var(--accent-soft,#eaf3fb)}.registration-main{max-width:1284px;margin:0 auto;padding:2.25rem 2rem 3rem}.registration-main:focus{outline:none}.registration-context{font-size:.75rem;font-weight:650;color:var(--home-muted);overflow-wrap:anywhere}.registration-welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1.25rem 0 1.75rem}.registration-welcome h1{font-size:clamp(1.7rem,2.7vw,2.4rem);line-height:1.2;letter-spacing:-.035em;font-weight:650}.registration-welcome .auth-eyebrow{margin-bottom:.5rem}.registration-welcome>div>p:last-child{max-width:45rem;margin-top:.8rem;font-size:.9rem;line-height:1.75;color:var(--home-muted)}.registration-badge{display:inline-flex;flex:none;align-items:center;min-height:1.8rem;padding:.25rem .65rem;border:1px solid var(--border,#dbe5f0);border-radius:999px;background:var(--surface-alt,#f5f9fd);color:var(--text-secondary,#4d5d70);font-size:.75rem;line-height:1.3;font-weight:650;white-space:nowrap}.registration-badge--pending{border-color:#e5d5ae;background:#fcf7e9;color:#785b20}.registration-badge--approved{border-color:#bcd6c7;background:#eaf5ee;color:#2a6449}.registration-badge--rejected{border-color:#edcad1;background:#fff0f2;color:#8a3447}.registration-checkpoint{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2.25rem;padding:1.5rem;border:1px solid var(--home-line);border-radius:1.1rem;background:var(--surface,#fff);box-shadow:0 4px 18px -10px #17354b20}.registration-checkpoint-icon{display:grid;place-items:center;flex:none;width:2.65rem;height:2.65rem;border-radius:.8rem;background:var(--accent-soft,#eaf3fb);color:var(--accent-strong,#1d427b)}.registration-checkpoint-icon svg{width:1.35rem;height:1.35rem}.registration-checkpoint-copy{min-width:0;flex:1}.registration-checkpoint h2{font-size:1.05rem;font-weight:700;letter-spacing:-.015em}.registration-checkpoint-copy>p{max-width:54rem;margin-top:.45rem;font-size:.85rem;line-height:1.7;color:var(--home-muted);overflow-wrap:anywhere}.registration-checkpoint .auth-link{font-size:.82rem}.registration-checkpoint .auth-button{margin-top:1rem}.registration-verification-form{display:flex;align-items:flex-end;gap:.8rem;max-width:47rem;margin-top:1.1rem!important}.registration-verification-form .auth-field{flex:1}.registration-verification-form .auth-button{margin-top:0;white-space:nowrap}.registration-inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem 1.5rem}.registration-inline-actions .auth-link-button{font-size:.82rem}.registration-stations .home-section-heading h2{font-size:.95rem}.registration-stations .home-section-heading>span{font-size:.65rem}.registration-station{opacity:1}.registration-station:hover,.registration-station:active{transform:none;box-shadow:none;border-color:var(--world-border)}.registration-station:hover .world-visual{transform:none}.registration-station .world-card-bottom{min-height:3.5rem;font-size:.7rem}.registration-lock{width:1rem;height:1rem;flex:none;opacity:.8}.registration-stations-note{max-width:49rem;margin-top:1.1rem!important;font-size:.76rem;line-height:1.65;color:var(--home-muted)}

.registration-admin{max-width:1250px;margin:0 auto;color:var(--ink,#24374b)}.registration-back{display:inline-flex;align-items:center;min-height:2.75rem;font-size:.82rem;font-weight:650;color:var(--accent-strong,#1d427b);text-decoration:underline;text-underline-offset:.2em}.registration-admin-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:.5rem 0 1.6rem}.registration-admin-header h1{margin:.3rem 0 .5rem;font-size:clamp(1.6rem,3vw,2rem);line-height:1.2;font-weight:700;letter-spacing:-.03em}.registration-admin-header p{margin:0;font-size:.875rem;line-height:1.65;color:var(--text-secondary,#4d5d70)}.registration-admin-header .registration-kicker{font-size:.7rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-strong,#1d427b)}.registration-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--border,#dbe5f0);border-radius:1rem;background:var(--surface,#fff)}.registration-table{width:100%;border-collapse:collapse;font-size:.8rem;line-height:1.5;text-align:left}.registration-table th,.registration-table td{padding:1rem;vertical-align:middle;border-bottom:1px solid var(--border,#dbe5f0)}.registration-table th{font-size:.72rem;font-weight:700;color:var(--text-secondary,#4d5d70);background:var(--surface-alt,#f5f9fd);white-space:nowrap}.registration-table tr:last-child td{border-bottom:0}.registration-table td>strong,.registration-table td>span:not(.registration-badge){display:block}.registration-table td>strong{font-weight:650}.registration-table td>strong+span{margin-top:.2rem;color:var(--text-secondary,#4d5d70)}.registration-table td:first-child,.registration-table td:nth-child(2){min-width:11rem;overflow-wrap:anywhere}.registration-table td:nth-child(5){white-space:nowrap}.registration-review-link{display:inline-flex;align-items:center;min-height:2.75rem;white-space:nowrap;font-weight:700;color:var(--accent-strong,#1d427b);text-decoration:underline;text-underline-offset:.2em}.registration-verification{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-muted,#5c6d81)}.registration-verification.is-verified{color:var(--success,#286344)}.registration-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.registration-empty{padding:3rem 1.5rem;border:1px dashed var(--border-strong,#c6d5e5);border-radius:1rem;text-align:center;background:var(--surface,#fff)}.registration-empty h2{font-size:1.1rem;margin:0 0 .6rem}.registration-empty p{margin:0;font-size:.875rem;color:var(--text-secondary,#4d5d70)}.registration-review-grid{display:grid;grid-template-columns:minmax(16rem,4fr) minmax(0,6fr);gap:1.5rem;align-items:start}.registration-panel{min-width:0;padding:1.5rem;border:1px solid var(--border,#dbe5f0);border-radius:1rem;background:var(--surface,#fff)}.registration-panel h2{margin:0 0 1.1rem;font-size:1.05rem;font-weight:750}.registration-details{display:grid;gap:1.1rem;margin:0}.registration-details>div{min-width:0}.registration-details dt{font-size:.75rem;font-weight:650;color:var(--text-secondary,#4d5d70)}.registration-details dd{margin:.25rem 0 0;font-size:.875rem;overflow-wrap:anywhere}.registration-panel-lead{margin:0 0 1.25rem;font-size:.85rem;line-height:1.65;color:var(--text-secondary,#4d5d70)}.registration-duplicate-note{margin-top:1.5rem;padding:1rem;border:1px solid var(--warning-border,#e5d5ae);border-radius:.8rem;background:var(--warning-soft,#fcf7e9)}.registration-duplicate-note h3{margin:0 0 .4rem;font-size:.85rem}.registration-duplicate-note p{margin:0;font-size:.8rem;line-height:1.6}.registration-duplicate-note ul{display:grid;gap:.6rem;list-style:none;margin:.8rem 0 0;padding:0;font-size:.8rem}.registration-duplicate-note li{overflow-wrap:anywhere}.registration-duplicate-note li span{display:block;font-size:.75rem}.registration-review-warning,.registration-review-errors{margin:0 0 1.25rem;padding:.85rem;border:1px solid var(--warning-border,#e5d5ae);border-radius:.7rem;background:var(--warning-soft,#fcf7e9);font-size:.8rem;line-height:1.6}.registration-review-errors{border-color:var(--danger-border,#edcad1);background:var(--danger-soft,#fff0f2);color:var(--danger,#9f1239)}.registration-review-errors p{margin:0}.registration-decision-form{display:grid;gap:1.1rem}.registration-admin-field{display:grid;gap:.4rem;min-width:0}.registration-admin-field>label{font-size:.82rem;font-weight:700}.registration-admin-field .input{width:100%;min-height:2.9rem;font:inherit;font-size:.875rem}.registration-admin-field textarea{resize:vertical}.registration-field-hint,.registration-field-error{margin:0;font-size:.75rem;line-height:1.5;color:var(--text-secondary,#4d5d70)}.registration-field-error{color:var(--danger,#9f1239);font-weight:650}.registration-checkbox{display:flex;align-items:flex-start;gap:.6rem;min-height:2.75rem;font-size:.8rem;line-height:1.6;cursor:pointer}.registration-checkbox input{width:1rem;height:1rem;flex:none;margin:.25rem 0 0;accent-color:var(--accent-strong,#1d427b)}.registration-decision-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding-top:.5rem}.registration-decision-actions>button{min-height:2.9rem;padding:.7rem 1rem;font-size:.82rem;font-weight:700;border-radius:.7rem;cursor:pointer}.registration-decision-actions>button:disabled{opacity:.55;cursor:not-allowed}.registration-reject{border:1px solid var(--danger-border,#edcad1);background:var(--surface,#fff);color:var(--danger,#9f1239)}.registration-reject:hover{background:var(--danger-soft,#fff0f2)}.registration-recorded-reason{border-top:1px solid var(--border,#dbe5f0);padding-top:1rem}.registration-recorded-reason h3{font-size:.8rem;margin:0 0 .5rem}.registration-recorded-reason p{font-size:.85rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.registration-admin :is(a,button,input,select,textarea):focus-visible,.registration-lobby :is(a,button,input):focus-visible{outline:3px solid var(--accent,#1487c9);outline-offset:3px}.registration-admin [aria-invalid=true]{border-color:var(--danger,#9f1239)}

html[data-theme=dark] .registration-lobby{--home-ink:#e2eceb;--home-muted:#a5b9bc;--home-line:#324646;--home-paper:#101e24}html[data-theme=dark] .registration-badge--pending{background:#3c3321;border-color:#65532e;color:#edce8e}html[data-theme=dark] .registration-badge--approved{background:#213c2d;border-color:#3b624d;color:#a9d9ba}html[data-theme=dark] .registration-badge--rejected{background:#412730;border-color:#71414f;color:#f0b0bd}
@media(min-width:1024px){.registration-body .auth-page{grid-template-columns:minmax(22rem,4fr) minmax(0,7fr)}.registration-body .auth-main{justify-content:flex-start;padding-top:1.5rem}}
@media(max-width:850px){.registration-progress{grid-template-columns:repeat(2,minmax(0,1fr));padding:1.1rem;gap:1.1rem}.registration-review-grid{grid-template-columns:1fr}.registration-welcome{flex-direction:column;gap:1rem}.registration-welcome .registration-badge{align-self:flex-start}.registration-verification-form{flex-direction:column;align-items:stretch}.registration-verification-form .auth-button{align-self:flex-start}.registration-admin-header{align-items:flex-start}.registration-admin-header>.registration-badge{margin-top:.5rem}}
@media(max-width:540px){.registration-fields{grid-template-columns:1fr}.registration-full{grid-column:auto}.registration-topbar{padding:1rem 1.2rem;gap:.8rem}.registration-identity{gap:.5rem;justify-content:flex-end}.registration-identity>span{display:none}.registration-main{padding:1.6rem 1.2rem 2rem}.registration-checkpoint{gap:.7rem;padding:1.1rem}.registration-checkpoint-icon{width:2.2rem;height:2.2rem}.registration-checkpoint h2{font-size:.98rem}.registration-checkpoint-copy>p{font-size:.8rem}.registration-checkpoint .auth-button{width:100%;white-space:normal}.registration-inline-actions{align-items:flex-start;gap:0 .8rem}.registration-stations .home-section-heading>span{display:none}.registration-panel{padding:1.15rem}.registration-admin-header{flex-direction:column;gap:.5rem}.registration-decision-actions{align-items:stretch;flex-direction:column}.registration-decision-actions>button{width:100%}}
@media(prefers-reduced-motion:reduce){.registration-station,.registration-station .world-visual{transition:none}}
