/* Scoped registration and family dashboard styles; keep organisation branding. */
.registration-page{margin:0;min-height:100vh;background:linear-gradient(110deg,rgba(242,246,249,.94),rgba(248,250,252,.96)),var(--registration-bg,none) center/cover fixed;color:#182431;padding:clamp(16px,4vw,64px);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.registration-layout{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);background:#fff;border:1px solid #dde5ed;border-radius:28px;overflow:hidden;box-shadow:0 20px 65px #10233212}
.registration-intro{display:flex;flex-direction:column;padding:clamp(24px,4vw,48px);background:color-mix(in srgb,var(--brand,#0f766e) 9%,#f4f7fa);border-right:1px solid #dde5ed;min-width:0}
.registration-brand{display:flex;gap:12px;align-items:center;color:inherit;font-size:1.1rem;font-weight:750;text-decoration:none;overflow-wrap:anywhere}.registration-brand img{object-fit:contain;border-radius:12px;background:white}
.registration-intro-copy{margin:52px 0 28px}.registration-eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:750}.registration-intro h1{font-size:clamp(2rem,3.4vw,3rem);line-height:1.12;margin:16px 0;color:#182431;letter-spacing:-.04em}.registration-intro p{color:#526171;line-height:1.7}
.registration-steps{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:22px}.registration-steps li{display:flex;gap:14px;align-items:flex-start}.registration-steps li>span{display:grid;place-items:center;background:#ffffffc9;border:1px solid #d5e0e7;border-radius:50%;width:34px;height:34px;flex-shrink:0;font-weight:700}.registration-steps p{font-size:.88rem;margin:3px 0 0}.registration-signin{margin-top:auto;font-size:.9rem}.registration-signin a{display:block;color:#182431;font-weight:700;text-underline-offset:4px}
.registration-panel{padding:clamp(22px,4vw,46px);min-width:0}.registration-mode{display:flex;gap:14px;align-items:flex-start;border:1px solid #cbd7e0;border-radius:16px;padding:18px;margin-bottom:28px;cursor:pointer;background:#f8fafc}.registration-mode input{width:21px;height:21px;flex-shrink:0;margin-top:3px;accent-color:var(--brand,#0f766e)}.registration-mode small{display:block;color:#526171;font-size:.85rem;line-height:1.6;margin-top:4px}
.registration-section{border:0;border-top:1px solid #e1e7ec;padding:22px 0 0;margin:0 0 24px;min-width:0}.registration-section legend{float:none;font-size:1rem;font-weight:750;width:auto;margin:0 0 16px;display:flex;gap:12px;align-items:center}.registration-section legend span{font-size:.75rem;color:#64748b;letter-spacing:.06em}.registration-section-hint{font-size:.85rem;color:#526171;margin-top:-4px;margin-bottom:16px}.registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.registration-wide{grid-column:1/-1}.registration-field label{display:block;font-size:.85rem;font-weight:650;margin-bottom:7px}.registration-field label small{font-weight:400;color:#64748b;margin-left:5px;font-size:.72rem}.registration-field input{width:100%;min-height:46px;border-radius:10px;border:1px solid #c7d2dc;background:white;box-sizing:border-box}.registration-field input[readonly]{background:#f3f6f8;font-family:monospace;font-size:.88rem}.registration-field input:focus{outline:2px solid #475569;outline-offset:2px}.registration-help{font-size:.75rem;color:#64748b;line-height:1.6;margin-top:7px}.registration-help ul{padding-left:17px;margin:0}.registration-errors{color:#a92132;font-size:.84rem}.registration-errors p{margin:5px 0 0}.registration-notice{border-left:3px solid #64748b;background:#f1f5f9;padding:14px 16px;border-radius:8px;font-size:.85rem;margin-bottom:20px}.registration-review{font-size:.83rem;color:#526171;line-height:1.6}.registration-submit{width:100%;min-height:48px;border-radius:12px;font-weight:700;display:flex;justify-content:center;gap:20px}.registration-section[hidden]{display:none}
.parent-home{max-width:1200px;margin:0 auto}.parent-welcome{display:flex;justify-content:space-between;align-items:center;gap:28px;border:1px solid #dbe4ec;background:linear-gradient(120deg,color-mix(in srgb,var(--brand,#0f766e) 12%,white),#fff);border-radius:24px;padding:clamp(24px,4vw,42px);margin-bottom:30px}.parent-welcome h1{font-size:clamp(1.8rem,3vw,2.7rem);margin:8px 0 14px;letter-spacing:-.035em;overflow-wrap:anywhere;color:#182431}.parent-welcome p{max-width:640px;margin:0;color:#526171;line-height:1.65}.parent-kicker{font-size:.76rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#475569}.parent-security-link{flex-shrink:0}.parent-section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px}.parent-section-title h2{font-size:1.45rem;margin:0}.parent-section-title span{color:#64748b;font-size:.9rem}.parent-child-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.parent-child-card{background:#fff;border:1px solid #dbe4ec;border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:20px;box-shadow:0 8px 24px #10233206;min-width:0}.parent-child-heading{display:flex;align-items:center;gap:14px}.parent-avatar{width:52px;height:52px;flex-shrink:0;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand,#0f766e) 12%,#f1f5f9);color:#182431;font-weight:750;font-size:1.3rem}.parent-child-card h3{font-size:1.15rem;margin:0;overflow-wrap:anywhere}.parent-child-card .parent-child-label{font-size:.78rem;color:#64748b;margin:5px 0 0}.parent-child-links{display:grid;gap:12px}.parent-child-links a{display:flex;align-items:center;gap:12px;color:#334155;text-decoration:none;font-size:.9rem;padding:3px 0}.parent-child-links a:hover{text-decoration:underline}.parent-child-links i{width:20px;text-align:center;color:#526171}.parent-child-card>.btn{margin-top:auto;min-height:44px;border-radius:10px}.parent-info{margin-top:24px;border-top:1px solid #dbe4ec;padding:22px 2px;color:#526171;font-size:.88rem;line-height:1.7}.parent-empty{padding:36px;background:#fff;border:1px dashed #bbc9d5;border-radius:20px;color:#526171}.parent-empty h3{color:#182431;font-size:1.15rem}.parent-empty i{font-size:1.8rem;margin-bottom:16px}.parent-home a:focus-visible{outline:2px solid #475569;outline-offset:4px}
@media(max-width:1000px){.registration-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.registration-grid{grid-template-columns:1fr}.parent-child-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-welcome{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.registration-page{padding:12px}.registration-layout{grid-template-columns:1fr;border-radius:20px}.registration-intro{border-right:0;border-bottom:1px solid #dde5ed;padding:24px}.registration-intro-copy{margin:24px 0 12px}.registration-steps{display:none}.registration-signin{margin-bottom:0}.registration-signin a{display:inline}.registration-panel{padding:24px 20px}.registration-grid{gap:14px}.parent-child-grid{grid-template-columns:1fr}.parent-welcome{border-radius:18px;padding:24px}.parent-section-title{flex-wrap:wrap}.parent-child-card{padding:22px}}

.registration-field input{font:inherit}.registration-mode:has(input:checked){border-color:var(--brand,#0f766e);background:color-mix(in srgb,var(--brand,#0f766e) 7%,white)}
