:root{color-scheme:light;--milk:#e4e3dd;--paper:#f4f2ef;--graphite:#2c3232;--muted:#59615b;--line:#bdc1b5;--sage:#b6cbac;--mist:#d8e0e8;--light:#e9ebdb;--wine:#5b002b;--orange:#ff723e;--error:#8e2633;--body:Manrope,"Segoe UI",Arial,sans-serif;--heading:Montserrat,"Segoe UI",Arial,sans-serif}:root[data-theme=graphite]{color-scheme:dark;--milk:#1d1d1b;--paper:#2c3232;--graphite:#e9ebdb;--muted:#b6cbac;--line:#58615d;--sage:#b6cbac;--mist:#232824;--light:#343c35;--wine:#ff723e;--error:#ffb7b1}.header-actions{display:flex;align-items:center;gap:26px}.theme-control{max-width:128px;flex:none}.theme-control select{font-size:12px;min-height:38px;padding:7px 10px}.auth-brand>div{display:grid;gap:5px}.auth-brand small{font-size:12px;color:var(--muted)}:root[data-theme=graphite] button.primary:hover:not(:disabled){background:#ff8b60}:root[data-theme=graphite] .error-banner,:root[data-theme=graphite] .global-error{background:#472e31;border-color:#855457}:root[data-theme=graphite] .success{color:#d0e1c7;background:#344239}:root[data-theme=graphite] .type-audio .kind-tag,:root[data-theme=graphite] .type-total.type-audio{background:#454332}:root[data-theme=graphite] .type-reading .kind-tag,:root[data-theme=graphite] .type-total.type-reading{background:#433747}:root[data-theme=graphite] .type-course .kind-tag,:root[data-theme=graphite] .type-total.type-course{background:#344239}:root[data-theme=graphite] .note-panel textarea{background:#232a26}:root[data-theme=graphite] .note-conflict{background:#433b2b;border-color:#807148}:root[data-theme=graphite] .chart-track,:root[data-theme=graphite] .completion-summary progress,:root[data-theme=graphite] .completion-summary progress::-webkit-progress-bar{background:#4a534d}@media(max-width:760px){.header-actions{gap:12px;align-items:flex-end;flex-wrap:wrap;justify-content:flex-end}.theme-control{max-width:112px}.theme-control select{min-height:36px;font-size:11px}.app-header .header-actions{max-width:50%}}*{box-sizing:border-box}body{margin:0;color:var(--graphite);background:var(--milk);font:400 16px/1.6 var(--body)}button,input,select,textarea{font:inherit;color:inherit}a,button,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:var(--wine);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button{min-height:44px;border:1px solid var(--line);border-radius:9px;background:var(--paper);padding:9px 15px;transition:background .12s ease}button:hover:not(:disabled){background:var(--light)}button.primary{background:var(--wine);border-color:var(--wine);color:var(--paper)}button.primary:hover:not(:disabled){background:#72083d}button.text-button{min-height:40px;border:0;background:transparent;padding:6px 2px;color:var(--wine);text-decoration:underline;text-underline-offset:4px}button.danger-button{color:var(--error);border-color:var(--error)}button.selected,button[aria-pressed=true]{background:var(--light);border-color:var(--wine);color:var(--wine)}:focus-visible{outline:3px solid var(--wine);outline-offset:4px}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:10px 12px;font-size:16px}input[type=checkbox]{appearance:auto;width:18px;height:18px;accent-color:var(--wine);margin:3px 0 0;flex:none}input[readonly]{background:var(--light)}textarea{line-height:1.65;resize:vertical;min-height:132px}select{min-height:46px}label:not(.check-label){display:grid;gap:6px}label{font-size:14px}.auth-brand,.brand,h1,h2,h3,h4{font-family:var(--heading);font-weight:500;line-height:1.3}h1{font-size:clamp(26px,3vw,36px);letter-spacing:-.025em;margin:0 0 14px}h2{font-size:22px;margin:0 0 12px;letter-spacing:-.015em}h3{font-size:17px;margin:0 0 8px}p{margin:0 0 12px}p:last-child{margin-bottom:0}strong{font-weight:500}.small,small{font-size:13px}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:500;margin-bottom:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-80px;left:20px;z-index:10;background:var(--paper);padding:10px}.skip-link:focus{top:10px}.check-label{display:flex;align-items:flex-start;gap:10px;min-height:32px;padding:3px 0;line-height:1.5}.check-label span{min-width:0}.inline-actions button,.primary,.text-button{flex:none}.form-stack{display:grid;gap:20px}.form-stack.compact{gap:8px}.inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.error{color:var(--error);line-height:1.6}.error-banner,.global-error{background:#f5dedb;border:1px solid #dfbab5;border-radius:10px;padding:14px 18px;margin-bottom:20px}.global-error{max-width:600px;margin:20px auto}.success{color:#324c37;background:#dce5d6;padding:12px 16px;border-radius:9px}.empty-inline{padding:20px 0;color:var(--muted)}.loading-screen{display:grid;min-height:70vh;place-items:center;color:var(--muted)}.auth-shell{width:min(100% - 40px,490px);margin:clamp(36px,10vh,100px) auto}.auth-brand{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:0 4px 24px;font-size:20px}.auth-brand span+span{font-size:14px;color:var(--muted)}.auth-panel{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--wine);padding:36px;border-radius:16px}.auth-panel h1{font-size:28px}.auth-panel form{margin:28px 0 14px}.auth-foot{margin-top:24px!important;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.app-header{align-items:center;justify-content:space-between;min-height:86px;padding:20px 36px;background:var(--paper);border-bottom:1px solid var(--line)}.app-header,.brand{display:flex;gap:20px}.brand{align-items:baseline;font-size:21px;color:var(--graphite);text-decoration:none}.brand span+span{font-size:14px;color:var(--muted)}.account{display:flex;align-items:center;gap:20px;font-size:14px}.app-shell{display:grid;grid-template-columns:255px minmax(0,1fr);max-width:1600px;margin:auto}.sidebar{padding:30px 20px;background:var(--mist);border-right:1px solid var(--line);align-self:stretch}.course-nav,.main-nav{display:grid;gap:7px}.main-nav button{font-family:var(--heading);font-weight:500;background:transparent;border-color:transparent;text-align:left;line-height:1.5;padding:12px}.main-nav button.selected{background:var(--paper);border-color:var(--line)}.sidebar-label{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin:34px 12px 12px}.course-nav button{display:flex;align-items:flex-start;gap:10px;background:transparent;border-color:transparent;text-align:left;min-height:73px;padding:12px}.course-nav button.selected{background:var(--paper);border-color:var(--wine)}.program-number{font-family:var(--heading);font-size:11px;line-height:2.2;color:var(--muted)}.course-nav strong{font-family:var(--heading);font-size:14px;display:block;line-height:1.45}.course-nav small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.sidebar-foot{border-top:1px solid var(--line);margin:28px 12px 0;padding-top:20px;display:grid;justify-items:start;gap:4px}.main-content{padding:38px clamp(20px,4vw,64px) 70px;min-width:0;max-width:1240px;width:100%}.content-stack{display:grid;gap:28px}.study-heading{padding-bottom:24px;border-bottom:1px solid var(--line)}.topic-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 16px}.topic-tabs button{font-family:var(--heading);font-size:13px;font-weight:500}.sharing-note{font-size:12px;color:var(--muted);max-width:780px}.study-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.study-tools>.search-label{flex:1 1 240px}.study-tools>label{min-width:0}.study-tools select{width:auto}.study-tools .check-label{align-items:center;font-size:13px}.study-tools .check-label input{margin:0}.draft-banner{padding:12px 16px;margin-bottom:22px;background:var(--light);border-left:3px solid var(--wine);font-size:13px}.lesson{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px;min-width:0}.lesson-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:20px}.lesson-heading h2{margin-bottom:0}.lesson-number{font:500 14px/1.5 var(--heading);color:var(--wine);width:37px;height:37px;display:grid;place-items:center;background:var(--light);border-radius:8px;flex:none}.lesson-heading .eyebrow{margin-bottom:5px}.lesson-idea{border-left:2px solid var(--sage);padding-left:15px;margin:0 0 24px;font-size:15px}.resources{display:grid;gap:14px}.resource{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:24px;border-top:1px solid var(--line);padding:20px 0;min-width:0}.resource:first-child{border-top:0}.resource-main{min-width:0}.resource h3{font-size:17px;line-height:1.5;margin:8px 0 6px;overflow-wrap:anywhere}.resource h3 a{color:var(--graphite)}.resource-main>p:not(.small){font-size:14px;margin-top:12px}.resource-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:11px;color:var(--muted)}.kind-tag{font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;border-radius:5px;padding:3px 7px;background:var(--mist);color:var(--graphite)}.type-audio .kind-tag{background:#dedbc5}.type-reading .kind-tag{background:#ded4df}.type-course .kind-tag{background:#dce5d6}.resource-status{padding-top:8px;font-size:12px;min-width:0}.resource-status .check-label{font-size:12px}.peer-mark{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:var(--muted);margin:10px 0 0}.peer-mark>span:first-child{width:18px;text-align:center;flex:none;color:var(--wine)}.resource-details{margin-top:14px;color:var(--muted);font-size:12px}.resource-details summary{min-height:30px;cursor:pointer;color:var(--wine)}.resource-details p{margin:8px 0}.exercise{border-top:1px solid var(--line);padding:18px 0;font-size:14px}.exercise summary{font-family:var(--heading);font-weight:500;color:var(--wine);cursor:pointer;padding:3px 0}.exercise p{margin-top:12px}.note-panel{border-top:1px solid var(--line);padding-top:22px;margin-top:8px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}.section-heading h2,.section-heading h3{margin:0}.section-heading>label{font-size:12px}.privacy-label{font-size:11px;color:var(--muted)}.note-panel textarea{background:#eeeee5}.note-footer{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:12px}.note-footer button{font-size:13px}.note-counter{margin-left:auto}.note-conflict{margin-top:15px;padding:15px;background:#f5e7d3;border:1px solid #d6c3a7;border-radius:8px;font-size:13px}.note-conflict details{margin:10px 0}.note-conflict summary{cursor:pointer;padding:6px 0}.note-preview{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;margin-top:10px}.note-conflict .inline-actions{margin-top:14px}.empty-state,.work-empty{border-top:3px solid var(--sage);background:var(--paper);border-radius:12px;padding:32px}.work-empty p{max-width:600px;margin-bottom:24px}.filter-panel{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin:0;padding:20px}.filter-panel legend{font-family:var(--heading);font-size:14px;padding:0 8px}.program-filters{display:flex;flex-wrap:wrap;gap:14px 26px}.program-filters>.check-label{font-size:13px}.program-filters>div{min-width:160px}.sub-filters{margin:6px 0 0 27px;display:grid;gap:4px}.sub-filters .check-label{font-size:12px}.filter-panel .inline-actions{margin-top:16px;font-size:13px}.completion-summary{padding:6px 0}.completion-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:10px}.completion-summary strong{font:500 36px/1 var(--heading);color:var(--wine)}.completion-summary progress{display:block;width:100%;height:12px;appearance:none;border:0;border-radius:10px;background:#c9ccc0;overflow:hidden}.completion-summary progress::-webkit-progress-bar{background:#c9ccc0}.completion-summary progress::-webkit-progress-value{background:var(--wine);border-radius:10px}.completion-summary progress::-moz-progress-bar{background:var(--wine);border-radius:10px}.completion-summary p{font-size:13px;margin-top:10px}.date-filter{display:flex;flex-wrap:wrap;align-items:end;gap:16px}.date-filter label{flex:1 1 170px;max-width:260px}.date-filter button{margin-bottom:4px}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.stat-grid>div{padding:20px 0;border-top:1px solid var(--line);min-width:0}.stat-grid span{font-size:12px;color:var(--muted);display:block}.stat-grid strong{display:block;font:500 27px/1.4 var(--heading);margin-top:7px}.type-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.type-total{display:grid;gap:3px;padding:14px 16px;background:var(--mist);border-radius:8px}.type-total.type-audio{background:#dedbc5}.type-total.type-reading{background:#ded4df}.type-total.type-course{background:#dce5d6}.type-total small,.type-total span{font-size:12px}.type-total strong{font:500 24px/1.4 var(--heading)}.type-total small{color:var(--muted)}.panel{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:25px;min-width:0}.panel>h2{margin-bottom:20px}.day-chart{display:grid;gap:12px;margin:24px 0}.chart-row{display:grid;grid-template-columns:85px minmax(0,1fr) 80px;gap:13px;align-items:center;font-size:12px}.chart-row>span:last-child{text-align:right}.chart-track{height:19px;background:#e1e2d8;border-radius:3px;overflow:hidden}.chart-track>span{height:100%;display:block;background:var(--wine);border-radius:3px;min-width:0}.plain-fieldset{border:0;padding:0;margin:0}.plain-fieldset legend{font-size:13px;margin-bottom:12px}.participant-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:25px 0}.participant-summary strong{font-family:var(--heading);font-size:18px}.participant-summary p{margin-top:5px}.participant-summary button{font-size:12px}.grant-list{display:grid}.grant-editor{padding:24px 0;border-top:1px solid var(--line)}.grant-editor:last-child{padding-bottom:0}.grant-editor h3{font-size:16px}.grant-editor .section-heading{align-items:center}.grant-fields{display:grid;grid-template-columns:minmax(160px,.85fr) minmax(0,1.5fr);gap:22px;margin:18px 0}.grant-fields>label{align-content:start;font-size:12px}.grant-fields .check-label{font-size:13px}.grant-fields small{font-size:11px}.grant-editor>button{font-size:12px}.mode-list{display:grid;gap:16px;margin-top:24px}.mode-list>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.mode-list>div:last-child{border:0;padding:0}.mode-list strong{font-size:14px}.mode-list label{max-width:280px;width:100%}.issued-link{background:var(--light);border:1px solid var(--wine);border-radius:12px;padding:24px;overflow-wrap:anywhere}.issued-link h2{font-size:17px}.issued-link .inline-actions,.issued-link p{margin-top:12px}.invitation-list{display:grid;gap:15px}.invitation-list>div{display:flex;gap:18px;align-items:center;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.invitation-list>div:last-child{padding-bottom:0;border:0}.audit-list{list-style:none;padding:0;margin:0;display:grid;gap:15px}.audit-list li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;font-size:12px}.audit-list time{color:var(--muted)}@media(min-width:1200px){.sidebar{min-height:calc(100vh - 87px)}}@media(max-width:1050px){.app-shell{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding:24px 14px}.main-content{padding:30px 24px 50px}.resource{grid-template-columns:1fr;gap:10px}.resource-status{padding-top:0;display:flex;align-items:center;gap:8px 22px;flex-wrap:wrap}.peer-mark{margin:0}.lesson{padding:23px}.type-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.grant-fields{grid-template-columns:1fr}.mode-list>div{align-items:flex-start;flex-direction:column}.mode-list label{max-width:100%}}@media(max-width:760px){.app-header{padding:17px 20px;align-items:flex-start}.brand{font-size:18px;gap:5px;flex-direction:column}.account,.brand span+span{font-size:12px}.account{gap:6px;align-items:flex-end;flex-direction:column}.account button{min-height:28px;padding:0}.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:18px 20px}.main-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.main-nav button{font-size:12px;padding:9px 10px;min-height:42px}.sidebar-label{margin:22px 0 10px}.course-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.course-nav button{padding:10px 7px;min-height:67px;gap:8px}.course-nav strong{font-size:12px}.course-nav small,.program-number{font-size:10px}.sidebar-foot{margin:15px 0 0;padding-top:12px;display:flex;justify-content:space-between;align-items:center}.sidebar-foot .small{font-size:11px}.sidebar-foot button{font-size:12px;min-height:32px}.main-content{padding:28px 20px 45px}.content-stack{gap:23px}.topic-tabs{margin:18px 0 14px}.topic-tabs button{flex:1 1 120px;padding:9px;font-size:12px}.study-tools>.search-label{flex-basis:100%}.study-tools>label:not(.search-label){flex:1 1 auto}.study-tools select{width:100%}.lesson{padding:20px 17px}.lesson-heading{gap:12px}.lesson-heading h2{font-size:20px}.lesson-number{width:30px;height:30px;font-size:12px}.lesson-heading .eyebrow{font-size:10px}.lesson-idea{font-size:14px}.resource{padding:16px 0}.resource h3{font-size:16px}.note-panel h3{font-size:15px}.privacy-label{font-size:10px}.note-footer>.small{flex-basis:100%}.note-counter{margin-left:0}.stat-grid{gap:12px;grid-template-columns:1fr}.stat-grid>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;align-items:center}.stat-grid span{max-width:65%}.stat-grid strong{font-size:25px;margin:0;white-space:nowrap}.panel{padding:20px 17px}.section-heading h2{font-size:20px}.two-columns{grid-template-columns:1fr;gap:18px}.program-filters{gap:12px 20px}.filter-panel{padding:17px}.chart-row{grid-template-columns:74px minmax(0,1fr) 60px;gap:8px;font-size:10px}.audit-list li{grid-template-columns:1fr;gap:2px}.grant-editor .section-heading{align-items:flex-start}.grant-editor .section-heading h3{flex-basis:100%}.invitation-list>div{align-items:flex-start;flex-direction:column;gap:10px}.auth-panel{padding:26px}.auth-panel h1{font-size:25px}.auth-shell{width:min(100% - 32px,490px);margin-top:38px}.auth-brand{font-size:18px}.auth-brand span+span{font-size:12px}}@media(max-width:360px){.app-header,.sidebar{padding-left:14px;padding-right:14px}.main-content{padding-left:12px;padding-right:12px}.course-nav{grid-template-columns:1fr}.course-nav button{min-height:58px}.course-nav strong{font-size:13px}.course-nav small{font-size:11px}.note-footer button{width:100%}.topic-tabs{display:grid;grid-template-columns:1fr}.auth-panel{padding:22px 20px}.type-totals{grid-template-columns:1fr}.completion-summary>div{align-items:center}.completion-summary>div>span{font-size:13px}.chart-row{grid-template-columns:70px minmax(0,1fr) 45px}}.knowledge-tabs{display:flex;gap:9px;flex-wrap:wrap}.knowledge-tabs button{font-family:var(--heading);font-size:13px;font-weight:500}.knowledge-empty{border-top:1px solid var(--line);padding-top:22px;margin:25px 0}.knowledge-empty p{margin-bottom:0}.profile-actions{margin:10px 0 15px}.profile-actions button{font-size:12px}.plain-fieldset>.small{margin-top:15px}.access-group-heading{margin:28px 0 14px!important}.block-profile-panel{background:var(--light);border-radius:9px;padding:18px;margin:20px 0 24px}.block-profile-panel h3{font-size:15px}.block-grant-fields{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:16px}.block-grant-fields>label{max-width:260px;flex:1 1 180px;font-size:12px}.block-grant-fields>button{font-size:12px;align-self:center}.block-grant-fields small{font-size:11px}.block-grant-editor .section-heading{align-items:center}@media(max-width:760px){.knowledge-tabs{display:grid;grid-template-columns:1fr}.knowledge-tabs button{text-align:left}.block-profile-panel{padding:15px}.profile-actions{gap:8px}.profile-actions button{flex:1 1 150px}.block-grant-fields{gap:15px;align-items:start}.block-grant-fields>label{max-width:none;flex-basis:100%}.block-grant-fields>button{width:100%}.work-empty{padding:23px 20px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important}}