.error{color:#923a2e;background:#fff0ea;padding:12px 15px;border-radius:10px;font-size:13px;line-height:1.5}.error:empty{display:none}button:disabled{cursor:wait;opacity:.6}.actions{display:flex;flex-wrap:wrap;gap:8px}.family-row{padding:20px 0;border-top:1px solid var(--line)}.family-row p{margin:5px 0 14px;overflow-wrap:anywhere}.family-row strong{overflow-wrap:anywhere}.status-label{font-size:11px;border-radius:12px;background:#edf2e9;padding:4px 8px;margin-left:8px}.admin-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.admin-heading .text{white-space:nowrap}.loading{color:var(--muted);font-size:13px}.danger{color:#923a2e}.status-copy{white-space:pre-line}form p{margin:12px 0}.private-note{font-size:12px;color:var(--muted)}
a.child{text-decoration:none}
.test-guide{max-width:924px;margin:0 auto 30px;padding:18px 24px;background:#edf2e9;border:1px solid var(--line);border-radius:16px;font-size:13px;line-height:1.65}.test-guide summary{font-weight:700;cursor:pointer}.test-guide ol{padding-left:22px}.test-guide li{margin:8px 0}.test-guide .actions{align-items:center}.test-guide p{font-size:12px;margin-bottom:0}@media(max-width:700px){.test-guide{margin:0 22px 24px}}

/* Match native menus to the other profile fields and separate profile cards. */
.card select{display:block;width:100%;min-height:48px;margin-top:8px;padding:12px 36px 12px 12px;border:1px solid #c9d3ca;border-radius:10px;background-color:#fcfdfa;color:#202a26;font:inherit;box-sizing:border-box}
.card label>input{display:block;margin-top:8px}.center>.card+.card{margin-top:24px}.card fieldset{min-width:0;margin:24px 0 0;padding:18px;border:1px solid var(--line);border-radius:14px}.card legend{padding:0 6px;font-size:13px;color:var(--muted)}.card details{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.card summary{font-size:14px;cursor:pointer}.card select:focus-visible{outline:3px solid #ca830e;outline-offset:3px}

/* Compact family management: disclosure controls remain native and keyboard accessible. */
.profile-editor > summary {display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;cursor:pointer;min-height:48px;list-style:revert;}
.profile-editor > summary strong {flex:1 1 180px;}
.profile-editor > summary small {flex-basis:100%;color:var(--muted,#53635a);}
.profile-editor > summary span {font-size:.85rem;text-decoration:underline;}
.profile-editor:not([open]) {padding:20px 24px;}
.profile-editor[open] > form {margin-top:24px;}
.profile-editor > summary:focus-visible {outline:3px solid #b87917;outline-offset:6px;}
.profile-editor form .secondary {margin-top:12px;width:100%;min-height:44px;}

.analytics{max-width:100%;margin:auto}.analytics-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.dashboard-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:24px 0}.dashboard-filters label{display:grid;gap:7px;font-size:12px;font-weight:600;flex:1 1 155px}.dashboard-filters select{font:inherit;border:1px solid var(--line);border-radius:10px;background:white;padding:12px;min-height:46px;width:100%;color:var(--green)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0}.stat{background:white;border:1px solid var(--line);border-radius:18px;padding:20px;display:grid;gap:9px}.stat strong{font-size:30px;color:var(--green)}.stat span{font-size:13px;font-weight:650}.stat small{font-size:11px;color:var(--muted)}.dashboard-section{margin:34px 0}.dashboard-section>p{font-size:13px;max-width:720px}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:white}.analytics table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}.analytics th,.analytics td{padding:14px;vertical-align:top;border-bottom:1px solid var(--line);min-width:105px}.analytics thead{background:#edf2e9;font-size:12px}.analytics td small,.analytics th small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:6px}.learner-link{border:0;background:transparent;text-align:left;padding:0;color:var(--green);text-decoration:underline;font:inherit;font-weight:700;min-height:32px}.analytics select:focus-visible,.table-scroll:focus-visible{outline:3px solid #ca830e;outline-offset:3px}@media(max-width:700px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:15px}.analytics h1{font-size:34px}.dashboard-filters button{flex:1}.analytics th,.analytics td{padding:12px}}
