.workspace { max-width: var(--content-width); margin: 0; }
.signed-in .shell { padding-top:28px; }
.signed-in .workspace-nav { padding-bottom:10px; margin-bottom:22px; }
.signed-in .work-heading { margin-bottom:20px; }
.signed-in .work-heading h1 { font-size:clamp(30px,3.4vw,42px); }
.signed-in .work-heading p { font-size:16px; }
.signed-in .work-heading .eyebrow { font-size:11px; }
.identity-strip { padding:15px max(var(--page-gutter), calc((100% - var(--content-width))/2)); background:#edf2eb; border-bottom:1px solid #d4dfd2; display:flex; justify-content:space-between; gap:12px 30px; flex-wrap:wrap; font-size:13px; line-height:1.5; }
.identity-strip > div { display:flex; align-items:center; flex-wrap:wrap; gap:8px 16px; }
.identity-strip { position:sticky; top:76px; z-index:9; }
.identity-type { color:var(--muted); border-left:1px solid #bccbbb; padding-left:16px; }
.identity-access > span { font-size:12px; font-weight:650; }
.identity-access > span + span::before { content:'·'; margin-right:16px; }
.identity-access a { font-weight:700; }
.account-menu__identity { padding:12px 14px; border-bottom:1px solid var(--line); }
.account-menu__identity strong,.account-menu__identity span { display:block; overflow-wrap:anywhere; }
.account-menu__identity span { color:var(--muted); font-size:12px; margin-top:4px; }
.workspace-nav a[aria-current="page"] { color:var(--green-dark); border-bottom:3px solid var(--green); }
.access-status { display:inline-block; width:fit-content; background:#e6f1e2; color:#25492b; border-radius:4px; padding:6px 10px; font-size:12px; font-weight:750; line-height:1.5; }
.access-status--pending { background:#f4eedb; color:#665119; }
.access-list article { display:flex; align-items:center; gap:16px 24px; flex-wrap:wrap; padding:22px 0; border-top:1px solid var(--line); }
.access-list article > div { flex:1 1 320px; }
.access-list h3 { margin:0 0 8px; }
.access-list p { margin:0; color:var(--muted); font-size:14px; }
.access-list a { font-size:14px; font-weight:700; }
.account-detail-list { display:grid; grid-template-columns:minmax(140px,1fr) 3fr; gap:14px 24px; overflow-wrap:anywhere; }
.account-detail-list dt { color:var(--muted); }.account-detail-list dd { margin:0; }
.report-tabs { display:flex; flex-wrap:wrap; gap:6px 26px; border-bottom:1px solid var(--line); margin-bottom:25px; }
.report-tabs a { padding:14px 0; font-weight:700; font-size:14px; text-decoration:none; }
.report-tabs a[aria-current="page"] { border-bottom:3px solid var(--green); color:var(--green-dark); }
.report-chart-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.report-chart-grid .report-section { margin:0; min-width:0; }
.chart-empty { min-height:220px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; padding:24px; background:#f5f7f1; border:1px dashed #c5d3c0; border-radius:6px; margin:20px 0; }
.chart-empty strong { font-size:18px; }.chart-empty p { color:var(--muted); font-size:14px; max-width:350px; margin-bottom:0; }
.chart-empty--small { min-height:140px; padding:20px; }.chart-empty--small strong { font-size:15px; }
.chart-legend { display:flex; gap:20px; font-size:12px; color:var(--muted); }
.chart-legend span { display:flex; align-items:center; gap:7px; }.chart-legend i { width:12px; height:12px; display:block; border-radius:2px; }
.legend-started,.score-bar.bar-started { background:#b8cba4; }.legend-completed { background:#4c805b; }
.participation-chart .score-track { gap:4px; padding:0 5px; }.participation-chart .score-bar { width:50%; min-height:0; }
.chart-data { margin-top:18px; }.chart-data summary { font-weight:650; font-size:14px; }.chart-data caption { text-align:left; padding:16px 12px; font-size:13px; color:var(--muted); }
.accuracy-track { height:9px; background:#e1e7dc; border-radius:4px; overflow:hidden; }.accuracy-track span { display:block; height:100%; background:#4c805b; }
.onboarding-note { border-left:4px solid #70905c; background:#f8faf5; }.onboarding-note h2 { font-size:21px; }
.workspace-nav { display:flex; flex-wrap:wrap; gap:8px 22px; padding:0 0 20px; margin:0 0 30px; border-bottom:1px solid var(--line); }
.workspace-nav a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; font-weight:650; padding:8px 0; }
.work-heading { margin: 0 0 28px; }
.work-heading h1 { font-size:clamp(30px,4.3vw,49px); line-height:1.12; letter-spacing:-1.5px; margin:10px 0 16px; max-width:900px; }
.work-heading p { max-width:760px; color:var(--muted); line-height:1.6; font-size:18px; }
.work-heading .eyebrow { font-size:12px; }
.family-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:22px; margin:28px 0; }
.child-card { background:#fff; padding:28px; border:1px solid #d7e1d9; border-top:4px solid var(--green); border-radius:10px; min-width:0; }
.child-card h2 { font-size:27px; letter-spacing:-.6px; margin:12px 0; }
.child-card p { line-height:1.6; }
.role-choice { color:var(--ink); text-decoration:none; display:flex; flex-direction:column; }
.role-choice:hover { border-color:var(--green); background:#f9fcf8; }
.role-choice span { color:var(--green-dark); font-weight:750; margin-top:auto; padding-top:20px; }
.muted, .field-help { color:var(--muted); }
.field-help { font-size:13px!important; line-height:1.6; }
.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:var(--line); margin:28px 0; }
.metric { background:#fff; padding:25px 22px; min-width:0; }
.metric strong { display:block; font-size:35px; letter-spacing:-1px; margin-bottom:6px; }
.metric span { display:block; font-size:14px; font-weight:700; }
.metric small { display:block; color:var(--muted); line-height:1.5; margin-top:10px; font-size:12px; }
.child-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:18px 0; border-block:1px solid var(--line); }
.child-stats strong { display:block; font-size:26px; }
.child-stats span { display:block; font-size:12px; color:var(--muted); margin-top:5px; }
.report-section { margin:30px 0; background:#fff; border:1px solid var(--line); border-radius:10px; padding:28px; scroll-margin-top:100px; }
.report-section h2 { font-size:24px; letter-spacing:-.5px; margin-top:0; }
.report-section h3 { font-size:20px; letter-spacing:-.3px; }
.report-section p { line-height:1.65; }
.report-section > p { max-width:900px; }
.report-filter { display:flex; gap:14px; align-items:flex-end; margin:20px 0; }
.report-filter label { margin:0; font-size:13px; min-width:190px; }
.table-scroll { overflow:auto; }
.report-table { border-collapse:collapse; width:100%; text-align:left; font-size:14px; }
.report-table th { font-size:12px; color:var(--muted); font-weight:750; padding:14px 12px; border-bottom:2px solid var(--line); white-space:nowrap; }
.report-table td { padding:18px 12px; border-bottom:1px solid var(--line); vertical-align:top; line-height:1.5; }
.report-table small { display:block; margin-top:5px; color:var(--muted); }
.report-table details { max-width:420px; }
.practice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr)); gap:18px; }
.practice-card { background:#f4f7f0; padding:22px; border:1px solid #e0e7da; border-radius:6px; }
.practice-card p { font-size:14px; }
.practice-card .eyebrow { font-size:11px; }
.question-prompt { font-weight:700; }
.activity { border-top:1px solid #cfdacb; padding-top:16px; margin-top:20px; }
.activity p { white-space:pre-line; }
summary { cursor:pointer; line-height:1.5; }
.connection-details { padding-top:18px; margin-top:18px; border-top:1px solid var(--line); }
.connection-details summary { font-size:14px; }
.connection-row { padding:20px 0; border-top:1px solid var(--line); overflow-wrap:anywhere; }
.connection-row p { margin:8px 0; }
.compact-form { max-width:520px; }
.compact-form .check { align-items:flex-start; line-height:1.5; font-size:14px; font-weight:550; }
.compact-form .check input { flex:0 0 18px; margin-top:3px; }
.notice { background:#e9f1e4; border-left:3px solid var(--green); padding:16px 20px; border-radius:4px; line-height:1.6; }
.comparison-card { border:1px solid var(--line); padding:22px; border-radius:6px; }
.comparison-value { font-size:32px; }
.section-heading { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:10px; }
.score-chart { display:flex; gap:12px; padding-top:20px; min-height:230px; overflow-x:auto; }
.score-column { flex:1; min-width:44px; text-align:center; font-size:11px; }
.score-column strong { display:block; font-size:12px; margin-bottom:8px; }
.score-column > span { display:block; padding-top:9px; color:var(--muted); white-space:nowrap; }
.score-track { height:150px; display:flex; align-items:flex-end; background:#f1f5ef; border-bottom:1px solid #b9c9b6; border-radius:4px 4px 0 0; }
.score-bar { width:100%; min-height:2px; background:#4c805b; border-radius:4px 4px 0 0; }
.workspace .actions { align-items:center; }
.workspace a:focus-visible, .workspace button:focus-visible, .workspace summary:focus-visible { outline:3px solid #8ba238; outline-offset:4px; }
@media(max-width:850px) { .metric-grid { grid-template-columns:repeat(2,1fr); } .report-section { padding:22px; } }
@media(max-width:850px) { .report-chart-grid { grid-template-columns:1fr; } }
@media(max-width:560px) { .identity-strip { font-size:12px; gap:6px; }.identity-strip > div { gap:6px 10px; }.identity-access > span + span::before { margin-right:10px; }.identity-type { padding-left:10px; }.account-detail-list { grid-template-columns:1fr; gap:6px; }.account-detail-list dd { margin-bottom:14px; }.report-tabs { gap:4px 18px; }.report-tabs a { font-size:13px; }.access-list article { gap:14px; } }
@media(max-width:560px) { .work-heading h1 { letter-spacing:-1px; } .workspace-nav { gap:5px 18px; } .metric { padding:20px 14px; } .metric strong { font-size:29px; } .report-section,.child-card { padding:20px; } .report-table td,.report-table th { padding-inline:8px; } .family-grid { gap:16px; } .score-chart { gap:8px; } }
