/* Platform theme: shared readable surfaces; game boards retain their own colors. */
:root{font-size:16px;color:#20324a;background:#f4f6fa;color-scheme:light}body{background:#f4f6fa}header,main,footer{max-width:1240px;padding:22px 32px}header{background:#fff;border-bottom:1px solid #dce3ed;gap:12px}.brand,.brand span{color:#183f6d;letter-spacing:.02em}p,.small,aside,footer,.chat-intro{color:#526277}h1,#home h1{font-size:clamp(28px,3vw,38px);letter-spacing:-.025em;line-height:1.2}h2{font-size:26px}h3{font-size:19px}em,.eyebrow{color:#28649a}.eyebrow{font-size:11px;letter-spacing:.12em}button{background:#fff;color:#244366;border:1px solid #c9d4e2;border-radius:8px;padding:10px 15px}button:hover{background:#edf3fa;filter:none}.primary,#companionDock{background:#245f9b;color:#fff;border-color:#245f9b}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #357bbd;outline-offset:3px}input:not([type=range]),select,textarea,input[type=number]{background:#fff;color:#20324a;border:1px solid #a9b9cb;border-radius:7px}dialog,.panel,.visual-studio,#bibleStoryStage,.bible-study-grid article,#bibleQuestionForm,.bible-now,.lesson-diagram{background:#fff;color:#20324a;border:1px solid #dce3ed;border-radius:12px;box-shadow:0 3px 12px #1d355008}dialog p,#companionMessages p{color:#30465f}#companionMessages p,.lesson-diagram li,.math-model{background:#edf3fa;color:#244366}#companionMicPanel{border-color:#c9d4e2}.chat-heading,.chat-composer,.profile-strip{border-color:#dce3ed}.subject-nav{gap:4px;padding:8px 0;border-bottom:1px solid #dce3ed}.subject-nav a,.catalog-pages a{color:#405774;border:0;background:transparent;border-radius:6px}.subject-nav a[aria-current],.catalog-pages a[aria-current],.catalog-pages button[aria-current]{background:#e3edf8;color:#194e83}.connection-card,#home .card{background:#fff;color:#244366;border:1px solid #dce3ed;border-radius:12px;box-shadow:none;min-height:unset}.connection-card strong{font-size:18px}#home .card strong{font-size:21px}.connection-card span,.connection-card small{color:#526277}#home .activity-art{height:90px;border-radius:8px}.cards,#home .cards{gap:16px;margin:20px 0}.bible-banner{background:#e6eef8;border-radius:12px}.bible-story-card span{color:#526277}#bibleCurrentVerse{color:#20324a}.bible-now>span{color:#28649a}.feedback{color:#785014}.teaching-fraction span{border-color:#28649a}.teaching-fraction .filled{background:#77b7e7}.lesson-diagram figcaption{color:#28649a}#waterSteps button[aria-pressed=true]{background:#245f9b;color:#fff}#accountMenu summary{border-color:#a9b9cb;color:#245f9b}.course-notice{font-size:14px;background:#eaf0f7;padding:12px 16px;border-radius:8px}.path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.path-card,.path-outline{padding:20px;background:#fff;border:1px solid #dce3ed;border-radius:10px}.path-card h3{margin:8px 0}.path-band{color:#28649a;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.path-card p{font-size:14px}.path-card button{color:#fff;background:#245f9b;border:0}.path-outline{margin:12px 0}.course-lesson{background:white;border:1px solid #b7cbe1;border-left:4px solid #245f9b;border-radius:10px;padding:24px;margin:24px 0}.course-lesson li{padding:8px;line-height:1.6}.course-lesson form{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.course-lesson label{width:100%;font-weight:600;margin:12px 0}.course-lesson button{margin:4px}.course-lesson input{width:130px}#curriculum{margin:28px 0}.connection-cards{margin:16px 0}#home .profile-strip{margin-bottom:20px}.bible-study-grid p{color:#526277}@media(max-width:640px){header,main,footer{padding:16px}.path-grid{grid-template-columns:1fr}.course-lesson{padding:16px}.course-lesson button{max-width:100%}.path-card{padding:16px}} 
.companion-tile strong,.companion-tile b,.together-tile strong,.together-tile b{color:#245f9b}.chat-composer{background:#f7f9fc}.chat-live-note,#companionStatus{color:#526277}a{color:#245f9b}.path-card button:disabled{background:#e2e9f2;color:#526277}
#home[data-subject]:not([data-subject=home]) .connection-cards{display:none}#home .profile-strip{padding-bottom:10px;margin-bottom:16px}#home .profile-strip p{font-size:12px}#home .profile-strip .row{margin:8px 0}#curriculum>h2{font-size:22px;margin-top:8px}.path-card p{line-height:1.5}#home>h1{margin:14px 0}#home>.eyebrow{margin-top:20px}
.course-array{margin:20px 0;padding:18px;background:#edf3fa;border-radius:10px}.course-array-grid{display:grid;gap:10px;width:max-content;max-width:100%;color:#245f9b;font-size:22px}.course-array-grid span{width:24px;text-align:center}.course-array figcaption{margin-top:12px;color:#405774;font-size:14px}
.course-square-grid{gap:0!important;border:1px solid #527697}.course-square-grid span{display:block;width:28px;height:28px;border:1px solid #527697;background:#d9eaf7}.course-boundary{border:4px solid #173f6d}

/* Fraction models share the same whole width. */
.course-fraction{margin:1rem 0;padding:1rem;background:#edf4fb;border-radius:10px;max-width:36rem}
.course-fraction-strip{display:grid;width:100%;height:48px;border:2px solid #345b78}
.course-fraction-strip span{border-right:1px solid #345b78;background:white}
.course-fraction-strip span:last-child{border-right:0}
.course-fraction-strip .is-shaded{background:#82b4dd}
.course-fraction-row p{margin:.3rem 0 .8rem;font-weight:700}
.course-number-line{position:relative;display:block;height:2rem;margin:1rem 1rem 2rem;border-top:3px solid #345b78}
.course-number-line span{position:absolute;top:0;transform:translateX(-50%);text-align:center;padding-top:14px}
.course-number-line span:before{content:'';position:absolute;top:-9px;left:50%;height:15px;border-left:2px solid #345b78}
.course-number-line .is-selected:before{width:12px;height:12px;border:2px solid #163f63;border-radius:50%;background:#82b4dd;transform:translateX(-6px)}
.course-number-line .is-selected{font-weight:800;color:#163f63}

.course-measurement{margin:1rem 0;padding:1rem;background:#edf4fb;border-radius:10px}.course-measurement figcaption{font-weight:700}.course-measurement table{border-collapse:collapse;width:100%;max-width:36rem}.course-measurement th,.course-measurement td{text-align:left;padding:.5rem;border-bottom:1px solid #aac1d4}.course-data-blocks{display:flex;flex-wrap:wrap;gap:3px}.course-data-blocks span{width:18px;height:18px;border:1px solid #345b78;background:#82b4dd}

.course-shape-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.course-shape{background:#528ebc;margin:1rem auto;width:140px;height:80px}.course-shape.square{width:80px}.course-shape.rhombus{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.course-shape-grid p{font-size:.95rem}

.course-products{margin:1rem 0}.course-products table{border-collapse:collapse;width:100%;max-width:38rem}.course-products th,.course-products td{border:1px solid #64748b;padding:.65rem;text-align:center}.course-products td{background:#e0f2fe;color:#172554}.course-products caption{font-weight:600;padding:.5rem}.course-products figcaption{font-size:.9rem;margin-top:.5rem}

/* Compact subject introductions: keep the lesson/player close to its heading. */
.subject-nav{margin:0 0 12px}
#home .profile-strip{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;padding-bottom:10px;margin-bottom:14px}
#home .profile-strip .row{margin:0;flex-shrink:0}
#home .profile-strip p{margin:0;line-height:1.45}
#home .profile-strip #profileSummary{flex:1 1 260px}
#home .profile-strip #saveState{flex:0 1 auto}
#home[data-subject]:not([data-subject=home])>.eyebrow{display:none}
#home[data-subject]:not([data-subject=home])>h1{margin:12px 0 6px}
#home[data-subject]:not([data-subject=home])>h1+p{margin:0 0 12px}
#home[data-subject^=bible]>.cards,#home[data-subject^=bible]>aside{display:none}
#bibleLibrary{margin-top:12px;padding:0}
#bibleStatus{font-size:13px;margin:0 0 8px}
#bibleResumePanel:not([hidden]){display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:0 0 12px}
#bibleSavedPlace{margin:0;font-size:13px}
#bibleSelection>.bible-banner{background:none;padding:0;margin:0 0 8px}
#bibleSelection>.bible-banner>.eyebrow,#bibleSelection>.bible-banner>h2{display:none}
#bibleModeDescription{margin:0;font-size:14px;line-height:1.5}
#bibleSelection>.row{margin:10px 0 14px;gap:10px 16px}
#bibleListenStage .bible-now{padding:14px 18px;margin:12px 0;text-align:left;border-radius:12px}
#bibleListenStage .bible-now>span{display:none}
#bibleQueueTitle{font-size:21px;margin:0 0 4px}
#bibleQueueSize{font-size:13px;margin:0}
#bibleCurrentVerse{font-size:18px;line-height:1.6;margin:8px 0 0;max-width:none}
#bibleCurrentVerse:empty{display:none}
@media(max-width:760px){.subject-mobile{margin-bottom:12px}#home .profile-strip{gap:6px 12px}#home .profile-strip #profileSummary{flex-basis:100%}}
@media(max-width:560px){#bibleSelection>.row{display:flex}#bibleSelection label{margin:0;flex:1 1 120px;min-width:0}#bibleScopeLabel{flex-basis:100%!important}#bibleSelection select{min-height:44px}#bibleResumeSaved{min-height:44px}}
#bibleNarration{padding-top:12px;margin-top:12px}
#bibleNarration>h3{margin:0 0 6px}
#bibleNarration>p{margin:6px 0;line-height:1.5}
#bibleNarration>.row{margin:10px 0}
.course-reasoning{margin:16px 0;padding:14px;border:1px solid #bccbde;border-radius:10px}.course-reasoning>label{display:block;margin:8px 0}.course-reasoning textarea{width:100%;font:inherit;color:#20324a;background:white;border:1px solid #8196af;border-radius:6px;padding:10px}.course-reasoning summary{cursor:pointer;font-weight:600}
.course-decimal{margin:16px 0}.decimal-hundred-grid{display:grid;grid-template-columns:repeat(10,1fr);width:min(100%,280px);aspect-ratio:1;border:2px solid #334155;gap:1px;background:#64748b}.decimal-hundred-grid span{background:#fff}.decimal-hundred-grid .is-shaded{background:#2563a5}.course-decimal figcaption{margin-top:8px}
.decimal-pair{display:flex;flex-wrap:wrap;gap:20px}.decimal-pair .course-decimal{flex:1 1 220px;min-width:0;max-width:320px}
.course-angle-grid{display:flex;gap:16px;flex-wrap:wrap}.course-angle-grid figure{margin:8px 0;width:200px}.course-angle{position:relative;width:200px;height:125px;background:#edf4fb;border-radius:8px}.angle-ray{position:absolute;left:100px;top:100px;width:80px;height:3px;background:#245f9b;transform-origin:0 50%}.angle-vertex{position:absolute;left:96px;top:97px;width:8px;height:8px;background:#172554;border-radius:50%}
.course-protractor{margin:16px 0;max-width:600px}.course-protractor img{display:block;width:100%;height:auto}.course-protractor figcaption{margin-top:8px;font-weight:600}
/* Keep the chosen lesson in view instead of below catalog cards. */
#curriculum .path-grid[hidden],#curriculum .catalog-pages[hidden]{display:none}
.course-navigation{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}
.course-navigation label{font-weight:600}
.course-navigation select{min-width:0;max-width:100%;flex:1 1 260px;width:100%;padding:10px}
#curriculum .catalog-pages{display:flex;flex-wrap:wrap;gap:6px}
.course-measurement,.course-products{max-width:100%;box-sizing:border-box}
.course-measurement th,.course-measurement td,.course-products th,.course-products td{overflow-wrap:anywhere}
@media(max-width:480px){.course-measurement{padding:8px}.course-measurement th,.course-measurement td{padding:5px;font-size:.8rem}.course-navigation label{width:100%}}

.coordinate-practice-wrap{max-width:100%;overflow-x:auto;margin:12px 0}.coordinate-practice-grid{display:grid;grid-template-columns:32px repeat(6,44px);gap:1px;width:max-content;background:#cbd5e1;padding:2px}.coordinate-practice-grid button{box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;border-radius:0;border:1px solid #94a3b8;background:#fff;color:#172554;font-size:24px}.coordinate-practice-grid button[aria-pressed="true"]{background:#bfdbfe;border:3px solid #1d4ed8}.coordinate-practice-grid button:focus-visible{outline:3px solid #9a3412;outline-offset:-4px}.coordinate-axis{display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#172554;font-size:13px}

#readingSessions{white-space:pre-line;line-height:1.6;font-size:0.95rem}

#storyTeachingVisual{margin:12px 0} #storyTeachingCaption{margin-top:8px;line-height:1.5}

/* Long authored mathematical expressions must wrap on narrow screens. */
.course-lesson { overflow-wrap: anywhere; }
