.code-problem-shell{width:min(1120px,100vw - 36px);margin:0 auto;padding:20px 0 72px}.code-problem-detail{width:min(1600px,100vw - 36px)}.code-problem-taskbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;margin-bottom:8px;padding:4px 0 8px;display:flex}.code-problem-taskbar__identity{align-items:center;gap:12px;min-width:0;display:flex}.code-problem-taskbar__back{border:1px solid var(--border);width:34px;min-width:34px;min-height:34px;color:var(--text);background:var(--panel);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.code-problem-taskbar__back:hover{border-color:var(--border-strong);background:var(--surface-muted)}.code-problem-taskbar__back:focus-visible,.code-problem-workspace__connection:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.code-problem-taskbar__title{min-width:0}.code-problem-taskbar__title p{color:var(--muted);font-size:var(--ds-text-label);align-items:center;gap:10px;margin:0 0 3px;display:flex}.code-problem-taskbar__title strong{color:var(--accent-dark)}.code-problem-taskbar__title h1{font-family:var(--heading-font);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.35rem;line-height:1.2;overflow:hidden}.code-problem-taskbar__limits{flex:none;gap:24px;margin:0;display:flex}.code-problem-taskbar__controls{flex:none;align-items:center;gap:18px;display:flex}.code-problem-taskbar__controls .code-problem-completion-toggle{white-space:nowrap;min-height:34px}.code-problem-taskbar__limits div{min-width:90px}.code-problem-taskbar__limits dt,.code-problem-taskbar__limits dd{font-size:var(--ds-text-label);margin:0}.code-problem-taskbar__limits dt{color:var(--muted)}.code-problem-taskbar__limits dd{font-family:var(--mono-font);margin-top:2px}.code-problem-breadcrumb{margin-bottom:18px}.code-problem-heading,.code-problem-detail__header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.code-problem-detail__header{border-bottom:1px solid var(--border);align-items:center;margin-bottom:0;padding:24px 0}.code-problem-eyebrow{color:var(--accent);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);margin:0 0 8px}.code-problem-heading h1,.code-problem-detail__header h1{font-family:var(--heading-font);font-size:var(--ds-text-section);line-height:var(--ds-leading-tight);letter-spacing:var(--ds-tracking-section);margin:0}.code-problem-detail__header h1{font-size:2.25rem}.code-problem-heading__count{color:var(--muted);font-family:var(--mono-font);flex:none;justify-items:end;gap:2px;margin:0;display:grid}.code-problem-heading__count strong{color:var(--text);font-size:1.7rem;line-height:1}.code-problem-heading__count span{font-size:var(--ds-text-label)}.code-problem-heading p:last-child,.code-problem-detail__header p:last-child{max-width:68ch;color:var(--muted);margin:10px 0 0;line-height:1.7}.code-problem-stats,.code-problem-meta-grid{grid-template-columns:repeat(2,minmax(118px,1fr));gap:10px;margin:0;display:grid}.code-problem-stats{grid-template-columns:repeat(3,minmax(96px,1fr))}.code-problem-stats div,.code-problem-meta-grid div,.code-problem-panel,.code-book-section,.code-problem-example{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-ring);border-radius:8px}.code-problem-stats div,.code-problem-meta-grid div{padding:12px}.code-problem-stats dt,.code-problem-meta-grid dt{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-problem-stats dd,.code-problem-meta-grid dd{font-family:var(--mono-font);font-size:var(--ds-text-body-small);word-break:break-word;margin:4px 0 0}.code-book-browser{gap:16px;display:grid}.code-book-picker{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow-ring);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;padding:16px;display:grid}.code-book-picker h2,.code-book-picker p{margin:0}.code-book-picker h2{font-size:var(--ds-text-subheading);line-height:var(--ds-leading-snug)}.code-book-picker__stats{grid-template-columns:repeat(3,minmax(88px,1fr));gap:8px;margin:0;display:grid}.code-book-picker__stats div{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;padding:10px}.code-book-picker__stats dt{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-book-picker__stats dd{font-family:var(--mono-font);font-size:var(--ds-text-body-small);margin:4px 0 0}.code-book-picker__controls{grid-column:1/-1}.code-book-picker label{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);gap:6px;display:grid}.code-book-picker select{border:1px solid var(--border);width:100%;min-height:42px;color:var(--text);background:var(--surface-muted);border-radius:8px;padding:0 12px}.code-book-section{padding:18px}.code-book-empty{color:var(--muted);margin:0}.code-book-section__head{justify-content:space-between;gap:16px;margin-bottom:14px;display:flex}.code-book-section__head p,.code-book-section__head h2,.code-book-section__head span{margin:0}.code-book-section__head p{color:var(--accent);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-book-section__head h2{font-size:var(--ds-text-subheading);line-height:var(--ds-leading-snug);margin-top:4px}.code-book-section__head span{color:var(--muted);margin-top:6px;line-height:1.6;display:block}.code-book-section__count{color:var(--muted);font-family:var(--mono-font);flex:none}.code-problem-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.code-problem-subsection-head{gap:4px;margin:16px 0 10px;display:grid}.code-problem-subsection-head h3{font-size:var(--ds-text-body);line-height:var(--ds-leading-snug);margin:0}.code-problem-subsection-head p{color:var(--muted);font-size:var(--ds-text-body-small);margin:0}.code-problem-row{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;grid-template-columns:92px minmax(0,1fr) 112px;align-items:center;gap:14px;min-height:64px;padding:12px;display:grid}.code-problem-row:hover{border-color:var(--border-strong);background:var(--surface-hover)}.code-problem-row__number,.code-problem-row__meta{font-family:var(--mono-font);color:var(--muted);font-size:var(--ds-text-body-small)}.code-problem-row__body{gap:4px;min-width:0;display:grid}.code-problem-row__body strong{overflow-wrap:anywhere}.code-problem-row__body span{color:var(--muted);font-size:var(--ds-text-body-small);overflow-wrap:anywhere}.code-practice-problem-section{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.code-practice-problem-section__head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.code-practice-problem-section__head h3,.code-practice-problem-section__head p{margin:0}.code-practice-problem-section__head h3{font-size:var(--ds-text-body);line-height:var(--ds-leading-snug)}.code-practice-problem-section__head p{color:var(--muted);font-size:var(--ds-text-body-small);margin-top:4px}.code-practice-problem-section__head span{color:var(--muted);font-family:var(--mono-font);font-size:var(--ds-text-body-small);flex:none}.code-practice-problem-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.code-practice-problem-card{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.code-practice-problem-card[data-tone=challenge]{background:var(--surface-tint)}.code-practice-problem-card__body{gap:7px;min-width:0;display:grid}.code-practice-problem-card__meta,.code-practice-problem-card__tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.code-practice-problem-card__meta span,.code-practice-problem-card__tags li{border:1px solid var(--border);color:var(--muted);background:var(--panel);font-size:var(--ds-text-label);border-radius:999px;padding:3px 7px;line-height:1.35}.code-practice-problem-card h4{font-size:var(--ds-text-body);line-height:var(--ds-leading-snug);margin:0}.code-practice-problem-card p{color:var(--muted);font-size:var(--ds-text-body-small);margin:0;line-height:1.6}.code-practice-problem-card__note{color:var(--text)}.code-practice-problem-card__actions{gap:8px;min-width:150px;display:grid}.code-practice-problem-card__actions a{border:1px solid var(--border);min-height:34px;color:var(--text);background:var(--panel);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);border-radius:8px;justify-content:center;align-items:center;padding:7px 10px;display:inline-flex}.code-problem-actions{gap:8px;min-width:180px;display:grid}.code-problem-primary-link,.code-problem-secondary-link,.code-problem-copy-button{border:1px solid var(--border);min-height:38px;font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;display:inline-flex}.code-problem-primary-link{color:var(--ds-white);border-color:var(--accent);background:var(--accent)}.code-problem-secondary-link,.code-problem-copy-button{color:var(--text);background:var(--surface-muted)}.code-problem-copy-button{width:auto;min-height:32px;font-size:var(--ds-text-button)}.code-problem-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.code-problem-limit-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:0 0;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 38px;display:grid;overflow:hidden}.code-problem-limit-strip div{border-right:1px solid var(--border);min-width:0;padding:10px 12px}.code-problem-limit-strip div:last-child{border-right:0}.code-problem-limit-strip dt{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-problem-limit-strip dd{font-family:var(--mono-font);font-size:var(--ds-text-body-small);overflow-wrap:anywhere;margin:4px 0 0;line-height:1.45}.code-problem-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.code-problem-panel{padding:16px}.code-problem-statement,.code-problem-examples,.code-problem-tag-list,.code-problem-source-note{max-width:860px}.code-problem-statement{gap:34px;display:grid}.code-problem-statement-section{border-top:1px solid var(--border);padding-top:24px}.code-problem-statement-section:first-child{border-top:0;padding-top:0}.code-problem-statement-section h2{font-size:1.2rem;line-height:var(--ds-leading-snug);margin:0 0 12px}.code-problem-statement-section p{color:var(--text);white-space:pre-wrap;margin:0;line-height:1.85}.code-problem-statement-section--constraints p{color:var(--muted);font-size:var(--ds-text-body-small)}.code-problem-panel--wide{grid-column:1/-1}.code-problem-panel h2,.code-problem-section-head h2,.code-problem-example h3{font-size:1.2rem;line-height:var(--ds-leading-snug);margin:0}.code-problem-panel p{color:var(--muted);white-space:pre-wrap;margin:10px 0 0;line-height:1.7}.code-problem-section-head,.code-problem-example__head,.code-problem-example__label{justify-content:space-between;align-items:center;gap:10px;display:flex}.code-problem-section-head{margin-bottom:12px}.code-problem-examples{border-top:1px solid var(--border-strong);margin-top:42px;padding-top:28px}.code-problem-examples__description{color:var(--muted);font-size:var(--ds-text-body-small);margin:-4px 0 16px;line-height:1.6}.code-problem-section-head span{color:var(--muted);font-family:var(--mono-font)}.code-problem-example-list{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:0;display:grid}.code-problem-example{box-shadow:none;background:0 0;border:0;border-radius:0;padding:20px 0}.code-problem-example+.code-problem-example{border-top:1px solid var(--border)}.code-problem-example__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.code-problem-example__io{border:1px solid color-mix(in srgb,var(--code-text)20%,transparent);background:var(--code-surface);border-radius:6px;min-width:0;overflow:hidden}.code-problem-example__label{min-height:36px;color:var(--code-text);font-weight:var(--ds-weight-semibold);padding:6px 8px 6px 11px}.code-problem-example pre{background:var(--code-bg);min-height:88px;color:var(--code-text);font-family:var(--mono-font);font-size:var(--ds-text-body-small);white-space:pre-wrap;border:0;margin:0;padding:12px 13px;line-height:1.6;overflow:auto}.code-problem-example__explanation{color:var(--muted);margin:12px 0 0;line-height:1.7}.code-problem-tag-list{flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.code-problem-tag-list li{border:1px solid var(--border);color:var(--muted);background:var(--surface-muted);font-size:var(--ds-text-label);border-radius:999px;padding:5px 9px}.code-problem-source-note{color:var(--muted);font-size:var(--ds-text-label);flex-wrap:wrap;align-items:center;gap:6px;margin-top:16px;display:flex}.code-problem-source-note a{color:var(--muted);text-underline-offset:3px;text-decoration:underline}.code-problem-workspace{border:1px solid var(--border-strong);background:var(--panel);border-radius:8px;max-width:1060px;margin-top:46px;overflow:hidden}.code-problem-workspace__ide{flex-direction:column;min-height:0;display:flex;container-type:inline-size}.code-problem-workspace__toolbar,.code-problem-workspace__helper-notice,.code-problem-workspace__result{padding:16px 18px}.code-problem-workspace__toolbar,.code-problem-workspace__helper-notice,.code-problem-workspace__result-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.code-problem-workspace__connection{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:7px;padding:0;display:inline-flex}.code-problem-workspace__connection:disabled{cursor:wait}.code-problem-workspace__connection[data-status=ready]{color:var(--accent-dark)}.code-problem-workspace__connection[data-status=unavailable]{color:#b54a38}.code-problem-workspace__toolbar{border-bottom:1px solid var(--border);background:var(--surface-muted);justify-content:flex-start}.code-problem-workspace__toolbar label{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);align-items:center;gap:8px;display:flex}.code-problem-workspace__toolbar select{border:1px solid var(--border);min-height:34px;color:var(--text);background:var(--panel);font:inherit;border-radius:6px;padding:0 9px}.code-problem-workspace__toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.code-problem-workspace__console{border-top:1px solid var(--border);background:var(--surface-muted);flex:none}.code-problem-workspace__console-head{border-bottom:1px solid var(--border);min-height:38px;color:var(--code-text);background:color-mix(in srgb,var(--code-surface)90%,var(--panel));justify-content:space-between;align-items:center;gap:12px;padding:8px 18px;display:flex}.code-problem-workspace__console-head h3,.code-problem-workspace__console-head span,.code-problem-workspace__console-head strong{margin:0}.code-problem-workspace__console-head h3{font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.code-problem-workspace__console-head div{align-items:baseline;gap:8px;display:flex}.code-problem-workspace__console-head .code-problem-workspace__console-status{justify-content:flex-end}.code-problem-workspace__console-head span,.code-problem-workspace__console-head strong{color:var(--syntax-comment);font-family:var(--mono-font);font-size:var(--ds-text-label)}.code-problem-workspace__console-head strong{font-weight:var(--ds-weight-semibold)}.code-problem-workspace__console[data-status=running] .code-problem-workspace__console-head strong{color:var(--code-text)}.code-problem-workspace__console[data-status=error] .code-problem-workspace__console-head strong,.code-problem-workspace__console[data-status=failure] .code-problem-workspace__console-head strong{color:#ed705b}.code-problem-workspace__terminal{cursor:default;background:#1e2329;border:1px solid #596473;border-radius:6px;outline:0;min-width:0;height:112px;min-height:112px;margin:8px 10px 10px;padding:8px 10px;display:flex;overflow:hidden}.code-problem-workspace__terminal[data-interactive=true]{cursor:text}.code-problem-workspace__terminal:focus-within{border-color:#7fb8ff}.code-problem-workspace__terminal .xterm{background:#1e2329;flex:auto;width:100%;min-width:0;height:auto;min-height:0;padding:0}.code-problem-workspace__terminal .xterm-viewport{scrollbar-color:#697586 #1e2329}.code-problem-workspace__test-case{border-bottom:1px solid var(--border);background:var(--code-surface);flex:none;padding:12px 18px 14px}.code-problem-workspace__test-case-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px;display:flex}.code-problem-workspace__test-case-head h3,.code-problem-workspace__test-case-head span{margin:0}.code-problem-workspace__test-case-head h3{color:var(--code-text);font-size:var(--ds-text-body-small)}.code-problem-workspace__test-case-head span{color:var(--syntax-comment);font-size:var(--ds-text-label)}.code-problem-workspace__test-case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.code-problem-workspace__test-case-grid label{min-width:0;color:var(--code-text);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);gap:6px;display:grid}.code-problem-workspace__test-case-grid label span{align-items:baseline;gap:5px;display:flex}.code-problem-workspace__test-case-grid em{color:var(--syntax-comment);font-size:.72rem;font-style:normal;font-weight:var(--ds-weight-regular)}.code-problem-workspace__test-case textarea{resize:vertical;border:1px solid color-mix(in srgb,var(--code-text)20%,transparent);min-height:76px;color:var(--code-text);background:var(--code-bg);font-family:var(--mono-font);font-size:var(--ds-text-label);border-radius:6px;padding:9px 10px;line-height:1.55}.code-problem-workspace__test-case textarea:focus{outline:2px solid color-mix(in srgb,var(--accent)65%,transparent);outline-offset:1px}.code-problem-workspace__icon-button,.code-problem-workspace__run-button{border:1px solid var(--border);min-height:34px;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;display:inline-flex}.code-problem-workspace__icon-button{color:var(--text);background:var(--panel);text-decoration:none}.code-problem-workspace__run-button{color:var(--ds-white);border-color:var(--accent);background:var(--accent)}.code-problem-workspace__run-button:disabled{cursor:not-allowed;opacity:.55}.code-problem-workspace__helper-notice{border-bottom:1px solid var(--border);background:color-mix(in srgb,#f4c95d 12%,var(--panel)88%)}.code-problem-workspace__helper-notice div{gap:3px;display:grid}.code-problem-workspace__helper-notice strong{font-size:var(--ds-text-body-small)}.code-problem-workspace__helper-notice span{color:var(--muted);font-size:var(--ds-text-label)}.code-problem-workspace__helper-notice .code-problem-secondary-link{flex:none;min-height:34px}.code-problem-workspace__editor{background:var(--code-bg);min-height:420px}.code-problem-workspace__editor .cm-editor,.code-problem-workspace__editor .cm-scroller,.code-problem-workspace__editor .cm-content{background:var(--code-bg)!important;color:var(--code-text)!important}html[data-code-theme=github] .code-problem-workspace__editor .cm-cursor,html[data-code-theme=latte] .code-problem-workspace__editor .cm-cursor{border-left-width:2px!important;border-left-color:#0969da!important}.code-problem-workspace__result{border-top:1px solid var(--border);background:var(--surface-muted)}.code-problem-workspace__result-head h3,.code-problem-workspace__result-head span{margin:0}.code-problem-workspace__result-head h3{font-size:var(--ds-text-body-small)}.code-problem-workspace__result-head span{color:var(--accent-dark);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-problem-workspace__result>p{color:var(--muted);font-size:var(--ds-text-body-small);margin:10px 0 0;line-height:1.6}.code-problem-workspace__review-actions{border-top:1px solid var(--border);background:var(--surface-muted);flex-wrap:wrap;flex:none;align-items:center;gap:8px;padding:6px 14px;display:flex}.code-problem-workspace__review-actions>span{color:var(--accent-dark);font-size:var(--ds-text-label)}.code-problem-workspace__result-grid{grid-template-columns:minmax(0,1fr) 190px;gap:12px;margin-top:12px;display:grid}.code-problem-workspace__result-grid>div{min-width:0}.code-problem-workspace__result-grid>div>span{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);margin-bottom:6px;display:block}.code-problem-workspace__result pre{background:var(--code-bg);min-height:78px;color:var(--code-text);font-family:var(--mono-font);font-size:var(--ds-text-body-small);white-space:pre-wrap;border-radius:6px;margin:0;padding:11px;line-height:1.55;overflow:auto}.code-problem-workspace__result dl{gap:8px;margin:0;display:grid}.code-problem-workspace__result dl div{border-bottom:1px solid var(--border);justify-content:space-between;gap:8px;padding:7px 0;display:flex}.code-problem-workspace__result dt,.code-problem-workspace__result dd{font-size:var(--ds-text-label);margin:0}.code-problem-workspace__result dt{color:var(--muted)}.code-problem-workspace__result dd{font-family:var(--mono-font)}.code-problem-workspace__result-error{grid-column:1/-1}.code-problem-workspace__result[data-status=error] .code-problem-workspace__result-head span,.code-problem-workspace__result[data-status=failure] .code-problem-workspace__result-head span{color:#b54a38}.code-problem-workspace__spinner{animation:.9s linear infinite code-problem-workspace-spin}@keyframes code-problem-workspace-spin{to{transform:rotate(360deg)}}.code-problem-split{gap:32px;display:grid}.code-problem-split__divider,.code-problem-split__terminal-divider{display:none}.code-problem-split__workspace,.code-problem-split__statement{container-type:inline-size}@container (max-width:720px){.code-problem-example__label{padding-right:6px}.code-problem-copy-button{width:32px;min-width:32px;padding:7px}.code-problem-copy-button>span{display:none}.code-problem-workspace__connection{justify-content:center;width:24px}.code-problem-workspace__connection span,.code-problem-workspace__toolbar label>span{display:none}.code-problem-workspace__toolbar{flex-wrap:nowrap;gap:8px;padding:10px 16px}.code-problem-workspace__toolbar label{flex:none}.code-problem-workspace__toolbar-actions{flex-wrap:nowrap;gap:6px}.code-problem-workspace__toolbar-actions>.code-problem-workspace__icon-button,.code-problem-workspace__toolbar-actions>.code-problem-workspace__run-button{width:34px;min-width:34px;padding:7px}.code-problem-workspace__toolbar-actions>.code-problem-workspace__icon-button>span,.code-problem-workspace__toolbar-actions>.code-problem-workspace__run-button>span,.code-problem-workspace__helper-notice .code-problem-secondary-link>span,.code-problem-workspace__review-actions .code-problem-workspace__icon-button>span{display:none}.code-problem-workspace__helper-notice{padding:13px 16px}.code-problem-workspace__helper-notice .code-problem-secondary-link,.code-problem-workspace__review-actions .code-problem-workspace__icon-button{width:34px;min-width:34px;padding:7px}}.code-problem-split .code-problem-workspace{margin-top:0}.code-run-history{max-width:1180px}.code-run-history__head{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:center;gap:18px;padding:4px 0 16px;display:flex}.code-run-history__head p,.code-run-history__head h1,.code-run-history__head span{margin:0}.code-run-history__head p{color:var(--accent);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-run-history__head h1{font-size:var(--ds-text-subheading);line-height:var(--ds-leading-snug);margin-top:3px}.code-run-history__head>div>span{color:var(--muted);font-size:var(--ds-text-body-small);margin-top:4px;line-height:1.6;display:block}.code-run-history__head-actions{flex:none;align-items:center;gap:10px;display:flex}.code-run-history__head-actions label{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);align-items:center;gap:8px;display:flex}.code-run-history__head-actions select{border:1px solid var(--border);min-width:240px;min-height:36px;color:var(--text);background:var(--surface-muted);font:inherit;border-radius:6px;padding:0 9px}.code-run-history__filter--result select{min-width:150px}.code-run-history__head-actions>span{color:var(--muted);font-family:var(--mono-font);font-size:var(--ds-text-body-small);white-space:nowrap}.code-run-history__head-actions button,.code-run-history__item-actions button{border:1px solid var(--border);min-height:36px;color:var(--text);background:var(--surface-muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;display:inline-flex}.code-run-history__head-actions button:disabled{cursor:not-allowed;opacity:.5}.code-run-history__empty{color:var(--muted);border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:28px 0;display:flex}.code-run-history__empty p{margin:0}.code-run-history__list{margin:0;padding:0;list-style:none}.code-run-history__item{border-bottom:1px solid var(--border);padding:20px 0}.code-run-history__item>header,.code-run-history__item-actions,.code-run-history__item-title{align-items:center;display:flex}.code-run-history__item>header{justify-content:space-between;gap:16px}.code-run-history__item-title{flex-wrap:wrap;gap:8px;min-width:0}.code-run-history__item-title>span{border:1px solid color-mix(in srgb,var(--accent)35%,var(--border));color:var(--accent-dark);background:color-mix(in srgb,var(--accent)8%,var(--panel)92%);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);border-radius:999px;flex:none;padding:3px 7px}.code-run-history__item[data-status=failure] .code-run-history__item-title>span,.code-run-history__item[data-status=error] .code-run-history__item-title>span{border-color:color-mix(in srgb,#b54a38 35%,var(--border));color:#b54a38;background:color-mix(in srgb,#b54a38 7%,var(--panel)93%)}.code-run-history__item-title a,.code-run-history__item-title strong{min-width:0;color:var(--text);font-size:var(--ds-text-body);line-height:var(--ds-leading-snug);overflow-wrap:anywhere}.code-run-history__item-title a{text-decoration:none}.code-run-history__item-title a:hover{text-underline-offset:3px;text-decoration:underline}.code-run-history__item-title small{width:100%;color:var(--muted);font-size:var(--ds-text-body-small)}.code-run-history__item-actions{flex:none;gap:8px}.code-run-history__item-actions time{color:var(--muted);font-size:var(--ds-text-label);white-space:nowrap}.code-run-history__item-actions button{min-width:34px;min-height:34px;padding:7px}.code-run-history__metrics{flex-wrap:wrap;gap:16px;margin:14px 0 0;display:flex}.code-run-history__metrics div{color:var(--muted);font-size:var(--ds-text-label);gap:7px;display:flex}.code-run-history__metrics dt,.code-run-history__metrics dd{margin:0}.code-run-history__metrics dd{color:var(--text);font-family:var(--mono-font)}.code-run-history__details{margin-top:16px}.code-run-history__details summary{width:fit-content;color:var(--muted);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);cursor:pointer}.code-run-history__io-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.code-run-history__details section,.code-run-history__error{min-width:0}.code-run-history__details section>span,.code-run-history__error>span{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold);margin-bottom:5px;display:block}.code-run-history__details pre,.code-run-history__error pre{background:var(--code-bg);min-height:54px;color:var(--code-text);font-family:var(--mono-font);font-size:var(--ds-text-label);white-space:pre-wrap;border-radius:6px;margin:0;padding:10px 11px;line-height:1.55;overflow:auto}.code-run-history__error{margin-top:10px}.code-run-history__source-head{justify-content:space-between;align-items:center;gap:12px;margin:10px 0 6px;display:flex}.code-run-history__source-head span{color:var(--muted);font-size:var(--ds-text-label);font-weight:var(--ds-weight-semibold)}.code-run-history__source-head button{border:1px solid var(--border);min-height:32px;color:var(--text);background:var(--surface-muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:6px;padding:6px 9px;display:inline-flex}@media (min-width:1101px){body:has(.code-problem-detail) .utility-rail{display:none}.page-shell>.code-problem-detail{width:min(1600px,100vw - 32px);max-width:none;margin-left:50%;transform:translate(-50%)}.code-problem-detail{height:calc(100dvh - var(--site-header-offset) - 26px);grid-template-rows:auto minmax(0,1fr);padding:8px 0 10px;display:grid}.code-problem-split{grid-template-columns:minmax(0,var(--code-problem-statement-width,46%))12px minmax(0,1fr);grid-template-rows:minmax(0,1fr)10px minmax(110px,min(var(--code-problem-terminal-height,180px),42%));border:1px solid var(--border-strong);background:var(--panel);border-radius:8px;gap:0;height:100%;min-height:0;overflow:hidden}.code-problem-split__statement{overscroll-behavior:contain;grid-area:1/1/4;min-width:0;padding:30px 32px 42px;overflow-y:auto}.code-problem-split__divider{touch-action:none;cursor:col-resize;background:var(--surface-muted);outline:none;grid-area:1/2/4;place-items:center;display:grid}.code-problem-split__divider:before{background:var(--border-strong);content:"";width:1px;height:100%}.code-problem-split__divider:hover:before,.code-problem-split__divider:focus-visible:before{background:var(--accent);width:2px}.code-problem-split__divider:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.code-problem-split__terminal-divider{touch-action:none;cursor:row-resize;background:var(--surface-muted);z-index:2;outline:none;grid-area:2/3;place-items:center;display:grid}.code-problem-split__terminal-divider:before{background:var(--border-strong);content:"";width:100%;height:1px}.code-problem-split__terminal-divider:hover:before,.code-problem-split__terminal-divider:focus-visible:before{background:var(--accent);height:2px}.code-problem-split__terminal-divider:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.code-problem-split__statement .code-problem-statement,.code-problem-split__statement .code-problem-examples,.code-problem-split__statement .code-problem-source-note{max-width:none}.code-problem-split__statement .code-problem-examples{margin-top:32px;padding-top:24px}.code-problem-split__workspace,.code-problem-split__workspace .code-problem-workspace{display:contents}.code-problem-split__workspace .code-problem-workspace__ide{background:var(--panel);grid-area:1/3;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.code-problem-split__workspace .code-problem-workspace__toolbar{min-height:54px;padding:9px 14px}.code-problem-split__workspace .code-problem-workspace__editor{flex:auto;min-height:0;overflow:hidden}.code-problem-split__workspace .code-problem-workspace__editor>.cm-theme-light,.code-problem-split__workspace .code-problem-workspace__editor .cm-editor,.code-problem-split__workspace .code-problem-workspace__editor .cm-scroller,.code-problem-split__workspace .code-problem-workspace__editor .cm-gutters{height:100%!important;min-height:0!important}.code-problem-split__workspace .code-problem-workspace__editor>.cm-theme-light,.code-problem-split__workspace .code-problem-workspace__editor .cm-editor{overflow:hidden}.code-problem-split__workspace .code-problem-workspace__editor .cm-scroller{overflow:auto!important}.code-problem-split__workspace .code-problem-workspace__console{border-top:1px solid var(--border-strong);z-index:1;flex-direction:column;grid-area:3/3;height:100%;min-height:0;display:flex;overflow:hidden}.code-problem-split__workspace .code-problem-workspace__terminal{flex:auto;height:auto;min-height:56px}}.code-problem-completion-toggle{border:1px solid var(--accent);min-height:38px;color:var(--accent-dark);background:color-mix(in srgb,var(--accent)7%,var(--bg)93%);font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;display:inline-flex}.code-problem-completion-toggle[aria-pressed=true]{color:var(--ds-white);background:var(--accent)}.code-track-progress{background:var(--bg-strong);border-radius:999px;height:6px;overflow:hidden}.code-track-progress span{border-radius:inherit;background:var(--accent);height:100%;display:block}.code-track-layout{gap:34px;display:grid}.code-track-progress-panel{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(180px,1fr) 48px;align-items:center;gap:18px;padding:16px 4px;display:grid}.code-track-progress-panel__copy{align-items:baseline;gap:10px;min-width:150px;display:flex}.code-track-progress-panel__copy strong{font-size:var(--ds-text-body-small)}.code-track-progress-panel__copy span{color:var(--muted);font-size:var(--ds-text-label)}.code-track-progress-panel__value{font-family:var(--mono-font);font-size:var(--ds-text-body-small);justify-self:end}.code-track-sections{gap:34px;display:grid}.code-track-section{border-top:1px solid var(--border-strong);gap:0;display:grid}.code-track-section[data-tone=challenge]{background:0 0}.code-track-section__head{justify-content:space-between;align-items:end;gap:14px;padding:20px 8px 14px;display:flex}.code-track-section__head h2,.code-track-section__head p{margin:0}.code-track-section__head h2{font-size:var(--ds-text-subheading);line-height:var(--ds-leading-snug)}.code-track-section__head p{color:var(--muted);font-size:var(--ds-text-body-small);margin-top:4px}.code-track-section__head span{color:var(--muted);font-family:var(--mono-font);flex:none}.code-track-problem-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none;display:grid}.code-track-problem-row{border-bottom:1px solid var(--border);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;min-height:82px;padding:0 8px;transition:background .16s;display:grid}.code-track-problem-row:hover{background:color-mix(in srgb,var(--surface-muted)72%,transparent)}.code-track-problem-row[data-solved=true]{color:var(--muted)}.code-track-solve-toggle{border:1px solid var(--border);width:40px;min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .16s,border-color .16s,background .16s;display:inline-flex}.code-track-solve-toggle svg{opacity:0}.code-track-solve-toggle[aria-pressed=true]{color:var(--ds-white);border-color:var(--accent);background:var(--accent)}.code-track-solve-toggle[aria-pressed=true] svg{opacity:1}.code-track-problem-row__link{grid-template-columns:72px minmax(0,1fr) 96px 18px;align-items:center;gap:16px;min-width:0;min-height:82px;padding:12px 4px;display:grid}.code-track-problem-row__number{color:var(--accent-dark);font-family:var(--mono-font);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.code-track-problem-row__body{gap:4px;min-width:0;display:grid}.code-track-problem-row__meta{color:var(--muted);font-size:var(--ds-text-label);justify-items:end;gap:2px;line-height:1.4;display:grid}.code-track-problem-row__meta small{font-family:var(--mono-font);font-size:inherit}.code-track-problem-row h3,.code-track-problem-row p{margin:0}.code-track-problem-row h3{font-size:var(--ds-text-body);line-height:var(--ds-leading-snug)}.code-track-problem-row p{color:var(--muted);font-size:var(--ds-text-body-small);line-height:1.5}.code-track-problem-row[data-solved=true] h3{color:var(--muted)}@media (max-width:760px){.code-problem-taskbar{flex-direction:column;align-items:stretch;gap:10px}.code-problem-taskbar__limits{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-left:46px;display:grid}.code-problem-taskbar__controls{gap:10px;width:100%;padding-left:46px}.code-problem-taskbar__controls .code-problem-taskbar__limits{flex:auto;padding-left:0}.code-problem-taskbar__controls .code-problem-completion-toggle{width:38px;min-width:38px;padding:8px}.code-problem-taskbar__controls .code-problem-completion-toggle span{display:none}.code-problem-taskbar__limits div{min-width:0}.code-book-picker,.code-problem-example__grid{grid-template-columns:1fr}.code-book-picker__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.code-book-section__head{flex-direction:column}.code-problem-heading,.code-problem-detail__header{flex-direction:column;align-items:start}.code-run-history__head,.code-run-history__item>header{flex-direction:column;align-items:stretch}.code-run-history__head-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;width:100%;display:grid}.code-run-history__head-actions label{gap:4px;display:grid}.code-run-history__head-actions select{width:100%;min-width:0}.code-run-history__head-actions>span{align-self:center}.code-run-history__head-actions>button{justify-self:end}.code-run-history__item-actions{justify-content:space-between}.code-run-history__io-grid,.code-problem-workspace__test-case-grid{grid-template-columns:1fr}.code-problem-workspace__test-case-head{flex-direction:column;align-items:start;gap:3px}.code-run-history__source-head{flex-direction:column;align-items:start}.code-problem-heading__count{justify-items:start}.code-track-progress-panel{grid-template-columns:minmax(0,1fr) auto;gap:12px}.code-track-progress{grid-area:2/1/auto/-1}.code-track-problem-row{grid-template-columns:40px minmax(0,1fr);gap:4px;padding:0 2px}.code-track-problem-row__link{grid-template-columns:58px minmax(0,1fr) 18px;gap:10px}.code-track-problem-row__meta{grid-area:2/2;justify-items:start;gap:8px;display:flex}.code-track-problem-row__link>svg{grid-area:1/3/3}.code-problem-stats,.code-problem-meta-grid,.code-problem-content-grid{grid-template-columns:1fr}.code-problem-limit-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.code-problem-limit-strip div{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.code-problem-limit-strip div:nth-child(2n){border-right:0}.code-problem-limit-strip div:nth-last-child(-n+2){border-bottom:0}.code-problem-row{grid-template-columns:1fr;gap:6px}.code-practice-problem-section__head{flex-direction:column;align-items:start}.code-practice-problem-card{grid-template-columns:1fr}.code-practice-problem-card__actions{width:100%}.code-problem-workspace__toolbar,.code-problem-workspace__helper-notice{flex-direction:column;align-items:stretch}.code-problem-workspace__connection{align-self:flex-start}.code-problem-workspace__toolbar-actions{width:100%;margin-left:0}.code-problem-workspace__icon-button,.code-problem-workspace__run-button,.code-problem-workspace__helper-notice .code-problem-secondary-link{flex:1 1 0}.code-problem-workspace__review-actions{align-items:stretch}.code-problem-workspace__review-actions .code-problem-workspace__icon-button{flex:1 1 0}.code-problem-workspace__review-actions>span{width:100%}.code-problem-workspace__result-grid{grid-template-columns:1fr}}
.archive-login{gap:28px;display:grid}.archive-login__shell{border:2px solid var(--refdock-ink);background:var(--refdock-paper);box-shadow:none;isolation:isolate;border-radius:0;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:0;display:grid;position:relative;overflow:hidden}.archive-login__shell:before{display:none}.archive-login__hero{z-index:1;border-right:1px solid color-mix(in srgb,var(--refdock-ink)28%,transparent);align-content:space-between;gap:28px;min-height:460px;padding:clamp(24px,3vw,40px);display:grid;position:relative}.archive-login__topline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.archive-login__pill,.archive-login__meta{min-height:32px;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:.04em;border-radius:0;align-items:center;padding:0 12px;display:inline-flex}.archive-login__pill{border:1px solid var(--refdock-ink);background:var(--refdock-ink);color:var(--refdock-signal)}.archive-login__meta{border:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);color:var(--muted);background:0 0}.archive-login__copy{align-content:start;gap:14px;display:grid}.archive-login__eyebrow{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.16em;text-transform:uppercase;margin:0}.archive-login__copy h1{max-width:10ch;font-family:var(--heading-font);letter-spacing:0;color:var(--refdock-ink);margin:0;font-size:clamp(2.8rem,6vw,5.2rem);line-height:.94}.archive-login__summary{max-width:38ch;color:var(--muted);margin:0;font-size:clamp(1rem,1.45vw,1.08rem);line-height:1.72}.archive-login__details{gap:14px;display:grid}.archive-login__features{border-top:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);border-left:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.archive-login__features li{border-right:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);border-bottom:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);background:0 0;gap:8px;padding:16px;display:grid}.archive-login__features strong{font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:-.02em;color:var(--text)}.archive-login__features span{color:var(--muted);font-size:var(--ds-text-button);line-height:1.55}.archive-login__panel{z-index:1;background:var(--surface-elevated);box-shadow:none;border:0;border-radius:0;align-content:center;gap:16px;padding:clamp(24px,3vw,40px);display:grid;position:relative}.archive-form{gap:18px;max-width:none;padding:0;display:grid}.archive-form__head{gap:8px;display:grid}.archive-form__eyebrow{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.14em;text-transform:uppercase;margin:0}.archive-form__head h2{font-family:var(--body-font);font-size:clamp(1.6rem,2vw,2rem);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.04}.archive-form__help,.archive-form__status{color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.6}.archive-form__mode{border:1px solid var(--refdock-ink);background:0 0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;display:grid}.archive-form__mode button{min-height:42px;color:var(--muted);font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;background:0 0;border:0;border-radius:0}.archive-form__mode button.is-active{background:var(--refdock-ink);color:var(--refdock-signal);box-shadow:none}.archive-form__field{gap:10px;display:grid}.archive-form__field span{color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:.04em;text-transform:uppercase}.archive-form__field input{border:1px solid color-mix(in srgb,var(--refdock-ink)44%,transparent);background:var(--refdock-paper);width:100%;min-width:0;min-height:54px;color:var(--text);font:inherit;font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface-hover)58%,transparent);border-radius:0;padding:0 16px;transition:border-color .18s,box-shadow .18s,background-color .18s}.archive-form__field input::placeholder{color:color-mix(in srgb,var(--muted)88%,transparent)}.archive-form__field input:focus-visible{border-color:color-mix(in srgb,var(--accent)38%,var(--border)62%);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent)14%,transparent),inset 0 1px 0 color-mix(in srgb,var(--surface-hover)58%,transparent);outline:none}.archive-form__field input[aria-invalid=true]{border-color:color-mix(in srgb,var(--ds-error-soft)48%,var(--border)52%);box-shadow:0 0 0 4px color-mix(in srgb,var(--ds-error-soft)14%,transparent),inset 0 1px 0 color-mix(in srgb,var(--surface-hover)58%,transparent)}.archive-form__remember{width:fit-content;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);align-items:center;gap:10px;display:inline-flex}.archive-form__remember input{width:16px;height:16px;accent-color:var(--accent)}.archive-form__error{background:color-mix(in srgb,var(--ds-error-soft)16%,var(--panel-strong)84%);color:var(--ds-error-deep);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);border-radius:0;margin:-2px 0 0;padding:12px 14px}.archive-form__error:focus{outline:3px solid color-mix(in srgb,var(--ds-error-soft)26%,transparent);outline-offset:2px}.archive-form__notice{background:color-mix(in srgb,var(--accent)14%,var(--panel-strong)86%);color:color-mix(in srgb,var(--accent)72%,var(--text)28%);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);border-radius:0;margin:-2px 0 0;padding:12px 14px;line-height:1.5}.archive-form__actions{gap:12px;display:grid}.archive-form__submit{border-color:var(--refdock-ink);width:100%;min-height:50px;font-size:var(--ds-text-button);letter-spacing:.02em;background:var(--refdock-ink);color:var(--refdock-signal);border-radius:0}.archive-login__panel>.callout{margin:0}
.archive-course-page{grid-template-columns:minmax(0,1fr) auto;gap:18px 16px;display:grid}.archive-course-page>:not(.archive-course-header):not(.archive-course-tools-dock){grid-column:1/-1}.archive-session-controls{border:1px solid var(--border);background:var(--surface-muted);min-height:52px;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:14px;padding:6px 6px 6px 16px;display:inline-flex}.archive-session-stack{justify-items:end;gap:8px;min-width:0;display:grid;position:relative}.archive-session-controls--readonly{padding-right:16px}.archive-session-controls--compact{min-height:42px;box-shadow:none;gap:10px;padding:4px 16px}.site-header .archive-session-stack--icon-only{justify-items:end;width:auto}.site-header .archive-session-controls--icon-only{width:auto;min-height:36px;box-shadow:none;background:0 0;border:0;gap:0;padding:0}.site-header .archive-logout-button--icon{border-radius:8px;width:36px;height:36px;min-height:36px;padding:0}.archive-logout-button--icon .is-spinning{animation:.8s linear infinite archive-control-spin}@keyframes archive-control-spin{to{transform:rotate(360deg)}}.archive-session-controls__meta{gap:2px;min-width:0;display:grid}.archive-session-controls--compact .archive-session-controls__meta{align-items:center;gap:0;display:inline-flex}.archive-session-controls__label{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.08em;text-transform:uppercase;line-height:1}.archive-session-controls__meta strong{color:var(--text);font-size:var(--ds-text-body);font-weight:var(--ds-weight-semibold);font-variant-numeric:tabular-nums;line-height:1.1}.archive-session-controls--compact .archive-session-controls__meta strong{font-size:var(--ds-text-button);line-height:1;font-weight:var(--ds-weight-semibold);white-space:nowrap}.archive-session-controls .archive-logout-button:not(.archive-logout-button--icon){min-height:40px;padding-inline:20px}.archive-password-change{z-index:20;border:1px solid var(--border);background:var(--surface-elevated);width:min(760px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(160px,1fr) auto;align-items:end;gap:8px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.archive-password-change label{gap:6px;min-width:0;display:grid}.archive-password-change label span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-password-change input{border:1px solid var(--border);background:var(--panel);width:100%;min-width:0;min-height:38px;color:var(--text);font:inherit;font-size:var(--ds-text-button);border-radius:10px;padding:0 10px}.archive-password-change .button{border-radius:10px;min-height:38px}.archive-password-change__error,.archive-password-change__message{font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);grid-column:1/-1;margin:0}.archive-password-change__error{color:var(--ds-error-deep)}.archive-password-change__message{color:color-mix(in srgb,#12a150 72%,var(--text)28%)}.course-reader-tools{border:1px solid var(--border);background:color-mix(in srgb,var(--panel)92%,transparent);min-height:42px;box-shadow:0 8px 22px color-mix(in srgb,var(--text)8%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:8px;align-items:center;gap:4px;padding:4px;display:inline-flex}.course-reader-tools__group{align-items:center;gap:2px;display:inline-flex}.course-reader-tools__group+.course-reader-tools__group{border-left:1px solid var(--border);margin-left:2px;padding-left:6px}.course-reader-tools__button{width:34px;min-width:34px;height:34px;color:var(--muted);font:inherit;font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;line-height:1;text-decoration:none;transition:background-color .18s,color .18s,opacity .18s;display:inline-flex}.course-reader-tools__button:hover:not(:disabled){color:var(--text);background:var(--surface-hover)}.course-reader-tools__button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand)72%,transparent);outline-offset:1px}.course-reader-tools__button:disabled{opacity:.32;cursor:default}.course-reader-tools__button svg{flex:none}.course-font-size{gap:2px}.course-font-size__value{width:auto;min-width:48px;color:var(--text);font-variant-numeric:tabular-nums;padding-inline:6px}.course-font-size__value.is-default{color:var(--muted)}.course-presentation-toggle.is-active{color:var(--ds-white);background:var(--brand)}.course-presentation-toggle.is-active:hover:not(:disabled){color:var(--ds-white);background:var(--accent-dark)}.archive-course-header{grid-area:1/1/auto/-1;padding:4px 316px 0 2px}.archive-course-header__copy{gap:8px;min-width:0;display:grid}.archive-course-tools-dock{z-index:110;grid-area:1/2;place-self:start end;min-width:0;position:sticky;top:12px}.archive-course-breadcrumb{min-width:0;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:.01em;align-items:center;gap:8px;display:inline-flex}.archive-course-breadcrumb__root{color:inherit;align-items:center;gap:5px;text-decoration:none;transition:color .16s;display:inline-flex}.archive-course-breadcrumb__root:hover{color:var(--text);text-underline-offset:4px;text-decoration:underline}.archive-course-breadcrumb__root:focus-visible{outline:2px solid color-mix(in srgb,var(--brand)72%,transparent);outline-offset:3px;border-radius:4px}.archive-course-breadcrumb__separator{color:color-mix(in srgb,var(--muted)70%,transparent)}.archive-course-breadcrumb__category{color:color-mix(in srgb,var(--brand)82%,var(--text)18%)}.archive-course-header h1{min-width:0;font-family:var(--reading-font);font-size:clamp(1.4rem,1.95vw,1.84rem);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.15}.archive-course-layout{align-items:start;margin-top:0}.archive-course-layout--single{grid-template-columns:minmax(0,1fr)}.archive-course-article{font-size:calc(1rem*var(--archive-course-font-scale,1));font-family:var(--reading-font);color:color-mix(in srgb,var(--text)94%,var(--ds-true-black)6%);padding-top:22px}.archive-course-section-header{border-bottom:1px solid var(--border);gap:6px;margin:0 0 18px;padding-bottom:16px;display:grid}.archive-course-section-header__index{color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:.08em;text-transform:uppercase;margin:0}.archive-course-section-header__meta{color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);letter-spacing:0;margin:2px 0 0}.archive-course-section-header h2{border:0;margin:0;padding:0}.course-section-pager{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:34px;padding-top:22px;display:grid}.course-section-pager__item{border:1px solid var(--border);background:var(--surface-muted);min-width:0;color:inherit;border-radius:16px;gap:6px;padding:16px;text-decoration:none;transition:border-color .18s,background-color .18s,transform .18s;display:grid}.course-section-pager__item:hover,.course-section-pager__item:focus-visible{border-color:var(--border-strong);background:var(--panel);outline:none;transform:translateY(-2px)}.course-section-pager__item--next{text-align:right}.course-section-pager__item span{min-width:0;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.1;overflow:hidden}.course-section-pager__item strong{min-width:0;color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;display:block;overflow:hidden}.course-section-pager__item.is-disabled{color:var(--muted);opacity:.55}.course-section-pager__item.is-disabled:hover{border-color:var(--border);background:var(--surface-muted);transform:none}.archive-course-sections-stack{gap:42px;display:grid}.archive-course-section-block{gap:0;display:grid}.archive-course-section-block+.archive-course-section-block{padding-top:6px}.archive-course-article--all-sections .archive-course-sections-stack{gap:34px}.archive-course-article h2{font-family:var(--body-font);font-size:1.58em;font-weight:var(--ds-weight-semibold);letter-spacing:0;color:var(--text);border-top:0;margin:28px 0 14px;padding-top:0}.archive-course-article h3{font-family:var(--body-font);font-size:1.22em;font-weight:var(--ds-weight-semibold);letter-spacing:0;color:var(--text)}.archive-course-article p,.archive-course-article ul,.archive-course-article ol,.archive-course-article li,.archive-course-article blockquote,.archive-course-article table{letter-spacing:0;word-break:keep-all;color:color-mix(in srgb,var(--text)88%,var(--muted)12%);text-shadow:none;font-size:1em;line-height:1.82}.archive-course-article blockquote{border:1px solid color-mix(in srgb,var(--border-strong)72%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-muted)92%,transparent),color-mix(in srgb,var(--panel)96%,transparent));border-radius:20px;margin:20px 0;padding:18px 20px;position:relative;box-shadow:0 10px 28px #0f172a14,inset 0 1px #ffffff8c}.archive-course-article blockquote>:first-child{margin-top:0}.archive-course-article blockquote>:last-child{margin-bottom:0}.archive-course-article blockquote p{margin:0}.archive-course-article blockquote p+p{margin-top:10px}.archive-course-article blockquote strong{color:var(--text);font-weight:var(--ds-weight-semibold)}.archive-course-article strong{font-weight:var(--ds-weight-semibold);color:var(--text);text-shadow:none}.archive-print-page strong{font-weight:var(--ds-weight-semibold);text-shadow:none}.archive-course-article code{font-size:calc(.94rem*var(--archive-course-font-scale,1))}.archive-course-article .code-block code{font-size:inherit}.archive-course-article .code-block__head{font-size:calc(.9rem*var(--archive-course-font-scale,1))}.archive-course-article .code-block pre{font-size:calc(.95rem*var(--archive-course-font-scale,1))}html[data-course-presentation=on] .sheet-sidebar,html[data-course-presentation=on] .course-downloads--inline,html[data-course-presentation=on] .archive-course-meta,html[data-course-presentation=on] .archive-session-controls,html[data-course-presentation=on] .course-section-pager{display:none}html[data-course-presentation=on] .archive-course-layout{grid-template-columns:minmax(0,1fr)}html[data-course-presentation=on] .archive-course-page{gap:14px}html[data-course-presentation=on] .course-back-to-top{display:none}html[data-course-presentation=on] .archive-course-header{padding-top:0}html[data-course-presentation=on] .archive-course-header h1{font-size:clamp(2.2rem,3.5vw,3.6rem);line-height:1.04}html[data-course-presentation=on] .archive-course-article{font-size:calc(1.14rem*var(--archive-course-font-scale,1));padding-top:14px}html[data-course-presentation=on] .archive-course-section-header{gap:10px;margin-bottom:24px;padding-bottom:20px}html[data-course-presentation=on] .archive-course-sections-stack{gap:56px}html[data-course-presentation=on] .archive-course-article--all-sections .archive-course-sections-stack{gap:42px}html[data-course-presentation=on] .archive-course-section-header__index{font-size:var(--ds-text-body-small)}html[data-course-presentation=on] .archive-course-section-header h2{font-size:clamp(2rem,3vw,3rem);line-height:1.08}html[data-course-presentation=on] .archive-course-article h2{font-size:2em}html[data-course-presentation=on] .archive-course-article h3{font-size:1.38em}html[data-course-presentation=on] .archive-course-article p,html[data-course-presentation=on] .archive-course-article ul,html[data-course-presentation=on] .archive-course-article ol,html[data-course-presentation=on] .archive-course-article li,html[data-course-presentation=on] .archive-course-article blockquote,html[data-course-presentation=on] .archive-course-article table{line-height:1.9}html[data-course-presentation=on] .archive-course-article .code-block pre{font-size:calc(1rem*var(--archive-course-font-scale,1))}html[data-course-presentation=on] .archive-course-article blockquote{border-radius:22px;padding:20px 22px}
.archive-catalog{gap:18px;display:grid}.doc-header--archive{border:0;border-top:2px solid var(--refdock-ink);border-bottom:2px solid var(--refdock-ink);box-shadow:none;background:0 0;border-radius:0;gap:0;padding:22px 0 20px}.doc-header__inline--archive{gap:8px;min-width:0;display:grid}.doc-header__title-row--archive{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.archive-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.doc-header--archive .doc-header__subcategory--archive{border:1px solid var(--border);min-height:28px;color:var(--muted);background:var(--surface-soft);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:0 10px;display:inline-flex}.doc-header--archive h1{min-width:0;color:var(--refdock-ink);font-family:var(--heading-font);font-size:clamp(1.8rem,3.6vw,3rem);font-weight:var(--ds-weight-semibold);letter-spacing:0;margin:0;line-height:.94}.doc-header--archive .doc-header__summary{min-width:0;max-width:64ch;color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.5}.archive-catalog-browser{gap:14px;display:grid}.archive-hub{gap:16px}.archive-hub .archive-session-controls{min-height:42px;box-shadow:none;border-radius:0;flex:none;padding:4px 4px 4px 12px}.archive-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.archive-hub-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr))}.archive-hub-card{border:1px solid var(--border);background:var(--surface-elevated);min-height:210px;color:inherit;box-shadow:var(--shadow);border-radius:18px;align-content:space-between;gap:28px;padding:18px;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:grid}.archive-hub-card:not(.is-disabled):hover,.archive-hub-card:not(.is-disabled):focus-visible{border-color:var(--border-strong);background:var(--panel);outline:none;transform:translateY(-2px)}.archive-hub-card.is-disabled{color:var(--muted);background:var(--surface-muted);box-shadow:none;opacity:.72}.archive-hub-card__copy{gap:8px;display:grid}.archive-hub-card__eyebrow{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.02em;text-transform:uppercase}.archive-hub-card h2{font-size:var(--ds-text-heading-small);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.15}.archive-hub-card p{color:var(--muted);font-size:var(--ds-text-body-small);margin:0;line-height:1.55}.archive-hub-card__footer{justify-content:flex-start;display:flex}.archive-hub-card__footer strong{border:1px solid var(--border);min-height:30px;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);white-space:nowrap;color:var(--text);background:color-mix(in srgb,var(--accent)14%,var(--panel-strong)86%);border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.archive-hub-card.is-disabled .archive-hub-card__footer strong{color:var(--muted);background:var(--panel)}.archive-lms-dashboard{gap:14px;display:grid}.archive-lms-dashboard__summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.archive-lms-stat{border:1px solid var(--border);background:var(--surface-elevated);min-width:0;box-shadow:var(--shadow);border-radius:16px;gap:6px;padding:14px;display:grid}.archive-lms-stat span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-lms-stat strong{color:var(--text);font-size:var(--ds-text-heading-small);font-weight:var(--ds-weight-semibold);line-height:1}.archive-lms-category-list{gap:22px;min-width:0;display:grid}.archive-lms-selected-view{gap:14px;min-width:0;display:grid}.archive-lms-selector,.archive-lms-course-section{gap:10px;min-width:0;display:grid}.archive-lms-selector{border:0;border-bottom:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);background:0 0;border-radius:0;padding:16px 0}.archive-lms-selector--sub{background:0 0}.archive-lms-selector__head,.archive-lms-course-section__head{justify-content:space-between;align-items:flex-end;gap:12px;min-width:0;display:flex}.archive-lms-selector__head span,.archive-lms-course-section__head span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-lms-selector__head strong,.archive-lms-course-section__head strong{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap}.archive-lms-course-section__head>div{gap:4px;min-width:0;display:grid}.archive-lms-course-section__head h2{min-width:0;color:var(--text);font-size:var(--ds-text-heading-small);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin:0;line-height:1.25;overflow:hidden}.archive-lms-category-tabs,.archive-lms-subcategory-tabs{flex-wrap:wrap;gap:0;min-width:0;display:flex}.archive-lms-category-tab,.archive-lms-subcategory-tab{border:1px solid color-mix(in srgb,var(--refdock-ink)26%,transparent);appearance:none;background:var(--surface-elevated);min-width:0;color:var(--text);cursor:pointer;font:inherit;align-items:center;gap:8px;text-decoration:none;transition:border-color .18s,background-color .18s,transform .18s;display:inline-flex}.archive-lms-category-tab{border-radius:0;min-height:42px;padding:0 12px}.archive-lms-subcategory-tab{border-radius:0;min-height:42px;padding:0 10px}.archive-lms-category-tab:hover,.archive-lms-category-tab:focus-visible,.archive-lms-subcategory-tab:hover,.archive-lms-subcategory-tab:focus-visible,.archive-lms-category-tab.is-active,.archive-lms-subcategory-tab.is-active{border-color:var(--refdock-ink);background:var(--refdock-ink);color:var(--refdock-signal);outline:none;transform:translateY(-1px)}.archive-lms-category-tab span,.archive-lms-subcategory-tab span{min-width:0;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.archive-lms-category-tab strong,.archive-lms-subcategory-tab strong{color:currentColor;font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap}.archive-lms-course-board-wrap{overscroll-behavior:contain;border:1px solid color-mix(in srgb,var(--refdock-ink)42%,transparent);min-width:0;max-height:min(64vh,620px);box-shadow:none;background:0 0;border-radius:0;overflow:auto}.archive-lms-course-board{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0}.archive-lms-course-board th,.archive-lms-course-board td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:12px 14px}.archive-lms-course-board th{z-index:1;color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);background:color-mix(in srgb,var(--refdock-ink)6%,var(--refdock-paper)94%);white-space:nowrap;position:sticky;top:0}.archive-lms-course-board th:first-child,.archive-lms-course-board td:first-child{text-align:center;width:64px}.archive-lms-course-board th:nth-child(3),.archive-lms-course-board td:nth-child(3){width:76px}.archive-lms-course-board th:nth-child(4),.archive-lms-course-board td:nth-child(4){text-align:right;width:76px}.archive-lms-course-board tbody tr:last-child td{border-bottom:0}.archive-lms-course-board tbody tr:hover{background:color-mix(in srgb,var(--accent)5%,transparent)}.archive-lms-course-board tr.is-disabled{color:var(--muted)}.archive-lms-course-board__index,.archive-lms-course-board__meta,.archive-lms-course-board__empty,.archive-lms-course-board__action{min-height:28px;font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap;justify-content:center;align-items:center;display:inline-flex}.archive-lms-course-board__index{color:var(--muted)}.archive-lms-course-board__title{min-width:0}.archive-lms-course-board__title a,.archive-lms-course-board__title>span{min-width:0;color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.35;text-decoration:none;display:block;overflow:hidden}.archive-lms-course-board__title a:hover,.archive-lms-course-board__title a:focus-visible{color:var(--accent);outline:none}.archive-lms-course-board__title small{min-width:0;color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-regular);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;line-height:1.45;display:-webkit-box;overflow:hidden}.archive-lms-course-board__meta{color:var(--muted)}.archive-lms-course-board__action{border:1px solid var(--refdock-ink);color:var(--refdock-ink);background:0 0;border-radius:0;padding:0 10px;text-decoration:none}.archive-lms-course-board__action:hover,.archive-lms-course-board__action:focus-visible{background:var(--refdock-ink);color:var(--refdock-signal);outline:none}.archive-lms-course-board__empty{color:var(--muted)}.archive-lms-category-group,.archive-lms-subcategory{gap:12px;min-width:0;display:grid}.archive-lms-category-group__head,.archive-lms-subcategory__head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;min-width:0;display:grid}.archive-lms-category-group__head{border-bottom:1px solid var(--border);padding-bottom:10px}.archive-lms-subcategory__head{padding:2px 0}.archive-lms-category-group__head>div,.archive-lms-subcategory__head>div{gap:4px;min-width:0;display:grid}.archive-lms-category-group__head span,.archive-lms-subcategory__head span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);text-transform:uppercase}.archive-lms-category-group__head h2,.archive-lms-subcategory__head h3{min-width:0;color:var(--text);font-weight:var(--ds-weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin:0;line-height:1.25;overflow:hidden}.archive-lms-category-group__head h2{font-size:var(--ds-text-heading-small)}.archive-lms-subcategory__head h3{font-size:var(--ds-text-body-large)}.archive-lms-category-group__head strong,.archive-lms-subcategory__head strong{border:1px solid var(--border);background:var(--surface-muted);min-height:30px;color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.archive-lms-subcategory-list{gap:16px;min-width:0;display:grid}.archive-lms-curriculum-grid{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.archive-lms-curriculum{border:1px solid color-mix(in srgb,var(--refdock-ink)28%,transparent);min-width:0;box-shadow:none;background:0 0;border-radius:0;padding:0;overflow:hidden}.archive-lms-curriculum[open]{border-color:color-mix(in srgb,var(--accent)24%,var(--border)76%)}.archive-lms-curriculum__summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:16px;list-style:none;display:grid}.archive-lms-curriculum__summary::-webkit-details-marker{display:none}.archive-lms-curriculum__summary:hover,.archive-lms-curriculum__summary:focus-visible{background:color-mix(in srgb,var(--accent)5%,transparent);outline:none}.archive-lms-curriculum__summary-main{gap:6px;min-width:0;display:grid}.archive-lms-curriculum__summary-meta{white-space:nowrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.archive-lms-curriculum__summary-meta span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-lms-curriculum__summary-meta strong{border:1px solid color-mix(in srgb,var(--refdock-ink)26%,transparent);min-height:32px;color:var(--text);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);background:0 0;border-radius:0;align-items:center;padding:0 12px;display:inline-flex}.archive-lms-curriculum[open] .archive-lms-curriculum__summary-meta strong{border-color:color-mix(in srgb,var(--accent)28%,var(--border)72%);background:color-mix(in srgb,var(--accent)9%,var(--surface-muted)91%)}.archive-lms-curriculum h2,.archive-lms-empty h2{color:var(--text);font-size:var(--ds-text-body-large);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.25}.archive-lms-curriculum p,.archive-lms-empty p{color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.6}.archive-lms-curriculum h2,.archive-lms-curriculum p{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.archive-lms-lesson-list{gap:6px;padding:0 16px 16px;display:grid}.archive-lms-lesson{border:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:10px 12px;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:grid}.archive-lms-lesson:hover,.archive-lms-lesson:focus-visible{border-color:var(--border-strong);background:var(--surface-elevated);outline:none;transform:translateY(-1px)}.archive-lms-lesson__main{gap:4px;min-width:0;display:grid}.archive-lms-lesson__main strong,.archive-lms-lesson__main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.archive-lms-lesson__main strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.archive-lms-lesson__main span,.archive-lms-lesson__action{color:var(--muted);font-size:var(--ds-text-caption)}.archive-lms-lesson__action{white-space:nowrap;font-weight:var(--ds-weight-semibold)}.archive-lms-note{border:1px dashed var(--border);background:var(--surface-muted);border-radius:14px;padding:10px 12px}.archive-lms-empty{border:0;border-top:2px solid var(--refdock-ink);border-bottom:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);min-width:0;box-shadow:none;background:0 0;border-radius:0;justify-items:start;gap:10px;padding:22px 0;display:grid}.archive-lms-empty>span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.02em;text-transform:uppercase}.archive-catalog-toolbar{border:0;border-bottom:1px solid color-mix(in srgb,var(--refdock-ink)24%,transparent);box-shadow:none;background:0 0;border-radius:0;gap:14px;padding:16px 0;display:grid}.archive-catalog-toolbar__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.archive-catalog-toolbar__meta{gap:2px;display:grid}.archive-catalog-toolbar__count{color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);letter-spacing:-.02em}.archive-catalog-toolbar__hint{color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.5}.archive-catalog-toolbar__controls{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:12px;min-width:0;display:grid}.archive-catalog-toolbar__search{border:1px solid color-mix(in srgb,var(--refdock-ink)42%,transparent);background:var(--refdock-paper);border-radius:0;align-items:center;gap:10px;min-width:0;min-height:48px;padding:0 12px 0 16px;display:flex}.archive-catalog-toolbar__search input{width:100%;min-width:0;color:var(--text);font:inherit;font-size:var(--ds-text-body-small);background:0 0;border:0;outline:none}.archive-catalog-toolbar__search input::placeholder{color:var(--muted)}.archive-catalog-search__clear{border:1px solid var(--border);background:var(--surface-muted);min-height:30px;color:var(--muted);font:inherit;font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:0 10px;transition:color .18s,border-color .18s,transform .18s}.archive-catalog-search__clear:hover,.archive-catalog-search__clear:focus-visible{color:var(--text);border-color:var(--border-strong)}.archive-catalog-toolbar__right{justify-content:flex-end;align-items:stretch;gap:8px;min-width:min(360px,100%);display:flex}.archive-library-link{background:var(--refdock-ink);min-height:48px;color:var(--refdock-signal);white-space:nowrap;border-radius:0;padding-inline:16px}.archive-catalog-toolbar .archive-session-controls{border-color:color-mix(in srgb,var(--refdock-ink)30%,transparent);width:100%;min-height:48px;box-shadow:none;background:0 0;border-radius:0;justify-content:space-between;gap:8px;padding:4px 4px 4px 14px}.archive-catalog-toolbar .archive-session-controls__meta{gap:4px}.archive-catalog-toolbar .archive-session-controls__label{font-size:var(--ds-text-caption);letter-spacing:.01em;text-transform:none}.archive-catalog-toolbar .archive-session-controls__meta strong{font-size:var(--ds-text-body-small);letter-spacing:-.02em}.archive-catalog-toolbar .archive-logout-button{border-color:var(--border);background:var(--panel);min-height:38px;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);box-shadow:none;border-radius:12px;padding-inline:14px}.archive-library{gap:16px}.archive-library .archive-header-actions>.archive-admin-link{min-height:42px}.archive-admin{gap:16px}.archive-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.archive-admin-tool{border:1px solid color-mix(in srgb,var(--accent)16%,var(--border)84%);background:color-mix(in srgb,var(--surface-elevated)92%,var(--accent)8%);min-height:190px;color:inherit;box-shadow:var(--shadow);border-radius:18px;align-content:space-between;gap:24px;padding:18px;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:grid}.archive-admin-tool:not(.is-disabled):hover,.archive-admin-tool:not(.is-disabled):focus-visible{border-color:var(--border-strong);background:var(--panel);outline:none;transform:translateY(-2px)}.archive-admin-tool.is-disabled{color:var(--muted);background:var(--surface-muted);box-shadow:none;opacity:.76}.archive-admin-tool__copy{gap:8px;display:grid}.archive-admin-tool__eyebrow{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);letter-spacing:.02em;text-transform:uppercase}.archive-admin-tool h2{font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.25}.archive-admin-tool p{color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.55}.archive-admin-tool strong{border:1px solid var(--border);min-height:30px;color:var(--text);background:color-mix(in srgb,var(--accent)14%,var(--panel-strong)86%);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);white-space:nowrap;border-radius:999px;justify-self:start;align-items:center;padding:0 10px;display:inline-flex}.archive-admin-tool.is-disabled strong{color:var(--muted);background:var(--panel)}.archive-admin-panel{border:1px solid color-mix(in srgb,var(--accent)18%,var(--border)82%);background:var(--surface-elevated);box-shadow:var(--shadow);border-radius:18px;gap:16px;padding:18px;display:grid}.archive-admin-panel__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.archive-admin-panel__head .eyebrow,.archive-admin-panel__head h2{margin:0}.archive-admin-panel__head h2{font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.lms-admin-panel{border:1px solid color-mix(in srgb,var(--accent)22%,var(--border)78%);background:var(--surface-elevated);border-radius:16px;gap:14px;padding:14px;display:grid}.lms-admin-consolebar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.lms-admin-notice{border:1px solid color-mix(in srgb,var(--success,#12b76a)32%,var(--border)68%);background:color-mix(in srgb,var(--success,#12b76a)9%,var(--panel)91%);border-radius:12px;gap:3px;min-width:0;padding:12px 14px;display:grid}.lms-admin-notice strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);line-height:1.3}.lms-admin-notice span{color:var(--muted);font-size:var(--ds-text-button);line-height:1.45}.lms-admin-section__head,.lms-admin-row__top{justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;display:flex}.lms-admin-section__head>.button{flex:none}.lms-admin-section__head h3,.lms-admin-section__head span,.lms-admin-metric span,.lms-admin-metric strong,.lms-admin-metric small{margin:0}.lms-admin-section__head h3{color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.lms-admin-section__head>div{gap:6px;min-width:0;display:grid;overflow:hidden}.lms-admin-section__head span{color:var(--muted);font-size:var(--ds-text-button);text-overflow:ellipsis;white-space:nowrap;line-height:1.6;overflow:hidden}.lms-admin-tabs{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;flex-wrap:wrap;gap:6px;min-width:0;padding:4px;display:flex}.lms-admin-tabs button{min-height:36px;color:var(--muted);font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:0 12px}.lms-admin-tabs button:hover,.lms-admin-tabs button.is-active{border-color:color-mix(in srgb,var(--accent)18%,var(--border)82%);background:var(--surface-elevated);color:var(--text)}.lms-admin-workspace{gap:14px;display:grid}.lms-admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.lms-admin-metric{border:1px solid var(--border);background:var(--panel);border-radius:16px;align-content:space-between;gap:10px;min-width:0;min-height:108px;padding:14px;display:grid}.lms-admin-metric span,.lms-admin-metric small{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-metric strong{color:var(--text);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:760;line-height:1}.lms-admin-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.lms-admin-section{border:1px solid var(--border);background:var(--panel);border-radius:16px;align-content:start;gap:14px;min-width:0;padding:14px;display:grid}.lms-admin-section--wide{grid-column:1/-1}.lms-admin-section--editor{gap:10px}.lms-admin-filterbar,.lms-admin-split{border:1px solid var(--border);background:var(--surface-muted);border-radius:14px;gap:10px;min-width:0;padding:12px;display:grid}.lms-admin-filterbar{grid-template-columns:minmax(220px,1fr) minmax(180px,.38fr) auto;align-items:end}.lms-admin-filterbar__meta{min-height:40px;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);white-space:nowrap;justify-content:flex-end;align-items:center;display:inline-flex}.lms-admin-filterbar--accounts{grid-template-columns:minmax(220px,1fr) auto}.lms-admin-split{background:color-mix(in srgb,var(--surface-muted)72%,var(--surface-elevated)28%)}.lms-admin-board-filterbar{border:1px solid var(--border);background:var(--surface-muted);border-radius:14px;grid-template-columns:minmax(260px,1fr) minmax(170px,.34fr) minmax(210px,.42fr) auto;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:grid}.lms-admin-board-filterbar__control{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-width:0;height:40px;color:var(--text);font:inherit;font-size:var(--ds-text-button);border-radius:10px;outline:none;padding:0 10px}.lms-admin-board-filterbar__search{padding-inline:12px}.lms-admin-board-filterbar__control:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)14%,transparent)}.lms-admin-board-filterbar__control:disabled{color:var(--muted);background:color-mix(in srgb,var(--surface-muted)78%,var(--surface-elevated)22%);cursor:not-allowed;opacity:.72}.lms-admin-board-filterbar__meta{min-width:104px;height:40px;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);white-space:nowrap;justify-content:flex-end;align-items:center;display:inline-flex}.lms-admin-import-card{border:1px solid color-mix(in srgb,var(--accent)18%,var(--border)82%);background:var(--surface-elevated);border-radius:14px;grid-template-columns:minmax(240px,1fr) minmax(140px,.34fr) minmax(260px,.72fr) minmax(190px,.48fr) minmax(210px,auto);align-items:end;gap:10px;min-width:0;padding:12px;display:grid}.lms-admin-import-card__copy{align-self:center;gap:4px;min-width:0;display:grid}.lms-admin-import-card__copy span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-import-card__copy strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.lms-admin-import-card__copy p{color:var(--muted);font-size:var(--ds-text-caption);margin:0;line-height:1.45}.lms-admin-import-card__meta{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;align-content:center;gap:4px;min-width:0;min-height:40px;padding:0 10px;display:grid}.lms-admin-import-card__meta span,.lms-admin-import-card__meta small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lms-admin-import-card__meta span{color:var(--text);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-import-card__meta small{color:var(--muted);font-size:var(--ds-text-caption)}.lms-admin-import-card__actions{justify-content:flex-end;align-items:flex-end;gap:8px;min-width:0;display:flex}.lms-admin-import-card__actions .button{white-space:nowrap;min-height:40px;padding:0 14px}.lms-admin-list{gap:10px;display:grid}.lms-admin-table-wrap{border:1px solid var(--border);background:var(--surface-elevated);border-radius:14px;width:100%;min-width:0;overflow-x:auto}.lms-admin-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:880px;font-size:var(--ds-text-button)}.lms-admin-table--approvals{min-width:1080px}.lms-admin-table--rejected{min-width:760px}.lms-admin-table--users{min-width:1080px}.lms-admin-table--users th:first-child,.lms-admin-table--users .lms-admin-table-row--user-main td:first-child{width:180px}.lms-admin-table--users th:nth-child(2),.lms-admin-table--users .lms-admin-table-row--user-main td:nth-child(2){width:250px}.lms-admin-table--users th:nth-child(3),.lms-admin-table--users .lms-admin-table-row--user-main td:nth-child(3){width:130px}.lms-admin-table--users th:nth-child(4),.lms-admin-table--users .lms-admin-table-row--user-main td:nth-child(4){width:96px}.lms-admin-table--users th:nth-child(5),.lms-admin-table--users .lms-admin-table-row--user-main td:nth-child(5){width:150px}.lms-admin-table--users th:nth-child(6),.lms-admin-table--users .lms-admin-table-row--user-main td:nth-child(6){width:274px}.lms-admin-table--users .lms-admin-table__primary{min-width:0}.lms-admin-table--course-order{min-width:860px}.lms-admin-table--courses th:first-child,.lms-admin-table--courses td:first-child{width:36%}.lms-admin-table--courses th:nth-child(2),.lms-admin-table--courses td:nth-child(2){width:96px}.lms-admin-table--courses th:nth-child(5),.lms-admin-table--courses td:nth-child(5),.lms-admin-table--courses th:nth-child(6),.lms-admin-table--courses td:nth-child(6){width:76px}.lms-admin-table--courses th:nth-child(7),.lms-admin-table--courses td:nth-child(7){width:190px}.lms-admin-table--course-order th:first-child,.lms-admin-table--course-order td:first-child{width:72px}.lms-admin-table--course-order th:nth-child(3),.lms-admin-table--course-order td:nth-child(3),.lms-admin-table--course-order th:nth-child(5),.lms-admin-table--course-order td:nth-child(5){width:86px}.lms-admin-table--course-order th:nth-child(4),.lms-admin-table--course-order td:nth-child(4){width:136px}.lms-admin-table--approvals th:first-child,.lms-admin-table--approvals td:first-child{width:15%}.lms-admin-table--approvals th:nth-child(2),.lms-admin-table--approvals td:nth-child(2){width:22%}.lms-admin-table--approvals th:nth-child(3),.lms-admin-table--approvals td:nth-child(3){width:20%}.lms-admin-table--approvals th:nth-child(4),.lms-admin-table--approvals td:nth-child(4){width:15%}.lms-admin-table--approvals th:nth-child(7),.lms-admin-table--approvals td:nth-child(7){width:130px}.lms-admin-table th,.lms-admin-table td{border-bottom:1px solid color-mix(in srgb,var(--border)82%,transparent);text-align:left;vertical-align:middle;min-width:0;padding:11px 12px}.lms-admin-table th{background:var(--surface-muted);color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap}.lms-admin-table tbody tr:hover{background:color-mix(in srgb,var(--accent)4%,transparent)}.lms-admin-table-row--user-main td{border-bottom:0;padding-bottom:7px}.lms-admin-table-row--user-note td{padding-top:0;padding-bottom:14px}.lms-admin-table-row--user-note:hover{background:color-mix(in srgb,var(--accent)4%,transparent)}.lms-admin-table tbody tr:last-child td{border-bottom:0}.lms-admin-table__primary{min-width:220px}.lms-admin-table__identity{gap:3px;min-width:0;display:grid}.lms-admin-table__primary strong,.lms-admin-table__primary small,.lms-admin-table-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.lms-admin-table__primary strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.lms-admin-table__primary small,.lms-admin-table-text{color:var(--muted);font-size:var(--ds-text-button);margin-top:3px}.lms-admin-table-input,.lms-admin-table-select,.lms-admin-table-textarea{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-width:0;min-height:36px;color:var(--text);font:inherit;font-size:var(--ds-text-button);border-radius:10px;outline:none;padding:0 10px}.lms-admin-table-textarea{resize:vertical;min-height:58px;padding:8px 10px;line-height:1.45;display:block}.lms-admin-user-note{grid-template-columns:88px minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.lms-admin-user-note span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap;padding-top:9px}.lms-admin-user-note .lms-admin-table-textarea{min-height:40px;max-height:120px}.lms-admin-table-input:focus,.lms-admin-table-select:focus,.lms-admin-table-textarea:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)14%,transparent)}.lms-admin-table-check{width:16px;height:16px;accent-color:var(--accent)}.lms-admin-table-actions{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.lms-admin-table-action-cell{justify-items:end;gap:6px;min-width:0;display:grid}.lms-admin-table-actions .button{white-space:nowrap;border-radius:10px;min-height:34px;padding:0 11px}.lms-admin-table-actions .button.is-success{border-color:color-mix(in srgb,#12a150 26%,var(--border)74%);background:color-mix(in srgb,#12a150 10%,var(--surface-muted)90%);color:color-mix(in srgb,#12a150 72%,var(--text)28%)}.lms-admin-account-groups{gap:18px;display:grid}.lms-admin-account-group{border-top:1px solid var(--border);gap:10px;min-width:0;padding-top:14px;display:grid}.lms-admin-account-group:first-child{border-top:0;padding-top:0}.lms-admin-account-group__head{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.lms-admin-account-group__head>div{gap:4px;min-width:0;display:grid}.lms-admin-account-group__head h4,.lms-admin-account-group__head p{margin:0}.lms-admin-account-group__head h4{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.lms-admin-account-group__head p{color:var(--muted);font-size:var(--ds-text-button);line-height:1.5}.lms-admin-assignment-summary,.lms-admin-assignment-toolbar{border:1px solid var(--border);background:var(--surface-muted);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.lms-admin-assignment-summary__copy,.lms-admin-assignment-toolbar__copy{gap:3px;min-width:0;display:grid}.lms-admin-assignment-summary__copy span,.lms-admin-assignment-summary__copy small,.lms-admin-assignment-toolbar__copy>span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-action-status{min-width:0;color:var(--muted);font-size:var(--ds-text-button);font-weight:var(--ds-weight-regular);align-items:center;gap:6px;line-height:1.45;display:inline-flex}.lms-admin-action-status strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);flex:none}.lms-admin-action-status span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lms-admin-panel-status{border:1px solid color-mix(in srgb,var(--success,#12b76a)30%,var(--border)70%);background:color-mix(in srgb,var(--success,#12b76a)8%,var(--surface-muted)92%);border-radius:12px;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:flex}.lms-admin-panel-status strong,.lms-admin-panel-status span{min-width:0;font-size:var(--ds-text-button);text-overflow:ellipsis;white-space:nowrap;line-height:1.45;overflow:hidden}.lms-admin-panel-status strong{color:var(--text);font-weight:var(--ds-weight-semibold);flex:none}.lms-admin-panel-status span{color:var(--muted)}.lms-admin-assignment-summary__copy strong{color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.lms-admin-assignment-summary__stats,.lms-admin-assignment-toolbar__actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:inline-flex}.lms-admin-assignment-summary__stats{align-self:center}.lms-admin-assignment-toolbar{background:var(--panel)}.lms-admin-assignment-toolbar .button,.lms-admin-assignment-summary .button{border-radius:10px;min-height:36px;padding:0 12px}.lms-admin-permission-editor{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:stretch;gap:12px;min-width:0;display:grid}.lms-admin-permission-editor__categories,.lms-admin-permission-editor__detail{border:1px solid var(--border);background:var(--panel);border-radius:12px;min-width:0}.lms-admin-permission-editor__categories{align-content:start;gap:6px;max-height:560px;padding:8px;display:grid;overflow:auto}.lms-admin-permission-editor__categories button{width:100%;min-height:42px;color:var(--text);cursor:pointer;font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.lms-admin-permission-editor__categories button:hover,.lms-admin-permission-editor__categories button.is-active{border-color:color-mix(in srgb,var(--accent)38%,transparent);background:color-mix(in srgb,var(--accent)9%,var(--panel))}.lms-admin-permission-editor__categories button:disabled{cursor:not-allowed;opacity:.72}.lms-admin-permission-editor__categories button span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lms-admin-permission-editor__detail{align-content:start;gap:12px;padding:12px;display:grid}.lms-admin-permission-editor__head{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.lms-admin-permission-editor__head>div{gap:3px;min-width:0;display:grid}.lms-admin-permission-editor__head span,.lms-admin-permission-editor__head small,.lms-admin-permission-subcategories small{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-permission-editor__head strong{color:var(--text);font-size:var(--ds-text-body);font-weight:var(--ds-weight-semibold)}.lms-admin-permission-mode{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lms-admin-permission-mode button{border:1px solid var(--border);background:var(--surface-muted);min-width:0;min-height:38px;color:var(--muted);cursor:pointer;font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);border-radius:10px;padding:0 10px}.lms-admin-permission-mode button:hover,.lms-admin-permission-mode button.is-active{border-color:color-mix(in srgb,var(--accent)44%,transparent);background:color-mix(in srgb,var(--accent)10%,var(--panel));color:var(--accent)}.lms-admin-permission-mode button:disabled{cursor:not-allowed;opacity:.68}.lms-admin-permission-subcategories{gap:8px;min-width:0;display:grid}.lms-admin-permission-subcategories label{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;align-items:center;gap:10px;min-width:0;min-height:48px;padding:10px;display:flex}.lms-admin-permission-subcategories label.is-active{border-color:color-mix(in srgb,var(--accent)42%,transparent);background:color-mix(in srgb,var(--accent)8%,var(--panel))}.lms-admin-permission-subcategories input{width:18px;height:18px;accent-color:var(--accent);flex:none}.lms-admin-permission-subcategories span{gap:3px;min-width:0;display:grid}.lms-admin-permission-subcategories strong{min-width:0;color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.lms-admin-row,.lms-admin-curriculum{border:1px solid color-mix(in srgb,var(--border)88%,transparent);background:var(--surface-elevated);border-radius:14px;gap:12px;min-width:0;padding:12px;display:grid}.lms-admin-row--compact{gap:10px}button.lms-admin-row{border-color:color-mix(in srgb,var(--border)88%,transparent);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer}button.lms-admin-row:hover,button.lms-admin-row.is-selected{border-color:var(--border-strong);background:color-mix(in srgb,var(--accent)7%,var(--surface-elevated)93%)}.lms-admin-row--account{grid-template-columns:minmax(260px,1fr) minmax(260px,360px) minmax(150px,180px) 76px;align-items:stretch;gap:16px;padding:14px 16px}.lms-admin-account-identity{align-self:center;gap:8px;min-width:0;display:grid}.lms-admin-row--account .lms-admin-badges{justify-content:flex-start}.lms-admin-account-settings{display:contents}.lms-admin-account-settings>.lms-admin-field{grid-template-rows:auto 40px;align-self:stretch}.lms-admin-account-settings>.lms-admin-field span{line-height:1.2}.lms-admin-account-settings>.lms-admin-field input,.lms-admin-account-settings>.lms-admin-field select{height:40px;min-height:40px}.lms-admin-account-save{justify-content:stretch;align-items:flex-end;min-width:0;display:flex}.lms-admin-account-save .button{width:100%;min-width:0;min-height:40px;font-weight:var(--ds-weight-semibold);border-radius:12px;padding:0 12px}.lms-admin-row__main{gap:4px;min-width:0;display:grid}.lms-admin-row__main strong,.lms-admin-row__main span,.lms-admin-row__main small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lms-admin-row__main strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.lms-admin-row__main span,.lms-admin-row__main small{color:var(--muted);font-size:var(--ds-text-button)}.lms-admin-badges,.lms-admin-row__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.lms-admin-badge{border:1px solid var(--border);background:var(--surface-muted);max-width:100%;min-height:26px;color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.lms-admin-badge--success{border-color:color-mix(in srgb,#12a150 28%,var(--border)72%);background:color-mix(in srgb,#12a150 9%,var(--surface-muted)91%);color:color-mix(in srgb,#12a150 72%,var(--text)28%)}.lms-admin-badge--warning{border-color:color-mix(in srgb,#c47900 28%,var(--border)72%);background:color-mix(in srgb,#c47900 10%,var(--surface-muted)90%);color:color-mix(in srgb,#c47900 72%,var(--text)28%)}.lms-admin-badge--danger{border-color:color-mix(in srgb,var(--danger,#b42318)28%,var(--border)72%);background:color-mix(in srgb,var(--danger,#b42318)9%,var(--surface-muted)91%);color:color-mix(in srgb,var(--danger,#b42318)70%,var(--text)30%)}.lms-admin-badge--info{border-color:color-mix(in srgb,var(--accent)28%,var(--border)72%);background:color-mix(in srgb,var(--accent)10%,var(--surface-muted)90%);color:color-mix(in srgb,var(--accent)72%,var(--text)28%)}.lms-admin-controls,.lms-admin-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.lms-admin-controls--managed-account{grid-template-columns:minmax(220px,1fr) minmax(180px,.42fr) auto}.lms-admin-controls--curriculum{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.lms-admin-form--items{grid-template-columns:repeat(5,minmax(0,1fr)) auto auto}.lms-admin-field{gap:6px;min-width:0;display:grid}.lms-admin-field--wide{grid-column:span 2}.lms-admin-field span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.lms-admin-field input,.lms-admin-field select{appearance:none;box-sizing:border-box;border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-width:0;height:44px;min-height:44px;color:var(--text);font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-medium);border-radius:12px;outline:none;padding:0 12px;line-height:1.2}.lms-admin-field select{background:linear-gradient(45deg,transparent 50%,var(--muted)50%)calc(100% - 18px)50%/6px 6px no-repeat,linear-gradient(135deg,var(--muted)50%,transparent 50%)calc(100% - 14px)50%/6px 6px no-repeat,var(--surface-elevated);padding-right:34px}.lms-admin-field input:disabled,.lms-admin-field select:disabled{color:var(--muted);cursor:not-allowed;opacity:.72}.lms-admin-field input:focus,.lms-admin-field select:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)14%,transparent)}.lms-admin-check{border:1px solid var(--border);background:var(--surface-elevated);min-width:0;min-height:40px;color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);border-radius:12px;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.lms-admin-check input{width:16px;height:16px;accent-color:var(--accent)}.archive-access-form{border:1px solid var(--border);background:var(--panel);border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.archive-access-field{gap:6px;min-width:0;display:grid}.archive-access-field--note{grid-column:1/3}.archive-access-field span,.archive-access-groups legend{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-access-field input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:42px;color:var(--text);font:inherit;font-size:var(--ds-text-button);border-radius:12px;outline:none;padding:0 12px}.archive-access-field input:focus{border-color:var(--border-strong)}.archive-access-check{border:1px solid var(--border);background:var(--surface-muted);min-width:0;min-height:32px;color:var(--text);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);border-radius:999px;align-items:center;gap:8px;padding:0 9px;display:inline-flex}.archive-access-check input{accent-color:var(--accent)}.archive-access-check--all{align-self:end}.archive-access-groups{border:0;grid-column:1/-1;gap:12px;min-width:0;margin:0;padding:0;display:grid}.archive-access-groups legend{margin-bottom:10px;padding:0}.archive-access-groups__grid{flex-wrap:wrap;gap:8px;display:flex}.archive-access-groups__categories{gap:10px;display:grid}.archive-access-groups__sections{gap:18px;display:grid}.archive-access-group-section{gap:10px;min-width:0;display:grid}.archive-access-group-section h3{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);align-items:center;gap:10px;margin:0;line-height:1.2;display:flex}.archive-access-group-section h3:after{content:"";background:var(--border);flex:auto;height:1px}.archive-access-group-category{border:1px solid var(--border);background:var(--surface-elevated);border-radius:12px;gap:10px;min-width:0;padding:12px;display:grid}.archive-access-group-category__head{justify-content:space-between;align-items:center;min-width:0;display:flex}.archive-access-group-category__head strong{color:var(--text);font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);line-height:1.25}.archive-access-message{font-size:var(--ds-text-button);grid-column:1/-1;margin:0}.archive-access-message--error{color:var(--danger,#b42318)}.archive-issued-code{border:1px solid color-mix(in srgb,var(--accent)24%,var(--border)76%);background:color-mix(in srgb,var(--accent)10%,var(--panel)90%);border-radius:14px;grid-column:1/-1;gap:6px;padding:12px;display:grid}.archive-issued-code span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold)}.archive-issued-code code{overflow-wrap:anywhere;color:var(--text);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold)}.archive-access-submit{border-radius:12px;min-height:42px}.archive-access-list{gap:8px;display:grid}.archive-access-row{border:1px solid var(--border);background:var(--panel);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.archive-access-row.is-revoked{opacity:.68}.archive-access-row__main{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.archive-access-row h3,.archive-access-row p{margin:0}.archive-access-row h3{font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold)}.archive-access-row p,.archive-access-row time{color:var(--muted);font-size:var(--ds-text-button)}.archive-access-row__actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.archive-access-row__actions span{color:var(--muted);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);white-space:nowrap}.archive-access-edit{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.archive-access-edit__actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.archive-access-empty{border:1px dashed var(--border-strong);color:var(--muted);background:var(--surface-muted);border-radius:14px;margin:0;padding:14px}.archive-library__list{gap:8px;display:grid}.archive-library__groups,.archive-library-group{display:grid}.archive-library__groups{gap:28px}.archive-library-group{gap:10px}.archive-library-group__header{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.archive-library-group__header h2{font-size:var(--ds-text-body-large);margin:0}.archive-library-group__header span{color:var(--muted);font-size:var(--ds-text-button)}.archive-library-row{border:1px solid var(--border);background:var(--surface-elevated);min-height:62px;box-shadow:var(--shadow);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.archive-library-row__main{gap:3px;min-width:0;display:grid}.archive-library-row h3{min-width:0;color:var(--text);font-size:var(--ds-text-body-small);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;margin:0;line-height:1.35;overflow:hidden}.archive-library-row p{color:var(--muted);font-size:var(--ds-text-button);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.archive-library-row__actions{flex:none;justify-content:flex-end;display:flex}.archive-catalog-filter{gap:8px;display:grid}.archive-catalog-filter .eyebrow{color:var(--muted);margin:0}.archive-catalog-filter__chips{flex-wrap:wrap;gap:10px;display:flex}.archive-catalog-chip{border:1px solid var(--border);background:var(--surface-muted);min-height:34px;color:var(--muted);font:inherit;font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:0 12px;transition:background-color .18s,color .18s,border-color .18s,transform .18s;display:inline-flex}.archive-catalog-chip:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-elevated)}.archive-catalog-chip.is-active{color:var(--text);border-color:color-mix(in srgb,var(--accent)20%,var(--border)80%);background:color-mix(in srgb,var(--accent)14%,var(--panel-strong)86%)}.archive-catalog__groups{gap:16px;display:grid}.archive-catalog-empty{border:1px dashed var(--border-strong);background:var(--surface-muted);border-radius:18px;gap:10px;padding:20px 22px;display:grid}.archive-catalog-empty h2,.archive-catalog-empty p{margin:0}.archive-catalog-empty p{color:var(--muted)}.archive-catalog-group-card{border:1px solid var(--border);background:var(--surface-elevated);box-shadow:var(--shadow);border-radius:18px;gap:12px;padding:16px 18px;display:grid}.archive-catalog-group-card__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.archive-catalog-group-card__copy{gap:4px;display:grid}.archive-catalog-group-card__description{max-width:62ch;color:var(--muted);font-size:var(--ds-text-button);margin:0;line-height:1.55}.archive-catalog-group-card__copy h2{font-family:var(--body-font);font-size:var(--ds-text-body-small);font-weight:var(--ds-weight-semibold);margin:0;line-height:1.2}.archive-catalog-group-card__list{gap:18px;display:grid}.archive-subcategory-section{box-shadow:none;background:0 0;border:0;border-radius:0;gap:10px;padding:0;display:grid}.archive-subcategory-section+.archive-subcategory-section{padding-top:18px}.archive-subcategory-section__head,.archive-subcategory-section__copy{display:block}.archive-subcategory-section__title{align-items:center;gap:8px;max-width:100%;display:inline-flex}.archive-subcategory-section__copy h3{font-size:var(--ds-text-button);font-weight:var(--ds-weight-semibold);color:var(--muted);margin:0;line-height:1.3}.archive-subcategory-tooltip{flex:none;align-items:center;display:inline-flex;position:relative}.archive-subcategory-tooltip__trigger{width:16px;min-height:16px;color:color-mix(in srgb,var(--muted)82%,var(--text)18%);font-family:var(--body-font);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);cursor:help;opacity:.78;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .18s,color .18s,background-color .18s;display:inline-flex}.archive-subcategory-tooltip__trigger:hover,.archive-subcategory-tooltip__trigger:focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-muted)78%,transparent);opacity:1;outline:none}.archive-subcategory-tooltip__panel{z-index:20;border:1px solid var(--border);background:color-mix(in srgb,var(--surface-elevated)96%,black 4%);width:min(440px,100vw - 48px);box-shadow:var(--shadow);color:var(--text);font-size:var(--ds-text-button);white-space:pre-line;opacity:0;pointer-events:none;border-radius:16px;padding:14px 16px;line-height:1.6;transition:opacity .18s,transform .18s;display:block;position:absolute;top:calc(100% + 10px);left:0;transform:translateY(6px)}.archive-subcategory-tooltip:hover .archive-subcategory-tooltip__panel,.archive-subcategory-tooltip:focus-within .archive-subcategory-tooltip__panel{opacity:1;pointer-events:auto;transform:translateY(0)}.archive-subcategory-section__list{gap:8px;display:grid}.archive-course-row{border:1px solid var(--border);background:var(--panel);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;transition:transform .18s,border-color .18s,background-color .18s,box-shadow .18s;display:grid}.archive-course-row:hover{border-color:var(--border-strong);background:var(--surface-elevated)}.archive-course-row__main{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.archive-course-row__index{background:color-mix(in srgb,var(--accent)16%,var(--panel-strong)84%);width:34px;min-height:34px;color:var(--text);font-size:var(--ds-text-caption);font-weight:var(--ds-weight-semibold);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.archive-course-row__copy{align-content:center;gap:0;min-width:0;display:grid}.archive-course-row__copy h3{font-size:var(--ds-text-button);margin:0;line-height:1.35}.archive-course-row__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}
