/* Brainy Berry Lessons: shared styles. Brand colours are the --bb-* values on the first line. */
.bb-lesson.bb-scope{--bb-primary:#7a1f4f;--bb-primary-soft:#f6e9f0;--bb-primary-line:#d9b0c4;--bb-accent:#1f6f5c;--bb-accent-soft:#e3f2ee;--bb-warn:#b4540a;--bb-warn-soft:#fdf0e3;--bb-bad:#b3261e;--bb-bad-soft:#fbe9e8;--bb-ink:#1d1b20;--bb-muted:#5c5662;--bb-line:#e4dfe7;--bb-card:#ffffff;--bb-bg:#faf8fb;}
.bb-lesson.bb-scope,.bb-lesson.bb-scope *{box-sizing:border-box;}
.bb-lesson.bb-scope{background:var(--bb-bg);color:var(--bb-ink);font-size:17px;line-height:1.6;max-width:760px;margin:0 auto;padding:16px;border-radius:16px;}
.bb-lesson.bb-scope p{margin:0 0 12px;}
.bb-lesson.bb-scope h2,.bb-lesson.bb-scope h3{color:var(--bb-ink);line-height:1.25;margin:0 0 12px;font-weight:700;}
.bb-lesson.bb-scope h2{font-size:22px;}
.bb-lesson.bb-scope h3{font-size:18px;}
.bb-lesson.bb-scope .bb-head{background:var(--bb-primary);color:#fff;border-radius:12px;padding:20px;margin-bottom:16px;}
.bb-lesson.bb-scope .bb-head .bb-kicker{font-size:13px;letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin:0 0 4px;}
.bb-lesson.bb-scope .bb-head h2{color:#fff;font-size:26px;margin:0 0 6px;}
.bb-lesson.bb-scope .bb-head .bb-meta{font-size:14px;opacity:.9;margin:0;}
.bb-lesson.bb-scope .bb-sec{background:var(--bb-card);border:1px solid var(--bb-line);border-radius:12px;padding:18px;margin-bottom:16px;}
.bb-lesson.bb-scope .bb-step{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bb-primary);background:var(--bb-primary-soft);border-radius:999px;padding:3px 10px;margin-bottom:10px;}
.bb-lesson.bb-scope .bb-hook-q{font-size:19px;font-style:italic;}
.bb-lesson.bb-scope .bb-rules{display:grid;grid-template-columns:1fr;gap:10px;}
.bb-lesson.bb-scope .bb-rule{border:1px solid var(--bb-line);border-left:3px solid var(--bb-primary-line);border-radius:10px;padding:12px 14px;background:#fff;}
.bb-lesson.bb-scope .bb-rule-n{font-size:12px;font-weight:700;color:var(--bb-primary);margin:0 0 2px;}
.bb-lesson.bb-scope .bb-rule-t{font-weight:700;margin:0 0 6px;}
.bb-lesson.bb-scope .bb-rule-e{color:var(--bb-muted);margin:0;font-size:16px;}
.bb-lesson.bb-scope .bb-rule-e b,.bb-lesson.bb-scope .bb-ex b{color:var(--bb-accent);}
.bb-lesson.bb-scope .bb-callout{background:var(--bb-warn-soft);border-left:4px solid var(--bb-warn);border-radius:10px;padding:12px 14px;margin-top:12px;}
.bb-lesson.bb-scope .bb-callout p{margin:0;}
.bb-lesson.bb-scope .bb-ex{border:1px solid var(--bb-line);border-radius:10px;padding:12px 14px;margin-bottom:10px;}
.bb-lesson.bb-scope .bb-ex p{margin:0 0 8px;}
.bb-lesson.bb-scope button.bb-btn{-webkit-appearance:none;appearance:none;display:inline-block;font:inherit;font-size:15px;font-weight:600;line-height:1.2;color:var(--bb-primary);background:#fff;border:1.5px solid var(--bb-primary);border-radius:999px;padding:9px 16px;margin:0;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;min-height:40px;}
.bb-lesson.bb-scope button.bb-btn:hover,.bb-lesson.bb-scope button.bb-btn:focus{background:var(--bb-primary-soft);color:var(--bb-primary);}
.bb-lesson.bb-scope .bb-reveal{display:none !important;margin-top:10px;background:var(--bb-accent-soft);border-radius:10px;padding:10px 14px;}
.bb-lesson.bb-scope .bb-reveal.bb-open{display:block !important;}
.bb-lesson.bb-scope .bb-reveal p:last-child{margin-bottom:0;}
.bb-lesson.bb-scope .bb-score{position:sticky;top:8px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bb-ink);color:#fff;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:15px;}
.bb-lesson.bb-scope .bb-score b{color:#fff;}
.bb-lesson.bb-scope .bb-q{border:1px solid var(--bb-line);border-radius:10px;padding:14px;margin-bottom:12px;background:#fff;}
.bb-lesson.bb-scope .bb-q-t{font-weight:600;margin:0 0 10px;}
.bb-lesson.bb-scope .bb-q-t span{color:var(--bb-muted);font-weight:700;margin-right:6px;}
.bb-lesson.bb-scope .bb-opts{display:grid;grid-template-columns:1fr;gap:8px;}
.bb-lesson.bb-scope button.bb-opt{-webkit-appearance:none;appearance:none;display:flex;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;font-size:16px;font-weight:400;line-height:1.3;color:var(--bb-ink);background:#fff;border:1.5px solid var(--bb-line);border-radius:10px;padding:10px 12px;margin:0;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;min-height:46px;}
.bb-lesson.bb-scope button.bb-opt:hover{border-color:var(--bb-primary);background:#fff;color:var(--bb-ink);}
.bb-lesson.bb-scope button.bb-opt .bb-l{flex:0 0 28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;background:var(--bb-primary-soft);color:var(--bb-primary);}
.bb-lesson.bb-scope button.bb-opt[disabled]{cursor:default;}
.bb-lesson.bb-scope button.bb-opt.bb-right{border-color:var(--bb-accent);background:var(--bb-accent-soft);}
.bb-lesson.bb-scope button.bb-opt.bb-right .bb-l{background:var(--bb-accent);color:#fff;}
.bb-lesson.bb-scope button.bb-opt.bb-wrong{border-color:var(--bb-bad);background:var(--bb-bad-soft);}
.bb-lesson.bb-scope button.bb-opt.bb-wrong .bb-l{background:var(--bb-bad);color:#fff;}
.bb-lesson.bb-scope .bb-fb{display:none !important;margin:10px 0 0;padding:10px 12px;border-radius:10px;font-size:15px;}
.bb-lesson.bb-scope .bb-fb.bb-show{display:block !important;}
.bb-lesson.bb-scope .bb-fb.bb-ok{background:var(--bb-accent-soft);border-left:4px solid var(--bb-accent);}
.bb-lesson.bb-scope .bb-fb.bb-no{background:var(--bb-bad-soft);border-left:4px solid var(--bb-bad);}
.bb-lesson.bb-scope .bb-done{display:none !important;text-align:center;background:var(--bb-primary-soft);border-radius:10px;padding:14px;margin-top:6px;}
.bb-lesson.bb-scope .bb-done.bb-show{display:block !important;}
.bb-lesson.bb-scope .bb-done p{margin:0 0 10px;font-weight:600;}
.bb-lesson.bb-scope .bb-apply-item{margin-bottom:12px;}
.bb-lesson.bb-scope .bb-apply-item p{margin:0 0 6px;}
.bb-lesson.bb-scope textarea.bb-ta{display:block;width:100%;min-height:52px;font:inherit;font-size:16px;color:var(--bb-ink);background:#fff;border:1.5px solid var(--bb-line);border-radius:10px;padding:10px 12px;margin:0;resize:vertical;}
.bb-lesson.bb-scope textarea.bb-ta:focus{outline:none;border-color:var(--bb-primary);}
.bb-lesson.bb-scope .bb-next{background:var(--bb-primary);color:#fff;border-radius:12px;padding:18px;text-align:center;}
.bb-lesson.bb-scope .bb-next p{margin:0;}
.bb-lesson.bb-scope .bb-next b{color:#fff;}
@media (min-width:640px){.bb-lesson.bb-scope{padding:24px;}.bb-lesson.bb-scope .bb-rules{grid-template-columns:1fr 1fr;}.bb-lesson.bb-scope .bb-opts{grid-template-columns:1fr 1fr;}}
.bb-lesson.bb-scope b,.bb-lesson.bb-scope strong{font-weight:700;}
.bb-lesson.bb-scope h3.bb-sub{margin-top:22px;}
.bb-lesson.bb-scope .bb-group{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bb-primary);margin:18px 0 8px;}
.bb-lesson.bb-scope .bb-pairs{display:grid;grid-template-columns:1fr;gap:10px;}
.bb-lesson.bb-scope .bb-pair{border:1px solid var(--bb-line);border-radius:10px;padding:12px 14px;background:#fff;}
.bb-lesson.bb-scope .bb-pair p{margin:0 0 4px;}
.bb-lesson.bb-scope .bb-pair-x{color:var(--bb-bad);text-decoration:line-through;text-decoration-thickness:1px;}
.bb-lesson.bb-scope .bb-pair-x::before{content:"\2717  ";text-decoration:none;display:inline-block;margin-right:4px;}
.bb-lesson.bb-scope .bb-pair-ok{color:var(--bb-accent);font-weight:700;}
.bb-lesson.bb-scope .bb-pair-ok::before{content:"\2713  ";display:inline-block;margin-right:4px;}
.bb-lesson.bb-scope .bb-pair-why{color:var(--bb-muted);font-size:15px;margin:0;}
.bb-lesson.bb-scope textarea.bb-ta-big{min-height:150px;}
@media (min-width:640px){.bb-lesson.bb-scope .bb-pairs{grid-template-columns:1fr 1fr;}}
.bb-lesson.bb-scope .bb-q-t b{font-weight:800;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;}
.bb-lesson.bb-scope .bb-passage{background:#fff;border:1px solid var(--bb-line);border-radius:10px;padding:16px 18px;margin:0 0 14px;}
.bb-lesson.bb-scope .bb-passage p{margin:0 0 10px;}
.bb-lesson.bb-scope .bb-passage p:last-child{margin-bottom:0;}
.bb-lesson.bb-scope .bb-passage-label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bb-muted);margin:0 0 4px !important;}
.bb-lesson.bb-scope .bb-passage-title{font-size:18px;font-weight:700;margin:0 0 10px !important;}
.bb-lesson.bb-scope .bb-reveal-plain{background:transparent;padding:0;}
.bb-lesson.bb-scope .bb-passage-flat{margin:0;}
.bb-lesson.bb-scope [data-bb-toggle="passage"]{margin-bottom:14px;}
.bb-lesson.bb-scope .bb-poem p{line-height:1.7;}
.bb-lesson.bb-scope .bb-poem-by{font-size:14px;color:var(--bb-muted);font-style:italic;margin:-6px 0 12px !important;}
.bb-lesson.bb-scope .bb-script p{margin:0 0 8px;}
.bb-lesson.bb-scope .bb-who{font-weight:700;letter-spacing:.03em;}
.bb-lesson.bb-scope .bb-sd,.bb-lesson.bb-scope .bb-sd-in{font-style:italic;color:var(--bb-muted);}
.bb-lesson.bb-scope .bb-line{display:block;padding-left:1.4em;text-indent:-1.4em;}
.bb-lesson.bb-scope .bb-model-h{font-weight:700;margin:14px 0 6px !important;}
.bb-lesson.bb-scope .bb-pnum{display:inline-block;min-width:22px;font-size:12px;font-weight:700;color:var(--bb-primary);margin-right:6px;}
.bb-lesson.bb-scope textarea.bb-ta-essay{min-height:360px;}
.bb-lesson.bb-scope button.bb-opt.bb-sel{border-color:var(--bb-primary);background:var(--bb-primary-soft);}
.bb-lesson.bb-scope button.bb-opt.bb-sel .bb-l{background:var(--bb-primary);color:#fff;}
.bb-lesson.bb-scope .bb-exam-bar{position:sticky;top:8px;z-index:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:var(--bb-ink);color:#fff;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:15px;}
.bb-lesson.bb-scope .bb-exam-bar b{color:#fff;font-variant-numeric:tabular-nums;}
.bb-lesson.bb-scope .bb-exam-bar button.bb-btn{background:#fff;min-height:34px;padding:6px 12px;font-size:14px;}
.bb-lesson.bb-scope .bb-exam-bar button.bb-btn[disabled]{opacity:.6;cursor:default;}
.bb-lesson.bb-scope .bb-exam-bar [hidden]{display:none !important;}
.bb-lesson.bb-scope .bb-ex-ctl{display:flex;flex-wrap:wrap;gap:8px;}
.bb-lesson.bb-scope .bb-exam[data-paused] [data-bb-ex-clock]::after{content:" (paused)";font-weight:400;opacity:.8;}
.bb-lesson.bb-scope .bb-exam-sec{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bb-primary);margin:22px 0 6px;}
.bb-lesson.bb-scope .bb-exam-inst{font-style:italic;color:var(--bb-muted);margin:0 0 12px;}
.bb-lesson.bb-scope .bb-exam-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.bb-lesson.bb-scope .bb-ex-result{display:none !important;background:var(--bb-primary-soft);border-radius:12px;padding:16px;margin-top:16px;}
.bb-lesson.bb-scope .bb-ex-result.bb-show{display:block !important;}
.bb-lesson.bb-scope .bb-ex-total{font-size:19px;font-weight:700;margin:0 0 10px;}
.bb-lesson.bb-scope .bb-ex-secs{list-style:none;margin:0 0 10px;padding:0;}
.bb-lesson.bb-scope .bb-ex-secs li{display:flex;justify-content:space-between;border-bottom:1px solid var(--bb-line);padding:6px 0;}
.bb-lesson.bb-scope .bb-ex-note{font-size:15px;color:var(--bb-muted);margin:0;}
.bb-lesson.bb-scope .bb-q-t u,.bb-lesson.bb-scope .bb-passage u{text-underline-offset:3px;}
.bb-lesson.bb-scope .bb-right-block{display:block;text-align:right;}
.bb-lesson.bb-scope .bb-listen{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 12px;}
.bb-lesson.bb-scope .bb-listen-note{margin:0 0 12px;font-size:15px;color:#7a4b00;background:#fff6e5;border-radius:8px;padding:8px 12px;}
.bb-lesson.bb-scope .bb-listen-note[hidden]{display:none !important;}
.bb-lesson.bb-scope .bb-passage p.bb-poem{line-height:1.75;margin:0 0 14px;}
.bb-lesson.bb-scope .bb-passage p.bb-poem .bb-line{display:inline-block;width:100%;padding-left:1.4em;text-indent:-1.4em;box-sizing:border-box;}
.bb-lesson.bb-scope .bb-diagram{margin:14px 0 4px;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#fff;}
.bb-lesson.bb-scope .bb-diagram svg{display:block;width:100%;height:auto;}
.bb-lesson.bb-scope .bb-diagram figcaption{font-size:14px;color:#4b5563;padding:8px 12px;border-top:1px solid #e5e7eb;}
