/* gc.css gives every <section> marketing-page padding; the framework's landmark sections are plain blocks */
.lf-title,.lf-nbsec,.lf-objres-wrap,.as-rat{padding:0}
/* Lesson framework v2 (docs/lesson-framework-v2.md): title page, page essential questions, Words to Know flashcards, Lesson Quiz step,
   rationale screen, My Notebook (organizers, student guide). Mobile-first; every color pair here is at or above 4.5:1 on its background
   (WCAG 2.1 AA); focus rings come from academy.css (.acad :focus-visible). Flip animation is skipped under prefers-reduced-motion. */
.lf-pageeq{font-weight:600;color:#4a4150;margin:4px 0 0}
.lf-eqlabel{font-weight:800;color:#8a1f5a}
.lf-h3{font:800 15px 'Nunito',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6B3FA0;margin:0}
.lf-na{color:#5a5066;font-style:italic;margin:4px 0}
.lf-title{background:linear-gradient(135deg,#fff8fc,#f4ecff);border:2px solid #d9c6ee;border-radius:22px;padding:16px 18px;margin:0 0 16px}
.lf-titlehd{display:flex;justify-content:space-between;align-items:center;gap:10px}
.lf-titlehd .say{position:static;width:40px;height:40px;flex:none}
.lf-lessontitle{font-family:'Fraunces',Georgia,serif;font-size:1.35em;font-weight:700;color:#4a2a78;margin:4px 0 10px}
.lf-meta{display:grid;grid-template-columns:1fr;gap:4px 16px;margin:0}
.lf-meta dt{font-weight:800;color:#6B3FA0;margin-top:8px}
.lf-meta dd{margin:0}
.lf-eqbig{font-size:1.12em;font-weight:700;color:#2d1a4e;margin:2px 0 4px}
.lf-objs{margin:2px 0;padding-left:22px}
.lf-objs li{margin:4px 0}
.lf-tags{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:6px;vertical-align:middle}
.lf-tag{display:inline-block;font:800 12px 'Nunito',sans-serif;letter-spacing:.03em;border-radius:99px;padding:2px 9px;background:#ece3f7;color:#4a2a78;white-space:nowrap}
.lf-tagline{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;color:#4a4150}
.lf-stdlabel{font:800 13px 'Nunito';letter-spacing:.08em;text-transform:uppercase;color:#4a4150;margin:6px 0 2px}
.lf-codes{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.lf-code{font-size:.95em;line-height:1.45}
.lf-code b{color:#4a2a78}
.lf-elps{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:3px;font-size:.95em}
.lf-elps b{color:#0a5a85}
@media (min-width:720px){.lf-meta{grid-template-columns:max-content 1fr}.lf-meta dt{margin-top:0}}

/* flashcards */
.fc-wrap{display:grid;gap:10px;max-width:640px}
.fc-count{margin:0;font-weight:800;color:#4a4150}
.fc-scene{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
.fc-prev,.fc-next{min-width:48px;min-height:48px;padding:8px 10px}
.fc-card{min-height:200px;width:100%;border-radius:24px;border:3px solid #c9a6ff;background:#fff;box-shadow:0 10px 26px rgba(107,63,160,.14);cursor:pointer;font:inherit;color:#2d1a4e;padding:18px;display:grid;place-items:center;text-align:center;transition:transform .25s ease,background .2s}
.fc-card.flipped{background:#f6f0ff;border-color:#8a5fd0}
.fc-card:hover{transform:translateY(-2px)}
.fc-face{display:grid;gap:8px;justify-items:center}
.fc-term{font-family:'Fraunces',Georgia,serif;font-size:clamp(26px,5vw,36px);font-weight:700;color:#4a2a78}
.fc-face small{color:#5a5066;font-weight:700}
.fc-def{font-size:1.1em;line-height:1.5;max-width:46ch}
.fc-ex{color:#4a4150;font-size:.95em}
.fc-visual{font-size:2.2em}
.fc-help{margin:0;color:#4a4150}
.fc-tools{margin:0;justify-content:center}
.fc-tools .say{position:static;width:44px;height:44px}
.fc-sort{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.fc-sort .btn2[aria-pressed="true"]{outline:3px solid #1f7a4d;outline-offset:2px}
.fc-sort .fc-learn[aria-pressed="true"]{outline-color:#8a1f5a}
.btn2.ok{background:#e6f6ee;color:#145a39;border:2px solid #9fe0bf}
.fc-piles{margin:0;text-align:center;font-weight:700;color:#4a4150}
.fc-live{min-height:1.4em;text-align:center;color:#2d1a4e}
.fc-done{margin:4px 0}
.fc-done .linkbtn{display:block;margin-top:6px}
.fc-savednote{color:#145a39;font-weight:700}
@media (prefers-reduced-motion:reduce){.fc-card{transition:none}.fc-card:hover{transform:none}}

/* lesson quiz step + results */
.lf-quiz{margin:10px 0}
.lf-objres{list-style:none;margin:6px 0;padding:0;display:grid;gap:8px}
.lf-objres li{border-radius:14px;padding:10px 14px;background:#f8f4fa;border-left:6px solid #b9a8cc;line-height:1.5}
.lf-objres li.lf-mastered{background:#e6f6ee;border-left-color:#1f7a4d}
.lf-objres li.lf-review{background:#fff3d6;border-left-color:#9a5b00}
.lf-objst{font-weight:800;color:#2d1a4e}
.lf-mastered .lf-objst{color:#145a39}.lf-review .lf-objst{color:#7a4b00}
.lf-objlink{display:inline-block;margin-left:6px;font-weight:800;color:#6B3FA0}
.lf-objres-wrap{max-width:760px;margin:12px 0}
.lf-objres-wrap .lf-h3{margin:12px 0 4px}
.as-rat{max-width:760px;margin:16px 0}
.as-ratlist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.as-ratitem{border:2px solid #d9c6ee;border-radius:18px;background:#fff;padding:12px 16px}
.as-ratitem.ok{border-color:#9fe0bf;background:#f6fff9}
.as-ratitem.miss{border-color:#f3b4cf;background:#fff7fb}
.as-ratitem.pend{border-color:#ffd76b;background:#fffbea}
.as-rathd{display:flex;gap:8px;align-items:flex-start;font-size:1.05em}
.as-rathd b{white-space:nowrap}
.as-rathd .say{position:static;flex:none;width:40px;height:40px;margin-left:auto}
.as-ratstatus{margin:6px 0 4px;font-weight:800;color:#2d1a4e}
.as-ratitem.ok .as-ratstatus{color:#145a39}.as-ratitem.miss .as-ratstatus{color:#8a1f5a}.as-ratitem.pend .as-ratstatus{color:#7a4b00}
.as-ratpick,.as-ratkey{margin:4px 0;line-height:1.5}
.as-ratlbl{font-weight:800;color:#4a4150}
.as-ratpick.right b{color:#145a39}.as-ratpick.wrong b{color:#8a1f5a}
.as-ratkey b{color:#145a39}
.as-ratwhy{color:#3f3549}
.as-ratstd{margin:6px 0 0;color:#4a4150}

/* My Notebook */
.lf-nbsec{margin:0 0 18px}
.lf-nblist,.lf-orgs{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lf-orgs{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.lf-nblink{display:flex;flex-direction:column;gap:2px;min-height:60px;padding:10px 14px;border-radius:16px;background:#fff;border:2px solid #e3d9ec;text-decoration:none;color:#2d1a4e}
.lf-nblink:hover{border-color:#e2569c}
.lf-nblink.done{background:#f6fff9;border-color:#9fe0bf}
.lf-nblink small{color:#4a4150}
.lf-orgic{font-size:26px}
.lf-prove{background:#fff;border:2px solid #e3d9ec;border-radius:16px;padding:10px 14px;display:grid;gap:4px}
.lf-prove blockquote{margin:4px 0;padding:8px 12px;border-left:4px solid #c9a6ff;background:#fbf7fe;white-space:pre-wrap}
.lf-orgform{max-width:860px}
.lf-org{display:grid;gap:12px;grid-template-columns:1fr}
.lf-field{display:grid;gap:4px;background:#fff;border:2px solid #d9c6ee;border-radius:16px;padding:10px 12px}
.lf-field .label2{margin:0}
.lf-ta{min-height:96px;width:100%;box-sizing:border-box}
.lf-in{font:inherit;min-height:48px;padding:8px 12px;border:2px solid #D9CCEE;border-radius:12px;background:#fff;color:#2d1a4e;width:100%;box-sizing:border-box}
.lf-status{min-height:1.4em;color:#145a39;font-weight:700}
@media (min-width:720px){
  .lf-org-venn{grid-template-columns:1fr 1fr 1fr}.lf-org-venn .lf-field[data-f="a"]{grid-column:1}.lf-org-venn .lf-field[data-f="b"]{grid-column:3}.lf-org-venn .lf-field[data-f="both"]{background:#f6f0ff}
  .lf-org-cause{grid-template-columns:1fr 1fr}
  .lf-org-vocab4{grid-template-columns:1fr 1fr}.lf-org-vocab4 .lf-field[data-f="word"],.lf-org-vocab4 .lf-field[data-f="sent"]{grid-column:1 / -1}
  .lf-org-main .lf-field[data-f="main"]{background:#fff6dd}
  .lf-org-seq{grid-template-columns:repeat(4,1fr)}
}
.lf-guide{background:#fff;border:2px solid #d9c6ee;border-radius:22px;padding:18px 22px;max-width:860px}
.lf-gh{font:800 15px 'Nunito';letter-spacing:.08em;text-transform:uppercase;color:#6B3FA0;margin:16px 0 4px}
.lf-gwords{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:4px 12px}
.lf-gwords dt{font-weight:800;color:#4a2a78}.lf-gwords dd{margin:0}
.lf-selfcheck{list-style:none;margin:0;padding:0;display:grid;gap:8px}
@media print{
  .nav,.site-foot,.lx-side,#lx-menubtn,.crumbs,.lf-noprint,.say,.tools,.skip{display:none!important}
  .lx-shell{display:block}.ac-wrap{padding:0;max-width:none}
  .lf-guide,.lf-field{border-color:#999;break-inside:avoid}
  .lf-ta,.lf-in{min-height:120px;border:1px solid #999}
  .lf-org{grid-template-columns:1fr 1fr}
}

/* Guided Notes (lesson framework v2 §11): fillable notes page; every label is visible, every input ≥ 44px tall, colours ≥ 4.5:1 */
.gn-intro{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:start;margin:0 0 8px}
.gn-intro .say{position:static;width:40px;height:40px}
.gn-dir{margin:0;line-height:1.5}
.gn-intro .small{grid-column:2;margin:0;color:#4a4150}
.gn-tools{margin:6px 0 4px}
.gn-form{display:grid;gap:14px;max-width:860px}
.gn-sec{background:#fff;border:2px solid #d9c6ee;border-radius:18px;padding:12px 14px;display:grid;gap:10px}
.gn-sec .lf-gh{margin:0;text-transform:none;letter-spacing:0;font-size:1.05em}
.gn-vocab{display:grid;gap:10px;grid-template-columns:1fr}
.gn-word,.gn-row{margin:0;border:2px solid #e3d9ec;border-radius:14px;padding:8px 12px 12px;display:grid;gap:4px;min-width:0}
.gn-word legend,.gn-row legend{font-family:'Fraunces',Georgia,serif;font-weight:700;color:#4a2a78;padding:0 6px;font-size:1.08em}
.gn-word.extra legend{font-family:inherit;font-size:.95em;color:#4a4150}
.gn-form .label2{margin:4px 0 0}
.gn-ta{min-height:64px}
.gn-blank{display:grid;gap:2px}
.gn-blankl{display:inline;line-height:2.4;font-size:1.05em;color:#2d1a4e}
.gn-blankl .gn-in{display:inline-block;width:11em;max-width:100%;vertical-align:middle;margin:0 4px;border-bottom:3px solid #6B3FA0;border-radius:8px 8px 0 0}
.gn-hint{color:#4a4150;font-style:italic}
.gn-q,.gn-box,.gn-draw{display:grid;gap:4px}
.gn-box{background:#f6f0ff;border:2px solid #c9a6ff;border-radius:14px;padding:8px 12px 12px}
.gn-boxtext{margin:0;color:#2d1a4e}
.gn-chart{display:grid;gap:8px}
.gn-chartt{margin:0;color:#6B3FA0}
.gn-row{grid-template-columns:1fr}
.gn-cell{display:grid;gap:2px;min-width:0}
.gn-cell.given b{color:#2d1a4e}
.gn-status{margin:0}
.gn-soon{font-size:1.05em}
@media (min-width:720px){.gn-vocab{grid-template-columns:1fr 1fr}.gn-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}
@media print{.gn-sec{break-inside:avoid;border-color:#999}.gn-ta,.gn-in{border:1px solid #999}.gn-blankl .gn-in{min-height:28px}.lx-stepnav,.lx-hbtns,.lx-stepper{display:none!important}}
/* lesson video (docs/video-plan.md): the "coming soon" card is one quiet line; the real embed is a 16:9 player with a transcript toggle */
.lf-video{padding:0;margin:12px 0 4px}
.lf-video-soon{display:inline-flex;align-items:center;gap:8px;background:#f6f0ff;border:2px dashed #c9a6ff;border-radius:14px;padding:8px 14px;color:#4a3a66;font-weight:700;min-height:44px}
.lf-videoic{font-size:1.3em;line-height:1}
.lf-playerwrap{position:relative;width:100%;aspect-ratio:16/9;background:#1d1230;border-radius:14px;overflow:hidden;margin:8px 0}
.lf-player{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.lf-transcript{background:#fff;border:2px solid #d9c6ee;border-radius:14px;padding:8px 12px}
.lf-transcript summary{cursor:pointer;font-weight:800;color:#6B3FA0;min-height:44px;display:flex;align-items:center}
.lf-transcript p{margin:6px 0;color:#2d1a4e}
