/* v11.10 Family Flow: larger identity + real-life learning + prepare ahead */
.brand h1{font-size:clamp(1.18rem,2vw,1.42rem);line-height:1.08}
.family-home-welcome h2{font-size:clamp(2.15rem,5vw,3.35rem);line-height:1.02}
#familyTodayBtn{order:0}#quickLogLearningBtn{order:1}#prepareAheadBtn{order:2}#familyPlanBtn{order:3}#familyManageChildrenBtn{order:4}
.family-flow-home{margin-top:14px;margin-bottom:14px}
.family-flow-home-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:10px}
.family-flow-home-head h3{font-size:1.25rem;margin:.2rem 0}
.recent-learning-list{display:grid;gap:8px}
.recent-learning-item{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #eee7db}
.recent-learning-item:first-child{border-top:0}
.recent-learning-item p{margin:4px 0 0}
.recent-learning-meta,.prepare-item-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font:.78rem system-ui,-apple-system,sans-serif;color:var(--muted)}
.family-flow-empty{padding:14px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font:.86rem system-ui,-apple-system,sans-serif}

.family-flow-dialog{width:min(760px,calc(100vw - 24px));max-height:min(88vh,900px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);box-shadow:0 24px 70px rgba(20,24,20,.24)}
.family-flow-dialog-wide{width:min(1080px,calc(100vw - 24px))}
.family-flow-dialog::backdrop{background:rgba(23,33,27,.44);backdrop-filter:blur(2px)}
.family-flow-shell{padding:22px}
.family-flow-dialog-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:16px}
.family-flow-dialog-head h2{font-size:clamp(1.65rem,3vw,2.35rem);margin:.2rem 0 .4rem}
.family-flow-dialog-head p{margin:0;color:var(--muted)}
.family-flow-close{font-size:1.6rem;padding:4px 9px;flex:0 0 auto}
.family-flow-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.family-flow-wide{grid-column:1/-1}
.family-flow-check{display:flex;gap:9px;align-items:flex-start;font:.86rem system-ui,-apple-system,sans-serif;color:var(--muted)}
.family-flow-check input{margin-top:3px}
.family-flow-dialog-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-top:17px}
.family-flow-dialog-actions .controls{margin:0}

.prepare-ahead-note{padding:11px 13px;border-left:3px solid var(--accent);border-radius:10px;background:#f8f3e9;margin-bottom:16px;font:.86rem system-ui,-apple-system,sans-serif}
.prepare-ahead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.prepare-ahead-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.prepare-ahead-heading h3{margin:.2rem 0}
.prepare-list{display:grid;gap:9px}
.prepare-item{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}
.prepare-item.prepared{opacity:.62;background:#f7f7f2}
.prepare-item.prepared strong,.prepare-item.prepared p{text-decoration:line-through}
.prepare-check{display:flex;gap:6px;align-items:flex-start;padding-top:3px}
.prepare-icon{font-size:1.05rem}
.prepare-item-body strong{display:block;margin-top:4px}
.prepare-item-body p{margin:3px 0 0;font-size:.88rem}
.prepare-track-notes{margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}
.prepare-track-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:11px 0;border-top:1px solid #eee7db}
.prepare-track-card:first-child{border-top:0}
.prepare-track-card p{margin:3px 0 0;color:var(--muted);font-size:.86rem}

@media(max-width:760px){
  .brand h1{font-size:1.1rem;white-space:normal;overflow:visible;text-overflow:clip}
  .family-home-welcome h2{font-size:clamp(2rem,10vw,2.75rem)}
  .family-flow-home-head,.family-flow-dialog-actions,.prepare-track-card{align-items:stretch;flex-direction:column}
  .family-flow-form,.prepare-ahead-grid{grid-template-columns:1fr}
  .family-flow-wide{grid-column:auto}
  .family-flow-shell{padding:17px}
  .family-flow-dialog{max-height:92vh}
  .family-flow-dialog-actions .controls{width:100%}
  .family-flow-dialog-actions .controls .btn{flex:1}
}

/* v11.10.1 — warmer default palette and stronger subject identity.
   This remains the same classical interface: color supports recognition and warmth,
   but does not change terminology, hierarchy, navigation, or teaching workflow. */
:root{
  --bg:#f7f0e4;
  --surface:#fffdf9;
  --surface-2:#f2e7d6;
  --line:#d9c8aa;
  --accent:#955f3c;
  --accent-2:#3f6554;
  --good:#e5efe4;
  --warn:#f6e8ca;
  --violet:#6b4b68;
  --subj-bible:#466a55;
  --subj-reading:#426b8a;
  --subj-writing:#9a643e;
  --subj-math:#76577c;
  --subj-science:#32766b;
  --subj-history:#a65e32;
}
body{
  background:
    radial-gradient(circle at 7% -4%,rgba(66,107,138,.09),transparent 30%),
    radial-gradient(circle at 100% 0%,rgba(149,95,60,.10),transparent 34%),
    linear-gradient(180deg,#f8f2e8 0%,var(--bg) 58%,#f5eddf 100%);
}
header{background:rgba(248,242,232,.95)}
.seal{background:linear-gradient(145deg,var(--deep),var(--accent-2));box-shadow:0 8px 24px rgba(23,33,27,.16)}
.eyebrow{color:var(--accent-2)}
.family-home-hero{
  border-left-color:var(--accent);
  background:linear-gradient(125deg,#fffdf9 0%,#fbf0df 57%,#edf4ef 100%);
  box-shadow:0 10px 30px rgba(80,58,38,.07);
}
.family-child-card{border-color:#d7c6aa;box-shadow:0 8px 24px rgba(54,43,31,.065)}
.family-child-card:nth-child(4n+1){border-top:3px solid #91ad9a}
.family-child-card:nth-child(4n+2){border-top:3px solid #8fa9bc}
.family-child-card:nth-child(4n+3){border-top:3px solid #c9a47b}
.family-child-card:nth-child(4n+4){border-top:3px solid #aa91ad}
.family-child-card:nth-child(4n+1) .family-avatar{background:#466a55}
.family-child-card:nth-child(4n+2) .family-avatar{background:#426b8a}
.family-child-card:nth-child(4n+3) .family-avatar{background:#955f3c}
.family-child-card:nth-child(4n+4) .family-avatar{background:#76577c}
.family-focus span:nth-child(4n+1){background:#e7efe8;color:#365541}
.family-focus span:nth-child(4n+2){background:#e8eef4;color:#35566e}
.family-focus span:nth-child(4n+3){background:#f4e9d8;color:#765036}
.family-focus span:nth-child(4n+4){background:#eee7ef;color:#604565}
.family-summary-stat:nth-child(4n+1){background:#eaf1ea}
.family-summary-stat:nth-child(4n+2){background:#eaf0f5}
.family-summary-stat:nth-child(4n+3){background:#f5eadb}
.family-summary-stat:nth-child(4n+4){background:#f0e9f0}
.family-today-row{background:linear-gradient(110deg,var(--surface) 0%,#fbf3e7 64%,#f1edf4 100%)}
.family-flow-home.card{background:linear-gradient(125deg,var(--surface) 0%,#fbf5eb 100%)}
.prepare-ahead-note{background:#fbf0df}
.prepare-item{background:linear-gradient(145deg,#fff 0%,#fcf7ef 100%);box-shadow:0 4px 14px rgba(54,43,31,.045)}

/* Let the existing subject spines carry a little more visual information. */
.today-task[data-subject="bible"],.curriculum-lesson[data-subject="bible"]{background:linear-gradient(90deg,rgba(70,106,85,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject="reading"],.curriculum-lesson[data-subject="reading"]{background:linear-gradient(90deg,rgba(66,107,138,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject="writing"],.curriculum-lesson[data-subject="writing"]{background:linear-gradient(90deg,rgba(154,100,62,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject="math"],.curriculum-lesson[data-subject="math"]{background:linear-gradient(90deg,rgba(118,87,124,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject="science"],.curriculum-lesson[data-subject="science"]{background:linear-gradient(90deg,rgba(50,118,107,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject="history"],.curriculum-lesson[data-subject="history"]{background:linear-gradient(90deg,rgba(166,94,50,.09),rgba(255,255,255,0) 42%)}
.today-task[data-subject].done{background:transparent}

@media(max-width:760px){
  body{background:linear-gradient(180deg,#f8f2e8 0%,var(--bg) 100%)}
  .family-home-hero{background:linear-gradient(150deg,#fffdf9 0%,#fbf0df 70%,#edf4ef 100%)}
}

@media print{
  body{background:#fff!important}
  .family-home-hero,.family-today-row,.family-flow-home.card,.prepare-item,
  .today-task[data-subject],.curriculum-lesson[data-subject]{background:#fff!important}
}


/* v11.11 Open-and-Go parent UX */
.guide-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 16px}
.guide-progress span{padding:9px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);text-align:center;font:700 .78rem system-ui,-apple-system,sans-serif;color:var(--muted)}
.guide-progress span.active{border-color:var(--accent);background:#edf3ee;color:var(--ink)}
.guide-progress span.complete{background:#f3eadb;color:var(--ink)}
.guide-wizard .guide-step[hidden]{display:none!important}.guide-new-child-grid{grid-template-columns:1.2fr .9fr .9fr}.guide-reference{margin-top:16px}.guide-reference>summary{cursor:pointer}
.today-rule{margin:.25rem 0 0}.today-task-block{border-bottom:1px solid #eee7db}.today-task-block:last-child{border-bottom:0}.today-task-block .today-task{border-bottom:0}
.today-lesson-inline{margin:-3px 0 10px 39px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72);overflow:hidden}.today-lesson-inline>summary{cursor:pointer;padding:9px 11px;font:700 .82rem system-ui,-apple-system,sans-serif;color:var(--accent-2)}
.today-lesson-inline[open]>summary{border-bottom:1px solid var(--line)}.today-lesson-shell{padding:13px}.today-lesson-title h3{margin:.2rem 0}.today-lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.today-lesson-grid>div,.today-teach,.today-parent-brief{padding:10px;border-radius:10px;background:var(--surface-2)}.today-lesson-grid p,.today-parent-brief p{margin:4px 0}.today-teach ol{margin-bottom:0}.today-parent-brief>summary{cursor:pointer;font-weight:700}.today-lesson-actions{margin:10px 0 0}.short-day-note{margin:8px 0 10px;padding:9px 11px;border-left:3px solid var(--accent-2);border-radius:9px;background:#f7efdf;font:.84rem system-ui,-apple-system,sans-serif}.today-child.active-child{box-shadow:0 0 0 1px rgba(61,87,70,.12),var(--shadow)}
.learning-track-list-field{grid-column:1/-1}.learning-track-list-field textarea{min-height:110px}
@media(max-width:760px){.guide-new-child-grid,.today-lesson-grid{grid-template-columns:1fr}.today-lesson-inline{margin-left:0}.guide-progress span{padding:8px 5px;font-size:.7rem}.today-lesson-actions .btn{flex:1 1 100%}}

/* v11.11.1 cleanup — keep setup out of the way once complete, simplify Home,
   and make Today easier to size at a glance. */
.start-strip[hidden]{display:none!important}
.subtab[data-page="learningPath"]{display:none!important}

.family-home-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(132px,1fr));
  gap:8px;
  min-width:min(420px,100%);
  justify-content:stretch;
}
#familyTodayBtn{
  grid-column:1/-1;
  min-height:48px;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 8px 18px rgba(23,33,27,.12);
}
#quickLogLearningBtn{border-color:var(--accent-2);font-weight:700}
#prepareAheadBtn{font-weight:650}
#familyPlanBtn,#familyManageChildrenBtn{
  min-height:34px;
  padding:6px 8px;
  border-color:transparent;
  background:transparent;
  color:var(--accent-2);
  text-decoration:underline;
  font-size:.82rem;
  box-shadow:none;
}
#familyPlanBtn:hover,#familyManageChildrenBtn:hover{background:rgba(63,101,84,.06);border-color:rgba(63,101,84,.16)}

.today-task::after{
  flex:0 0 auto;
  align-self:center;
  margin-left:auto;
  padding:3px 7px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,253,249,.82);
  color:var(--muted);
  font:700 .68rem system-ui,-apple-system,sans-serif;
  white-space:nowrap;
}
.today-task[data-subject="bible"]::after{content:"≈ 10 min"}
.today-task[data-subject="reading"]::after{content:"≈ 15 min"}
.today-task[data-subject="writing"]::after{content:"≈ 10 min"}
.today-task[data-subject="math"]::after{content:"≈ 15 min"}
.today-task[data-subject="science"]::after{content:"≈ 15 min"}
.today-task[data-subject="history"]::after{content:"≈ 15 min"}
.today-task:not([data-subject])::after{content:"≈ 10 min"}
.today-task.done::after{opacity:.62}

@media(max-width:760px){
  .family-home-actions{width:100%;min-width:0}
  #familyTodayBtn{grid-column:1/-1}
  .today-task{flex-wrap:wrap}
  .today-task::after{margin-left:32px;align-self:flex-start}
}

@media print{
  #familyPlanBtn,#familyManageChildrenBtn{text-decoration:none}
  .today-task::after{background:#fff}
}
