@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/admin/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2) format("woff2"),url(/admin/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/admin/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2) format("woff2"),url(/admin/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff) format("woff")}:root{font-family:Atkinson Hyperlegible,Trebuchet MS,sans-serif;color:#173348;background:#eef3f7;font-synthesis:none;line-height:1.5;--navy: #123a59;--blue: #135e88;--ink: #173348;--muted: #526a7b;--line: #cbd9e2;--focus: #ffd166;--green: #146344;--red: #9b2538}*{box-sizing:border-box}body{margin:0;min-width:280px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,input,select,textarea,summary,[tabindex]:not([tabindex="-1"]){scroll-margin-top:2rem}:focus-visible{outline:3px solid #976100;outline-offset:3px}.sidebar :focus-visible{outline-color:var(--focus)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.15;letter-spacing:-.025em;margin-bottom:.7rem}h2{font-size:1.4rem;line-height:1.3;margin-bottom:1rem}h3{font-size:1.13rem;margin-bottom:.6rem}p{max-width:75ch;margin-bottom:1rem}a{color:#095a88;text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}small{display:block;font-size:.9rem;color:var(--muted)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}input,select,textarea{width:100%;min-width:0;min-height:48px;border:1px solid #91a8b7;border-radius:5px;padding:.7rem .8rem;background:#fff;color:var(--ink)}input::placeholder,textarea::placeholder{color:#607482;opacity:1}textarea{resize:vertical}input[type=checkbox]{width:1.3rem;min-width:1.3rem;height:1.3rem;min-height:auto;margin:.2rem 0 0;accent-color:var(--blue)}input:disabled,select:disabled{background:#e8eef2}fieldset{min-width:0}.skip-link{position:absolute;left:1rem;top:-10rem;padding:.8rem 1rem;color:var(--navy);background:var(--focus);z-index:20}.skip-link:focus{top:1rem}.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}.app-layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh}.sidebar{display:flex;flex-direction:column;padding:2.25rem 1.5rem 1.5rem;background:var(--navy);color:#fff;position:sticky;top:0;height:100dvh;overflow-y:auto}.brand{display:inline-flex;align-items:center;gap:.75rem;font-weight:700;font-size:2rem;line-height:1;letter-spacing:-.04em;color:inherit;text-decoration:none}.beacon-mark{width:27px;height:34px;display:inline-block;position:relative;border-radius:15px 15px 3px 3px;background:var(--focus);flex-shrink:0}.beacon-mark:after{content:"";position:absolute;left:7px;right:7px;top:7px;height:8px;background:var(--navy);border-radius:2px}.sidebar-caption{font-size:.9rem;color:#d8e7f1;margin:1rem 0 2.4rem}.sidebar nav{display:flex;flex-direction:column;gap:.3rem;margin:0 -.5rem}.sidebar nav a{color:#eaf3f9;text-decoration:none;padding:.85rem 1rem;border-radius:5px;border-left:3px solid transparent}.sidebar nav a:hover{background:#214b6a}.sidebar nav a[aria-current]{color:#fff;background:#2a526e;border-left-color:var(--focus);font-weight:700}.sidebar-bottom{margin-top:auto;padding-top:3rem}.sidebar-bottom p{color:#d8e7f1;font-size:.9rem;margin-bottom:.7rem}.button{min-height:46px;padding:.65rem 1.1rem;border:1px solid transparent;border-radius:5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;text-align:center}.primary{background:var(--blue);color:#fff}.primary:hover:not(:disabled){background:#0b476a}.secondary{background:#fff;color:var(--navy);border-color:#91a8b7}.secondary:hover:not(:disabled){background:#eaf2f7}.danger{background:var(--red);color:#fff}.sidebar-button{background:transparent;color:#fff;border-color:#7594aa;width:100%}.sidebar-button:hover:not(:disabled){background:#214b6a}.text-button{padding:.55rem .2rem;min-height:44px;background:transparent;border:0;color:var(--blue);text-decoration:underline;text-underline-offset:3px}.destructive{color:var(--red)}.workspace{min-width:0}.workspace-top{min-height:65px;padding:1rem clamp(1.1rem,4vw,3.6rem);display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--muted);font-size:.93rem;border-bottom:1px solid var(--line);background:#f8fbfd}main:not(.login){max-width:1350px;padding:2.7rem clamp(1.1rem,4vw,3.6rem) 5rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2.3rem}.page-header p{color:var(--muted);font-size:1.06rem;max-width:58ch;margin-bottom:0}.page-header>.button{flex-shrink:0;margin-top:.2rem}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;padding:1.5rem 0 1.6rem;border-top:2px solid #80a8c3;border-bottom:1px solid var(--line);margin-bottom:2.5rem}.stats>div{display:flex;flex-direction:column;gap:.2rem}.stats strong{font-size:2rem;line-height:1.2}.stats span{color:var(--muted)}.section{margin:2.5rem 0 0}.section-description{color:var(--muted);margin-top:-.4rem}.table-scroll{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:6px}table{border-collapse:collapse;width:100%;font-size:.96rem}th{text-align:left;font-weight:700;background:#e6eff5;color:#284a62}td,th{padding:1rem 1.15rem;vertical-align:top;border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:0}td:first-child{min-width:240px}td:last-child{min-width:155px}td small{max-width:42ch;margin-top:.3rem}.course-link{font-weight:700}.status{display:inline-flex;align-items:center;font-size:.83rem;line-height:1.35;font-weight:700;padding:.3rem .6rem;border-radius:4px;white-space:nowrap}.status.good{background:#d9eee2;color:#125738}.status.bad{background:#f8e1e6;color:#962039}.status.neutral{background:#e4edf4;color:#2d506c}.status-group{display:flex;gap:.5rem;flex-wrap:wrap}.provider-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 1.2rem;gap:0 2rem}.provider-status>div{display:grid;grid-template-columns:minmax(100px,1fr) 1.4fr;padding:1rem 0;border-bottom:1px solid var(--line);gap:1rem}.provider-status dt{font-weight:700}.provider-status dd{margin:0}.provider-status dd span{display:block;color:var(--muted);font-size:.88rem;margin-top:.15rem}.text-good{color:var(--green)}.text-muted{color:var(--muted)}.callout{padding:1.15rem 1.3rem;background:#e0edf6;border-left:4px solid #32749d;margin:1.3rem 0 1.5rem}.callout strong{display:block;margin-bottom:.3rem}.callout p{margin:0;font-size:.96rem}.callout.error{background:#fae9ed;border-color:var(--red)}.callout.good{background:#e2f0e8;border-color:var(--green)}.notice{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.2rem clamp(1.1rem,4vw,3.6rem) 0;padding:.8rem 1rem;border:1px solid #87b39c;border-radius:5px;background:#e1f0e7}.notice[hidden]{display:none}.notice.error{background:#fae8ec;border-color:#d28c98;color:#832439}.notice .text-button{flex-shrink:0;color:inherit}.field{margin-bottom:1.25rem}.field>label{display:block;font-weight:700;margin-bottom:.4rem}.hint{color:var(--muted);font-size:.91rem}.field .hint{margin:.4rem 0 0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem}.check-field{display:flex;align-items:flex-start;gap:.7rem;padding:.55rem 0;cursor:pointer;min-height:44px}.check-field small{max-width:64ch;margin-top:.2rem}.provider-form{max-width:920px}.role-settings{padding:1.1rem 1.3rem .1rem;border:1px solid var(--line);border-radius:5px;margin:0 0 1.4rem;background:#fff;display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,1.4fr);gap:1.2rem}legend{padding:0 .5rem;font-weight:700}.role-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:0;padding:0;margin:1rem 0}.role-checks legend{padding:0}.provider-form>.field{margin-top:1.4rem;max-width:420px}.form-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-top:1.25rem}.list-toolbar{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin:1.5rem 0}.list-toolbar input{max-width:430px}.model-list{display:flex;flex-direction:column;gap:1rem}.model{padding:1.4rem 1.5rem;background:#fff;border:1px solid var(--line);border-radius:6px}.model h2{margin-bottom:.3rem;font-size:1.25rem}.model-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.identifier{overflow-wrap:anywhere;font-size:.91rem;color:var(--muted)}.model-heading p{margin-bottom:.8rem}.model-meta{font-size:.91rem;color:var(--muted)}.inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem}.inline-actions .hint{margin:0}details{background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden}summary{cursor:pointer;padding:1rem 1.2rem;font-weight:700;min-height:50px}summary::marker{color:var(--blue)}summary>.status{margin-left:.8rem}summary .hint{float:right;margin-left:1rem;font-weight:400}details[open]>summary{border-bottom:1px solid var(--line);background:#f3f7fa}.model details{margin-top:1.2rem;border:0;border-top:1px solid var(--line);border-radius:0}.model details summary{padding-left:0;padding-right:0}.model details[open] summary{background:transparent;border:0}.model details form{padding-top:.7rem}.details-body{padding:1.3rem}.evidence-list,.lesson-list{display:grid;gap:1rem}.metadata{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:.5rem 1.5rem;margin:1.5rem 0}.metadata dt{font-weight:700}.metadata dd{margin:0;overflow-wrap:anywhere}.check-results{list-style:none;padding:0;margin-bottom:0}.check-results li{padding:1rem 0;border-top:1px solid var(--line)}.check-results li>div{display:flex;align-items:flex-start;gap:.6rem}.check-results p{margin:.6rem 0 0}.compact-form{max-width:740px;background:#fff;border:1px solid var(--line);padding:1.5rem;border-radius:6px}.learner-list{display:flex;flex-direction:column;margin-top:2rem}.learner{display:flex;justify-content:space-between;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}.learner h2{margin:0 0 .3rem}.learner p{margin-bottom:.35rem}.learner .inline-actions{align-self:center}.back-link{display:inline-block;margin-bottom:1.3rem}.course-state{display:flex;gap:1rem;align-items:center;margin:-.8rem 0 1rem}.course-state p{margin:0}.reviews{display:grid;gap:1rem}.review{background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:4px;padding:1.2rem 1.4rem}.review-blocked{border-left-color:var(--red)}.review-heading{display:flex;align-items:center;gap:1rem}.review h3{margin-bottom:0}.review .hint{margin:.6rem 0}.review ul{padding-left:1.4rem;margin:0}.review li+li{margin-top:.5rem}.sources{padding-left:1.7rem}.sources>li{padding:.4rem 0 1.1rem .2rem;margin-bottom:.6rem;border-bottom:1px solid var(--line)}.sources a{font-weight:700}.sources p{margin:.5rem 0}.prose{white-space:pre-wrap;overflow-wrap:anywhere}.lesson-body{line-height:1.7;max-width:75ch;margin:1.5rem 0 2rem}.empty{background:#f7fafc;border:1px dashed #9bb2c2;border-radius:6px;padding:1.7rem;margin:1rem 0}.empty h2{margin-bottom:.5rem;font-size:1.2rem}.empty p{margin:0;color:var(--muted)}.page-footer{padding-top:3rem;color:var(--muted);font-size:.9rem}.loading{padding:2rem;color:var(--muted)}.login{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.1rem;background:linear-gradient(150deg,#dcebf5,#eef3f7,#f7fafc)}.login-brand{color:var(--navy);margin-bottom:2.4rem}.login-box{width:100%;max-width:495px;padding:2.3rem;background:#fff;border:1px solid #b8cddc;border-radius:10px}.login h1{font-size:2.15rem}.login-form{margin:1.8rem 0 1.3rem}.login-form .button{width:100%}.login-box>.hint{margin-bottom:0}.login .notice{margin:1rem 0}dialog{width:min(560px,calc(100% - 2rem));max-height:calc(100dvh - 3rem);padding:1.7rem;color:var(--ink);background:#fff;border:1px solid #8ba8bc;border-radius:8px;overflow-y:auto}dialog::backdrop{background:#0a2436a6}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.dialog-heading h2{font-size:1.6rem;margin-top:.3rem}.pairing-code{font-size:clamp(2rem,7vw,3rem);font-weight:700;letter-spacing:.12em;text-align:center;padding:1.2rem;margin:1.4rem 0;background:#e7f0f6;border-radius:5px;overflow-wrap:anywhere}@media(max-width:1100px){.app-layout{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-left:1.2rem;padding-right:1.2rem}.provider-status{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem}.role-settings{grid-template-columns:1fr;gap:0}.learner{flex-direction:column;gap:.9rem}.learner .inline-actions{align-self:flex-start}}@media(max-width:760px){.app-layout{display:block}.sidebar{position:static;height:auto;padding:1.1rem;overflow:visible}.brand{font-size:1.6rem}.beacon-mark{width:22px;height:28px}.beacon-mark:after{left:5px;right:5px;top:6px;height:7px}.sidebar-caption{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;margin:1rem 0 0}.sidebar nav a{padding:.65rem .45rem;text-align:center;font-size:.9rem;border-left:0;border-bottom:3px solid transparent}.sidebar nav a[aria-current]{border-bottom-color:var(--focus)}.sidebar-bottom{position:absolute;top:.6rem;right:1rem;padding:0}.sidebar-bottom p{display:none}.sidebar-button{min-height:40px;font-size:.9rem;padding:.4rem .65rem}.workspace-top{min-height:45px;padding-top:.6rem;padding-bottom:.6rem;font-size:.8rem}main:not(.login){padding-top:1.8rem}.stats{gap:1.2rem;grid-template-columns:repeat(2,minmax(0,1fr))}.model{padding:1.1rem}.model-heading{flex-direction:column;gap:.4rem}.model-meta{margin-top:.8rem}.list-toolbar{flex-wrap:wrap}.field-grid{grid-template-columns:1fr;gap:0}.compact-form{padding:1.1rem}.metadata{grid-template-columns:1fr;gap:.15rem}.metadata dd{margin-bottom:.7rem}.course-state{align-items:flex-start;flex-direction:column;gap:.6rem}.review-heading{flex-wrap:wrap;gap:.5rem}.role-checks{grid-template-columns:1fr}.notice{align-items:flex-start}.login-box{padding:1.6rem}.login h1{font-size:1.9rem}summary .hint{display:block;float:none;margin-left:0;margin-top:.3rem}.provider-status>div{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}@media(forced-colors:active){.status,.button,.callout,.sidebar nav a[aria-current]{border:1px solid ButtonText}.beacon-mark{border:2px solid ButtonText}}
