/* =====================================================================
   BRAND TOKENS — copied verbatim from the LearnIndex brand guide (see
   assessment.css / curriculum.css). Do not invent new colors here; add
   new component styles using these.
   ===================================================================== */
:root{
  --paper:#FBFBF7; --card:#FFFFFF; --ink:#211E18; --ink-soft:#5C594E; --ink-faint:#8D8A7C;
  --line:#E6E3D9; --line-strong:#D3CFC0;
  --green:#3C6E47; --green-soft:#E6EEE4; --green-strong:#2A4F33;
  --blue:#3B6A80; --blue-soft:#E4EDF0; --blue-strong:#294C5C;
  --rust:#A8452F; --rust-soft:#F5E3DC; --rust-strong:#7C3524;
  --danger:#96691F;
  --shadow: 0 1px 2px rgba(33,30,24,.05), 0 10px 30px rgba(33,30,24,.06);
  --radius: 14px;
  --font-display:'Nunito', -apple-system, 'Helvetica Neue', Arial, sans-serif;
  --font-body:'Nunito', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#17140F; --card:#211D16; --ink:#F1EEE6; --ink-soft:#B8B3A4; --ink-faint:#83806F;
    --line:#332D22; --line-strong:#463F30;
    --green:#7FBF8C; --green-soft:#1E2B20; --green-strong:#A6D6AE;
    --blue:#7FB8CE; --blue-soft:#1B2A30; --blue-strong:#A9D3E1;
    --rust:#E08A6E; --rust-soft:#301C15; --rust-strong:#F0B39C;
    --danger:#D9AC5C;
    --shadow: 0 1px 2px rgba(0,0,0,.4), 0 10px 30px rgba(0,0,0,.35);
  }
}
:root[data-theme="dark"]{
  --paper:#17140F; --card:#211D16; --ink:#F1EEE6; --ink-soft:#B8B3A4; --ink-faint:#83806F;
  --line:#332D22; --line-strong:#463F30;
  --green:#7FBF8C; --green-soft:#1E2B20; --green-strong:#A6D6AE;
  --blue:#7FB8CE; --blue-soft:#1B2A30; --blue-strong:#A9D3E1;
  --rust:#E08A6E; --rust-soft:#301C15; --rust-strong:#F0B39C;
  --danger:#D9AC5C;
  --shadow: 0 1px 2px rgba(0,0,0,.4), 0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
html{font-size:16px;}
body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.65;}
p{letter-spacing:.01em;}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-0.015em;text-wrap:balance;margin:0;}
.mono{font-family:var(--font-mono);}
button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px;}
a{color:var(--blue);}
[hidden]{display:none!important;}

/* ---------- layout shell (matches assessment.css/curriculum.css) ----------
   Width matches the curriculum app's .wrap (1120px) — see the matching
   comment in assessment.css — so the Student/Parent Dashboards, Curriculum
   and Learning Checkup all feel like one product rather than three
   differently-sized panes. */
.li-shell{min-height:100vh;display:flex;flex-direction:column;}
.wrap{max-width:1120px;margin:0 auto;padding:28px 20px 90px;}
@media (max-width:640px){.wrap{padding:0 14px 80px;}}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;}
@media (max-width:520px){.card{padding:16px;}}
.card + .card{margin-top:16px;}
.card h2{font-size:1.2rem;margin-bottom:10px;}
.card h3{font-size:1rem;margin:14px 0 8px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px;}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green);}
.page-title{font-size:clamp(1.5rem,4vw,2.1rem);margin-bottom:8px;}
.page-dek{color:var(--ink-soft);font-size:1rem;max-width:64ch;margin-bottom:14px;}

/* ---------- buttons / pills / tags (matches assessment.css) ---------- */
.btn{font-family:var(--font-body);font-weight:700;font-size:.9rem;padding:11px 20px;min-height:44px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;}
.btn-primary{background:var(--green);color:#fff;}
.btn-primary:hover{background:var(--green-strong);}
.btn-secondary{background:transparent;color:var(--ink);border-color:var(--line-strong);}
.btn-secondary:hover{background:var(--green-soft);}
.icon-btn{background:transparent;border:1px solid var(--line-strong);border-radius:999px;padding:6px 14px;font-size:.78rem;font-weight:600;cursor:pointer;color:var(--rust-strong);}
.icon-btn:hover{background:var(--rust-soft);}
.pill{font-family:var(--font-mono);font-size:.76rem;font-weight:600;padding:6px 13px;border-radius:999px;display:inline-block;}
.pill.g1{background:var(--green-soft);color:var(--green-strong);}
.tag{font-size:.76rem;font-weight:700;padding:5px 12px;border-radius:7px;display:inline-block;}
.tag.curriculum{background:var(--green-soft);color:var(--green-strong);}
.tag.product{background:var(--blue-soft);color:var(--blue-strong);}
.tag.vocational{background:var(--rust-soft);color:var(--rust-strong);}

/* =====================================================================
   Dashboards (child + parent)
   ===================================================================== */
.li-dash .li-dash-header{margin-bottom:16px;}
.li-dash .li-dash-header .page-dek{max-width:none;}
.li-id-pill{background:var(--paper);border:1px solid var(--line-strong);border-radius:8px;display:inline-block;padding:5px 10px;font-size:.82rem;color:var(--ink-soft);margin:4px 0;}
.li-id-pill.small{font-size:.72rem;padding:3px 8px;margin-left:8px;}
.li-linked-line{color:var(--ink-soft);font-size:.88rem;margin-top:6px;}

/* child switcher */
.li-child-switcher{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px;}
.li-switch-pill{font-weight:600;font-size:.84rem;padding:8px 16px;border-radius:999px;border:1.5px solid var(--line-strong);color:var(--ink-soft);text-decoration:none;background:var(--card);}
.li-switch-pill.is-active{background:var(--blue-soft);color:var(--blue-strong);border-color:transparent;}

/* score grid */
.li-score-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px;}
@media (min-width:560px){.li-score-grid{grid-template-columns:1fr 1fr;}}
.li-score-card{text-align:left;}
.li-primary-score-card{border-color:var(--green);background:var(--green-soft);}
.li-student-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0;}
@media (min-width:760px){.li-student-stats{grid-template-columns:repeat(5,1fr);}}
.li-student-stats div{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:12px 14px;}
.li-student-stats strong{display:block;font-family:var(--font-display);font-size:1.7rem;line-height:1;color:var(--green-strong);}
.li-student-stats span{display:block;margin-top:5px;font-size:.78rem;font-weight:700;color:var(--ink-soft);}
.li-student-score-grid .li-primary-score-card{background:var(--paper);}
.li-completion-screen{border:1.5px solid var(--green);background:var(--green-soft);color:var(--green-strong);border-radius:12px;padding:14px 16px;margin:12px 0;}
.li-student-task-list li{align-items:flex-start;}
.li-student-next-milestone{border:1px solid var(--line);border-radius:12px;background:var(--blue-soft);padding:12px 14px;margin:14px 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.li-student-next-milestone strong{color:var(--blue-strong);}
.li-student-work-form{max-width:680px;}
.li-student-milestones{margin-top:16px;}
.li-score-value{font-family:var(--font-display);font-weight:800;font-size:2rem;margin:4px 0 8px;}
.li-score-max{font-size:1rem;color:var(--ink-faint);font-weight:600;}
.li-score-date{color:var(--ink-soft);font-size:.82rem;margin-top:8px;}
.li-score-empty{color:var(--ink-faint);font-size:.88rem;}
.li-parent-score-hero{border:1px solid var(--green);border-radius:14px;background:var(--green-soft);padding:16px;margin:14px 0;}
.li-parent-score-hero strong{display:block;font-family:var(--font-display);font-size:3rem;line-height:1;font-weight:800;color:var(--green-strong);}
.li-parent-score-hero strong span{font-size:1.1rem;color:var(--ink-soft);}
.li-parent-score-hero p{margin:8px 0 0;color:var(--ink-soft);}
.li-area-breakdown,.li-week-grid,.li-milestone-line{display:grid;gap:10px;margin:14px 0;}
.li-area-breakdown{grid-template-columns:1fr;}
.li-area-breakdown span,.li-week-grid span,.li-milestone-line span{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:10px;font-size:.86rem;color:var(--ink-soft);}
.li-strengths-box{border-left:4px solid var(--blue);background:var(--blue-soft);border-radius:10px;padding:12px;margin:14px 0;}
.li-strengths-box p{margin:6px 0 0;color:var(--blue-strong);}
.li-action-list{margin:14px 0;padding-left:1.2rem;color:var(--ink-soft);}
.li-action-list li+li{margin-top:8px;}
.li-week-plan-card{margin-top:16px;}
.li-week-plan-card .btn{margin-top:10px;}
.li-week-grid{grid-template-columns:repeat(5,1fr);}
.li-milestone-line{grid-template-columns:repeat(6,1fr);}
.li-progress-journey{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:18px;margin-top:16px;}
.li-journey-track{height:78px;position:relative;margin:22px 0 10px;border-radius:999px;background:var(--paper);border:1px solid var(--line);overflow:hidden;}
.li-journey-track::before{content:"";position:absolute;left:8%;right:8%;top:50%;height:6px;transform:translateY(-50%);border-radius:999px;background:var(--green);}
.li-journey-marker,.li-journey-goal{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:800;white-space:nowrap;box-shadow:0 1px 8px rgba(33,30,24,.12);}
.li-journey-marker{background:var(--card);border:2px solid var(--blue);color:var(--blue-strong);}
.li-journey-goal{right:6px;transform:translateY(-50%);background:var(--green);color:#fff;}
.li-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;flex-wrap:wrap;}
.li-calendar-title{font-family:var(--font-display);font-size:1.2rem;}
.li-calendar-actions{display:flex;gap:8px;flex-wrap:wrap;}
.li-calendar-weekdays,.li-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;}
.li-calendar-weekdays span{font-size:.78rem;font-weight:800;color:var(--ink-soft);text-align:center;}
.li-calendar-day{min-height:104px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);padding:10px;text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;}
.li-calendar-day:hover,.li-calendar-day:focus-visible{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft);outline:none;}
.li-calendar-day.is-muted{opacity:.48;}
.li-calendar-day.is-current-week{background:var(--blue-soft);border-color:var(--blue);}
.li-calendar-day.is-today .li-calendar-number{background:var(--green);color:#fff;}
.li-calendar-day.has-note{border-color:var(--green);}
.li-calendar-number{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;}
.li-calendar-note{font-size:.78rem;color:var(--ink-soft);line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.li-calendar-editor label{display:block;font-weight:700;margin:8px 0;}
.li-calendar-editor textarea{width:100%;border:1.5px solid var(--line-strong);border-radius:12px;padding:12px;background:var(--card);color:var(--ink);font:inherit;}
.li-calendar-editor-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.li-empty-state{border:1.5px dashed var(--line-strong);border-radius:16px;background:var(--paper);padding:18px;margin:14px 0;color:var(--ink-soft);}
.li-empty-state h3{color:var(--ink);margin:0 0 6px;font-size:1.05rem;}
.li-empty-state p{margin:0 0 12px;}
.li-weekly-empty{background:var(--green-soft);border-color:var(--green);color:var(--green-strong);}
.li-weekly-empty h3{color:var(--green-strong);}
.li-family-dashboard{display:grid;gap:16px;margin:22px 0;}
.li-founding-feedback{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;background:var(--green-soft)}
@media(max-width:600px){.li-founding-feedback{align-items:stretch;flex-direction:column}.li-founding-feedback .lg-btn{width:100%;justify-content:center}}
.li-family-dashboard ~ .li-summary-grid,
.li-family-dashboard ~ .li-week-plan-card,
.li-family-dashboard ~ .li-widget-grid,
.li-family-dashboard ~ .li-overview-list{display:none;}
.li-visual-roadmap{border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow);overflow:hidden;}
.li-visual-roadmap-top{display:flex;justify-content:space-between;gap:18px;padding:22px 24px 12px;}
.li-visual-roadmap h3{font-family:var(--font-display);font-size:1.6rem;margin:2px 0 6px;}
.li-visual-roadmap p{margin:0;color:var(--ink-soft);}
.li-visual-score{text-align:right;min-width:116px;}
.li-visual-score strong{display:block;font-family:var(--font-display);font-size:2.4rem;line-height:1;color:var(--green-strong);}
.li-visual-score strong span{font-size:1rem;color:var(--ink-soft);}
.li-visual-score small{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);}
.li-visual-stages{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;padding:18px 20px 22px;background:var(--paper);}
.li-visual-stages span{position:relative;border:1px solid var(--line);border-radius:999px;background:var(--card);padding:10px 8px;text-align:center;font-size:.82rem;font-weight:800;color:var(--ink-soft);}
.li-visual-stages .is-done{background:var(--green-soft);color:var(--green-strong);border-color:var(--green);}
.li-visual-stages .is-current{background:var(--blue-soft);color:var(--blue-strong);border-color:var(--blue);}
.li-visual-stages .is-goal{background:var(--rust-soft);color:var(--rust-strong);border-color:var(--rust);}
.li-visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.li-visual-grid-small{grid-template-columns:repeat(3,1fr);}
.li-visual-card{border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow);padding:20px;min-width:0;}
.li-visual-card h3{font-family:var(--font-display);font-size:1.25rem;margin:0 0 10px;}
.li-visual-card p{color:var(--ink-soft);margin:0 0 12px;}
.li-visual-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;}
.li-visual-card-head h3{margin:0;}
.li-visual-card-head a,.li-parent-actions a{font-size:.84rem;font-weight:800;color:var(--green-strong);text-decoration:none;white-space:nowrap;}
.li-week-progress{height:9px;border-radius:999px;background:var(--line);overflow:hidden;margin:12px 0;}
.li-week-progress span{display:block;height:100%;border-radius:inherit;background:var(--green);}
.li-check-list,.li-milestone-preview,.li-activity-preview{list-style:none;margin:0;padding:0;display:grid;gap:8px;color:var(--ink-soft);}
.li-check-list li{position:relative;padding-left:24px;}
.li-check-list li::before{content:"";position:absolute;left:0;top:.35em;width:14px;height:14px;border-radius:50%;background:var(--green);}
.li-priority-preview+.li-priority-preview{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;}
.li-priority-preview strong{display:block;}
.li-priority-preview small{color:var(--ink-faint);}
.li-milestone-preview li,.li-activity-preview li{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:8px;}
.li-milestone-preview li:first-child,.li-activity-preview li:first-child{border-top:0;padding-top:0;}
.li-milestone-preview span,.li-activity-preview span{color:var(--ink-faint);font-size:.82rem;}
.li-portfolio-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.li-portfolio-preview span{aspect-ratio:1;border-radius:12px;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;font-weight:800;color:var(--ink-soft);font-size:.82rem;text-align:center;}
.li-portfolio-preview .is-add{border-style:dashed;color:var(--green-strong);}
.li-budget-preview{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center;}
.li-budget-ring{width:112px;height:112px;border-radius:50%;background:var(--green);display:grid;place-items:center;position:relative;}
.li-budget-ring::before{content:"";position:absolute;inset:18px;border-radius:50%;background:var(--card);}
.li-budget-ring strong,.li-budget-ring span{position:relative;z-index:1;grid-area:1/1;text-align:center;}
.li-budget-ring strong{font-family:var(--font-display);font-size:1.45rem;color:var(--green-strong);transform:translateY(-8px);}
.li-budget-ring span{font-size:.72rem;color:var(--ink-faint);transform:translateY(14px);}
.li-budget-preview ul{list-style:none;margin:0;padding:0;display:grid;gap:7px;color:var(--ink-soft);}
.li-budget-preview li{display:flex;justify-content:space-between;gap:10px;}
.li-parent-block{background:var(--blue-soft);border-color:var(--blue);}
.li-parent-actions{display:flex;gap:10px;flex-wrap:wrap;}
.li-parent-actions a{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 14px;}

/* Article-page inspired dashboard skin: rounded editorial cards, compact
   toolbar controls, soft radial surfaces, icon-card grids, and status dots. */
.li-dash-header,
.li-admin-rail,
.li-visual-roadmap,
.li-visual-card,
.li-child-summary-card,
.li-widget-card,
.li-priority-child,
.li-plan-card,
.li-activity-card,
.li-calendar-card,
.li-calendar-editor {
	border:1.5px solid var(--line);
	border-radius:18px;
	box-shadow:var(--shadow);
}
.li-dash-header{background:var(--card);}
.li-admin-rail{background:var(--card);}
.li-dashboard-switcher select,
.li-account-action,
.li-calendar-toolbar .btn,
.li-inline-form input,
.li-inline-form select,
.li-inline-form textarea {
	border-radius:14px;
	border:1.5px solid var(--line);
	background:var(--card);
}
.li-visual-card,
.li-child-summary-card,
.li-tool-card,
.li-activity-card,
.li-plan-card,
.li-calendar-day {
	transition:border-color .2s ease, transform .16s ease, box-shadow .16s ease;
}
.li-visual-card:hover,
.li-child-summary-card:hover,
.li-tool-card:hover,
.li-activity-card:hover,
.li-plan-card:hover,
.li-calendar-day:hover {
	border-color:var(--green);
	transform:translateY(-1px);
}
.li-visual-card-head a,
.li-parent-actions a,
.li-tool-open,
.li-calendar-editor-actions .btn {
	font-weight:800;
}
.li-visual-stages span,
.li-area-breakdown span,
.li-week-grid span,
.li-milestone-line span,
.li-portfolio-preview span {
	border-radius:14px;
}
.li-milestone-preview li::before,
.li-activity-preview li::before,
.li-action-list li::marker {
	color:var(--green);
}
.li-priority-preview strong::before,
.li-strengths-box strong::before {
	content:"";
	display:inline-block;
	width:14px;
	height:14px;
	margin-right:8px;
	border-radius:999px;
	background:var(--green);
	box-shadow:0 0 0 3px color-mix(in srgb,var(--green) 22%,transparent);
	vertical-align:-1px;
}
.li-budget-ring,
.li-visual-score {
	filter:drop-shadow(0 8px 18px rgba(33,30,24,.06));
}

/* tools grid */
.li-tools-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px;}
@media (min-width:640px){.li-tools-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:900px){.li-tools-grid{grid-template-columns:1fr 1fr 1fr;}}
#li-child-tools{margin-top:20px;}
.li-tool-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--card);display:flex;flex-direction:column;gap:6px;}
.li-tool-card.is-enabled{border-color:var(--green);background:var(--green-soft);}
.li-tool-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;}
.li-tool-toggle input{width:18px;height:18px;}
.li-tool-name{font-size:1rem;}
.li-tool-desc{font-size:.85rem;color:var(--ink-soft);margin:0 0 6px;flex:1;}
.li-tool-meta{margin:0 0 6px;padding-left:1rem;color:var(--ink-soft);font-size:.78rem;}
.li-tool-meta li+li{margin-top:3px;}
.li-tool-open{align-self:flex-start;}
.li-tool-soon{font-size:.78rem;font-weight:600;color:var(--ink-faint);background:var(--paper);border:1px dashed var(--line-strong);border-radius:8px;padding:6px 10px;display:inline-block;}
.li-tools-msg{margin-top:10px;font-size:.84rem;font-weight:600;color:var(--green-strong);min-height:1.2em;}

/* tabs (child dashboard's switcher and any non-rail context still use these) */
.li-tabs{display:flex;gap:2px;flex-wrap:wrap;margin:16px 0;border-bottom:1px solid var(--line);padding-bottom:2px;}
.li-tab-link{font-size:.86rem;font-weight:700;color:var(--ink-soft);text-decoration:none;padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;border-radius:999px 999px 0 0;}
.li-tab-link:hover{background:var(--green-soft);color:var(--green-strong);}
.li-tab-link.is-active{background:var(--blue-soft);color:var(--blue-strong);}
.li-tab-panels{margin-top:4px;}

/* =====================================================================
   Parent dashboard: admin-panel shell with a left navigation rail.
   This is the page parents land on right after logging in, so it is
   built to read as a dedicated app screen — full browser width, fixed
   rail, scrollable content pane — rather than a marketing page. Paired
   with the theme's "LearnIndex Admin Panel (Full Width)" page template,
   which drops the site's max-width content column and footer for this
   page so the shell below can run edge to edge under the sticky top bar.
   ===================================================================== */
.li-admin-shell{
	display:block;
	width:100%;
}
.li-admin-rail{
	max-width:1120px;
	margin:0 auto 18px;
	border:1px solid var(--line);
	border-radius:var(--radius);
	background:var(--card);
	box-shadow:var(--shadow);
	padding:10px;
}
.li-admin-top-nav{margin-top:0;}
.li-admin-rail-header{display:none;}
.li-admin-rail-header .eyebrow{margin-bottom:0;}
.li-dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.li-dashboard-switcher{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);}
.li-dashboard-switcher span{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);}
.li-dashboard-switcher select{min-width:260px;border:1.5px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);font:inherit;font-weight:800;padding:11px 42px 11px 14px;min-height:44px;box-shadow:0 1px 2px rgba(33,30,24,.03);}
.li-dashboard-switcher select:focus{outline:2px solid var(--blue);outline-offset:2px;}
.li-dashboard-account-actions{display:flex;gap:8px;flex-wrap:wrap;}
.li-account-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1.5px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink-soft);font-weight:800;text-decoration:none;padding:10px 18px;}
.li-account-action:hover{background:var(--green-soft);color:var(--green-strong);}
.li-account-action.is-active{background:var(--blue-soft);border-color:var(--blue);color:var(--blue-strong);}
.li-admin-nav{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;gap:4px;overflow-x:auto;}
.li-admin-nav-group{display:flex;align-items:center;gap:4px;flex:none;}
.li-admin-subnav{list-style:none;margin:0;padding:0 0 0 6px;display:flex;gap:4px;border-left:2px solid var(--line);}
.li-admin-nav-link{display:flex;align-items:center;gap:11px;font-size:.9rem;font-weight:600;color:var(--ink-soft);text-decoration:none;padding:11px 12px;border-radius:10px;min-height:44px;}
.li-admin-subnav-link{font-size:.82rem;padding-left:10px;padding-right:10px;}
.li-admin-nav-link:hover{background:var(--green-soft);color:var(--green-strong);}
.li-admin-nav-link.is-active{background:var(--blue-soft);color:var(--blue-strong);}
.li-admin-nav-icon{flex:none;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;}
.li-admin-main{width:100%;max-width:1184px;margin:0 auto;padding:28px 32px 80px;}
.li-admin-main .li-dash-header{margin-bottom:18px;}
/* Capped at 1120px to match the curriculum app's .wrap, rather than
   stretching full-bleed to the rail's edge — see the layout-shell comment
   above. */
.li-admin-main .wrap{max-width:1120px;margin:0 auto;padding:0;}
.li-admin-main .wrap,
.li-admin-main > .card,
.li-admin-main > .li-tab-panels{margin-left:auto;margin-right:auto;}
.li-admin-main > .card,
.li-admin-main > .li-tab-panels{max-width:1120px;}

@media (max-width:900px){
	.li-admin-rail{padding:10px;}
	.li-dashboard-toolbar,.li-dashboard-switcher,.li-dashboard-account-actions{width:100%;}
	.li-dashboard-switcher{align-items:flex-start;flex-direction:column;}
	.li-dashboard-switcher select{width:100%;min-width:0;}
	.li-dashboard-account-actions{display:grid;grid-template-columns:1fr 1fr;}
	.li-admin-nav-group{align-items:stretch;}
	.li-admin-nav-link{white-space:nowrap;}
	.li-admin-main{padding:20px 16px 60px;}
	.li-week-grid,.li-milestone-line{grid-template-columns:1fr;}
	.li-calendar-weekdays,.li-calendar-grid{gap:4px;}
	.li-calendar-day{min-height:78px;padding:7px;}
	.li-calendar-note{font-size:.7rem;-webkit-line-clamp:2;}
	.li-visual-grid,.li-visual-grid-small,.li-visual-stages{grid-template-columns:1fr;}
	.li-visual-roadmap-top,.li-budget-preview{grid-template-columns:1fr;display:grid;}
	.li-visual-score{text-align:left;}
}

/* overview tab */
.li-summary-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px;}
@media (min-width:760px){.li-summary-grid{grid-template-columns:repeat(2,1fr);}}
.li-child-summary-card{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:16px;display:flex;flex-direction:column;gap:12px;}
.li-mini-chart{display:flex;flex-direction:column;gap:6px;}
.li-mini-chart-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.86rem;color:var(--ink-soft);}
.li-mini-chart-row strong{color:var(--ink);font-size:.84rem;}
.li-score-bar{height:10px;border-radius:999px;background:var(--line);overflow:hidden;}
.li-score-bar span{display:block;height:100%;border-radius:inherit;background:var(--green);}
.li-chart-band{font-size:.76rem;font-weight:700;color:var(--green-strong);}
.li-widget-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px;}
@media (min-width:760px){.li-widget-grid{grid-template-columns:repeat(3,1fr);}}
.li-widget-card{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:16px;}
.li-widget-card .eyebrow{margin-bottom:6px;}
.li-widget-card strong{display:block;font-family:var(--font-display);font-weight:800;font-size:1.8rem;line-height:1.1;}
.li-widget-card p{margin:6px 0 0;color:var(--ink-soft);font-size:.86rem;}
.li-next-action{max-width:1120px;margin:0 auto 16px;border:1.5px solid var(--green);background:var(--green-soft);border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.li-next-action strong{font-family:var(--font-display);font-size:1.05rem;color:var(--green-strong);}
.li-history-chart{border-top:1px solid var(--line);padding-top:12px;margin-top:4px;}
.li-history-chart strong{font-size:.9rem;}
.li-history-bars{height:92px;display:flex;align-items:flex-end;gap:5px;margin-top:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--paper);}
.li-history-bars span{width:12px;min-height:8px;border-radius:999px 999px 3px 3px;background:var(--blue);}
.li-export-row{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;}
.li-record-lists{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px;}
@media (min-width:760px){.li-record-lists{grid-template-columns:repeat(2,1fr);}}
.li-record-form strong,.li-record-form .eyebrow{font-size:.8rem;}
.li-next-checkup-form{max-width:none;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;}
@media (max-width:700px){.li-next-checkup-form{grid-template-columns:1fr;}.li-export-row .btn{width:100%;justify-content:center;}}
.li-overview-list{display:flex;flex-direction:column;gap:10px;margin-top:12px;}
.li-overview-row{border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;}
.li-overview-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.li-overview-scores{display:flex;gap:16px;flex-wrap:wrap;font-size:.86rem;color:var(--ink-soft);}

/* Learning Priorities tab (parent dashboard, one card per child) and the
   matching Priorities section on the Student Dashboard (single child). */
#li-child-priorities{margin-top:20px;}
#li-child-account{margin-top:24px;}
.li-priority-child{padding-top:16px;margin-top:16px;border-top:1px solid var(--line);}
.li-priority-child:first-child{padding-top:0;margin-top:0;border-top:0;}
.li-mastery-totals{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px;}
.li-mastery-pill{font-family:var(--font-mono);font-size:.76rem;font-weight:600;padding:6px 12px;border-radius:999px;display:inline-block;background:var(--line);color:var(--ink-soft);}
.li-mastery-pill strong{font-weight:700;}
.li-mastery-pill.is-needs-review{background:var(--rust-soft);color:var(--rust-strong);}
.li-mastery-pill.is-developing{background:var(--blue-soft);color:var(--blue-strong);}
.li-mastery-pill.is-secure{background:var(--green-soft);color:var(--green-strong);}
.li-mastery-pill.is-mastered{background:var(--green);color:#fff;}
.li-priority-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.li-priority-row{border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
.li-priority-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between;}
.li-priority-desc{margin:8px 0 0;color:var(--ink-soft);font-size:.86rem;}
.li-priority-practice{margin-top:12px;}
.li-priority-tools{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);}
.li-priority-tools h3{margin:0 0 6px;font-family:var(--font-display);font-size:1.1rem;}

/* plain list (children / to-dos / support requests) */
.li-plain-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px;}
.li-plain-list li{border:1px solid var(--line);border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.9rem;}
.li-plain-list li p{width:100%;margin:6px 0 0;color:var(--ink-soft);font-size:.85rem;}
.li-todo-check{display:flex;align-items:center;gap:8px;cursor:pointer;flex:1;min-width:160px;}
.li-todo-check input{width:18px;height:18px;}
.li-todo-done{text-decoration:line-through;color:var(--ink-faint);}
.li-todo-due{color:var(--ink-soft);font-size:.78rem;}
.li-request-date{color:var(--ink-faint);font-size:.76rem;margin-left:auto;}

/* inline forms shared across tabs */
.li-inline-form{display:flex;flex-direction:column;gap:10px;max-width:420px;margin-top:10px;}
.li-inline-form label{font-weight:600;font-size:.86rem;display:flex;flex-direction:column;gap:4px;color:var(--ink);}
.li-inline-form input,.li-inline-form select,.li-inline-form textarea{padding:10px 12px;border:1.5px solid var(--line-strong);border-radius:10px;font-size:1rem;background:var(--card);color:var(--ink);}
.li-inline-form textarea{resize:vertical;}
.li-form-msg{font-weight:600;font-size:.86rem;min-height:1.2em;color:var(--rust-strong);}

/* budget tab */
.li-budget-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:12px 0 18px;}
@media (max-width:520px){.li-budget-summary{grid-template-columns:1fr;}}
.li-budget-figure{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--paper);}
.li-budget-amount{display:block;font-family:var(--font-display);font-weight:800;font-size:1.4rem;margin-top:4px;}
.li-budget-diff-label{display:block;font-size:.76rem;font-weight:600;margin-top:4px;color:var(--ink-soft);}
/* Brand rule: color always pairs with a text label, never carries meaning alone. */
.li-diff-over{border-color:var(--rust);background:var(--rust-soft);}
.li-diff-over .li-budget-amount,.li-diff-over .li-budget-diff-label{color:var(--rust-strong);}
.li-diff-under{border-color:var(--green);background:var(--green-soft);}
.li-diff-under .li-budget-amount,.li-diff-under .li-budget-diff-label{color:var(--green-strong);}
.li-table{width:100%;border-collapse:collapse;font-size:.86rem;margin-top:6px;}
.li-table th{text-align:left;font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);padding:8px;border-bottom:1px solid var(--line-strong);}
.li-table td{padding:8px;border-bottom:1px solid var(--line);}

/* billing tab: price-list cards */
.li-plan-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px;}
@media (min-width:760px){.li-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
.li-plan-card{border:1.5px solid var(--line);border-radius:14px;padding:20px;background:var(--paper);display:flex;flex-direction:column;gap:10px;}
.li-plan-card.li-plan-premium{border-color:var(--blue-soft);background:var(--blue-soft);}
.li-plan-card.is-current{border-color:var(--green);}
.li-plan-price{font-family:var(--font-display);font-weight:800;font-size:2rem;}
.li-plan-period{font-size:.95rem;font-weight:600;color:var(--ink-soft);}
.li-plan-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.88rem;color:var(--ink-soft);}
.li-plan-features li{padding-left:20px;position:relative;}
.li-plan-features li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700;}
.li-plan-card form{margin-top:4px;}
.li-plan-card .pill{align-self:flex-start;}

/* activities tab: address-book style cards */
.li-activity-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:10px;}
@media (min-width:640px){.li-activity-grid{grid-template-columns:1fr 1fr;}}
.li-activity-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--card);display:flex;flex-direction:column;gap:6px;}
.li-activity-card h3{font-size:1rem;margin-top:4px;}
.li-activity-contact{font-size:.85rem;color:var(--ink-soft);margin:0;}
.li-activity-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-soft);margin:0;}
.li-activity-note{font-size:.84rem;color:var(--ink-soft);margin:0;}
.li-activity-card .btn{align-self:flex-start;margin-top:4px;}
.li-activity-card .icon-btn{align-self:flex-start;}

/* Checkup-based priorities (shown before any practice session exists). */
.li-checkup-priorities{margin:8px 0 14px;padding-left:1.3em;display:flex;flex-direction:column;gap:6px;}
.li-checkup-priorities li{line-height:1.45;}
.li-checkup-priority-meta{display:block;font-size:.84rem;color:var(--ink-soft,#5C594E);}

/* Student "Keep growing" card: the generic .li-milestone-preview margin:0
   was overriding the spacing, so milestones sat on the box above. */
.li-milestone-preview.li-student-milestones{margin-top:20px;max-width:640px;}
.li-student-milestones + .li-milestone-line{margin-top:18px;}

/* Student dashboard tabs on phones: wrap onto a second row instead of
   scrolling sideways and cutting "Account" off. */
@media (max-width: 560px) {
	.li-admin-top-nav .li-admin-nav{display:flex;flex-wrap:wrap;gap:4px;overflow:visible;}
	.li-admin-top-nav .li-admin-nav-link{padding:10px;gap:8px;}
}

/* Student "Keep growing": the priorities box has a border, so give its
   contents room instead of sitting on the edge. */
#li-child-priorities .li-priority-child{padding:16px 18px;border:1px solid var(--line);border-radius:14px;}

/* Round 3: recommended tools */
.li-rec-heading{font-size:.95rem;font-weight:700;margin:16px 0 8px;color:var(--ink);}
.li-rec-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px;}
.li-rec-row{max-width:none;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--card);}
.li-rec-icon{width:44px;height:44px;border-radius:10px;background:var(--blue-soft);color:var(--blue-strong);display:grid;place-items:center;font-size:1.3rem;line-height:1;overflow:hidden;}
.li-rec-body{min-width:0;display:flex;flex-direction:column;gap:2px;}
.li-rec-body strong{font-weight:700;}
.li-rec-meta{font-size:.78rem;color:var(--ink-faint);}
.li-rec-why{font-size:.85rem;color:var(--ink-soft);}
.li-rec-action{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.li-rec-pill{font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap;}
.li-rec-pill.is-free{background:var(--green-soft);color:var(--green-strong);}
.li-rec-pill.is-premium{background:var(--blue-soft);color:var(--blue-strong);}
.li-rec-row.is-locked .li-rec-icon{opacity:.7;}
.li-rec-row .btn-ghost{background:transparent;color:var(--blue);border-color:var(--line);}
@media (max-width:600px){.li-rec-row{grid-template-columns:44px 1fr;}.li-rec-action{grid-column:1 / -1;justify-content:flex-start;}}

/* =====================================================================
   Round 4: Dashboard children, Planner, Learning Priorities,
   Portfolio and Budget. Tokens only, so dark mode follows the site.
   ===================================================================== */
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .btn-primary{color:var(--paper);} }
:root[data-theme="dark"] .btn-primary{color:var(--paper);}
.btn-sm{min-height:36px;padding:6px 14px;font-size:.82rem;}
.li-link-btn{background:none;border:0;padding:6px 4px;min-height:32px;font:700 .84rem var(--font-body);color:var(--blue);cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
.li-link-btn:hover{color:var(--ink);}
.li-danger{color:var(--rust-strong);border-color:color-mix(in srgb,var(--rust) 45%,var(--line-strong));}
.li-danger:hover{background:var(--rust-soft);}
.li-span-2{grid-column:1 / -1;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}
.li-empty-row{color:var(--ink-soft);font-size:.92rem;list-style:none;padding:10px 0;}
.li-status-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.74rem;font-weight:700;background:var(--blue-soft);color:var(--blue-strong);white-space:nowrap;align-self:flex-start;}
.li-status-pill.is-done{background:var(--green-soft);color:var(--green-strong);}
.li-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.li-table td.mono{white-space:nowrap;}

/* ---------- Dashboard: children ---------- */
.li-kid-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:18px;}
.li-kid-card{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:18px;display:flex;flex-direction:column;gap:14px;min-width:0;}
.li-kid-head,.li-lp-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.li-kid-avatar{width:44px;height:44px;border-radius:999px;background:var(--green);color:var(--paper);display:grid;place-items:center;font-weight:800;font-size:1.05rem;flex-shrink:0;}
.li-kid-avatar.is-add{background:var(--green-soft);color:var(--green-strong);font-size:1.4rem;}
.li-kid-name{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;}
.li-kid-name h3{margin:0!important;font-size:1.08rem;}
.li-kid-name span{font-size:.84rem;color:var(--ink-soft);}
.li-kid-open{white-space:nowrap;}
.li-kid-score{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.li-kid-score strong{font-size:1.9rem;font-weight:600;line-height:1;}
.li-kid-score strong span{font-size:.9rem;color:var(--ink-faint);}
.li-kid-score > span{font-size:.84rem;color:var(--ink-soft);}
.li-kid-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
.li-kid-subjects > span{display:flex;justify-content:space-between;gap:6px;padding:7px 10px;border-radius:10px;background:var(--paper);border:1px solid var(--line);font-size:.8rem;color:var(--ink-soft);}
.li-kid-subjects > span.is-done{background:var(--green-soft);border-color:transparent;color:var(--green-strong);}
.li-kid-subjects b{font-weight:600;}
.li-kid-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;border-top:1px solid var(--line);padding-top:10px;}
.li-kid-actions a{font-size:.86rem;font-weight:700;color:var(--green-strong);}
.li-kid-actions .li-link-btn{color:var(--rust-strong);}
.li-kid-add{border-style:dashed;border-width:2px;background:transparent;}
.li-kid-add summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;min-height:44px;}
.li-kid-add summary::-webkit-details-marker{display:none;}
.li-stack-form{display:flex;flex-direction:column;gap:10px;}
.li-stack-form label,.li-planner-form label,.li-upload-fields label,.li-budget-form label,.li-lp-search label{display:flex;flex-direction:column;gap:6px;font-size:.84rem;font-weight:700;color:var(--ink);min-width:0;}
.li-stack-form input,.li-stack-form select,.li-planner-form input,.li-planner-form select,.li-planner-form textarea,.li-upload-fields input,.li-upload-fields select,.li-upload-fields textarea,.li-budget-form input,.li-budget-form select,.li-lp-search input,.li-lp-search select,.li-planner-filter select{min-height:44px;border:1.5px solid var(--line-strong);border-radius:12px;padding:8px 12px;background:var(--card);color:var(--ink);font:400 .95rem var(--font-body);width:100%;}
.li-planner-form textarea,.li-upload-fields textarea{min-height:64px;}
.li-stack-form .description{margin:0;font-size:.8rem;color:var(--ink-soft);}
.li-week-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.li-week-list li{display:flex;gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--line);}
.li-week-list li:last-child{border-bottom:0;}
.li-week-list li.is-done .li-week-title{text-decoration:line-through;color:var(--ink-faint);}
.li-week-day{width:34px;flex-shrink:0;font-size:.78rem;color:var(--ink-soft);}
.li-week-title{display:flex;flex-direction:column;font-size:.92rem;font-weight:600;min-width:0;}
.li-week-title small{font-weight:400;color:var(--ink-soft);font-size:.78rem;}

/* ---------- Planner ---------- */
.li-planner-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;}
.li-planner-head .page-dek{max-width:62ch;margin:0;}
.li-planner-featured{margin:20px 0 6px!important;}
.li-planner-featured .popular-articles-head h2{margin:0;}
.li-featured-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.li-featured-card{display:flex;gap:14px;align-items:flex-start;text-align:left;padding:14px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;font:inherit;min-width:0;}
.li-featured-card:hover,.li-featured-card:focus-visible{border-color:var(--green);}
.li-featured-date{width:52px;flex-shrink:0;border-radius:12px;background:var(--green-soft);color:var(--green-strong);display:flex;flex-direction:column;align-items:center;padding:6px 0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
.li-featured-date b{font-size:1.3rem;letter-spacing:0;line-height:1.2;}
.li-featured-copy{display:flex;flex-direction:column;gap:3px;min-width:0;}
.li-featured-copy strong{font-size:1rem;line-height:1.3;}
.li-planner-filter{margin-left:auto;min-width:160px;}
.li-planner .li-calendar-toolbar{justify-content:flex-start;}
.li-planner .li-calendar-toolbar .li-calendar-title{min-width:150px;text-align:center;}
.li-planner-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;}
.li-planner .li-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:6px;}
.li-pl-day{position:relative;min-height:112px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);padding:8px;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer;font:inherit;min-width:0;}
.li-pl-day:hover,.li-pl-day:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft);outline:none;}
.li-pl-day.is-muted{opacity:.5;}
.li-pl-num{width:28px;height:28px;border-radius:999px;display:inline-grid;place-items:center;font-weight:700;font-size:.86rem;}
.li-pl-day.is-today .li-pl-num{background:var(--green);color:var(--paper);}
.li-pl-chips{display:flex;flex-direction:column;gap:3px;min-width:0;}
.li-pl-chip{display:block;font-size:.72rem;line-height:1.3;padding:3px 6px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--paper);border-left:3px solid var(--ink-faint);color:var(--ink);}
.li-pl-chip b{font-weight:700;}
.li-pl-chip.is-done{text-decoration:line-through;opacity:.65;}
.li-pl-chip.is-featured{box-shadow:inset 0 0 0 1px var(--green);}
.li-pl-more{font-size:.72rem;color:var(--ink-soft);font-weight:700;}
.li-pl-count{display:none;}
/* type accents: colour is a hint only, every chip names its type */
.is-lesson,.is-tutoring{--tone:var(--green);}
.is-event,.is-appointment{--tone:var(--blue);}
.is-activity,.is-extracurricular,.is-field_trip{--tone:var(--rust);}
.is-todo,.is-reminder{--tone:var(--ink-faint);}
.li-pl-chip{border-left-color:var(--tone,var(--ink-faint));}
.li-pl-dot{width:12px;height:12px;border-radius:999px;background:var(--tone,var(--ink-faint));flex-shrink:0;margin-top:6px;}
.li-featured-card{border-top:4px solid var(--tone,var(--line));}
.li-planner-agenda{margin-top:22px;border-top:1px solid var(--line);padding-top:10px;}
.li-planner-agenda h3{margin:6px 0 4px!important;}
.li-planner-list{list-style:none;margin:0;padding:0;}
.li-pl-row{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);}
.li-pl-row:last-child{border-bottom:0;}
.li-pl-row input[type=checkbox]{width:20px;height:20px;margin-top:3px;accent-color:var(--green);flex-shrink:0;}
.li-pl-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.li-pl-row.is-done strong{text-decoration:line-through;color:var(--ink-faint);}
.li-planner-dialog{border:0;border-radius:18px;padding:0;width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 32px);background:var(--card);color:var(--ink);box-shadow:0 20px 60px rgba(0,0,0,.3);}
.li-planner-dialog::backdrop{background:rgba(20,18,14,.45);}
.li-planner-dialog-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;background:var(--card);border-bottom:1px solid var(--line);}
.li-planner-dialog-head h2{margin:0;font-size:1.15rem;}
.li-dialog-close{width:44px;height:44px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);font-size:1.4rem;cursor:pointer;}
.li-planner-day{padding:12px 20px 0;}
.li-planner-day h3{margin:0 0 4px!important;font-size:.95rem;}
.li-planner-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 20px 20px;}
.li-planner-form small{font-weight:400;color:var(--ink-soft);font-size:.76rem;}
.li-planner-form .li-check{flex-direction:row;align-items:center;gap:10px;font-weight:600;}
.li-planner-form .li-check input{width:20px;height:20px;min-height:0;accent-color:var(--green);}
.li-planner-form-actions{display:flex;gap:10px;flex-wrap:wrap;}
.li-planner-form-actions .li-danger{margin-left:auto;}

/* ---------- Learning Priorities ---------- */
.li-lp{margin-top:16px;}
.li-seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--paper);border:1px solid var(--line);margin:16px 0 4px;flex-wrap:wrap;}
.li-seg button{min-height:40px;padding:0 16px;border-radius:999px;border:0;background:transparent;color:var(--ink-soft);font:700 .88rem var(--font-body);cursor:pointer;}
.li-seg button .mono{font-weight:600;margin-left:4px;opacity:.8;}
.li-seg button.is-active{background:var(--ink);color:var(--paper);}
.li-assigned-list,.li-library-results{list-style:none;margin:0;padding:0;}
.li-assigned-list li,.li-library-results li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);flex-wrap:wrap;}
.li-assigned-list li a,.li-library-results li a{font-weight:700;color:var(--ink);flex:1 1 200px;min-width:0;}
.li-lp-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px;margin:18px 0 6px;}

/* ---------- Portfolio ---------- */
.li-upload-card{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:18px;margin-top:10px;}
.li-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:24px;border:2px dashed var(--line-strong);border-radius:16px;background:var(--paper);color:var(--ink-soft);cursor:pointer;min-height:180px;}
.li-dropzone:hover,.li-dropzone:focus-within{border-color:var(--green);background:var(--green-soft);color:var(--green-strong);}
.li-dropzone strong{color:var(--ink);word-break:break-all;}
.li-dropzone span{font-size:.82rem;}
.li-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.li-upload-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.li-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.li-chip{min-height:38px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--card);color:var(--ink);font:700 .84rem var(--font-body);cursor:pointer;}
.li-chip .mono{font-weight:600;color:var(--ink-soft);margin-left:4px;}
.li-chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.li-chip.is-active .mono{color:var(--paper);}
.li-pf-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;}
.li-pf-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card);display:flex;flex-direction:column;min-width:0;}
.li-pf-thumb{height:120px;background:var(--paper);display:grid;place-items:center;border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:1rem;font-weight:600;}
.li-pf-thumb img{width:100%;height:100%;object-fit:cover;border-radius:0;}
.li-pf-body{padding:14px;display:flex;flex-direction:column;gap:6px;flex:1;}
.li-pf-body strong{font-size:1rem;line-height:1.3;}
.li-pf-note{font-size:.84rem;color:var(--ink-soft);}
.li-pf-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:6px;}
.li-pf-actions a{font-weight:700;font-size:.86rem;}
.li-pf-actions form{margin:0;margin-left:auto;}
.li-pf-type-edit{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.li-pf-type-edit select{min-height:34px;padding:4px 8px;border:1px solid var(--line-strong);border-radius:8px;background:var(--card);color:var(--ink)}
.li-pf-actions .li-link-btn{color:var(--rust-strong);}
.li-export-details{margin-top:20px;border-top:1px solid var(--line);padding-top:12px;}
.li-export-details summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center;}
.li-export-row{display:flex;flex-wrap:wrap;gap:8px;}
.li-record-summary{margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--paper);}
.li-record-summary h3{margin:0 0 4px;}.li-attendance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:14px;}
.li-attendance-grid>div{display:grid;gap:3px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--card);}.li-attendance-grid b{color:var(--blue-strong);}.li-attendance-grid span{font-size:.78rem;color:var(--ink-soft);}
.li-form-msg.li-ok{background:var(--green-soft);color:var(--green-strong);padding:10px 14px;border-radius:10px;}

/* ---------- Budget ---------- */
.li-budget-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;margin:18px 0 8px;}
.li-budget-form .li-form-msg{grid-column:1 / -1;margin:0;}
.li-billing-intro{max-width:760px;white-space:normal;overflow:visible;}
.li-plan-card .li-plan-price{white-space:nowrap;display:flex;align-items:baseline;gap:5px;}
.li-plan-card .li-plan-period{font-size:.66em;font-weight:600;}
.li-plan-card .li-plan-features{margin-top:10px;}

@media (max-width:900px){
	.li-featured-grid{grid-template-columns:1fr 1fr;}
	.li-budget-form{grid-template-columns:1fr 1fr;}
	.li-upload-card{grid-template-columns:1fr;}
	.li-dropzone{min-height:130px;}
}
@media (max-width:640px){
	.li-featured-grid,.li-upload-fields,.li-planner-form,.li-lp-search,.li-budget-form{grid-template-columns:1fr;}
	.li-planner-filter{margin-left:0;width:100%;}
	.li-planner-grid,.li-planner .li-calendar-weekdays{gap:3px;}
	.li-pl-day{min-height:52px;padding:4px;align-items:center;border-radius:8px;}
	.li-pl-chips{display:none;}
	.li-pl-num{width:24px;height:24px;font-size:.8rem;}
	.li-pl-day.has-items{border-color:var(--green);background:var(--green-soft);}
	.li-pl-count{display:block;font-size:.66rem;color:var(--green-strong);font-weight:600;line-height:1;}
	.li-planner .li-calendar-weekdays span{font-size:.7rem;}
	.li-planner-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;margin:0;}
	.li-kid-grid{grid-template-columns:1fr;}
	.li-seg{display:flex;}
	.li-seg button{flex:1;padding:0 8px;}
}
.li-done-toggle{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.86rem;min-height:36px;}
.li-done-toggle input{width:20px;height:20px;accent-color:var(--green);}
/* Learning Priorities: compact tool checklist */
.li-lp-kids{margin:14px 0 0;}
.li-lp .li-priority-tools > h3,.li-lp .li-priority-tools > .page-dek{display:none;}
.li-lp .li-tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;}
.li-lp .li-tool-card{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 12px;border-radius:12px;}
.li-lp .li-tool-card .li-tool-desc,.li-lp .li-tool-card .li-tool-meta{display:none;}
.li-lp .li-tool-card .li-tool-name{order:2;flex:1 1 60%;margin:0;font-size:.92rem;line-height:1.3;}
.li-lp .li-tool-card .li-tool-toggle{order:1;display:flex;align-items:center;gap:8px;}
.li-lp .li-tool-card .li-tool-toggle .tag{display:none;}
.li-lp .li-tool-card .li-tool-toggle input{width:20px;height:20px;accent-color:var(--green);margin:0;}
.li-lp .li-tool-card .li-tool-open{order:3;min-height:32px;padding:4px 12px;font-size:.78rem;}
.li-lp .li-tool-card.is-enabled{border-color:var(--green);background:var(--green-soft);}
.li-shell li{max-width:none;}
.li-pf-thumb{overflow:hidden;}
.li-pf-thumb img{display:block;width:100%!important;height:120px!important;max-width:none;object-fit:cover;}
.li-upload-card .li-dropzone{align-self:stretch;}
.li-table-wrap{position:relative;max-width:100%;}

/* =====================================================================
   GROWTH LAYOUT (design 5A · "Today's growth plan")
   Parent and Student Dashboards. Left rail, three large cards for
   today's Learning Tool (slate), Article (moss) and Experience (rust),
   today's list, up next, and a right column where the LearnIndex Score
   is only a small "starting point". Every colour is paired with a word.
   Tokens only, so dark mode follows the site.
   ===================================================================== */
.lg-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:26px;align-items:start;width:100%;max-width:1120px;margin:0 auto;padding:28px 24px 80px;min-height:0;}
.lg-shell *{box-sizing:border-box;}
.lg-shell li{max-width:none;}
.lg-main{min-width:0;scroll-margin-top:90px;}
.lg-main > .li-tab-panels > .li-tab-panel > .card,
.lg-main > .li-tab-panels > .li-tab-panel > .wrap{max-width:none;}

/* ---- rail */
.lg-rail{position:sticky;top:88px;display:flex;flex-direction:column;gap:20px;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:18px 14px;max-height:calc(100vh - 110px);overflow:auto;}
.lg-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px;}
.lg-nav-link{display:flex;align-items:center;min-height:42px;padding:9px 12px;border-radius:12px;color:var(--ink-soft);text-decoration:none;font-size:.93rem;font-weight:500;line-height:1.2;}
.lg-nav-link.is-wide{grid-column:span 2;}
.lg-nav-link:hover{background:var(--paper);color:var(--ink);}
.lg-nav-link.is-active{background:var(--ink);color:var(--paper);font-weight:600;}
.lg-eyebrow{display:block;font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);}
.lg-kids{display:flex;flex-direction:column;gap:4px;}
.lg-kids .lg-eyebrow{padding:0 6px 4px;}
.lg-kid{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px;border:1.5px solid transparent;color:var(--ink);text-decoration:none;}
.lg-kid:hover{background:var(--paper);}
.lg-kid.is-active{background:var(--green-soft);border-color:var(--green);}
.lg-kid-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;}
.lg-kid-body strong{font-size:.98rem;line-height:1.2;}
.lg-kid-meta{font-size:.8rem;color:var(--ink-soft);line-height:1.3;}
.lg-kid .lg-bar{margin-top:5px;}
.lg-kid.is-active .lg-bar{background:var(--card);}
.lg-av{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;flex:none;font-weight:700;font-size:.95rem;color:#fff;}
.lg-av.is-moss{background:#3C6E47;}.lg-av.is-slate{background:#3B6A80;}.lg-av.is-rust{background:#A8452F;}
.lg-bar{display:block;height:6px;border-radius:999px;background:var(--line);overflow:hidden;}
.lg-bar > span{display:block;height:100%;border-radius:999px;background:var(--green);transition:width .3s ease;}
.lg-add{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:10px 14px;}
.lg-add summary{font-weight:700;cursor:pointer;min-height:32px;display:flex;align-items:center;list-style:none;}
.lg-add summary::-webkit-details-marker{display:none;}
.lg-form{display:flex;flex-direction:column;gap:10px;margin-top:10px;}
.lg-form label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:600;color:var(--ink);}
.lg-shell input[type=text],.lg-shell input[type=password],.lg-shell input[type=date],.lg-shell input[type=email],.lg-shell select,.lg-shell textarea{min-height:44px;border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;font:inherit;font-size:.92rem;color:var(--ink);background:var(--card);width:100%;}
.lg-shell textarea{min-height:88px;resize:vertical;}
.lg-rail-foot{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap;}
.lg-rail-foot .lg-btn.is-active{background:var(--blue-soft);border-color:var(--blue);color:var(--blue-strong);}

/* ---- buttons and pills */
.lg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;font:600 .9rem var(--font-body);border:1.5px solid transparent;text-decoration:none;cursor:pointer;white-space:nowrap;line-height:1.1;}
.lg-btn.is-sm{min-height:36px;padding:0 14px;font-size:.82rem;}
.lg-btn.is-moss{background:#3C6E47;color:#fff;}
.lg-btn.is-slate{background:#3B6A80;color:#fff;}
.lg-btn.is-white{background:#fff;border-color:#fff;color:#211E18;}
.lg-btn.is-ink{background:#211E18;border-color:#211E18;color:#fff;}
.lg-btn.is-rust{background:#A8452F;color:#fff;}
.lg-btn.is-moss:hover{background:#2A4F33;color:#fff;}.lg-btn.is-slate:hover{background:#294C5C;color:#fff;}.lg-btn.is-rust:hover{background:#7C3524;color:#fff;}
.lg-btn.is-white:hover{background:#F3F1EA;border-color:#F3F1EA;color:#211E18;}.lg-btn.is-ink:hover{background:#000;border-color:#000;color:#fff;}
.lg-btn.is-quiet{background:var(--card);border-color:var(--line-strong);color:var(--ink);}
.lg-btn.is-quiet:hover{background:var(--paper);}
.lg-btn.is-static{cursor:default;}
.lg-btn[disabled]{opacity:.7;cursor:default;}
.lg-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:.74rem;font-weight:600;white-space:nowrap;}
.lg-pill.is-tool{background:var(--blue-soft);color:var(--blue-strong);}
.lg-pill.is-article{background:var(--green-soft);color:var(--green-strong);}
.lg-pill.is-experience{background:var(--rust-soft);color:var(--rust-strong);}
.lg-pill.is-white{background:var(--card);}
.lg-muted{color:var(--ink-soft);font-size:.85rem;}
.lg-fine{font-size:.76rem;}
.li-link-btn.lg-link-danger{color:var(--rust);font:inherit;font-size:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;}

/* ---- header */
.lg-child{display:flex;flex-direction:column;gap:22px;}
.lg-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.lg-child > .lg-head{background:#3B6A80;color:#fff;border:1.5px solid #294C5C;border-radius:18px;padding:20px;box-shadow:var(--shadow);}
.lg-child > .lg-head .lg-muted,.lg-child > .lg-head .lg-eyebrow{color:rgba(255,255,255,.86);}
.lg-child > .lg-head a:not(.lg-btn),.lg-child > .lg-head .li-link-btn{color:#fff;}
.lg-head-text{flex:1;min-width:260px;display:flex;flex-direction:column;gap:4px;}
.lg-title{margin:0;font-size:clamp(1.55rem,3vw,2rem);font-weight:800;letter-spacing:-.02em;line-height:1.15;}
.lg-head-meta{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;}
.lg-head-meta a{font-weight:600;}
.li-single-line-intro{max-width:none;white-space:nowrap;overflow-x:auto;padding-bottom:2px;}

/* ---- the three cards */
.lg-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.lg-big{border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0;border:1px solid transparent;}
.lg-big.is-tool{background:var(--blue-soft);--lg-c:var(--blue-strong);}
.lg-big.is-article{background:var(--green-soft);--lg-c:var(--green-strong);}
.lg-big.is-experience{background:var(--rust-soft);--lg-c:var(--rust-strong);}
.lg-big-top{display:flex;justify-content:space-between;align-items:center;}
.lg-big .lg-pill{color:var(--lg-c);}
.lg-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:var(--card);color:var(--lg-c);}
.lg-big h3{margin:4px 0 0;font-size:1.3rem;font-weight:800;line-height:1.2;color:var(--ink);}
.lg-big-meta{color:var(--lg-c);font-size:.85rem;font-weight:500;}
.lg-big p{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.5;}
.lg-big p.lg-why{color:var(--ink);}
.lg-big > .lg-btn,.lg-big-actions{margin-top:auto;}
.lg-big-actions{display:flex;gap:8px;flex-wrap:wrap;}
.lg-big-actions .lg-btn{flex:1 1 auto;}
.lg-big.is-complete{opacity:.7;}
.lg-big.is-complete h3{text-decoration:line-through;}

/* ---- split: list + side */
.lg-split{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start;}
.lg-col,.lg-side{display:flex;flex-direction:column;gap:18px;min-width:0;}
.lg-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;gap:12px;min-width:0;}
.lg-card h2{margin:0;font-size:1.08rem;font-weight:700;}
.lg-card p{margin:0;}
.lg-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.lg-card-head a{font-size:.82rem;font-weight:600;}
.lg-card.is-moss-wash{background:var(--green-soft);box-shadow:none;border-color:transparent;}
.lg-card.is-moss-wash .lg-eyebrow{color:var(--green-strong);}
.lg-rows{list-style:none;margin:0;padding:0;}
.lg-rows li{border-bottom:1px solid var(--line);}
.lg-rows li:last-child{border-bottom:0;}
.lg-row{display:flex;align-items:center;gap:12px;padding:10px 0;cursor:pointer;min-height:44px;}
.lg-row-body{display:flex;flex-direction:column;flex:1;min-width:0;}
.lg-row-body strong{font-weight:600;}
.lg-row.is-done .lg-row-body strong{text-decoration:line-through;color:var(--ink-soft);}
.lg-cb{width:20px;height:20px;accent-color:#3C6E47;margin:0;flex:none;}
.lg-quick-add{display:flex;gap:8px;flex-wrap:wrap;}
.lg-quick-add input{flex:1 1 200px;}
.lg-form-msg{flex-basis:100%;margin:0;font-size:.82rem;color:var(--ink-soft);}
.lg-form-msg:empty{display:none;}
.lg-queue{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;}
.lg-queue-item{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;}
.lg-queue-item strong{font-weight:600;line-height:1.3;}
.lg-queue-item a{color:var(--ink);text-decoration:none;}
.lg-queue-item a:hover{text-decoration:underline;}
.lg-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.lg-stats > div{border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px;}
.lg-stats b{font-size:1.6rem;font-weight:600;line-height:1.1;}
.lg-stats span{font-size:.76rem;line-height:1.3;}
.lg-stats .is-tool{background:var(--blue-soft);color:var(--blue-strong);}
.lg-stats .is-article{background:var(--green-soft);color:var(--green-strong);}
.lg-stats .is-experience{background:var(--rust-soft);color:var(--rust-strong);}
.lg-stats .is-plain{background:var(--paper);color:var(--ink);}
.lg-soon,.lg-links,.lg-subjects{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.lg-soon li{display:flex;flex-direction:column;}
.lg-links li,.lg-subjects li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;}
.lg-subjects li a{display:flex;justify-content:space-between;align-items:baseline;gap:10px;width:100%;color:inherit;text-decoration:none;border-radius:8px;padding:4px 6px;margin:-4px -6px;}
.lg-subjects li a:hover,.lg-subjects li a:focus-visible{color:var(--moss,#45624b);background:rgba(69,98,75,.08);}
.lg-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;}
.lg-links a{font-weight:600;}
.lg-subjects{gap:6px;font-size:.86rem;}
.lg-start{gap:8px;}
.lg-start-line{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.lg-start-line b{font-size:1.25rem;font-weight:600;}
.lg-score-gauge-card{text-align:center;align-items:center;}
.lg-score-gauge-card .lg-eyebrow{align-self:flex-start;}
.lg-score-gauge{position:relative;display:grid;width:164px;max-width:82%;aspect-ratio:1;place-items:center;border-radius:50%;background:conic-gradient(var(--blue) var(--lg-score-progress),var(--line) 0);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--blue) 15%,transparent);}
.lg-score-gauge::before{content:"";position:absolute;inset:13px;border-radius:50%;background:var(--card);box-shadow:0 4px 15px rgba(33,30,24,.09);}
.lg-score-gauge>div{position:relative;z-index:1;display:grid;gap:2px;}
.lg-score-gauge b{font-size:2rem;line-height:1;font-weight:700;}
.lg-score-gauge span{color:var(--ink-soft);font-size:.72rem;font-weight:700;}
.lg-score-gauge-date{font-size:.82rem;font-weight:700;}
.lg-score-gauge-card>.lg-btn{width:100%;justify-content:center;}
.lg-score-gauge-card .lg-details{width:100%;text-align:left;}
.lg-details summary{font-size:.84rem;font-weight:600;color:var(--blue);cursor:pointer;min-height:32px;display:flex;align-items:center;}
.lg-details[open] summary{margin-bottom:8px;}
.lg-details > * + *{margin-top:8px;}
.lg-next-checkup{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end;}
.lg-next-checkup label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;}
.lg-next-checkup .lg-btn{grid-column:span 2;}
.lg-welcome{gap:10px;}

/* ---- student extras */
.lg-complete{background:var(--green-soft);color:var(--green-strong);border-radius:14px;padding:12px 14px;font-weight:600;}
.lg-milestone{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline;background:var(--blue-soft);color:var(--blue-strong);border-radius:14px;padding:10px 14px;font-size:.88rem;}
.lg-milestones{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.lg-milestones li{display:flex;flex-direction:column;}
.lg-more{margin-top:28px;}
.lg-more > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:18px 20px;}
.lg-more > summary::-webkit-details-marker{display:none;}
.lg-more > summary h2{margin:0;font-size:1.08rem;}
.lg-more > summary::after{content:"Show";font-size:.82rem;font-weight:600;color:var(--blue);}
.lg-more[open] > summary::after{content:"Hide";}
.lg-more[open] > summary{border-radius:20px 20px 0 0;border-bottom:0;box-shadow:none;}
.lg-more-body{background:var(--card);border:1px solid var(--line);border-top:0;border-radius:0 0 20px 20px;padding:4px 20px 22px;}
.lg-section{margin-top:28px;}

/* ---- responsive */
@media (max-width:1080px){
	.lg-split{grid-template-columns:1fr;}
	.lg-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;}
}
@media (max-width:980px){
	.lg-shell{grid-template-columns:minmax(0,1fr);padding:18px 16px 60px;gap:18px;}
	.lg-rail,.lg-main{min-width:0;max-width:100%;}
	.lg-rail{position:static;max-height:none;overflow:visible;padding:12px;gap:14px;}
	.lg-nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:thin;}
	.lg-nav-link{white-space:nowrap;flex:none;}
	.lg-kids{flex-direction:row;overflow-x:auto;gap:8px;align-items:stretch;}
	.lg-kids .lg-eyebrow{display:none;}
	.lg-kid{flex:0 0 auto;min-width:190px;border-color:var(--line);}
	.lg-rail-foot{margin-top:0;}
	.lg-cards{grid-template-columns:1fr;}
}
@media (min-width:640px) and (max-width:980px){
	.lg-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
	.lg-cards > :last-child:nth-child(odd){grid-column:span 2;}
}
@media (max-width:520px){
	.lg-big{padding:18px;}
	.lg-card{padding:16px;}
	.lg-head .lg-btn{width:100%;}
	.lg-side{display:flex;align-items:stretch;}
}
@media (prefers-color-scheme: dark){
	:root:not([data-theme="light"]) .lg-nav-link.is-active{background:var(--green-soft);color:var(--green-strong);}
}
:root[data-theme="dark"] .lg-nav-link.is-active{background:var(--green-soft);color:var(--green-strong);}
.lg-form-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;}
.lg-rail-foot p{margin:0;}
.lg-more-body .li-priority-child{margin-top:12px;}
.lg-more-body .li-tools-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}

/* ---- other sections (Planner, Learning Priorities, Portfolio, Budget,
   Billing, Settings, student tool list) pick up the same card, button
   and field treatment inside the growth layout. */
.lg-shell .card{border-radius:20px;padding:22px;}
.lg-shell .li-tab-panel > .card + .card,.lg-shell .li-tab-panel > * + .card{margin-top:18px;}
.lg-shell .card > h2:first-child,.lg-shell .li-tab-panel h2{font-size:1.2rem;font-weight:700;}
.lg-shell .btn{font-weight:600;border-radius:999px;}
.lg-shell .btn-primary{background:#3C6E47;color:#fff;}
.lg-shell .btn-primary:hover{background:#2A4F33;color:#fff;}
.lg-shell .btn-secondary{background:var(--card);border-color:var(--line-strong);}
.lg-shell .btn-secondary:hover{background:var(--paper);}
.lg-shell .li-tab-panel input[type=text],.lg-shell .li-tab-panel input[type=number],.lg-shell .li-tab-panel input[type=date],.lg-shell .li-tab-panel input[type=email],.lg-shell .li-tab-panel input[type=search],.lg-shell .li-tab-panel select,.lg-shell .li-tab-panel textarea{border-radius:14px;border:1.5px solid var(--line);min-height:44px;background:var(--card);}
.lg-shell .li-tool-card,.lg-shell .li-kid-card,.lg-shell .li-plan-card{border-radius:16px;}
.lg-more-body .li-priority-tools h3{font-size:1.02rem;margin-top:18px;}

/* =====================================================================
   PAGE ORDER LIKE THE CURRICULUM PAGE
   About this dashboard → hero card (greeting, today's progress,
   children) → menu row → sections, all full width in the site's
   centred column. Replaces the left rail.
   ===================================================================== */
.lg-shell{display:block;max-width:1120px;padding:0 24px 80px;}
.lg-shell > * + *{margin-top:18px;}
.lg-shell > .lg-menu{margin-top:18px;}
.lg-main{margin-top:14px;}

/* About bar (matches "About this curriculum") */
.lg-about{background:var(--paper);border:1.5px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:.2rem 1.2rem;}
.lg-about summary{cursor:pointer;padding:.8rem 0;font-weight:600;list-style:none;display:flex;align-items:center;gap:.5rem;min-height:44px;}
.lg-about summary::-webkit-details-marker{display:none;}
.lg-about summary::before{content:"ⓘ";color:var(--blue);}
.lg-about p{margin:.2rem 0 .9rem;max-width:none;line-height:1.6;}
.lg-about b{color:var(--ink);}

/* Hero card (matches the curriculum year card) */
.lg-hero{position:relative;border:1.5px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:1.5rem;overflow:hidden;background:linear-gradient(120deg,var(--blue-soft),var(--card) 58%,var(--green-soft));}
.lg-hero-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(230px,.75fr);gap:1.25rem;align-items:stretch;}
.lg-hero-primary{min-width:0;display:flex;flex-direction:column;justify-content:center;}
.lg-hero-top{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;}
.lg-hero-who{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 280px;}
.lg-profile-photo-picker{position:relative;flex:0 0 auto;display:flex;align-items:center;gap:8px;}
.lg-profile-photo-frame{display:grid;place-items:center;width:74px;height:74px;border-radius:22px;border:4px solid var(--card);background:var(--blue);color:#fff;font-size:1.65rem;font-weight:800;box-shadow:var(--shadow);overflow:hidden;}
.lg-profile-photo{display:block;width:100%;height:100%;object-fit:cover;}
.lg-profile-photo-picker form{position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;z-index:3;}
.lg-profile-photo-action,.lg-profile-photo-remove{display:inline-flex;align-items:center;justify-content:center;min-height:25px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink);font:700 .62rem var(--font-body);white-space:nowrap;padding:3px 8px;cursor:pointer;box-shadow:0 2px 8px rgba(33,30,24,.1);}
.lg-profile-photo-action input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
.lg-profile-photo-remove{color:var(--rust-strong);}
.lg-profile-photo-action:hover,.lg-profile-photo-remove:hover{border-color:var(--green);background:var(--paper);}
.lg-hero-title{font-size:1.3rem;font-weight:700;margin:0 auto 0 0;letter-spacing:-.01em;}
.lg-hero-date{font-size:.85rem;color:var(--ink-soft);white-space:nowrap;}
.lg-hero-top-pills{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.lg-hero-big{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap;margin:.5rem 0 .8rem;}
.lg-hero-big b{font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;}
.lg-hero-big span{font-size:1.5rem;font-weight:700;color:var(--blue-strong);font-family:var(--font-mono);}
.lg-hero-bar{display:block;height:.85rem;border-radius:999px;background:var(--line);overflow:hidden;}
.lg-hero-bar i{display:block;height:100%;border-radius:999px;background:var(--green);transition:width .5s;}
.lg-hero-note{margin:.8rem 0 0;font-size:.9rem;color:var(--ink-soft);}
.lg-hero-progress{min-height:150px;border:1px solid color-mix(in srgb,var(--blue) 24%,var(--line));border-radius:20px;padding:1rem;background:color-mix(in srgb,var(--card) 78%,var(--blue-soft));display:flex;flex-direction:column;gap:10px;}
.lg-hero-progress h2{margin:0;font-size:1rem;color:var(--ink);}
.lg-hero-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1;}
.lg-hero-progress-grid>div{border-radius:13px;padding:9px 10px;display:flex;flex-direction:column;justify-content:center;min-width:0;}
.lg-hero-progress-grid b{font-size:1.35rem;line-height:1;color:inherit;}
.lg-hero-progress-grid span{margin-top:4px;font-size:.68rem;line-height:1.25;color:inherit;}
.lg-hero-progress-grid .is-tool{background:var(--blue-soft);color:var(--blue-strong);}
.lg-hero-progress-grid .is-article{background:var(--green-soft);color:var(--green-strong);}
.lg-hero-progress-grid .is-experience{background:var(--rust-soft);color:var(--rust-strong);}
.lg-hero-progress-grid .is-plain{background:var(--paper);color:var(--ink);}
.lg-hero-kids{display:flex;flex-wrap:wrap;gap:10px;margin-top:1rem;align-items:flex-start;}
.lg-hero-kids .lg-kid{flex:0 1 220px;background:var(--card);border-color:var(--line);min-height:64px;}
.lg-hero-kids .lg-kid.is-active{background:var(--green-soft);border-color:var(--green);}
.lg-hero-kids .lg-add{flex:0 1 auto;background:var(--card);border:1.5px solid var(--line);border-radius:16px;padding:0;}
.lg-hero-kids .lg-add summary{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;min-height:64px;}
.lg-hero-kids .lg-add[open]{flex:1 1 100%;padding:0 14px 14px;}
.lg-hero-kids .lg-add[open] summary{padding-left:0;}
.is-teacher-dashboard .lg-hero-kids{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));max-height:360px;overflow:auto;padding:4px;align-items:stretch;}
.is-teacher-dashboard .lg-hero-kids .lg-kid{min-width:0;flex:none;}
.is-teacher-dashboard .lg-hero-kids .lg-add{grid-column:1/-1;}
.is-teacher-dashboard .lg-hero-kids .lg-add:not([open]){justify-self:start;}
.lg-hero-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:1rem;}
.lg-hero-feature{position:relative;min-width:0;min-height:92px;border:1px solid transparent;border-radius:17px;padding:14px 42px 14px 14px;display:flex;align-items:center;gap:12px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;}
.lg-hero-feature.is-moss{background:var(--green-soft);border-color:color-mix(in srgb,var(--green) 38%,transparent);}
.lg-hero-feature.is-rust{background:var(--rust-soft);border-color:color-mix(in srgb,var(--rust) 32%,transparent);}
.lg-hero-feature:hover{transform:translateY(-1px);box-shadow:var(--shadow);}
.lg-hero-feature-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:var(--card);font-weight:800;color:var(--ink);}
.lg-hero-feature div{display:flex;flex-direction:column;min-width:0;gap:2px;}
.lg-hero-feature div>span{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);}
.lg-hero-feature strong{font-size:.93rem;line-height:1.25;color:var(--ink);}
.lg-hero-feature small{font-size:.76rem;line-height:1.35;color:var(--ink-soft);}
.lg-hero-feature>a{position:absolute;inset:0;border-radius:inherit;}
.lg-hero-feature:has(>a)::after{content:"→";position:absolute;right:15px;top:50%;transform:translateY(-50%);font-weight:800;color:var(--ink-soft);}
.li-teacher-intro{border-top:5px solid #2f6fdd;background:linear-gradient(135deg,#f5f9ff,#fff);}
.li-class-notice{padding:12px 16px;border-radius:10px;background:#e8f5ec;color:#225a31;font-weight:800;border:1px solid #b9dfc3;}
.li-class-grid{display:grid;gap:20px;margin-top:20px;}
.li-class-card{display:grid;gap:18px;}
.li-class-add{padding:14px;background:#f7f9fc;border:1px solid #e1e7ef;border-radius:12px;}
.li-class-roster{overflow-x:auto;border:1px solid #e5e7eb;border-radius:12px;}
.li-class-roster table{width:100%;border-collapse:collapse;min-width:680px;}
.li-class-roster th,.li-class-roster td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:middle;}
.li-class-roster th{background:#f7f8fa;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#5c6470;}
.li-class-roster tr:last-child td{border-bottom:0;}
.li-class-roster .li-class-select{width:46px;text-align:center;padding-left:12px;padding-right:6px;}
.li-class-roster .li-class-select input{width:18px;height:18px;accent-color:#2f6fdd;cursor:pointer;}
.li-class-actions{display:flex;gap:8px;align-items:center;white-space:nowrap;}
.li-class-actions .lg-btn{min-height:36px;padding:7px 12px;}
.li-class-assign{padding:18px;border:2px solid #dfe8f5;border-radius:14px;background:#fbfdff;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.li-class-assign h3,.li-class-assign .li-assignment-selection,.li-class-assign button{grid-column:1/-1;}
.li-student-checks{display:flex;flex-wrap:wrap;gap:10px 18px;padding:12px;background:#fff;border-radius:10px;border:1px solid #e5e7eb;}
.li-student-checks label{display:flex;align-items:center;gap:6px;}
.li-teacher-work{border-left:5px solid #2f6fdd;}
.li-percentage-results{margin-top:16px;border-top:4px solid var(--blue);}
.li-percentage-results ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px;}
.li-percentage-results li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--paper);}
.li-percentage-results li span{display:grid;gap:2px;min-width:0;}
.li-percentage-results li strong{overflow-wrap:anywhere;}
.li-percentage-results li small{color:var(--ink-soft);font-weight:700;}
.li-percentage-results li b{flex:0 0 auto;min-width:62px;text-align:center;padding:7px 9px;border-radius:999px;font-family:var(--font-mono);}
.li-percentage-results li b.is-strong{background:var(--green-soft);color:var(--green-strong);}
.li-percentage-results li b.is-growing{background:var(--blue-soft);color:var(--blue-strong);}
.li-percentage-results li b.is-review{background:var(--rust-soft);color:var(--rust-strong);}
@media(max-width:700px){.li-class-assign{grid-template-columns:1fr}.li-class-assign>*{grid-column:1}.li-class-add{display:grid}.li-class-add .lg-btn{width:100%;justify-content:center}}
.lg-av.is-add{background:var(--paper);color:var(--ink);border:1.5px dashed var(--line-strong);}
.lg-form-full{grid-column:1/-1;margin:0;}
.lg-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:.9rem;}
.lg-hero-pills{display:flex;gap:.5rem;flex-wrap:wrap;}
.lg-hpill{font-family:var(--font-mono);font-size:.76rem;font-weight:600;letter-spacing:.03em;padding:6px 13px;border-radius:999px;display:inline-block;}
.lg-hpill.is-slate{background:var(--blue-soft);color:var(--blue-strong);}
.lg-hpill.is-moss{background:var(--green-soft);color:var(--green-strong);}
.lg-hpill.is-rust{background:var(--rust-soft);color:var(--rust-strong);}
.lg-hpill.is-plain{background:var(--paper);color:var(--ink);border:1px solid var(--line);}
.lg-hero-actions{display:flex;gap:8px;flex-wrap:wrap;}
.lg-hero-menu{border-top:1.5px solid var(--line);margin:1.15rem -1.4rem -1.4rem;padding:1rem 1.4rem;background:color-mix(in srgb,var(--paper) 55%,var(--card));}
.lg-hero-menu .lg-menu{width:100%;}

/* Menu row (matches the curriculum toolbar buttons) */
.lg-menu{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;scroll-margin-top:90px;}
.lg-menu-main,.lg-menu-side{display:flex;gap:.6rem;flex-wrap:wrap;}
.lg-menu-link{display:inline-flex;align-items:center;min-height:3rem;padding:0 1rem;border-radius:14px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font-weight:700;font-size:.92rem;text-decoration:none;white-space:nowrap;}
.lg-menu-link:hover{border-color:var(--green);color:var(--ink);}
.lg-menu-link.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.lg-menu-link.is-quiet{font-weight:600;color:var(--ink-soft);}
.lg-menu-link.is-quiet.is-active{color:var(--paper);}
.lg-settings-menu{position:relative;}
.lg-settings-menu>summary{list-style:none;cursor:pointer;background:#A8452F!important;border-color:#A8452F!important;color:#fff!important;}
.lg-settings-menu>summary::-webkit-details-marker{display:none;}
.lg-settings-menu>summary:hover,.lg-settings-menu>summary.is-active{background:#7C3524!important;border-color:#7C3524!important;color:#fff!important;}
.lg-settings-submenu{position:absolute;right:0;top:calc(100% + 8px);z-index:20;display:grid;min-width:220px;padding:8px;background:var(--card);border:1.5px solid var(--line);border-radius:14px;box-shadow:var(--shadow);}
.lg-settings-submenu a{padding:10px 12px;border-radius:9px;color:var(--ink);font-weight:650;text-decoration:none;white-space:nowrap;}
.lg-settings-submenu a:hover,.lg-settings-submenu a.is-active{background:var(--rust-soft);color:var(--rust-strong);}
.lg-menu-link.is-settings{background:#A8452F!important;border-color:#A8452F!important;color:#fff!important;}
.lg-menu-link.is-settings:hover,.lg-menu-link.is-settings.is-active{background:#7C3524!important;border-color:#7C3524!important;color:#fff!important;}
.lg-settings-subnav{display:flex;flex-wrap:wrap;gap:10px;padding:12px;background:var(--paper);border:1.5px solid var(--line);border-radius:16px;box-shadow:var(--shadow);}
.lg-settings-subnav a{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;border:1.5px solid var(--line-strong);border-radius:12px;background:var(--card);color:var(--ink);font-weight:700;text-decoration:none;}
.lg-settings-subnav a:hover,.lg-settings-subnav a.is-active{background:var(--rust-soft);border-color:var(--rust);color:var(--rust-strong);}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .lg-menu-link.is-active{background:var(--green-soft);border-color:var(--green);color:var(--green-strong);} }
:root[data-theme="dark"] .lg-menu-link.is-active{background:var(--green-soft);border-color:var(--green);color:var(--green-strong);}

/* Sections: per-child heading is now an h2 under the menu */
.lg-head .lg-title{font-size:clamp(1.3rem,2.4vw,1.6rem);}
#li-child-overview,#lg-record,#li-child-priorities,#li-child-account{scroll-margin-top:90px;}

@media (max-width:980px){
	.lg-shell{padding:0 16px 60px;}
}
@media (max-width:640px){
	.li-single-line-intro{white-space:normal;overflow:visible;}
	.lg-hero{padding:1.1rem;}
	.lg-profile-photo-frame{width:64px;height:64px;border-radius:19px;}
	.lg-hero-layout{grid-template-columns:1fr;}
	.lg-hero-progress{min-height:0;}
	.lg-hero-features{grid-template-columns:1fr;}
	.lg-hero-top-pills{width:100%;}
	.lg-hero-menu{margin:1rem -1.1rem -1.1rem;padding:1rem 1.1rem;}
	.lg-hero-big b{font-size:1.5rem;}
	.lg-hero-big span{font-size:1.2rem;}
	.lg-hero-kids{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;}
	.lg-hero-kids .lg-kid{flex:0 0 200px;}
	.lg-hero-kids .lg-add[open]{flex:0 0 100%;}
	.lg-menu,.lg-menu-main{flex-wrap:nowrap;overflow-x:auto;}
	.lg-menu{padding-bottom:4px;}
	.lg-menu-main,.lg-menu-side{flex:none;}
	.lg-hero-actions,.lg-hero-actions .lg-btn{width:100%;}
}
.lg-assessment-readiness{display:grid;grid-template-columns:1fr auto;gap:5px 12px;margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--green-p)}
.lg-assessment-readiness .lg-muted{grid-column:1/-1;margin:0}
