@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap";.account-page{overflow:auto;background:radial-gradient(60rem 28rem at 22% -4%,var(--raw-accent-faint) 0%,transparent 60%)}.account-content{width:min(100%,68rem);margin:0 auto;padding:clamp(2.5rem,7vw,5.5rem) clamp(1.25rem,4vw,2.5rem) clamp(3rem,8vw,6rem);line-height:var(--leading-body)}.account-eyebrow{display:flex;align-items:center;gap:.6em;margin:0 0 var(--space-4);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);line-height:1}.account-eyebrow__dot{width:7px;height:7px;border-radius:50%;background:var(--raw-accent-warm);flex-shrink:0}.account-title{margin:0 0 var(--space-5);font-size:clamp(2.25rem,4.6vw,3.375rem);font-weight:var(--weight-semibold);letter-spacing:-.028em;line-height:1.04;color:var(--color-text);text-wrap:balance}.account-title--compact{font-size:clamp(1.75rem,3vw,2.25rem)}.account-lede{margin:0 0 var(--space-8);max-width:30ch;font-size:var(--font-size-lg);line-height:1.45;color:var(--color-text-secondary);text-wrap:pretty}.account-note{margin:var(--space-5) 0 0;max-width:48ch;font-size:var(--font-size-sm);line-height:1.55;color:var(--color-text-muted)}.account-notice{margin:0 0 var(--space-6);padding:var(--space-4);border-left:3px solid var(--raw-accent-warm);background:var(--raw-accent-faint);color:var(--color-text-secondary);line-height:1.5}.account-content p a{color:var(--color-accent);text-decoration:underline;text-underline-offset:.2em}.account-cta{display:inline-flex;align-items:center;gap:.75em;padding:.9rem 1.15rem .9rem 1.35rem;background:var(--color-accent);color:#fff;border-radius:6px;font-weight:var(--weight-medium);font-size:var(--font-size-base);letter-spacing:-.005em;line-height:1;text-decoration:none;box-shadow:0 1px 0 var(--raw-accent-deeper),0 10px 24px -14px #32006e8c;transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease}.account-cta:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 1px 0 var(--raw-accent-deeper),0 14px 28px -14px #32006e99}.account-cta:active{transform:translateY(0)}.account-cta__arrow{transition:transform .16s ease}.account-cta:hover .account-cta__arrow{transform:translate(3px)}.staff-home{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12) var(--space-16)}@media(min-width:52rem){.staff-home{grid-template-columns:minmax(0,1fr) minmax(0,1.618fr);align-items:start}.staff-home__lead{position:sticky;top:var(--space-8)}.staff-home__ledger{padding-top:clamp(0rem,4vw,3.25rem)}}.course-ledger{list-style:none;margin:0;padding:0;border-top:2px solid var(--raw-accent-warm)}.course-ledger__row{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto;align-items:baseline;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.course-ledger__index{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;color:var(--raw-accent-warm)}.course-ledger__title{font-size:1.125rem;font-weight:var(--weight-medium);letter-spacing:-.01em;overflow-wrap:anywhere}.course-ledger__role{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);padding:.3em .6em;border:1px solid var(--color-border-strong);border-radius:999px;white-space:nowrap}.course-ledger__empty{margin-top:0;padding:var(--space-5) 0;border-top:2px solid var(--raw-accent-warm);border-bottom:1px solid var(--color-border)}.profile-view{max-width:40rem}.profile-view p{margin:var(--space-2) 0;overflow-wrap:anywhere}.profile-view form{display:grid;gap:var(--space-4);margin-top:var(--space-8);max-width:28rem}.profile-view form button{justify-self:start}.account-back{display:inline-block;margin-bottom:var(--space-6);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none}.account-back:hover{color:var(--color-accent)}@keyframes account-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.staff-home__lead>*,.staff-home__ledger{animation:account-rise .52s cubic-bezier(.2,.7,.2,1) both}.staff-home__lead>:nth-child(2){animation-delay:60ms}.staff-home__lead>:nth-child(3){animation-delay:.12s}.staff-home__lead>:nth-child(4){animation-delay:.18s}.staff-home__ledger{animation-delay:.24s}@media(prefers-reduced-motion:reduce){.staff-home__lead>*,.staff-home__ledger{animation:none}.account-cta,.account-cta__arrow{transition:none}}.self-assessment{overflow:auto;height:100%}.self-assessment__content{width:min(100%,40rem);margin:0 auto;padding:clamp(2rem,6vw,4rem) clamp(1.25rem,4vw,2.5rem);line-height:var(--leading-body)}.self-assessment__eyebrow{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.self-assessment__title{margin:0 0 var(--space-3);font-size:var(--font-size-2xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--color-text)}.self-assessment__lede{margin:0 0 var(--space-8);font-size:var(--font-size-base);color:var(--color-text-secondary)}.self-assessment__items{display:flex;flex-direction:column;gap:var(--space-8);margin:0 0 var(--space-8);padding:0;border:0}.self-assessment__item{display:flex;flex-direction:column;gap:var(--space-3)}.self-assessment__prompt{font-size:var(--font-size-lg);font-weight:var(--weight-medium);color:var(--color-text)}.self-assessment__scale{display:grid;grid-template-columns:auto minmax(0,1fr) auto 3ch;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-muted)}.self-assessment__range{width:100%;accent-color:var(--color-accent)}.self-assessment__range:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.self-assessment__value{font-size:var(--font-size-lg);font-weight:var(--weight-semibold);text-align:right;color:var(--color-accent)}.self-assessment__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.self-assessment__actions .btn--accent{padding:var(--space-2) var(--space-5);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background-color:var(--color-accent);font-weight:var(--weight-medium);color:var(--self-assessment-action-fg, #FFFFFF)}[data-theme=dark] .self-assessment__actions .btn--accent{--self-assessment-action-fg: var(--raw-text)}.self-assessment__actions .btn--accent:hover:not(:disabled){border-color:var(--color-accent-hover);background-color:var(--color-accent-hover)}.self-assessment__error{margin:0 0 var(--space-4);font-size:var(--font-size-sm);color:var(--color-error)}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--leading-tight:1.25;--leading-normal:1.5;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-text:var(--color-text);--color-text-secondary:var(--color-text-secondary);--color-text-muted:var(--color-text-muted);--color-bg:var(--color-bg);--color-surface:var(--color-surface);--color-surface-raised:var(--color-surface-raised);--color-code-bg:var(--color-code-bg);--color-border:var(--color-border);--color-border-strong:var(--color-border-strong);--color-input-border:var(--color-input-border);--color-accent:var(--color-accent);--color-accent-hover:var(--color-accent-hover);--color-accent-faint:var(--color-accent-faint);--color-focus-chrome:var(--color-focus-chrome);--color-accent-warm:var(--color-accent-warm);--color-accent-warm-hover:var(--color-accent-warm-hover);--color-stream:var(--color-stream);--color-error:var(--color-error);--color-success:var(--color-success);--color-warning:var(--color-warning)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.page-frame{flex-direction:column;height:100vh;display:flex;overflow:hidden}.auth-error-banner{padding:var(--space-2) var(--space-4);color:#8a1f11;font-family:var(--font-sans);text-align:center;background-color:#fdecec;flex-shrink:0;font-size:13px}.unauthenticated-home{justify-content:center;align-items:center;gap:var(--space-4);color:#fff;height:100vh;font-family:var(--font-sans);background-color:#32006e;flex-direction:column;display:flex}.unauthenticated-home h1{font-size:32px;font-weight:var(--weight-semibold);margin:0}.unauthenticated-home button{padding:var(--space-2) var(--space-4);color:#32006e;font-family:var(--font-sans);font-size:14px;font-weight:var(--weight-semibold);cursor:pointer;background-color:#fff;border:none;border-radius:6px}.top-nav{height:56px;padding-inline:var(--space-6);background-color:var(--color-nav-bg);border-block-end:1px solid var(--color-nav-border);z-index:var(--z-sticky);flex-shrink:0;align-items:center;display:flex}.top-nav__wordmark-group{flex-shrink:0;align-items:baseline;gap:0;display:flex}.top-nav__wordmark{font-family:var(--font-sans);font-size:17px;font-weight:var(--weight-semibold);letter-spacing:-.01em;color:var(--color-nav-text);line-height:1}.top-nav__tag{font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-normal);letter-spacing:.1em;text-transform:uppercase;color:var(--color-nav-text-muted);margin-inline-start:.5em;line-height:1}.top-nav__breadcrumb{text-align:center;font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-normal);letter-spacing:.1em;font-variant:small-caps;color:var(--color-nav-text-muted);text-overflow:ellipsis;white-space:nowrap;padding-inline:var(--space-4);flex:1;line-height:1;overflow:hidden}.top-nav__course-select{color:inherit;background:0 0;border:1px solid;border-radius:4px;margin-inline-end:10px}.top-nav__course-option{color:var(--color-text-primary)}.top-nav__user-group{flex-shrink:0;align-items:center;display:flex;position:relative}.top-nav__user-menu{z-index:10;background-color:#fff;border-radius:6px;min-width:120px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 4px 16px #0000003d}.top-nav__user-menu-item{width:100%;padding:var(--space-2) var(--space-3);text-align:left;font-family:var(--font-sans);color:#32006e;cursor:pointer;background:0 0;border:none;font-size:13px;display:block}.top-nav__user-menu-item:hover{background-color:#f4f1e8}.top-nav__user-chip{cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;line-height:1;display:flex}.top-nav__user-initials{color:#32006e;width:28px;height:28px;font-family:var(--font-sans);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;background-color:#b7a57a;border-radius:50%;justify-content:center;align-items:center;display:flex}.top-nav__user-chevron{color:var(--color-nav-text-muted);-webkit-user-select:none;user-select:none;font-size:16px;line-height:1;transition:transform .14s ease-out}.app-shell{background-color:var(--color-bg);flex:1;display:flex;overflow:hidden}.instructor-preview-banner{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-sm);flex-shrink:0;display:flex}.instructor-preview-banner div{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.instructor-preview-banner strong{color:var(--color-text);white-space:nowrap}.instructor-preview-banner a{min-height:24px;padding-block:var(--space-1);color:var(--color-accent);font-weight:var(--weight-medium);white-space:nowrap;align-items:center;display:inline-flex}@media(max-width:40rem){.instructor-preview-banner,.instructor-preview-banner div{align-items:flex-start;gap:var(--space-2);flex-direction:column}}.conversation-main{display:contents}.sidebar{width:var(--sidebar-width);background-color:var(--color-sidebar-bg);padding:var(--space-6) var(--space-4);border-inline-end:none;flex-direction:column;flex-shrink:0;transition:width .24s ease-out,padding-inline .24s ease-out;display:flex;overflow:hidden auto}.sidebar--collapsed{width:64px;padding-inline:var(--space-2)}.sidebar--collapsed .sidebar__hw-label,.sidebar--collapsed .section-item__number,.sidebar--collapsed .section-item__title,.sidebar--collapsed .hint-history-row__label,.sidebar--collapsed .submit-action__label,.sidebar--collapsed .sidebar__worker{display:none}.sidebar--collapsed .section-item{justify-content:center;gap:0;padding-inline:0}.sidebar--collapsed .hint-history-row{flex-direction:column;align-items:center;gap:2px;padding-inline:0}.sidebar--collapsed .hint-history-row__count{margin-inline-start:0}.sidebar--collapsed .submit-action{padding:var(--space-2);justify-content:center;gap:0}.sidebar__top{flex-shrink:0;justify-content:flex-end;margin-block-end:var(--space-3);display:flex}.sidebar--collapsed .sidebar__top{justify-content:center}.sidebar__collapse-toggle{cursor:pointer;width:24px;height:24px;color:var(--color-sidebar-text);background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:background-color .12s ease-out,color .12s ease-out;display:inline-flex}.sidebar__collapse-toggle:hover{background-color:var(--color-sidebar-hover-bg);color:#fff}.sidebar__collapse-toggle:focus-visible{outline-color:var(--color-focus-chrome);outline-offset:2px}.sidebar__hw-label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--color-sidebar-hw-label);line-height:var(--leading-tight);margin-block-end:var(--space-4)}.sidebar__section-list{margin:0 0 var(--space-4) 0;padding:0;list-style:none}.sidebar__divider{border:none;border-block-start:1px solid var(--color-sidebar-divider);margin-block:var(--space-4)}.sidebar__utility{gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-sidebar-text);flex-direction:column;display:flex}.student-navigation{color:var(--color-sidebar-text)}.student-navigation__detail{display:contents}.student-navigation__tutors{min-width:0}.student-navigation__surface{display:contents}.student-navigation__surface[hidden]{display:none}.student-navigation__heading{align-items:center;gap:var(--space-2);display:flex}.student-navigation__disclosure,.student-navigation__add,.student-navigation__homework{border-radius:var(--radius-sm);color:var(--color-sidebar-text);cursor:pointer;font:inherit;background:0 0;border:none}.student-navigation__disclosure{width:100%;padding:var(--space-3) var(--space-2);font-weight:var(--weight-semibold);text-align:start;justify-content:space-between;align-items:center;display:flex}.student-navigation__add{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.student-navigation__homeworks{border-block-start:1px solid var(--color-sidebar-divider);margin-block-start:var(--space-4);padding-block-start:var(--space-3)}.student-navigation__list{margin:0;padding:0;list-style:none}.student-navigation__homework{gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-2);text-align:start;overflow-wrap:anywhere;flex-direction:column;display:flex}.student-navigation__meta,.student-navigation__empty{font-size:var(--font-size-xs);color:var(--color-sidebar-text)}.student-navigation__empty{padding-inline:var(--space-2)}.student-navigation__welcome{min-width:0;padding:var(--space-6);flex:1}.student-navigation__disclosure:hover,.student-navigation__add:hover:not(:disabled),.student-navigation__homework:hover:not(:disabled),.student-navigation .tutor-conversation-item:hover,.student-navigation .tutor-conversation-item--selected{background:var(--color-sidebar-hover-bg)}.student-navigation button:focus-visible{outline:2px solid var(--color-focus-chrome);outline-offset:2px}.student-navigation button:disabled{opacity:.5;cursor:not-allowed}.student-navigation .tutor-conversation-item,.student-navigation .tutor-conversation-item__meta,.student-navigation .editable-title__pencil-btn,.student-navigation .tutor-conversation-item__delete,.student-navigation .editable-title__hint,.student-navigation .editable-title__counter,.student-navigation .tutor-sidebar__collapse-toggle,.student-navigation .tutor-sidebar__label,.student-navigation .tutor-sidebar__disabled-reason,.student-navigation .tutor-sidebar__empty,.student-navigation .tutor-sidebar__retry,.student-navigation .tutor-sidebar__load-more{color:var(--color-sidebar-text)}.student-navigation .tutor-conversation-item__title:not(.editable-title--editing){flex-wrap:nowrap}.student-navigation .editable-title__value{white-space:normal;overflow-wrap:anywhere;flex:1}.student-navigation .editable-title__input{background:var(--color-sidebar-bg);border-color:var(--color-sidebar-text)}.student-navigation .tutor-sidebar__error{color:var(--color-sidebar-text)}.student-navigation .tutor-sidebar__retry,.student-navigation .tutor-sidebar__load-more{border-color:currentColor}.tutor-sidebar{background-color:var(--color-bg);border-inline-end:1px solid var(--color-border);width:220px;padding:var(--space-6) var(--space-4);flex-direction:column;flex-shrink:0;transition:width .24s ease-out,padding-inline .24s ease-out;display:flex;overflow:hidden auto}.tutor-sidebar__top{flex-shrink:0;justify-content:flex-end;margin-block-end:var(--space-3);display:flex}.sidebar--collapsed .tutor-sidebar__top{justify-content:center}.tutor-sidebar__collapse-toggle{border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;color:var(--color-text-muted);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background-color .12s ease-out,color .12s ease-out;display:inline-flex}.tutor-sidebar__collapse-toggle:hover{background-color:var(--color-border);color:var(--color-text)}.tutor-sidebar__label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);line-height:var(--leading-tight);margin-block-end:var(--space-3)}.tutor-sidebar__new-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-accent);font-size:var(--font-size-sm);cursor:pointer;background:0 0;margin-block-end:var(--space-4);transition:background-color .12s ease-out,border-color .12s ease-out;display:flex}.tutor-sidebar__new-btn:hover:not(:disabled){background-color:var(--color-accent-faint);border-color:var(--color-accent)}.tutor-sidebar__new-btn:disabled{opacity:.4;cursor:not-allowed}.sidebar--collapsed .tutor-sidebar__new-btn{padding-inline:0}.tutor-sidebar__error{font-size:var(--font-size-sm);color:var(--color-error)}.tutor-sidebar__error,.tutor-sidebar__error p{margin:0 0 var(--space-2)}.tutor-sidebar__retry{border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-accent);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);cursor:pointer;background:0 0;transition:background-color .12s ease-out}.tutor-sidebar__retry:hover{background-color:var(--color-accent-faint)}.tutor-sidebar__disabled-reason{margin:var(--space-1) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.tutor-sidebar__empty{padding:var(--space-2) var(--space-1) var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:var(--leading-normal);text-wrap:pretty;margin:0}.tutor-sidebar__more{padding:var(--space-2) var(--space-1) var(--space-4)}.tutor-sidebar__load-more{border:1px solid var(--color-accent);border-radius:var(--radius-sm);width:100%;color:var(--color-accent);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);cursor:pointer;background:0 0;transition:background-color .12s ease-out}.tutor-sidebar__load-more:hover:not(:disabled){background-color:var(--color-accent-faint)}.tutor-sidebar__load-more:disabled{opacity:.4;cursor:progress}.tutor-sidebar__list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sidebar--collapsed .tutor-sidebar__label,.sidebar--collapsed .tutor-sidebar__new-btn-label,.sidebar--collapsed .tutor-sidebar__empty,.sidebar--collapsed .tutor-sidebar__disabled-reason,.sidebar--collapsed .tutor-sidebar__error,.sidebar--collapsed .tutor-sidebar__more,.sidebar--collapsed .tutor-sidebar__load-more,.sidebar--collapsed .tutor-sidebar__list{display:none}.tutor-conversation-item-wrap{list-style:none}.tutor-conversation-item{width:100%;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text);flex-direction:column;align-items:flex-start;gap:2px;transition:background-color .12s ease-out;display:flex;position:relative}.tutor-conversation-item__select{border-radius:inherit;width:100%;height:100%;color:inherit;cursor:pointer;background:0 0;border:none;padding:0;position:absolute;top:0;right:0;bottom:0;left:0}.tutor-conversation-item .editable-title__pencil-btn,.tutor-conversation-item .editable-title__input,.tutor-conversation-item__delete{z-index:1;position:relative}.tutor-conversation-item:hover{background-color:var(--color-border)}.tutor-conversation-item--selected{background-color:var(--color-accent-faint)}.tutor-conversation-item--pending{opacity:.72;animation:1.2s ease-in-out infinite tutor-conversation-item-pulse}@keyframes tutor-conversation-item-pulse{0%,to{opacity:.72}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.tutor-conversation-item--pending{animation:none}}.tutor-conversation-item--reordered{animation:1.5s ease-out tutor-conversation-item-reorder-flash}@keyframes tutor-conversation-item-reorder-flash{0%{background-color:var(--color-accent-faint)}to{background-color:#0000}}@media(prefers-reduced-motion:reduce){.tutor-conversation-item--reordered{background-color:var(--color-accent-faint);animation:none}}.tutor-conversation-item__title{width:100%;display:flex}.tutor-conversation-item__title .editable-title__value{font-size:var(--font-size-sm);font-weight:var(--weight-medium)}@media(hover:hover){.tutor-conversation-item:hover .editable-title__pencil-btn{opacity:1;pointer-events:auto}}.tutor-conversation-item:focus-within .editable-title__pencil-btn{opacity:1;pointer-events:auto}.tutor-conversation-item__row{align-items:center;gap:var(--space-1);width:100%;min-width:0;display:flex}.tutor-conversation-item__row .tutor-conversation-item__title{flex:auto;min-width:0}.tutor-conversation-item__delete{border-radius:var(--radius-sm);block-size:24px;inline-size:24px;color:var(--color-text-muted);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .12s ease-out,color .12s ease-out;display:inline-flex}@media(hover:none){.tutor-conversation-item__delete{opacity:1;pointer-events:auto}}@media(hover:hover){.tutor-conversation-item:hover .tutor-conversation-item__delete{opacity:1;pointer-events:auto}}.tutor-conversation-item:focus-within .tutor-conversation-item__delete{opacity:1;pointer-events:auto}.tutor-conversation-item__delete:hover,.tutor-conversation-item__delete:focus-visible{color:var(--color-error)}.tutor-conversation-item__meta{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.tutor-conversation-item__count{align-items:center;gap:2px;display:inline-flex}.tutor-conversation-item__count-icon{flex-shrink:0}.editable-title{align-items:center;gap:var(--space-1);flex-wrap:wrap;max-width:100%;display:inline-flex}.editable-title__value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}button.editable-title__value{font:inherit;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:inline}.editable-title__pencil-btn{cursor:pointer;min-width:24px;min-height:24px;color:var(--color-text-muted);opacity:0;pointer-events:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .12s ease-out;display:inline-flex}@media(hover:none){.editable-title__pencil-btn{opacity:1;pointer-events:auto}}@media(hover:hover){.editable-title:hover .editable-title__pencil-btn{opacity:1;pointer-events:auto}}.editable-title:focus-within .editable-title__pencil-btn,.editable-title__pencil-btn:focus-visible{opacity:1;pointer-events:auto}.editable-title__text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.editable-title--editing{flex-direction:column;align-items:stretch;gap:0;display:flex}.editable-title__input{font:inherit;color:inherit;background-color:var(--color-bg);border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:1px var(--space-1);min-width:0}.editable-title__input:disabled{opacity:.6}.editable-title__hint,.editable-title__counter{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-start:2px;line-height:1.3;display:block}.editable-title__counter--over{color:var(--color-error)}.editable-title__error{align-items:center;gap:var(--space-1);font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-error);overflow-wrap:anywhere;flex-basis:100%;display:flex}.hint-history-row{align-items:baseline;gap:var(--space-2);width:100%;padding:var(--space-1-5,.375rem) var(--space-2);cursor:pointer;border-radius:var(--radius-sm);text-align:left;background:0 0;border:none;transition:background-color .12s ease-out;display:flex}.hint-history-row:hover{background-color:var(--color-sidebar-hover-bg)}.hint-history-row__indicator{font-family:var(--font-mono);color:var(--raw-gold-print);text-align:center;flex-shrink:0;width:14px;margin-block-start:.15em;font-size:8px;line-height:1}.hint-history-row__label{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-sidebar-text);line-height:var(--leading-normal);transition:color .12s ease-out;position:relative}.hint-history-row__label:after{content:"";background-color:var(--raw-gold-print);transform-origin:0;height:1px;transition:transform .12s ease-out;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.hint-history-row:hover .hint-history-row__label{color:#fff}.hint-history-row:hover .hint-history-row__label:after{transform:scaleX(1)}.hint-history-row__count{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--raw-gold-print);margin-block-start:.1em;margin-inline-start:auto;line-height:1}.sidebar__spacer{flex:1}.sidebar__worker{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-sidebar-text-faint);letter-spacing:.04em;border-block-start:1px solid var(--color-sidebar-divider);margin-block-start:var(--space-4);padding-block-start:var(--space-4)}.section-item{align-items:baseline;gap:var(--space-2);padding:var(--space-1-5,.375rem) var(--space-2);cursor:pointer;border-radius:var(--radius-sm);transition:background-color .12s ease-out;display:flex}.section-item:hover{background-color:var(--color-sidebar-hover-bg)}.section-item__indicator{font-family:var(--font-mono);text-align:center;flex-shrink:0;width:14px;margin-block-start:.15em;font-size:.6875rem;line-height:1}.section-item__indicator--submitted{color:var(--color-status-submitted)}.section-item__indicator--current{color:var(--color-status-current)}.section-item__indicator--pending{color:var(--color-status-pending)}.section-item__number{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-sidebar-text);flex-shrink:0}.section-item__title{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-sidebar-text);line-height:var(--leading-normal);transition:color .12s ease-out;position:relative}.section-item__title:after{content:"";background-color:var(--color-sidebar-hw-label);transform-origin:0;height:1px;transition:transform .12s ease-out;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.section-item:hover .section-item__title{color:#fff}.section-item:hover .section-item__title:after{transform:scaleX(1)}.section-item--current .section-item__title{color:var(--color-sidebar-text-current);font-weight:var(--weight-medium)}.section-item--current .section-item__number{color:var(--color-sidebar-text-current)}.section-item--submitted .section-item__title,.section-item--submitted .section-item__number{color:var(--color-sidebar-text-muted)}.submit-action{width:100%;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-sidebar-text);cursor:pointer;border:1px solid var(--raw-gold-print);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);text-align:left;background:0 0;align-items:center;gap:.4em;text-decoration:none;transition:background-color .14s ease-out,border-color .14s ease-out,color .14s ease-out;display:flex}.submit-action:hover{background-color:var(--color-sidebar-hover-bg);border-color:var(--raw-spirit-gold);color:#fff}.submit-action:active{background-color:var(--raw-accent-deeper);transition-duration:.1s;transform:scale(.99)}.submit-action__arrow{color:var(--raw-gold-print);flex-shrink:0;transition:transform .14s ease-out,color .14s ease-out;display:inline-block}.submit-action:hover .submit-action__arrow{color:#fff;transform:translate(4px)}.submit-action__label{line-height:var(--leading-tight)}.conversation-column{flex-direction:column;flex:1;animation:.24s ease-out both conversation-enter;display:flex;overflow:clip}@keyframes conversation-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.conversation-messages{padding-block:var(--space-6);flex:1;overflow-y:auto}.conversation-context-boundary{align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:1.5;display:flex}.conversation-context-boundary:before,.conversation-context-boundary:after{content:"";border-block-start:1px dashed var(--color-border);flex:1 1 0}.conversation-context-boundary span{text-align:center;flex:0 42ch}.conversation-inner{max-width:var(--conversation-max);padding-inline:var(--space-8);margin-inline:auto}.breadcrumb{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-normal);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-variant:small-caps;min-width:0;margin:0}.conversation-header-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);border-block-end:1px solid var(--color-border);margin-block-end:var(--space-6);padding-block-end:var(--space-6);display:flex}.conversation-header-title{font-size:var(--font-size-lg);font-weight:var(--weight-medium);margin:0 0 var(--space-6) 0}.conversation-header-title .editable-title__value{max-width:60ch}.conversation-history-notice{margin:0 0 var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted)}.conversation-history-more{margin:0 0 var(--space-4)}.conversation-history-more__btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3);cursor:pointer;background:0 0;transition:background-color .12s ease-out,color .12s ease-out}.conversation-history-more__btn:hover:not(:disabled){background-color:var(--color-accent-faint);color:var(--color-accent)}.conversation-history-more__btn:disabled{opacity:.5;cursor:progress}.conversation-history-more .conversation-history-notice{margin:var(--space-1) 0 0;color:var(--color-error)}.conversation-error-row{align-items:flex-start;gap:var(--space-2);margin-block:var(--space-4) var(--space-8);flex-direction:column;display:flex}.conversation-error-row,.error-boundary-fallback,.not-found{--stopped-rule-width:min(280px, 60%);--stopped-rule-tick:18px;--stopped-rule-color:var(--color-error)}.conversation-error-row:before,.error-boundary-fallback:before,.not-found:before{content:"";width:var(--stopped-rule-width);background-image:linear-gradient(to right,var(--stopped-rule-color) 0,var(--stopped-rule-color) var(--stopped-rule-tick),var(--color-border-strong) var(--stopped-rule-tick),transparent 100%);transform-origin:0;height:1px;animation:.42s cubic-bezier(.16,1,.3,1) both error-rule-sever;display:block}@keyframes error-rule-sever{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes error-turn-rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.conversation-error-row__label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-variant:small-caps;color:var(--color-error);animation:.32s ease-out 80ms both error-turn-rise}.conversation-error-row__message{max-width:58ch;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text-secondary);margin:0;animation:.32s ease-out .12s both error-turn-rise}.conversation-error-row__detail{font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted);word-break:break-word;margin:0;animation:.32s ease-out .16s both error-turn-rise}.conversation-error-row__detail-wrap{margin-block-start:var(--space-1)}.conversation-error-row__detail-toggle{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);cursor:pointer}.conversation-error-row__detail-toggle:hover{color:var(--color-text-secondary)}.error-boundary-fallback__secondary{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-underline-offset:3px;text-decoration:underline}.error-boundary-fallback__secondary:hover{color:var(--color-text);text-decoration:underline}.conversation-error-row__retry{padding-block:var(--space-1);cursor:pointer;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-accent);background:0 0;border:none;align-items:center;gap:.45em;margin-block-start:var(--space-1);transition:color .14s ease-out;animation:.32s ease-out .2s both error-turn-rise;display:inline-flex}.conversation-error-row__retry:hover{color:var(--color-accent-hover)}.conversation-error-row__retry:disabled{color:var(--color-text-muted);cursor:not-allowed}.conversation-error-row__retry:disabled:hover{color:var(--color-text-muted)}.conversation-error-row__retry:disabled .conversation-error-row__retry-arrow{transform:none}.conversation-error-row__retry-arrow{transition:transform .2s cubic-bezier(.16,1,.3,1);display:inline-block}.conversation-error-row__retry:hover .conversation-error-row__retry-arrow{transform:translate(3px)}@media(prefers-reduced-motion:reduce){.conversation-error-row:before,.error-boundary-fallback:before,.not-found:before,.conversation-error-row__label,.conversation-error-row__message,.conversation-error-row__detail,.conversation-error-row__retry{animation:none}.conversation-error-row__retry-arrow{transition:none}}.error-boundary-fallback{align-items:flex-start;gap:var(--space-2);margin:var(--space-6) 0;padding-inline:var(--space-8);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.error-boundary-fallback--inline{flex:initial;padding-inline:0;overflow-y:visible}.error-boundary-fallback__label{font-weight:var(--weight-medium);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-variant:small-caps;color:var(--color-error);margin:0}.error-boundary-fallback__body{max-width:58ch;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text-secondary);margin:0}.error-boundary-fallback__retry{padding-block:var(--space-1);cursor:pointer;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-accent);background:0 0;border:none;align-items:center;gap:.45em;margin-block-start:var(--space-1);transition:color .14s ease-out;display:inline-flex}.error-boundary-fallback__retry:hover{color:var(--color-accent-hover)}.not-found{--stopped-rule-color:var(--color-accent-warm);align-items:flex-start;gap:var(--space-3);min-height:100dvh;padding-inline:clamp(var(--space-6),8vw,var(--space-12));background-color:var(--color-bg);flex-direction:column;justify-content:center;display:flex}.not-found h1{font-family:var(--font-sans);font-size:var(--font-size-2xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;line-height:var(--leading-tight);color:var(--color-text);margin:0}.not-found p{max-width:52ch;font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--leading-body);color:var(--color-text-secondary);margin:0}.not-found a{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-accent);align-items:center;gap:.45em;margin-block-start:var(--space-2);text-decoration:none;transition:color .14s ease-out;display:inline-flex}.not-found a:hover{color:var(--color-accent-hover)}.message--ai{margin-block-end:var(--space-4);position:relative}.message--ai:not(:has(.message__actions)){margin-block-end:var(--space-8)}.message--ai:has(+.message--ai){margin-block-end:0}.message--student:has(+.message--student){margin-block-end:var(--space-2)}.day-divider{align-items:center;gap:var(--space-4);margin-block:var(--space-8);display:flex}.day-divider:before,.day-divider:after{content:"";border-block-start:1px solid var(--color-border);flex:1}.day-divider__pill{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;font-variant:small-caps;color:var(--color-text-muted);background-color:var(--color-surface-raised);padding:var(--space-1) var(--space-3);white-space:nowrap;border-radius:999px;flex-shrink:0}.message__actions{align-items:center;gap:var(--space-2);min-block-size:24px;margin-block-start:var(--space-1);display:flex}.message__action{-webkit-appearance:none;-moz-appearance:none;appearance:none;block-size:24px;inline-size:24px;color:var(--color-text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;transition:opacity .14s ease-out,color .14s ease-out;display:inline-flex}.message--ai:hover .message__action,.message--ai:focus-within .message__action,.message--student:hover .message__action,.message--student:focus-within .message__action,.message__action:focus-visible{opacity:1}.message__action:hover{color:var(--color-accent)}.message__action:active{transition-duration:90ms;transition-timing-function:cubic-bezier(.4,0,1,1);transform:scale(.86)}@keyframes llteacher-glyph-turn{0%{opacity:0;transform:rotateY(-90deg)scale(.7)}60%{opacity:1;transform:rotateY(0)scale(1.12)}to{opacity:1;transform:rotateY(0)scale(1)}}.message__action svg{animation:.26s cubic-bezier(.34,1.3,.64,1) both llteacher-glyph-turn}.message__action{transform:translateY(3px)}.message--ai:hover .message__action,.message--ai:focus-within .message__action,.message--student:hover .message__action,.message--student:focus-within .message__action,.message__action:focus-visible{transform:translateY(0)}.message__revert:hover svg,.message__revert:focus-visible svg{transition:transform .32s cubic-bezier(.34,1.06,.64,1);animation:none;transform:rotate(-150deg)}.message__time{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;font-variant:small-caps;color:var(--color-text-muted);flex-shrink:0;line-height:24px}.message__actions>.message__action:first-child{margin-inline-start:-4px}.message__actions--student{justify-content:flex-end}.message__actions--student>.message__action:first-child{margin-inline-start:0}.message__actions--student>.message__copy{margin-inline-end:-4px}.message__copy--copied{color:var(--color-success)}.message__copy--failed{color:var(--color-error)}.message__copy--copied{opacity:1;color:var(--color-accent)}.message__copy--failed{opacity:1;color:var(--color-error)}@media(hover:none){.message__action{opacity:1}}.message__sources{margin-top:var(--space-2);color:var(--color-text-muted);font-size:.8125rem}.message__sources-summary{cursor:pointer}.message__sources-list{margin:var(--space-1) 0 0;padding-left:var(--space-4)}.message__sources-id{font-family:var(--font-mono);opacity:.75}.message__ai-body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text)}.message__ai-body p+p{margin-block-start:var(--space-4)}.message__ai-body p{margin:0}.message__stopped-note{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;margin-block-start:var(--space-3)!important}.message--student{flex-direction:column;align-items:flex-end;margin-block-end:var(--space-6);display:flex}.message__student-bubble{background-color:var(--color-accent-faint);border:1px solid var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.message__student-bubble{border:1px solid color-mix(in srgb,var(--color-accent) 14%,transparent)}}.message__student-bubble{border-radius:var(--radius-msg-student-tl) var(--radius-msg-student-tr) var(--radius-msg-student-br) var(--radius-msg-student-bl);padding:var(--space-3) var(--space-4);max-width:80%;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text);white-space:pre-wrap;overflow-wrap:break-word}.message--system{text-align:center;margin-block:var(--space-4)}.message__system-text{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-variant:small-caps}.message__ai-body{overflow-wrap:break-word}.message__ai-body>:first-child{margin-block-start:0}.message__ai-body>:last-child{margin-block-end:0}.md-h{margin-block:var(--space-5) var(--space-2);font-family:var(--font-sans);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text)}.md-h--1{font-size:var(--font-size-lg);border-block-end:1px solid var(--color-border);padding-block-end:var(--space-2)}.md-h--2{font-size:1.125rem}.md-h--3,.md-h--4,.md-h--5,.md-h--6{font-size:var(--font-size-base)}.message__ai-body ul,.message__ai-body ol{margin-block:var(--space-3);padding-inline-start:var(--space-6)}.message__ai-body ul{list-style:outside}.message__ai-body ol{list-style:decimal}.message__ai-body li{margin-block-end:var(--space-1)}.message__ai-body li::marker{color:var(--color-text-muted)}.message__ai-body li>ul,.message__ai-body li>ol{margin-block:var(--space-1) 0}.message__ai-body li>ul{list-style:circle}.message__ai-body li p{margin:0}.message__ai-body li p+p{margin-block-start:var(--space-2)}.message__ai-body blockquote{margin-block:var(--space-4);border-inline-start:2px solid var(--color-accent);color:var(--color-text-secondary);margin-inline:0;padding-inline-start:var(--space-4)}.message__ai-body hr{margin-block:var(--space-5);border:none;border-block-start:1px solid var(--color-border)}.message__ai-body strong{font-weight:var(--weight-semibold)}.message__ai-body em{font-style:italic}.message__ai-body del{text-decoration:line-through}.md-code{font-family:var(--font-mono);background-color:var(--color-code-bg);border-radius:3px;padding:1px 4px;font-size:.9em}.md-link{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}.md-link:hover{color:var(--color-accent-hover)}.message__ai-body table{width:100%;margin-block:var(--space-4);border-collapse:collapse;font-size:var(--font-size-sm)}.message__ai-body th,.message__ai-body td{padding:var(--space-2) var(--space-3);border-block-end:1px solid var(--color-border);text-align:start;vertical-align:top}.message__ai-body th{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.message__ai-body .katex{font-size:1.05em}.message__ai-body .katex-display{margin-block:var(--space-4);padding-block:var(--space-1);overflow:auto hidden}.message__ai-body .katex-error{font-family:var(--font-mono);font-size:var(--font-size-sm)}.code-block{margin-block:var(--space-5);background-color:var(--color-code-bg);border-block-start:1px solid var(--color-border);border-block-end:1px solid var(--color-border);position:relative}.code-block__header{padding:var(--space-2) var(--space-3);border-block-end:1px solid var(--color-border);justify-content:flex-end;display:flex}.code-block__lang{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-variant:small-caps}.code-block__pre{padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--leading-code);color:var(--color-text);white-space:pre;-moz-tab-size:2;tab-size:2;margin:0;overflow-x:auto}.code-block__output{background-color:var(--color-code-output-bg);border-block-start:1px solid var(--color-border)}.code-block__output-header{padding:var(--space-1) var(--space-3);border-block-end:1px solid var(--color-border);justify-content:flex-end;display:flex}.code-block__output-label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-variant:small-caps}.code-block__output-pre{padding:var(--space-2) var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--leading-code);color:var(--color-text-secondary);white-space:pre;margin:0;overflow-x:auto}.code-execution{margin-block:var(--space-5)}.code-execution__run{padding:var(--space-1) var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.04em;color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;background:0 0;margin-block-start:var(--space-2)}.code-execution__run:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.code-execution__run:disabled{color:var(--color-text-muted);cursor:default}.code-execution__unavailable{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-start:var(--space-2)}.code-execution__error{background-color:var(--color-code-output-bg);border-inline-start:3px solid var(--color-error);margin-block-start:var(--space-2)}.code-execution__error-label{padding:var(--space-1) var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-error);font-variant:small-caps;display:block}.code-execution__error-pre{padding:var(--space-2) var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--leading-code);color:var(--color-text-secondary);white-space:pre-wrap;margin:0;overflow-x:auto}.code-execution__plots{gap:var(--space-3);flex-direction:column;margin-block-start:var(--space-2);display:flex}.code-execution__plot{border:1px solid var(--color-border);max-width:100%;height:auto}.composer-zone{background-color:var(--color-bg);border-block-start:1px solid var(--color-border);padding:var(--space-4) var(--space-8);flex-shrink:0}.composer-inner{max-width:var(--conversation-max);margin-inline:auto}.composer-wrap{background-color:var(--color-surface-raised);-webkit-tap-highlight-color:transparent;border:1.5px solid #0000;border-radius:10px;transition:border-color .18s ease-out,box-shadow .18s ease-out;position:relative;box-shadow:0 1px 2px #0000000a}.composer-wrap:hover:not(:focus-within){box-shadow:0 1px 3px #00000012}.composer-wrap:focus-within{border-color:var(--color-accent-warm);box-shadow:0 0 0 3px #85754d1a}.composer-body{padding:var(--space-3) var(--space-4);align-items:flex-end;gap:var(--space-3);display:flex}.composer-textarea{resize:none;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-normal);color:var(--color-text);caret-color:var(--color-accent-warm);field-sizing:content;background:0 0;border:none;outline:none;flex:1;min-height:1.5rem;max-height:12rem;overflow-y:auto}.composer-textarea::placeholder{color:var(--color-text-muted);font-style:normal}.composer-hint{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-accent-warm);opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0;margin-block-end:2px;transition:opacity .12s ease-out}.composer-wrap:focus-within .composer-hint{opacity:1}.composer-hint-request{justify-content:flex-end;margin-block-end:var(--space-2);display:flex}.composer-wrap:focus-within .composer-hint--suppressed,.composer-hint--suppressed{opacity:0}.composer-action{border:1px solid var(--color-accent-warm);block-size:32px;inline-size:32px;color:var(--color-accent-warm);cursor:pointer;background-color:#0000;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .16s ease-out,border-color .16s ease-out,color .16s ease-out,transform .16s cubic-bezier(.34,1.06,.64,1);display:inline-flex}.composer-action__glyph{font-size:var(--font-size-sm);line-height:1}.composer-action:not([aria-disabled=true]){background-color:var(--color-accent-warm);border-color:var(--color-accent-warm);color:var(--color-bg)}.composer-action:not([aria-disabled=true]):hover,.composer-action:not([aria-disabled=true]):focus-visible{background-color:var(--color-accent-warm-hover);border-color:var(--color-accent-warm-hover)}.composer-action:not([aria-disabled=true]):active{transform:scale(.94)}.composer-action[aria-disabled=true]{border-color:var(--color-accent-warm)}@supports (color:color-mix(in lab,red,red)){.composer-action[aria-disabled=true]{border-color:color-mix(in srgb,var(--color-accent-warm) 45%,transparent)}}.composer-action[aria-disabled=true]{color:var(--color-text-muted);cursor:default}.composer-action--stop,.composer-action--stop:hover,.composer-action--stop:focus-visible{background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}.composer-action--stop:hover,.composer-action--stop:focus-visible{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.composer-action__stop-mark{background-color:currentColor;border-radius:2px;block-size:11px;inline-size:11px}@media(prefers-reduced-motion:reduce){.message__action,.message__action:active,.message__action svg,.message__revert:hover svg,.message__revert:focus-visible svg{transition:none;animation:none;transform:none}.composer-action{transition:none}.composer-action:not([aria-disabled=true]):active{transform:none}}.badge{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-variant:small-caps;color:var(--color-text-muted);line-height:1.4;display:inline-block}.badge--accent{color:var(--color-accent)}.badge--outlined{border:1px solid;border-radius:2px;padding:0 .375rem}.btn{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3em;padding:0;text-decoration:none;transition:color .12s ease-out;display:inline-flex}.btn:hover{color:var(--color-text)}.btn--accent{color:var(--color-accent)}.btn--accent:hover{color:var(--color-accent-hover)}.btn--outlined{border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.btn--outlined:hover{border-color:var(--color-accent-hover)}.btn--danger{color:var(--color-error);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.btn--danger:hover{color:var(--color-error);text-decoration-thickness:2px}.btn--danger.btn--outlined,.btn--danger.btn--outlined:hover{border-color:var(--color-error)}.btn:disabled,.btn[aria-disabled=true]{opacity:.4;pointer-events:none}.btn--danger.btn--restart{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-normal);letter-spacing:.1em;text-transform:uppercase;font-variant:small-caps;color:var(--color-text-secondary);white-space:nowrap;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);flex-shrink:0;margin-inline-end:calc(var(--space-2) * -1);text-decoration:none;transition:color .14s ease-out,background-color .14s ease-out}.btn--danger.btn--restart:hover,.btn--danger.btn--restart:focus-visible{color:var(--color-error);text-underline-offset:3px;background-color:var(--color-surface-raised);text-decoration:underline;text-decoration-thickness:1px}.btn--restart span[aria-hidden=true]{transition:transform .26s cubic-bezier(.34,1.06,.64,1);display:inline-block}.btn--restart:hover span[aria-hidden=true],.btn--restart:focus-visible span[aria-hidden=true]{transform:rotate(-120deg)}@media(prefers-reduced-motion:reduce){.btn--restart span[aria-hidden=true],.btn--restart:hover span[aria-hidden=true],.btn--restart:focus-visible span[aria-hidden=true]{transition:none;transform:none}.btn--danger.btn--restart{transition:none}}.md-image-alt{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.04em;color:var(--color-text-muted)}.input-field{background-color:var(--color-surface-raised);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);border:1px solid #0000;outline:none;transition:border-color .18s ease-out;display:block;box-shadow:0 1px 2px #0000000d}.input-field::placeholder{color:var(--color-text-muted)}.input-field:focus{border-color:var(--color-accent)}.input-field--error{border-color:var(--color-error)}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.text-end{text-align:end}.text-start{text-align:start}.text-error{color:var(--color-error)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--raw-bg:#fafaf7;--raw-surface:#f2efe9;--raw-surface-raised:#f6f3ed;--raw-border:#e5e1d8;--raw-border-strong:#d4cfc5;--raw-input-border:#847e72;--raw-code-bg:#f4f1ea;--raw-code-output-bg:#ede9df;--raw-text:#1a1a1a;--raw-text-secondary:#6b6760;--raw-text-muted:#64605a;--raw-accent:#32006e;--raw-accent-dark:#4b2e83;--raw-accent-faint:#efeaf7;--raw-accent-deeper:#26005a;--raw-accent-warm:#85754d;--raw-accent-warm-hover:#a08e60;--raw-gold-web:#e8e3d3;--raw-gold-print:#b7a57a;--raw-spirit-gold:#ffc700;--raw-error:#c92a2a;--raw-success:#2b8a3e;--raw-warning:#e67700;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5625rem;--font-size-2xl:1.9375rem;--leading-tight:1.3;--leading-normal:1.5;--leading-body:1.7;--leading-code:1.5;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--font-sans:"Geist", "Helvetica Neue", Arial, sans-serif;--font-mono:"Geist Mono", "Menlo", "Courier New", monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-msg-student-tl:10px;--radius-msg-student-tr:10px;--radius-msg-student-br:3px;--radius-msg-student-bl:10px;--sidebar-width:240px;--conversation-max:720px;--z-sticky:100;--z-overlay:200;--color-bg:var(--raw-bg);--color-surface:var(--raw-surface);--color-surface-raised:var(--raw-surface-raised);--color-code-bg:var(--raw-code-bg);--color-code-output-bg:var(--raw-code-output-bg);--color-border:var(--raw-border);--color-border-strong:var(--raw-border-strong);--color-input-border:var(--raw-input-border);--color-text:var(--raw-text);--color-text-secondary:var(--raw-text-secondary);--color-text-muted:var(--raw-text-muted);--color-accent:var(--raw-accent);--color-accent-hover:var(--raw-accent-dark);--color-accent-faint:var(--raw-accent-faint);--color-accent-warm:var(--raw-accent-warm);--viz-1:#2a78d6;--viz-2:#eb6834;--viz-3:#1baf7a;--viz-4:#4a3aa7;--viz-5:#e87ba4;--color-accent-warm-hover:var(--raw-accent-warm-hover);--color-stream:var(--color-accent-warm);--color-error:var(--raw-error);--color-success:var(--raw-success);--color-warning:var(--raw-warning);--color-nav-bg:var(--raw-accent);--color-nav-text:#fff;--color-nav-text-muted:var(--raw-gold-web);--color-nav-border:var(--raw-accent-deeper);--color-sidebar-bg:var(--raw-accent);--color-sidebar-text:var(--raw-gold-web);--color-sidebar-text-current:#fff;--color-sidebar-text-muted:#9b8bb8;--color-sidebar-text-faint:#8b73b5;--color-sidebar-hover-bg:var(--raw-accent-dark);--color-sidebar-divider:var(--raw-accent-dark);--color-sidebar-hw-label:var(--raw-gold-print);--color-status-submitted:var(--raw-gold-print);--color-status-current:var(--raw-spirit-gold);--color-status-pending:#6e5a9c;--color-focus-chrome:var(--raw-spirit-gold)}[data-theme=dark]{--color-bg:#1a1a1a;--color-surface:#222220;--color-surface-raised:#272724;--color-code-bg:#1e1d1b;--color-code-output-bg:#232220;--color-border:#2e2c28;--color-border-strong:#3a3834;--color-input-border:#7c766c;--color-error:#ff8787;--color-text:#fafaf7;--color-text-secondary:#b5b0aa;--color-text-muted:#95958d;--color-accent:#c5b4e3;--color-accent-hover:#d4c8ec;--color-accent-faint:#2a2335;--color-accent-warm:#b7a57a;--viz-1:#3987e5;--viz-2:#d95926;--viz-3:#199e70;--viz-4:#9085e9;--viz-5:#d55181;--color-accent-warm-hover:#c8b88c;--color-stream:var(--color-accent-warm)}html,body,#root{height:100%;margin:0}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:1.5px solid var(--color-accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}.sidebar :focus-visible,.top-nav :focus-visible{outline-color:var(--color-focus-chrome)}.composer-textarea:focus,.composer-textarea:focus-visible{outline:none}@keyframes llteacher-stream-wave{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.definition-card{margin-block:var(--space-6);padding:var(--space-6);background-color:#85754d0b;border:none;border-radius:8px;transition:opacity .24s ease-out;position:relative;box-shadow:0 1px 2px #00000008,0 1px 6px #85754d0f}.definition-card--partial{opacity:.5}.definition-card__term{font-family:var(--font-sans);font-size:var(--font-size-2xl);font-weight:var(--weight-semibold);letter-spacing:-.022em;color:var(--color-text);line-height:var(--leading-tight);margin-block-end:var(--space-1)}.definition-card__signature{width:120px;height:8px;color:var(--color-accent-warm);margin-block-end:var(--space-4);display:block}.definition-card__signature path{stroke-dasharray:130;stroke-dashoffset:130px;animation:.7s ease-out .24s forwards llteacher-def-signature-draw}@keyframes llteacher-def-signature-draw{to{stroke-dashoffset:0}}.definition-card__body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text)}@media(prefers-reduced-motion:reduce){.definition-card__signature path{stroke-dashoffset:0;animation:none}}.section-complete-suggestion{margin-block:var(--space-6);padding:var(--space-4) var(--space-6);border-inline-start:3px solid var(--color-success);background-color:#2b8a3e0f;border-radius:8px;transition:opacity .24s ease-out}.section-complete-suggestion--partial{opacity:.5}.section-complete-suggestion__title{font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--weight-semibold);color:var(--color-success);margin-block-end:var(--space-1)}.section-complete-suggestion__body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text)}.streaming-dot{vertical-align:middle;align-items:center;gap:4px;margin-inline-start:.4em;display:inline-flex}.streaming-dot>span{background-color:var(--color-stream);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite llteacher-stream-wave;display:block}.streaming-dot>span:nth-child(2){animation-delay:.2s}.streaming-dot>span:nth-child(3){animation-delay:.4s}@keyframes llteacher-ai-body-appear{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.message--ai .message__ai-body{animation:.28s ease-out backwards llteacher-ai-body-appear}@keyframes llteacher-submit-success{0%{transform:scale(.7);box-shadow:0 0 #ffc7008c}40%{transform:scale(1.25)}to{transform:scale(1);box-shadow:0 0 0 12px #ffc70000}}.section-item__indicator--just-submitted{border-radius:50%;animation:.7s ease-out llteacher-submit-success}@keyframes llteacher-hint-flash{0%{color:var(--raw-spirit-gold);transform:scale(1.25)}60%{color:var(--raw-spirit-gold)}to{color:var(--raw-gold-print);transform:scale(1)}}.hint-history-row__count--flash{animation:.6s ease-out llteacher-hint-flash}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.streaming-dot>span{opacity:1;transform:scale(1)}}@keyframes llteacher-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{top:var(--space-2);left:var(--space-2);width:auto;height:auto;padding:var(--space-2) var(--space-3);clip:auto;white-space:normal;background-color:var(--color-bg);color:var(--color-text);border:2px solid var(--color-accent);border-radius:var(--radius-sm);z-index:1000;margin:0;position:fixed;overflow:visible}.top-nav__tag--admin{align-items:center;gap:.45em;display:inline-flex}.top-nav__admin-dot{background-color:var(--color-accent-warm);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 2px #85754d2e}.admin-main{background-color:var(--color-bg)}.admin-main .conversation-messages{padding-block:var(--space-6)}.admin-inner{max-width:1080px;padding-inline:var(--space-6);margin-inline:auto}.admin-sidebar{padding-block-start:var(--space-2);padding-block-end:var(--space-5);padding-inline:var(--space-3);flex-direction:column;gap:0;display:flex}.admin-sidebar__label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.18em;color:var(--color-nav-text-muted);text-transform:uppercase;align-items:center;gap:.5em;margin-block-end:var(--space-3);padding-inline-start:var(--space-2);display:inline-flex}.admin-sidebar__label-dot{background-color:var(--color-accent-warm);border-radius:50%;width:5px;height:5px;display:inline-block}.admin-sidebar__nav-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.admin-sidebar__nav-list>li{position:relative}.admin-sidebar__nav-item{width:100%;padding:var(--space-2) var(--space-3);font:inherit;color:var(--color-nav-text);cursor:pointer;text-align:start;background:0 0;border:none;border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7em;transition:background-color .14s ease-out;display:grid}.admin-sidebar__visibility-marker{color:var(--color-nav-text-muted);justify-content:center;align-items:center;display:inline-flex}.admin-sidebar__visibility-tooltip{margin:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);background:var(--color-sidebar-bg);color:var(--color-nav-text);font-family:var(--font-sans);font-size:var(--font-size-xs);white-space:normal;overflow-wrap:anywhere;border:1px solid #e8e3d340;border-radius:4px;line-height:1.2;display:block}.admin-sidebar__visibility-note{padding-inline:var(--space-3);color:var(--color-nav-text-muted);font-size:var(--font-size-xs);margin-block-end:var(--space-2);line-height:1.5}.admin-sidebar__nav-item:hover,.admin-sidebar__nav-item:focus-visible{background-color:#ffffff0f;outline:none}.admin-sidebar__nav-item--active{background-color:#ffffff1a;position:relative}.admin-sidebar__nav-item--active:before{content:"";background-color:var(--color-accent-warm);border-radius:1px;width:2px;position:absolute;inset-block:.4em;inset-inline-start:0}.admin-sidebar__nav-icon{width:22px;height:22px;color:var(--color-nav-text-muted);justify-content:center;align-items:center;display:inline-flex}.admin-sidebar__nav-item--active .admin-sidebar__nav-icon{color:var(--color-accent-warm)}.admin-sidebar__nav-text{flex-direction:column;gap:1px;min-width:0;display:flex}.admin-sidebar__nav-label{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:inherit;line-height:1.2}.admin-sidebar__nav-desc{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-nav-text-muted);text-transform:uppercase;font-size:10px;line-height:1.2}.admin-sidebar__divider{height:1px;margin-block:var(--space-4);margin-inline:var(--space-2);background-color:#ffffff14}.admin-sidebar__quick{padding-inline:var(--space-2);flex-direction:column;gap:4px;display:flex}.admin-sidebar__quick-label{font-family:var(--font-mono);letter-spacing:.18em;font-size:10px;font-weight:var(--weight-medium);color:var(--color-nav-text-muted);text-transform:uppercase;margin-block-end:var(--space-1)}.admin-sidebar__quick-action{color:var(--color-nav-text-muted);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-normal);padding:var(--space-2) var(--space-3);cursor:pointer;text-align:start;background:0 0;border:1px dashed #e8e3d340;border-radius:4px;align-items:center;gap:.45em;transition:border-color .14s ease-out,color .14s ease-out;display:inline-flex}.admin-sidebar__quick-action:hover,.admin-sidebar__quick-action:focus-visible{border-color:var(--color-accent-warm);color:var(--color-accent-warm);outline:none}.admin-sidebar__spacer{min-height:var(--space-4);flex:1}.admin-sidebar__meta{padding-inline:var(--space-2);font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-nav-text-muted);text-transform:uppercase;opacity:.6;align-items:center;gap:.5em;font-size:10px;display:inline-flex}.admin-sidebar__meta-dot{background-color:#e8e3d380;border-radius:50%;width:4px;height:4px}.sidebar--collapsed .admin-sidebar__label-text,.sidebar--collapsed .admin-sidebar__nav-text,.sidebar--collapsed .admin-sidebar__quick-label,.sidebar--collapsed .admin-sidebar__quick-action-label,.sidebar--collapsed .admin-sidebar__meta-text{display:none}.admin-sidebar.sidebar--collapsed{padding-inline:0}.sidebar--collapsed .admin-sidebar__label{justify-content:center;margin-block-end:var(--space-2);padding-inline:0}.sidebar--collapsed .admin-sidebar__label-dot{width:6px;height:6px}.sidebar--collapsed .admin-sidebar__nav-item{grid-template-columns:auto;justify-content:center;gap:0;padding:10px 0}.sidebar--collapsed .admin-sidebar__visibility-marker{position:absolute;inset-block-start:5px;inset-inline-end:5px}.sidebar--collapsed .admin-sidebar__visibility-tooltip{display:none}.sidebar--collapsed .admin-sidebar__nav-icon{width:24px;height:24px}.sidebar--collapsed .admin-sidebar__divider{margin-inline:var(--space-2)}.sidebar--collapsed .admin-sidebar__quick{align-items:center;gap:var(--space-1);padding-inline:0}.sidebar--collapsed .admin-sidebar__quick-action{border-radius:4px;justify-content:center;width:28px;height:28px;padding:0}.sidebar--collapsed .admin-sidebar__meta{justify-content:center;padding-inline:0}.admin-view{gap:var(--space-6);flex-direction:column;padding-block-end:var(--space-8);display:flex}.admin-view--setup{max-width:45rem;margin:4rem auto}.admin-page-header{gap:var(--space-2);flex-direction:column;display:flex}.admin-page-header__eyebrow{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.18em;color:var(--color-accent-warm);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.5em;display:inline-flex}.admin-page-header__eyebrow-sep{color:var(--color-text-muted);font-weight:var(--weight-normal)}.admin-page-header__title-row{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.admin-page-header__title{font-family:var(--font-sans);font-size:var(--font-size-2xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--color-text);margin:0;line-height:1.15}.admin-page-header__subtitle{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--leading-body);max-width:64ch;margin:0}.admin-page-header__actions{align-items:center;gap:var(--space-2);display:inline-flex}.admin-back{color:var(--color-text-secondary);font-family:var(--font-sans);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.4em;margin-block-end:calc(var(--space-2) * -1);padding:0;display:inline-flex}.admin-back:hover,.admin-back:focus-visible{color:var(--color-accent);outline:none}.admin-record-id{font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.06em;color:var(--color-accent-warm);white-space:nowrap;background-color:#85754d14;border:1px solid #85754d38;border-radius:3px;align-items:baseline;gap:.18em;padding:3px 8px;line-height:1.4;display:inline-flex}.admin-record-id--sm{padding:2px 6px;font-size:10px}.admin-record-id__prefix{font-weight:var(--weight-semibold)}.admin-record-id__sep{opacity:.65;margin-inline:.05em}.admin-record-id__index{font-variant-numeric:tabular-nums}.admin-status{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:.45em;padding:3px 9px;line-height:1.4;display:inline-flex}.admin-status__dot{border-radius:50%;width:6px;height:6px}.admin-status__text{display:inline-block}.admin-status--active{color:var(--color-success);background-color:#46825014}.admin-status--active .admin-status__dot{background-color:var(--color-success)}.admin-status--draft,.admin-status--inactive{color:var(--color-text-muted);background-color:#7a757014}.admin-status--draft .admin-status__dot,.admin-status--inactive .admin-status__dot{background-color:var(--color-text-muted)}.admin-status--scheduled,.admin-status--in_progress,.admin-status--partial{color:#5b4fab;background-color:#5b4fab14}.admin-status--scheduled .admin-status__dot,.admin-status--in_progress .admin-status__dot,.admin-status--partial .admin-status__dot{background-color:#5b4fab}.admin-status--archived,.admin-status--hidden{color:var(--color-text-secondary);background-color:#7a757014}.admin-status--archived .admin-status__dot,.admin-status--hidden .admin-status__dot{background-color:var(--color-text-secondary)}.admin-status--past_due{color:var(--color-error);background-color:#b43c3c14}.admin-status--past_due .admin-status__dot{background-color:var(--color-error)}.admin-status--default{color:var(--color-accent-warm);background-color:#85754d1a}.admin-status--default .admin-status__dot{background-color:var(--color-accent-warm)}.admin-status--submitted{color:var(--color-success);background-color:#46825014}.admin-status--submitted .admin-status__dot{background-color:var(--color-success)}.admin-status--missing,.admin-status--no_interaction{color:var(--color-warning);background-color:#be8c3214}.admin-status--missing .admin-status__dot,.admin-status--no_interaction .admin-status__dot{background-color:var(--color-warning)}.admin-stat-row{background-color:var(--color-border);border:1px solid var(--color-border);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;display:grid;overflow:hidden}.admin-stat{background-color:var(--color-surface);padding:var(--space-3) var(--space-4);flex-direction:column;gap:4px;display:flex}.admin-stat__label{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.12em;color:var(--color-text-muted);text-transform:uppercase}.admin-stat__value{font-family:var(--font-sans);font-size:var(--font-size-xl);font-weight:var(--weight-semibold);letter-spacing:-.015em;color:var(--color-text);font-variant-numeric:tabular-nums;line-height:1.1}.admin-stat__value--text{font-size:var(--font-size-base);font-weight:var(--weight-medium);letter-spacing:0}.admin-muted{color:var(--color-text-muted)}.admin-record-list{border-block-start:1px solid var(--color-border);flex-direction:column;display:flex}.admin-record-row{gap:var(--space-4);--record-row-first-line:2px;padding:var(--space-5) var(--space-3);border-block-end:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;transition:background-color .14s ease-out;display:grid}.admin-record-row:hover{background-color:#85754d06}.admin-record-row__id{padding-block-start:var(--record-row-first-line)}.admin-record-row__body{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.admin-record-row__title{cursor:pointer;font-family:var(--font-sans);font-size:var(--font-size-lg);font-weight:var(--weight-semibold);letter-spacing:-.015em;color:var(--color-text);text-align:start;background:0 0;border:none;flex-wrap:wrap;align-items:baseline;gap:.6em;padding:0;line-height:1.25;transition:color .14s ease-out;display:inline-flex}.admin-record-row__title:hover,.admin-record-row__title:focus-visible{color:var(--color-accent);outline:none}.admin-record-row__meta{align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-wrap:wrap;display:inline-flex}.admin-record-row__meta-chip{color:var(--color-text-secondary);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:.4em;display:inline-flex}.admin-record-row__meta-chip--mono{color:var(--color-text);white-space:normal;overflow-wrap:anywhere;min-width:0}.admin-record-row__desc{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--leading-body);max-width:70ch;margin:0}.admin-record-row__desc--quote{font-style:italic;font-size:var(--font-size-sm);color:var(--color-text);opacity:.78}.admin-prompt-quote{color:var(--color-accent-warm);font-style:normal;font-weight:var(--weight-semibold);margin:0 .15em}.admin-record-row__actions{align-items:center;gap:var(--space-2);padding-block-start:var(--record-row-first-line);display:inline-flex}@keyframes admin-row-enter{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.admin-record-row--enterable{animation:.26s ease-out backwards admin-row-enter}@media(prefers-reduced-motion:reduce){.admin-record-row--enterable{animation:none}}.admin-default-mark{font-family:var(--font-mono);letter-spacing:.12em;font-size:10.5px;font-weight:var(--weight-medium);color:var(--color-accent-warm);text-transform:uppercase;align-items:center;gap:.15em;margin-inline-start:.15em;display:inline-flex}.admin-button{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:4px;align-items:center;gap:.4em;padding:6px 12px;transition:background-color .14s ease-out,border-color .14s ease-out,color .14s ease-out;display:inline-flex}.admin-button:disabled{opacity:.45;cursor:default}.admin-button--primary{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.admin-button--primary:hover,.admin-button--primary:focus-visible{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);outline:none}.admin-button--ghost{color:var(--color-text);border-color:var(--color-border-strong);background-color:#0000}.admin-button--ghost:hover,.admin-button--ghost:focus-visible{border-color:var(--color-accent-warm);background-color:#85754d0f;outline:none}.admin-button--minimal{color:var(--color-text);background-color:#0000;border-color:#0000;padding:6px 10px}.admin-button--minimal:hover,.admin-button--minimal:focus-visible{color:var(--color-accent);outline:none}.admin-filter-row,.list-controls__filters{align-items:center;gap:var(--space-1);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;align-self:flex-start;padding:3px;display:inline-flex}.admin-filter{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:.5em;padding:5px 12px;transition:background-color .14s ease-out,color .14s ease-out;display:inline-flex}.admin-filter:hover,.admin-filter:focus-visible{color:var(--color-text);outline:none}.admin-filter:has(:focus-visible){outline:2px solid var(--color-accent);outline-offset:1px;color:var(--color-text)}.admin-filter--active{background-color:var(--color-bg);color:var(--color-text);box-shadow:0 1px 2px #0000000a}.admin-filter__label{font-weight:var(--weight-medium)}.admin-filter__count{font-family:var(--font-mono);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:10.5px}.admin-filter--active .admin-filter__count{color:var(--color-accent-warm)}.admin-alert{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-inline-start:2px solid var(--color-warning);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);background-color:#be8c320f;border-radius:6px;display:flex}.admin-alert__icon{color:var(--color-warning);display:inline-flex}.admin-alert strong{font-weight:var(--weight-semibold)}.admin-progress-cell--gradeable{cursor:pointer;font:inherit;border:0;transition:transform .12s ease-out,box-shadow .12s ease-out}.admin-progress-cell--gradeable:hover{transform:translateY(-1px);box-shadow:0 1px 4px #1a1a1a24}.admin-grade-current{font-family:var(--font-mono);font-size:var(--font-size-lg);color:var(--color-text)}.admin-grade-score{align-items:end;gap:var(--space-3);display:flex}.admin-grade-score .admin-form-field{max-width:8rem}.admin-grade-score__of{font-family:var(--font-mono);font-size:var(--font-size-lg);color:var(--color-text-muted);padding-block-end:var(--space-3)}.admin-form-actions--inline{align-items:center;gap:var(--space-3);display:flex}.admin-draft{margin-block:var(--space-6);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-inline-start:2px solid var(--color-accent-warm);background-color:var(--color-surface-raised);border-radius:6px}.admin-draft__result{margin-block-start:var(--space-3)}.admin-draft__score{align-items:baseline;gap:var(--space-3);margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-lg);color:var(--color-text);display:flex}.admin-draft__model{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-size:10.5px}.admin-draft__rationale{margin:0 0 var(--space-4);max-width:68ch;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);line-height:1.6}.admin-grade-history{margin-block-start:var(--space-6)}.admin-test-result-region:empty{display:none}.admin-test-result{padding:var(--space-3) var(--space-4);border-inline-start:2px solid var(--color-accent-warm);background-color:var(--color-surface);border-radius:6px;margin-block-start:var(--space-3)}.admin-test-result--failed{border-inline-start-color:var(--color-error)}.admin-test-result__eyebrow{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin:0 0 var(--space-2);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-size:10.5px;display:flex}.admin-test-result__usage{font-family:var(--font-mono);letter-spacing:.06em}.admin-test-result__body{max-width:68ch;font-family:var(--font-sans);font-size:var(--font-size-sm);white-space:pre-wrap;color:var(--color-text);line-height:1.6}.admin-export-notice{align-items:start;gap:var(--space-2);padding:var(--space-3);background-color:#be8c320f;border-radius:6px;display:flex}.admin-loading{margin:var(--space-5) 0;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-muted)}.admin-empty__title{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);margin:0}.admin-empty__body{margin:var(--space-2) 0 0;max-width:60ch;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.55}.admin-empty__action{margin-block-start:var(--space-4)}.admin-roster-controls{justify-content:space-between;align-items:center;gap:var(--space-4);border-block-end:1px solid var(--color-border);flex-wrap:wrap;margin-block-end:var(--space-4);padding-block-end:var(--space-3);display:flex}.admin-roster-controls__search input{width:min(320px,60vw);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);border-radius:5px}.admin-roster-controls__search input:focus{border-color:var(--color-accent-warm)}.admin-roster-controls__filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-chip{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);cursor:pointer;border-radius:999px;font-size:10.5px;transition:background-color .14s ease-out,border-color .14s ease-out,color .14s ease-out}.admin-chip:hover{border-color:var(--color-accent-warm);color:var(--color-text)}.admin-chip--selected{border-color:var(--color-accent);background-color:var(--color-accent-faint);color:var(--color-accent)}.admin-source-badge{padding:1px var(--space-2);border:1px solid var(--color-border-strong);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;border-radius:999px;align-items:center;font-size:9.5px;display:inline-flex}.admin-roster-row__identity{align-items:center;gap:var(--space-3);display:flex}.admin-avatar{background-color:var(--color-surface);border:1px solid var(--color-border);width:30px;height:30px;font-family:var(--font-mono);letter-spacing:.04em;color:var(--color-text-secondary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:10.5px;display:inline-flex}.admin-roster-cell--role{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.admin-roster-cell--muted{color:var(--color-text-muted)}.admin-roster-status{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:.5em;display:inline-flex}.admin-roster-status:before{content:"";background-color:currentColor;border-radius:50%;width:5px;height:5px}.admin-roster-status--ok{color:var(--color-success)}.admin-roster-status--pending{color:var(--color-accent-warm)}.admin-roster-status--dropped{color:var(--color-text-muted)}.admin-roster-row--dropped th,.admin-roster-row--dropped td{opacity:.55}.admin-file-input{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-file-name{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.admin-accession__summary{margin:var(--space-4) 0 0;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text)}.admin-import-ledger .admin-accession__entry{grid-template-columns:minmax(4.5rem,auto) minmax(10rem,auto) minmax(6rem,auto) minmax(0,1fr)}.admin-import-line{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;font-size:10.5px}@media(max-width:720px){.admin-import-ledger .admin-accession__entry{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}}.admin-accession{padding:var(--space-4) var(--space-5) var(--space-5);border:1px solid var(--color-border);border-inline-start:2px solid var(--color-accent-warm);background-color:var(--color-surface-raised);border-radius:6px;margin-block-end:var(--space-6)}.admin-accession--closed{background:0 0;border:0;margin-block-end:var(--space-5);padding:0}.admin-accession__open{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;border-radius:5px;transition:background-color .14s ease-out,border-color .14s ease-out;display:inline-flex}.admin-accession__open:hover{background-color:var(--color-surface);border-color:var(--color-accent-warm)}.admin-accession__eyebrow{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.admin-accession__label{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text);margin-block-end:var(--space-1);display:block}.admin-accession__hint{margin:0 0 var(--space-3);max-width:68ch;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.55}.admin-accession__hint code{font-family:var(--font-mono);color:var(--color-text);font-size:.92em}.admin-accession__field{width:100%;padding:var(--space-3);border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);resize:vertical;border-radius:5px;line-height:1.7;display:block}.admin-accession__field:focus-within,.admin-accession__field:focus{border-color:var(--color-accent-warm)}.admin-accession__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.admin-accession__submit{padding:var(--space-2) var(--space-4);background-color:var(--color-accent);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:#fff;cursor:pointer;border:0;border-radius:5px;transition:background-color .14s ease-out}.admin-accession__submit:hover:not(:disabled){background-color:var(--color-accent-hover)}.admin-accession__submit:disabled{opacity:.45;cursor:not-allowed}.admin-accession__cap{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-error)}.admin-accession__ledger{margin:var(--space-4) 0 0;border-block-start:1px solid var(--color-border);padding:0;list-style:none}.admin-accession__entry{gap:var(--space-3);padding:var(--space-3) 0;border-block-end:1px solid var(--color-border);grid-template-columns:minmax(6.5rem,auto) minmax(7rem,auto) minmax(0,1fr);align-items:baseline;display:grid}.admin-accession__netid{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);overflow-wrap:anywhere}.admin-accession__outcome{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.admin-accession__outcome:before{content:"";vertical-align:.15em;background-color:currentColor;border-radius:50%;width:5px;height:5px;margin-inline-end:.55em;display:inline-block}.admin-accession__entry--ok .admin-accession__outcome{color:var(--color-success)}.admin-accession__entry--warn .admin-accession__outcome{color:var(--color-warning)}.admin-accession__entry--neutral .admin-accession__outcome{color:var(--color-text-muted)}.admin-accession__detail{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}@media(max-width:640px){.admin-accession__entry{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}}.admin-banner{align-items:start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-inline-start:2px solid var(--color-warning);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);background-color:#be8c320f;border-radius:6px;grid-template-columns:auto 1fr auto;margin-block-end:var(--space-5);display:grid}.admin-banner__icon{color:var(--color-warning);padding-block-start:1px;display:inline-flex}.admin-banner__body{max-width:68ch;margin:0;line-height:1.55}.admin-banner__dismiss{width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background-color .14s ease-out,color .14s ease-out;display:inline-flex}.admin-banner__dismiss:hover{color:var(--color-text);background-color:#85754d14}.admin-submission-row{gap:var(--space-4);padding:var(--space-3);border-block-end:1px solid var(--color-border);grid-template-columns:auto minmax(160px,1.4fr) minmax(140px,1fr) auto auto auto;align-items:center;transition:background-color .14s ease-out;display:grid}.admin-submission-row:hover{background-color:#85754d06}.admin-submission-row--head{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.14em;color:var(--color-text-muted);text-transform:uppercase;padding-block:var(--space-2);background-color:var(--color-surface)}.admin-submission-row--head:hover{background-color:var(--color-surface)}.admin-submission-row__avatar{background-color:var(--color-accent-faint);width:32px;height:32px;color:var(--color-accent);font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--weight-semibold);letter-spacing:.04em;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.admin-submission-row__name{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-submission-row__name-label{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-submission-row__name-id{font-family:var(--font-mono);color:var(--color-text-muted);letter-spacing:.04em;font-size:10px}.admin-submission-row__grid{gap:4px;display:inline-flex}.admin-progress-cell{width:24px;height:24px;font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;cursor:default;border-radius:3px;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-progress-cell:not(:disabled){cursor:pointer}.admin-progress-cell:disabled{opacity:.55}.admin-progress-cell--missing{color:var(--color-text-muted);border:1px dashed var(--color-border-strong);background-color:#7a757014}.admin-progress-cell--in_progress{color:#5b4fab;background-color:#5b4fab1f;border:1px solid #5b4fab4d}.admin-progress-cell--submitted{color:var(--color-success);background-color:#4682501f;border:1px solid #4682504d}.admin-progress-cell--auto{border-style:dashed}.admin-submission-row__conv{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;align-items:center;gap:.4em;display:inline-flex}.admin-submission-row__status{align-items:center;display:inline-flex}.admin-toggle{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-xs);color:var(--color-text-secondary);display:inline-flex}.admin-toggle input{accent-color:var(--color-accent);block-size:.95rem;inline-size:.95rem;cursor:inherit}.admin-toggle input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-toggle__label{font-variant-numeric:tabular-nums;letter-spacing:.02em}.admin-visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-table{border-collapse:collapse;inline-size:100%;margin-block-start:var(--space-4)}.admin-table th,.admin-table td{text-align:start;padding:var(--space-3);border-block-end:1px solid var(--color-border);vertical-align:top}.admin-table thead th{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.admin-table__help{font-size:var(--font-size-xs);text-transform:none;letter-spacing:normal;color:var(--color-text-secondary);margin-block-start:var(--space-1);font-weight:400;display:block}.admin-table tbody th{font-weight:500}.admin-field-error{font-size:var(--font-size-xs);color:var(--color-danger,#b3261e);margin-block-start:var(--space-1);display:block}.admin-link-button{font:inherit;color:var(--color-accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.admin-link-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-link-button--danger:hover,.admin-link-button--danger:focus-visible{color:var(--color-error)}.admin-table__actions{text-align:end;white-space:nowrap}.admin-pending-mark{border:1px solid var(--color-border-strong);font-family:var(--font-mono);font-size:9.5px;font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);vertical-align:.12em;border-radius:3px;margin-inline-start:.5em;padding:.1em .45em;display:inline-block}.admin-submission-row__activity{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);letter-spacing:.04em;text-align:end}.admin-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);color:var(--color-text-muted);text-align:center;flex-direction:column;display:flex}.admin-empty p{font-size:var(--font-size-sm);margin:0}.admin-coming-soon{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;max-width:480px;margin-inline:auto;display:flex}.admin-coming-soon__mark{font-family:var(--font-sans);font-size:var(--font-size-2xl);color:var(--color-accent-warm);line-height:1}.admin-coming-soon__title{font-family:var(--font-sans);font-size:var(--font-size-xl);font-weight:var(--weight-semibold);color:var(--color-text);letter-spacing:-.01em;margin:0}.admin-coming-soon__body{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--leading-body);margin:0}.admin-coming-soon__body code{font-family:var(--font-mono);color:var(--color-accent);background-color:#4b2e830f;border-radius:3px;padding:1px 5px;font-size:.92em}.admin-form{gap:var(--space-5);flex-direction:column;max-width:820px;display:flex}.admin-form-field{gap:var(--space-1);flex-direction:column;display:flex}.admin-form-field>label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant:small-caps;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);display:block}.admin-form-field input[type=text],.admin-form-field input[type=datetime-local],.admin-form-field input[type=password],.admin-form-field input[type=url],.admin-form-field input[type=date],.admin-form-field input[type=email],.admin-form-field input[type=number],.admin-form-field select,.admin-form-field textarea,.admin-form-record input[type=text],.admin-form-record input:not([type]),.admin-form-record select,.admin-form-record textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-input-border);border-radius:var(--radius-sm);background-color:var(--color-surface);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);transition:border-color .14s ease-out,background-color .14s ease-out}.admin-form-field textarea,.admin-form-record textarea{min-height:7.5rem;line-height:var(--leading-body);resize:vertical}.admin-form-record textarea[id$=-solution]{min-height:5.5rem}.admin-form-field input:focus,.admin-form-field select:focus,.admin-form-field textarea:focus,.admin-form-record input:focus,.admin-form-record select:focus,.admin-form-record textarea:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent);background-color:var(--color-bg)}.admin-form-field input[aria-invalid=true]{border-color:var(--color-error)}.admin-form-hint{font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted);margin:0}.admin-form-field__header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.prompt-import{cursor:pointer;display:inline-flex}.prompt-import__face{align-items:center;gap:var(--space-1);padding:.15rem var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);background:0 0;transition:color .12s ease-out,border-color .12s ease-out,background-color .12s ease-out;display:inline-flex}.prompt-import:hover .prompt-import__face{color:var(--color-accent);border-color:var(--color-accent);background-color:var(--color-surface)}.prompt-import:focus-within .prompt-import__face{outline:2px solid var(--color-accent);outline-offset:2px;color:var(--color-accent);border-color:var(--color-accent)}.prompt-import__notice{font-family:var(--font-sans);font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted);border-inline-start:2px solid var(--color-accent);margin:0;padding-inline-start:var(--space-3)}.prompt-import__notice--error{color:var(--color-error);border-inline-start-color:var(--color-error)}.list-controls{gap:var(--space-3);flex-direction:column;margin-block-end:var(--space-4);display:flex}.list-controls__bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.list-controls__search{flex:18rem;align-items:center;max-width:26rem;display:flex;position:relative}.list-controls__search-icon{color:var(--color-text-muted);pointer-events:none;display:inline-flex;position:absolute;inset-inline-start:var(--space-3)}.list-controls__search-input{width:100%;padding:7px var(--space-3) 7px calc(var(--space-3) * 2 + 15px);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;transition:border-color .14s ease-out,box-shadow .14s ease-out}.list-controls__search-input::placeholder{color:var(--color-text-muted)}.list-controls__search-input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.list-controls__search-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.list-controls__search-input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.list-controls__search-clear{width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .14s ease-out,background-color .14s ease-out;display:inline-flex;position:absolute;inset-inline-end:6px}.list-controls__search-clear:hover{color:var(--color-text);background-color:var(--color-bg)}.list-controls__search-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.list-controls__sort{align-items:center;gap:var(--space-2);margin-inline-start:auto;display:inline-flex}.list-controls__sort-label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.list-controls__sort-select{padding:6px var(--space-2);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:6px}.list-controls__sort-select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.list-controls__summary{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.03em;color:var(--color-text-muted);margin:0}.list-empty{padding:var(--space-6) var(--space-5);text-align:center;border:1px dashed var(--color-border);border-radius:8px}.list-empty__title{margin:0 0 var(--space-2);font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--weight-medium);color:var(--color-text)}.list-empty__body{margin:0 0 var(--space-3);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.list-empty__action{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.list-empty__action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(max-width:40rem){.list-controls__search{max-width:none}.list-controls__sort{margin-inline-start:0}}.admin-form-lock{display:contents}.admin-form-lock:disabled input,.admin-form-lock:disabled select,.admin-form-lock:disabled textarea{background-color:var(--color-surface-raised);color:var(--color-text-secondary);cursor:not-allowed}.admin-form-lock:disabled .admin-form-check{cursor:not-allowed}.admin-form-group{padding:var(--space-4) var(--space-5) var(--space-5);border:1px solid var(--color-border);background-color:var(--color-surface-raised);gap:var(--space-4);border-radius:6px;flex-direction:column;margin:0;display:flex}.admin-form-group>legend{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:.5em;padding:0;display:inline-flex}.admin-form-group>legend:before{content:"";background-color:var(--color-accent-warm);border-radius:50%;width:5px;height:5px}.admin-form-check{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.6em;display:grid}.admin-form-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer;margin:0;margin-block-start:1px}.admin-form-check__label{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);line-height:var(--leading-normal)}.admin-form-check__label span{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-start:2px;display:block}.admin-form-record{padding:var(--space-5);border:1px solid var(--color-border);background-color:var(--color-surface-raised);gap:var(--space-4);border-radius:6px;flex-direction:column;margin:0;display:flex;position:relative}.admin-form-record>legend{border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);border-radius:4px;padding:3px 9px}.admin-markdown-preview{padding:var(--space-3) var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);background-color:var(--color-bg);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--leading-body);color:var(--color-text-secondary)}.admin-markdown-preview:empty:before{content:"Preview";font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.admin-markdown-preview>:first-child{margin-block-start:0}.admin-markdown-preview>:last-child{margin-block-end:0}.admin-markdown-preview h1,.admin-markdown-preview h2,.admin-markdown-preview h3,.admin-markdown-preview h4{margin-block:var(--space-4) var(--space-2);font-family:var(--font-sans);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--color-text)}.admin-markdown-preview h1{font-size:var(--font-size-lg)}.admin-markdown-preview h2{font-size:var(--font-size-base)}.admin-markdown-preview h3,.admin-markdown-preview h4{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.admin-markdown-preview p{margin-block:0 var(--space-3)}.admin-markdown-preview ul,.admin-markdown-preview ol{margin-block:0 var(--space-3);padding-inline-start:var(--space-5)}.admin-markdown-preview ul{list-style:outside}.admin-markdown-preview ol{list-style:decimal}.admin-markdown-preview li{margin-block-end:var(--space-1)}.admin-markdown-preview li::marker{color:var(--color-text-muted)}.admin-markdown-preview li>ul,.admin-markdown-preview li>ol{margin-block:var(--space-1) 0}.admin-markdown-preview li>ul{list-style:circle}.admin-markdown-preview strong{font-weight:var(--weight-semibold)}.admin-markdown-preview em{font-style:italic}.admin-markdown-preview blockquote{margin:0 0 var(--space-3);border-inline-start:2px solid var(--color-border-strong);color:var(--color-text-secondary);padding-inline-start:var(--space-4)}.admin-markdown-preview a{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}.admin-markdown-preview hr{margin-block:var(--space-4);border:none;border-block-start:1px solid var(--color-border)}.admin-markdown-preview table{width:100%;margin-block:0 var(--space-3);border-collapse:collapse;font-size:var(--font-size-xs)}.admin-markdown-preview th,.admin-markdown-preview td{padding:var(--space-2) var(--space-3);border-block-end:1px solid var(--color-border);text-align:start;vertical-align:top}.admin-markdown-preview th{font-family:var(--font-mono);font-weight:var(--weight-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.admin-markdown-preview pre{margin-block:0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background-color:var(--color-code-bg);overflow-x:auto}.admin-markdown-preview pre code{font-size:var(--font-size-xs);line-height:var(--leading-code);background:0 0;padding:0}.admin-markdown-preview code{font-family:var(--font-mono);background-color:var(--color-surface);border-radius:3px;padding:1px 4px;font-size:.92em}.admin-form-add{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-form-actions{align-items:center;gap:var(--space-3);border-block-start:1px solid var(--color-border);padding-block-start:var(--space-4);display:flex}.admin-form-record__remove{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-error);align-self:flex-start;transition:border-color .14s ease-out,background-color .14s ease-out}.admin-form-record__remove:hover{border-color:var(--color-error);background-color:#c92a2a0d}.admin-form-actions .btn{padding:var(--space-2) var(--space-5);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background-color:var(--color-accent);font-weight:var(--weight-medium);color:var(--form-action-fg,#fff);transition:background-color .14s ease-out,border-color .14s ease-out}[data-theme=dark] .admin-form-actions .btn{--form-action-fg:var(--raw-text)}.admin-form-actions .btn:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.admin-form-actions .btn:disabled{opacity:.55;cursor:not-allowed}.admin-form-add .btn{padding:var(--space-2) var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:border-color .14s ease-out,color .14s ease-out}.admin-form-add .btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.admin-notice{align-items:flex-start;gap:var(--space-3);max-width:620px;padding:var(--space-6) var(--space-6) var(--space-6) var(--space-8);border:1px solid var(--color-border);background-color:var(--color-surface);font-family:var(--font-sans);--notice-tone:var(--color-error);--notice-tone-wash:#c92a2a0d;--notice-mark-opacity:.07;border-radius:6px;flex-direction:column;display:flex;position:relative;overflow:hidden}.admin-notice:before{content:"";background-color:var(--notice-tone);transform-origin:top;width:3px;animation:.32s cubic-bezier(.16,1,.3,1) both notice-rule;position:absolute;inset-block:0;inset-inline-start:0}.admin-notice:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(45deg,var(--notice-tone) 0,var(--notice-tone) 1px,transparent 1px,transparent 9px);opacity:.07;width:180px;height:58%;position:absolute;inset-block-start:0;inset-inline-end:0;-webkit-mask-image:linear-gradient(200deg,#000,#0000 70%);mask-image:linear-gradient(200deg,#000,#0000 70%)}@keyframes notice-rule{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes notice-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.admin-notice--denied{--notice-tone:var(--color-accent-warm);--notice-tone-wash:#85754d0f;--notice-mark-opacity:.1}.admin-notice__mark{font-family:var(--font-sans);font-size:148px;line-height:1;font-weight:var(--weight-semibold);color:var(--notice-tone);opacity:var(--notice-mark-opacity);pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;inset-block-end:-.3em;inset-inline-end:-.06em}.admin-notice__eyebrow{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase;color:var(--notice-tone);align-items:center;gap:.55em;animation:.34s ease-out 60ms both notice-rise;display:inline-flex}.admin-notice__dot{background-color:var(--notice-tone);border-radius:50%;flex-shrink:0;width:6px;height:6px}.admin-notice__title{font-size:var(--font-size-xl);font-weight:var(--weight-semibold);letter-spacing:-.015em;line-height:var(--leading-tight);color:var(--color-text);margin:0;animation:.34s ease-out .11s both notice-rise}.admin-notice__body{max-width:46ch;font-size:var(--font-size-sm);line-height:var(--leading-body);color:var(--color-text-secondary);margin:0;animation:.34s ease-out .16s both notice-rise}.admin-notice__detail{padding:var(--space-2) var(--space-3);background-color:var(--notice-tone-wash);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-secondary);word-break:break-all;border-radius:4px;margin:0;animation:.34s ease-out .2s both notice-rise}.admin-notice__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-block-start:var(--space-1);animation:.34s ease-out .24s both notice-rise;display:flex}.admin-notice__action{padding:var(--space-2) var(--space-4);border:1px solid var(--color-accent);background-color:var(--color-accent);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--notice-action-fg,#fff);cursor:pointer;border-radius:4px;align-items:center;gap:.5em;transition:background-color .14s ease-out,border-color .14s ease-out,transform .14s ease-out;display:inline-flex}[data-theme=dark] .admin-notice__action{--notice-action-fg:var(--raw-text)}.admin-notice__action:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.admin-notice__action:active{transform:translateY(1px)}.admin-notice__action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-notice__action--ghost{border-color:var(--color-border-strong);color:var(--color-text-secondary);background-color:#0000}.admin-notice__action--ghost:hover{border-color:var(--color-text-secondary);color:var(--color-text);background-color:#0000}.admin-notice__action-glyph{transition:transform .42s cubic-bezier(.16,1,.3,1);display:inline-flex}.admin-notice__action:hover .admin-notice__action-glyph{transform:rotate(360deg)}@media(prefers-reduced-motion:reduce){.admin-notice:before,.admin-notice__eyebrow,.admin-notice__title,.admin-notice__body,.admin-notice__detail,.admin-notice__actions{animation:none}.admin-notice__action-glyph{transition:none}}.admin-field-error{margin:var(--space-1) 0 0;font-family:var(--font-sans);font-size:var(--font-size-xs);color:var(--color-error);align-items:center;gap:.45em;display:flex}.admin-field-error:before{content:"";background-color:var(--color-error);border-radius:50%;flex-shrink:0;width:4px;height:4px}.admin-field-error--multiline{white-space:pre-line;align-items:flex-start}.admin-field-error--multiline:before{margin-block-start:.5em}.admin-record-row__title-static{font-size:var(--font-size-sm);margin:0 0 var(--space-2);color:var(--color-text-primary);font-weight:600}.admin-solution{padding:var(--space-2) var(--space-3);border-inline-start:2px solid var(--color-accent);background:var(--color-surface-subtle,transparent);margin-block-start:var(--space-2)}.admin-solution summary{cursor:pointer;font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:600}.admin-solution summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.admin-subnav{gap:var(--space-4);border-block-end:1px solid var(--color-border);margin-block-end:var(--space-4);display:flex}.admin-subnav__tab{padding-block:var(--space-2);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;border:none;background:0 0;border-block-end:2px solid #0000;margin-block-end:-1px}.admin-subnav__tab:hover,.admin-subnav__tab:focus-visible{color:var(--color-text);outline:none}.admin-subnav__tab--active{color:var(--color-text);border-block-end-color:var(--color-accent-warm)}.admin-knowledge{gap:var(--space-5)}.admin-knowledge__label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-secondary);margin:0}.admin-knowledge__hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.admin-knowledge__mono{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.admin-knowledge__muted{color:var(--color-text-muted);white-space:nowrap}.admin-knowledge__section-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-3);display:flex}.admin-knowledge__empty{padding:var(--space-6) var(--space-4);border:1px dashed var(--color-border-strong);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-radius:4px;margin:0}.admin-knowledge__empty b{color:var(--color-text);font-weight:var(--weight-semibold)}.admin-knowledge__table-wrap{overflow-x:auto}.admin-knowledge__doc-table,.admin-knowledge__uploads-table{font-size:var(--font-size-sm);margin-block-start:0}.admin-knowledge__doc-path{margin-block-start:2px}.admin-knowledge__progress{gap:var(--space-1);flex-direction:column;display:flex}.admin-knowledge__progress-bar{block-size:4px;inline-size:100%;accent-color:var(--color-accent)}.admin-knowledge__strip{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-knowledge__chip{padding:var(--space-1) var(--space-3) var(--space-1) 10px;border:1px solid var(--color-border-strong);background-color:var(--color-bg);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:.5em;font-size:10.5px;display:inline-flex}.admin-knowledge__chip b{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-medium);letter-spacing:0;color:var(--color-text);font-variant-numeric:tabular-nums}.admin-knowledge__chip--button{cursor:pointer;transition:border-color .14s ease-out,color .14s ease-out}.admin-knowledge__chip--button:hover{border-color:var(--color-accent-warm);color:var(--color-text)}.admin-knowledge__chip--button[aria-pressed=true]{border-color:var(--color-accent);background-color:var(--color-accent-faint);color:var(--color-accent)}.admin-knowledge__dot{background-color:var(--color-text-muted);border-radius:50%;block-size:6px;inline-size:6px}.admin-knowledge__chip--ok .admin-knowledge__dot{background-color:var(--color-success)}.admin-knowledge__chip--progress .admin-knowledge__dot{background-color:#5b4fab}.admin-knowledge__chip--warn .admin-knowledge__dot{background-color:var(--color-warning)}.admin-knowledge__strip-sep{background-color:var(--color-border-strong);block-size:18px;inline-size:1px;margin-inline:var(--space-1)}.admin-knowledge__search-field{align-items:center;gap:var(--space-3);block-size:60px;padding-inline:var(--space-4) var(--space-2);border:1px solid var(--color-border);background-color:var(--color-surface);border-radius:8px;transition:border-color .14s ease-out,box-shadow .14s ease-out;display:flex}.admin-knowledge__search-field:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.admin-knowledge__search-field:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.admin-knowledge__search-lead{color:var(--color-text-muted);flex:none}.admin-knowledge__search-input{block-size:100%;min-inline-size:0;font-family:var(--font-sans);font-size:var(--font-size-lg);color:var(--color-text);background:0 0;border:0;outline:0;flex:1}.admin-knowledge__search-input::placeholder{color:var(--color-text-muted)}.admin-knowledge__search-input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.admin-knowledge__uploads-filter::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.admin-knowledge__scope{border:1px solid var(--color-accent);background-color:var(--color-accent-faint);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-accent);white-space:nowrap;border-radius:999px;align-items:center;gap:.4em;padding:3px 6px 3px 10px;display:inline-flex}.admin-knowledge__scope-clear,.admin-knowledge__search-clear{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;padding:4px;display:inline-flex}.admin-knowledge__search-clear{color:var(--color-text-muted)}.admin-knowledge__search-clear:hover,.admin-knowledge__scope-clear:hover{color:var(--color-text);background-color:#85754d1a}.admin-knowledge__search-go{background-color:var(--color-accent);color:#fff;cursor:pointer;border:0;border-radius:4px;flex:none;place-items:center;block-size:44px;inline-size:44px;transition:background-color .14s ease-out;display:grid}.admin-knowledge__search-go:hover,.admin-knowledge__search-go:focus-visible{background-color:var(--color-accent-hover);outline:none}.admin-knowledge__search-hint{gap:var(--space-4);margin:var(--space-2) var(--space-1) 0;font-size:var(--font-size-sm);color:var(--color-text-muted);flex-wrap:wrap;display:flex}.admin-knowledge__search-hint kbd{border:1px solid var(--color-border-strong);background-color:var(--color-surface-raised);font-family:var(--font-mono);color:var(--color-text-secondary);border-block-end-width:2px;border-radius:4px;padding:1px 6px;font-size:11px}.admin-knowledge__body{gap:var(--space-6);grid-template-columns:240px minmax(0,1fr);display:grid}@media(max-width:800px){.admin-knowledge__body{gap:var(--space-4);grid-template-columns:1fr}}.admin-knowledge__rail{border-inline-end:1px solid var(--color-border);min-inline-size:0;padding-inline-end:var(--space-3)}@media(max-width:800px){.admin-knowledge__rail{border-inline-end:0;border-block-end:1px solid var(--color-border);padding-block-end:var(--space-3);padding-inline-end:0}}.admin-knowledge__rail-head{justify-content:space-between;align-items:baseline;margin-block-end:var(--space-2);display:flex}.admin-knowledge__tree,.admin-knowledge__tree-children{margin:0;padding:0;list-style:none}.admin-knowledge__tree-children{border-inline-start:1px solid var(--color-border);margin-inline-start:12px;padding-inline-start:4px}.admin-knowledge__node{border-radius:4px;align-items:center;gap:2px;display:flex}.admin-knowledge__node:hover{background-color:#85754d0f}.admin-knowledge__node--selected{background-color:#85754d1a}.admin-knowledge__chevron{block-size:18px;inline-size:18px;color:var(--color-text-muted);cursor:pointer;border-radius:4px;flex:none;place-items:center;display:grid}.admin-knowledge__chevron svg{transition:transform .14s ease-out}.admin-knowledge__chevron--open svg{transform:rotate(90deg)}.admin-knowledge__chevron--leaf{visibility:hidden;cursor:default}.admin-knowledge__chevron:not(.admin-knowledge__chevron--leaf):hover{background-color:var(--color-border);color:var(--color-text)}.admin-knowledge__folder{min-inline-size:0;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:start;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:.5em;padding:5px 6px 5px 2px;display:flex}.admin-knowledge__node:hover .admin-knowledge__folder,.admin-knowledge__node--selected .admin-knowledge__folder{color:var(--color-text)}.admin-knowledge__node--selected .admin-knowledge__folder{font-weight:var(--weight-medium)}.admin-knowledge__folder:focus-visible{box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-knowledge__folder:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.admin-knowledge__folder:focus-visible{border-radius:4px}.admin-knowledge__folder-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-inline-size:0;overflow:hidden}.admin-knowledge__count{font-family:var(--font-mono);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:11px}.admin-knowledge__count--attention{color:#5b4fab;font-weight:var(--weight-medium)}.admin-knowledge__count--attention:before{content:"● ";vertical-align:1px;font-size:8px}.admin-knowledge__pane{gap:var(--space-8);flex-direction:column;min-inline-size:0;display:flex}.admin-knowledge__crumbs{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);flex-wrap:wrap;gap:2px;margin-block-end:var(--space-2);display:flex}.admin-knowledge__crumb{font:inherit;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:3px;padding:0 2px}.admin-knowledge__crumb:hover{color:var(--color-accent);background-color:var(--color-accent-faint)}.admin-knowledge__crumb--current{color:var(--color-text)}.admin-knowledge__attention{border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.admin-knowledge__attention-list{margin:0;padding:0;list-style:none}.admin-knowledge__attention-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-block-start:1px solid var(--color-border);grid-template-columns:3px minmax(0,1fr) auto auto;display:grid}.admin-knowledge__attention-row:first-child{border-block-start:0}.admin-knowledge__attention-stripe{background-color:#5b4fab;border-radius:2px;block-size:100%;min-block-size:28px;inline-size:3px}.admin-knowledge__attention-row--failed .admin-knowledge__attention-stripe{background-color:var(--color-warning)}.admin-knowledge__attention-body{flex-direction:column;min-inline-size:0;display:flex}.admin-knowledge__attention-name{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-knowledge__attention-reason{font-size:var(--font-size-xs);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-knowledge__attention-foot{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-3);border-block-start:1px solid var(--color-border);background-color:var(--color-surface-raised);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.admin-knowledge__attention-actions{gap:var(--space-2);display:flex}.admin-knowledge__toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-3);display:flex}.admin-knowledge__seg{border:1px solid var(--color-border-strong);background-color:var(--color-surface);border-radius:6px;padding:3px;display:inline-flex}.admin-knowledge__seg button{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:.5em;padding:6px 12px;display:inline-flex}.admin-knowledge__seg button[aria-pressed=true]{background-color:var(--color-bg);color:var(--color-accent);font-weight:var(--weight-medium);box-shadow:0 1px 2px #0000000a}.admin-knowledge__seg-count{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.admin-knowledge__seg button[aria-pressed=true] .admin-knowledge__seg-count{color:var(--color-accent)}.admin-knowledge__sort{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);display:inline-flex}.admin-knowledge__sort select{border:1px solid var(--color-border);background-color:var(--color-surface);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);border-radius:4px;padding:5px 8px}.admin-knowledge__result-list{margin:0;padding:0;list-style:none}.admin-knowledge__result{gap:var(--space-4);padding:var(--space-3);border-block-start:1px solid var(--color-border);border-radius:4px;grid-template-columns:minmax(0,1fr) 120px;display:grid}.admin-knowledge__result--name{padding-block:var(--space-2);grid-template-columns:minmax(0,1fr)}.admin-knowledge__result:first-child{border-block-start:0}.admin-knowledge__result:hover{background-color:#85754d0f}.admin-knowledge__result-main{gap:var(--space-1);flex-direction:column;min-inline-size:0;display:flex}.admin-knowledge__result-open{gap:var(--space-1);font:inherit;color:inherit;text-align:start;cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.admin-knowledge__result-open:focus-visible{box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-knowledge__result-open:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.admin-knowledge__result-open:focus-visible{border-radius:4px}.admin-knowledge__result-title{font-size:var(--font-size-base);font-weight:var(--weight-semibold);color:var(--color-text)}.admin-knowledge__result:hover .admin-knowledge__result-title{color:var(--color-accent)}.admin-knowledge__result-desc{max-inline-size:72ch;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-knowledge__result mark{color:inherit;background-color:#ffc70066;border-radius:2px;padding:0 1px}.admin-knowledge__result-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-knowledge__type{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;background-color:#7a757014;border-radius:999px;padding:3px 9px}.admin-knowledge__result-path{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.admin-knowledge__result-side{align-items:flex-end;gap:var(--space-1);flex-direction:column;display:flex}.admin-knowledge__score{align-items:center;gap:var(--space-2);font-family:var(--font-mono);color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:11px;display:inline-flex}.admin-knowledge__score-bar{background-color:var(--color-border);border-radius:2px;block-size:4px;inline-size:64px;display:inline-block;overflow:hidden}.admin-knowledge__score-bar i{width:var(--score-width);background-color:var(--color-accent-warm);block-size:100%;display:block}.admin-knowledge__show-all{border-block-start:1px solid var(--color-border);justify-content:center;padding-block-start:var(--space-3);display:flex}@media(max-width:800px){.admin-knowledge__result{grid-template-columns:1fr}.admin-knowledge__result-side{flex-direction:row;align-items:center}}.admin-knowledge__uploads{border-block-start:1px solid var(--color-border);padding-block-start:var(--space-4)}.admin-knowledge__uploads-summary{align-items:center;gap:var(--space-3);cursor:pointer;list-style:none;display:flex}.admin-knowledge__uploads-summary::-webkit-details-marker{display:none}.admin-knowledge__uploads[open] .admin-knowledge__uploads-summary .admin-knowledge__chevron svg{transform:rotate(90deg)}.admin-knowledge__uploads-tools{align-items:center;gap:var(--space-3);margin-block:var(--space-4) var(--space-2);flex-wrap:wrap;display:flex}.admin-knowledge__uploads-filter{inline-size:auto;min-inline-size:260px;padding-inline-start:var(--space-3)}.admin-knowledge__pager{font-size:var(--font-size-sm);color:var(--color-text-muted);justify-content:space-between;align-items:center;margin-block-start:var(--space-2);display:flex}.admin-menu{display:inline-flex;position:relative}.admin-menu__trigger{padding:6px 8px}.admin-menu__list{z-index:var(--z-overlay);border:1px solid var(--color-border-strong);background-color:var(--color-bg);border-radius:6px;min-inline-size:260px;padding:6px;position:absolute;inset-block-start:calc(100% + 6px);inset-inline-end:0;box-shadow:0 1px 3px #00000012,0 8px 24px #0000000f}.admin-menu__item{align-items:center;gap:var(--space-3);inline-size:100%;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);text-align:start;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:8px 10px;text-decoration:none;display:flex}.admin-menu__item:hover,.admin-menu__item:focus-visible{background-color:#85754d0f;outline:none}.admin-menu__item:disabled{color:var(--color-text-muted);cursor:default}.admin-menu__item:disabled:hover{background-color:#0000}.admin-menu__icon{color:var(--color-text-muted);display:inline-flex}.admin-menu__hint{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-inline-start:auto}.admin-menu__group{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);padding:6px 10px 2px;font-size:10.5px}.admin-menu__group:not(:first-child){border-block-start:1px solid var(--color-border);margin-block-start:6px;padding-block-start:10px}.admin-knowledge__row-tools{opacity:0;gap:2px;transition:opacity .12s ease-out;display:inline-flex}.admin-knowledge__result:hover .admin-knowledge__row-tools,.admin-knowledge__result:focus-within .admin-knowledge__row-tools,tr:hover .admin-knowledge__row-tools,tr:focus-within .admin-knowledge__row-tools{opacity:1}.admin-knowledge__icon-link{block-size:30px;inline-size:30px;color:var(--color-text-secondary);border:1px solid #0000;border-radius:4px;place-items:center;text-decoration:none;display:inline-grid}.admin-knowledge__icon-link:hover{color:var(--color-text);background-color:#85754d1a}.admin-knowledge__icon-link:focus-visible{box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-knowledge__icon-link:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}@media(prefers-reduced-motion:reduce){.admin-knowledge__row-tools{transition:none}}.admin-knowledge-doc__actions{--document-control-height:36px;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.admin-knowledge-doc__actions>.admin-button,.admin-knowledge-doc__actions .admin-menu__trigger,.admin-knowledge-doc__actions .admin-knowledge-doc__view{box-sizing:border-box;height:var(--document-control-height)}.admin-knowledge-doc__actions .admin-menu__trigger{width:var(--document-control-height);justify-content:center;padding:0}.admin-knowledge-doc__actions .admin-knowledge-doc__view button{padding-block:0}.admin-knowledge-doc__view{border:1px solid var(--color-border-strong);background-color:var(--color-surface);border-radius:6px;padding:3px;display:inline-flex}.admin-knowledge-doc__view button{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;padding:5px 9px;display:inline-flex}.admin-knowledge-doc__view button[aria-pressed=true]{background-color:var(--color-bg);color:var(--color-accent);font-weight:var(--weight-medium);box-shadow:0 1px 2px #0000000a}.admin-knowledge-doc__view button:focus-visible{box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-knowledge-doc__view button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.admin-knowledge-doc__unsaved{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-warning);align-items:center;gap:6px;font-size:11px;display:inline-flex}.admin-knowledge-doc__unsaved:before{content:"";background-color:var(--color-warning);border-radius:50%;block-size:6px;inline-size:6px}.admin-knowledge__instruction{margin-block-start:var(--space-4)}.admin-knowledge__instruction-body{gap:var(--space-3);max-inline-size:72ch;flex-direction:column;margin-block-start:var(--space-4);display:flex}.admin-knowledge__instruction-text{inline-size:100%;padding:var(--space-3);border:1px solid var(--color-border);background-color:var(--color-surface);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text);resize:vertical;border-radius:6px}.admin-knowledge__instruction-text:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent);outline:none}@supports (color:color-mix(in lab,red,red)){.admin-knowledge__instruction-text:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}}.admin-knowledge__instruction-actions{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.admin-knowledge__instruction-actions>span:last-child{gap:var(--space-2);display:inline-flex}.admin-dialog{border:1px solid var(--color-border-strong);background-color:var(--color-bg);inline-size:min(480px,100vw - 32px);color:var(--color-text);border-radius:8px;padding:0;box-shadow:0 1px 3px #00000012,0 16px 48px #00000029}.admin-dialog::backdrop{background-color:#1a1a1a73}.admin-dialog__body{gap:var(--space-4);padding:var(--space-6);flex-direction:column;display:flex}.admin-dialog__title{font-size:var(--font-size-lg);font-weight:var(--weight-semibold);letter-spacing:-.01em;text-wrap:balance;margin:0}.admin-dialog__text{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.admin-dialog__text p{margin:0}.admin-dialog__check{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);display:flex}.admin-dialog__phrase{gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-direction:column;display:flex}.admin-dialog__phrase input{font-family:var(--font-mono);padding-inline-start:var(--space-3)}.admin-dialog__actions{justify-content:flex-end;gap:var(--space-2);display:flex}.admin-button--danger{background-color:var(--color-error);border-color:var(--color-error);color:#fff}.admin-button--danger:hover:not(:disabled),.admin-button--danger:focus-visible{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.admin-button--danger:hover:not(:disabled),.admin-button--danger:focus-visible{background-color:color-mix(in srgb,var(--color-error) 85%,#1a1a1a)}}.admin-button--danger:hover:not(:disabled),.admin-button--danger:focus-visible{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.admin-button--danger:hover:not(:disabled),.admin-button--danger:focus-visible{border-color:color-mix(in srgb,var(--color-error) 85%,#1a1a1a)}}.admin-button--danger:hover:not(:disabled),.admin-button--danger:focus-visible{outline:none}.admin-button--danger:disabled{opacity:.45;cursor:default}.admin-link-button--danger,.admin-menu__item--danger,.admin-menu__item--danger .admin-menu__icon{color:var(--color-error)}.admin-menu__separator{border:0;border-block-start:1px solid var(--color-border);margin:6px 4px}.admin-knowledge__icon-link--danger{cursor:pointer;background:0 0;border:1px solid #0000}.admin-knowledge__icon-link--danger:hover{color:var(--color-error);background-color:#b43c3c14}.admin-knowledge-doc__meta{gap:var(--space-5);margin:var(--space-4) 0;flex-wrap:wrap;padding:0;display:flex}.admin-knowledge-doc__meta>div{flex-direction:column;gap:2px;display:flex}.admin-knowledge-doc__meta dt{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant:small-caps;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.admin-knowledge-doc__meta dd{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);margin:0}.admin-inline-note{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-inline-start:2px solid var(--color-accent-warm);font-family:var(--font-sans);font-size:var(--font-size-xs);color:var(--color-text-secondary);background-color:#b7a57a14}.admin-knowledge-doc__editor{width:100%;min-height:24rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:var(--leading-body);color:var(--color-text);resize:vertical}.admin-knowledge-doc__editor:focus,.admin-knowledge-doc__editor:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent);background-color:var(--color-bg)}.admin-knowledge-doc__preview{min-height:24rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);font-family:var(--font-sans);font-size:var(--font-size-sm);line-height:var(--leading-body);color:var(--color-text)}.admin-knowledge-doc__preview :first-child{margin-block-start:0}.admin-knowledge-doc__links{margin-block-start:var(--space-6)}.admin-knowledge-doc__links h2{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:var(--space-5) 0 var(--space-3)}.admin-knowledge-doc__links h2:first-child{margin-block-start:0}.admin-knowledge-doc__links ul{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-knowledge-doc__links li{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);border-radius:6px;display:flex}.admin-knowledge-doc__links code{font-family:var(--font-mono);font-size:var(--font-size-sm)}.admin-knowledge-doc__broken{font-family:var(--font-mono);font-variant:small-caps;letter-spacing:.04em;color:var(--color-error);background-color:#ff87871f;border-radius:999px;margin-inline-start:auto;padding:1px 6px;font-size:10.5px}.admin-collection-edit{gap:var(--space-5);grid-template-columns:1fr 320px;align-items:start;margin-block-start:var(--space-4);display:grid}.admin-collection-edit__picker{gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:column;margin:0;display:flex}.admin-collection-edit__picker legend{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-block:var(--space-3) var(--space-2);padding:0}.admin-collection-edit__picker legend:first-of-type{margin-block-start:0}.admin-collection-edit__picker label{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);align-items:center;gap:.5em;padding-block:4px;display:flex}.admin-collection-edit__resolved{top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);position:sticky}.admin-collection-edit__resolved h2{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2)}.admin-collection-edit__resolved>p{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text)}.admin-collection-edit__resolved ul{flex-direction:column;gap:2px;max-height:24rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.admin-collection-edit__resolved li{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);word-break:break-all;padding-block:2px}.admin-collections__create{max-width:480px;margin-block:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface)}.admin-collections__create-actions{align-items:center;gap:var(--space-3);display:flex}.alert-dialog{max-width:28rem;width:calc(100% - var(--space-8));padding:var(--space-6);border-radius:var(--radius-lg);background-color:var(--color-surface-raised);color:var(--color-text);border:none;box-shadow:0 8px 32px #00000047}.alert-dialog::backdrop{background-color:#0006}.alert-dialog__title{margin:0 0 var(--space-3) 0;font-family:var(--font-sans);font-size:var(--font-size-lg);font-weight:var(--weight-semibold)}.alert-dialog__description{margin:0 0 var(--space-6) 0;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--leading-body);color:var(--color-text-secondary)}.alert-dialog__description p{margin:0 0 var(--space-3) 0}.alert-dialog__description p:last-child{margin-bottom:0}.alert-dialog__actions{justify-content:flex-end;gap:var(--space-3);display:flex}.response-feedback--flagged{block-size:24px;inline-size:24px;color:var(--color-accent);justify-content:center;align-items:center;display:inline-flex}.response-feedback__form{gap:var(--space-4);flex-direction:column;display:flex}.response-feedback__prompt{margin:0}.response-feedback__reasons{gap:var(--space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.response-feedback__reasons legend{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 var(--space-1) 0;padding:0}.response-feedback__reason-option{align-items:center;gap:var(--space-2);font-size:var(--font-size-base);color:var(--color-text);cursor:pointer;display:flex}.response-feedback__comment-label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.response-feedback__comment{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);resize:vertical}.response-feedback__comment:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.response-feedback__comment-counter{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-block-start:2px;line-height:1.3;display:block}.response-feedback__error{color:var(--color-error);font-size:var(--font-size-sm);margin:0}.admin-scale{align-items:center;gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto;display:grid}.admin-scale__input{width:100%;accent-color:var(--color-accent-warm);cursor:pointer;margin:0}.admin-scale__value{min-width:4ch;font-family:var(--font-mono);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-text);text-align:end}.admin-scale__anchors{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);justify-content:space-between;margin-block-start:var(--space-1);display:flex}.admin-form-check--disabled{cursor:not-allowed;opacity:.55}.admin-form-check--disabled .admin-form-check__label{color:var(--color-text-secondary)}.access-gate{--gate-rail:clamp(30px, 6vw, 88px);grid-template-columns:var(--gate-rail) minmax(0,1fr);padding-block:clamp(48px,11vh,132px) var(--space-8);padding-inline:clamp(20px,5vw,76px) var(--space-6);background-color:var(--color-bg);flex:1;align-content:start;gap:clamp(20px,3vw,48px);display:grid;overflow-y:auto}.access-gate__rail{align-self:stretch;min-height:280px;position:relative}.access-gate__rail:before{content:"";background-image:linear-gradient(to bottom,var(--color-accent-warm) 0%,var(--color-accent-warm) 62%,transparent 100%);transform-origin:top;width:2px;animation:.46s cubic-bezier(.16,1,.3,1) both gate-rule;position:absolute;inset-block:0;inset-inline-end:0}.access-gate__spine{writing-mode:vertical-rl;font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;white-space:nowrap;color:var(--color-accent-warm);opacity:.5;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:500;animation:.62s cubic-bezier(.16,1,.3,1) .12s both gate-rise;position:absolute;inset-block-start:2px;inset-inline-end:18px;transform:rotate(180deg)}.access-gate__body{max-width:60ch;font-family:var(--font-sans)}.access-gate__eyebrow{align-items:center;gap:var(--space-2);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent-warm);margin:0;font-size:11px;font-weight:500;animation:.52s cubic-bezier(.16,1,.3,1) 60ms both gate-rise;display:flex}.access-gate__dot{background-color:var(--color-accent-warm);border-radius:50%;flex:none;width:5px;height:5px}.access-gate__title{max-width:15ch;margin:var(--space-4) 0 0;letter-spacing:-.025em;color:var(--color-text);text-wrap:balance;font-size:clamp(30px,4.6vw,54px);font-weight:600;line-height:1.06;animation:.56s cubic-bezier(.16,1,.3,1) .11s both gate-rise}.access-gate__ledger{border-block-start:1px solid var(--color-border);margin:clamp(28px,4vh,44px) 0 0;animation:.6s cubic-bezier(.16,1,.3,1) .17s both gate-rise}.access-gate__row{gap:var(--space-2) var(--space-5);padding-block:var(--space-4);border-block-end:1px solid var(--color-border);grid-template-columns:minmax(0,12rem) minmax(0,1fr);display:grid}.access-gate__row dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);padding-block-start:2px;font-size:11px;font-weight:500}.access-gate__row dd{font-size:var(--font-size-base);color:var(--color-text);margin:0;line-height:1.5}.access-gate__roles{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.access-gate__roles li{align-items:baseline;gap:.6em;display:flex}.access-gate__roles li:before{content:"·";color:var(--color-accent-warm);font-weight:600}.access-gate__next{max-width:46ch;font-size:var(--font-size-base);color:var(--color-text-secondary);margin:clamp(24px,3.5vh,36px) 0 0;line-height:1.6;animation:.64s cubic-bezier(.16,1,.3,1) .22s both gate-rise}.access-gate__action{border:1px solid var(--color-border-strong);font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;background-color:#0000;border-radius:4px;align-items:center;margin-block-start:clamp(24px,3.5vh,36px);padding:10px 18px;font-weight:500;transition:border-color .14s,background-color .14s;animation:.68s cubic-bezier(.16,1,.3,1) .27s both gate-rise;display:inline-flex}.access-gate__action:hover{border-color:var(--color-accent-warm);background-color:var(--color-surface)}.access-gate__action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes gate-rule{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes gate-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes gate-rise-spine{0%{opacity:0}to{opacity:.5}}.access-gate__spine{animation-name:gate-rise-spine}@media(max-width:640px){.access-gate{--gate-rail:14px;padding-block-start:var(--space-8);padding-inline:var(--space-5) var(--space-5);gap:var(--space-5)}.access-gate__spine{display:none}.access-gate__row{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.access-gate__rail:before,.access-gate__spine,.access-gate__eyebrow,.access-gate__title,.access-gate__ledger,.access-gate__next,.access-gate__action{animation:none}.access-gate__spine{opacity:.5}}.input-group{gap:var(--space-1);flex-direction:column;display:flex}.input-group__label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant:small-caps;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);margin-block-end:var(--space-1);display:block}.input-group__required{color:var(--color-error);margin-inline-start:.2em}.input-group__helper,.input-group__error{font-family:var(--font-sans);font-size:var(--font-size-xs);margin:0}.input-group__helper{color:var(--color-text-muted)}.input-group__error{color:var(--color-error)}.badge--success{color:var(--color-success)}.badge--warning{color:var(--color-warning)}.badge--danger{color:var(--color-error)}.badge--sm{font-size:.6875rem}.badge--md{font-size:var(--font-size-xs)}.spinner{align-items:center;display:inline-flex}.streaming-dot>.spinner--sm{width:5px;height:5px}.streaming-dot>.spinner--md{width:7px;height:7px}.streaming-dot>.spinner--lg{width:9px;height:9px}.btn__loading{margin-inline-end:.3em;animation:1s linear infinite llteacher-spin;display:inline-block}.btn__leading-icon{margin-inline-end:.25em}.btn__trailing-icon{margin-inline-start:.25em}.top-nav__user-chevron{transform:rotate(0)}.top-nav__user-chevron--open{transform:rotate(90deg)}.sidebar__worker-status{opacity:.7}.sidebar__worker-missing{opacity:.5}.admin-record-row,.admin-submission-row{animation-delay:var(--row-delay,0s)}@media(max-width:800px){.page-frame{height:100dvh}.top-nav{padding-inline:var(--space-3)}.top-nav__tag{display:none}.top-nav__breadcrumb{min-width:0;padding-inline:var(--space-2)}.app-shell{flex-direction:column;min-height:0}.app-shell>.sidebar,.app-shell>.tutor-sidebar,.app-shell .student-navigation__detail>.sidebar{width:100%;max-height:20dvh;padding:var(--space-2) var(--space-3);border-inline-end:0;border-block-end:1px solid var(--color-border)}.app-shell>.sidebar--collapsed{max-height:56px}.app-shell>.sidebar--collapsed>:not(.sidebar__top):not(.tutor-sidebar__top){display:none}.app-shell>.sidebar--collapsed .sidebar__top,.app-shell>.sidebar--collapsed .tutor-sidebar__top{margin:0}.sidebar--collapsed .sidebar__collapse-toggle,.sidebar--collapsed .tutor-sidebar__collapse-toggle{gap:var(--space-2);width:100%;min-height:40px}.sidebar--collapsed .sidebar__collapse-toggle:after,.sidebar--collapsed .tutor-sidebar__collapse-toggle:after{content:attr(aria-label)}.conversation-column{min-width:0;min-height:0}.conversation-inner,.admin-inner,.composer-zone{padding-inline:var(--space-3)}.admin-record-row{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr)}.admin-record-row__actions{flex-wrap:wrap;grid-column:2}}.gen-figure{margin-block:var(--space-6);padding:var(--space-5) var(--space-5) var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:opacity .24s ease-out;container-type:inline-size}.gen-figure--partial{opacity:.55}.gen-figure__head{gap:var(--space-1);flex-direction:column;margin-block-end:var(--space-4);display:flex}.gen-figure__kicker{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);display:inline-flex}.gen-figure__kicker:before{content:"";background-color:var(--color-accent-warm);border-radius:1px;width:4px;height:.9em}.gen-figure__title{font-family:var(--font-sans);font-size:var(--font-size-lg);font-weight:var(--weight-semibold);letter-spacing:-.012em;line-height:var(--leading-tight);color:var(--color-text)}.gen-figure__body{border-block:1px solid var(--color-border);padding-block:var(--space-4)}.gen-figure__takeaway{margin:var(--space-3) 0 0;font-size:var(--font-size-base);line-height:var(--leading-normal);color:var(--color-text)}.gen-figure__note{margin:var(--space-2) 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.gen-figure__data{margin-top:var(--space-3);font-size:var(--font-size-sm)}.gen-figure__data summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}.gen-figure__data summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.gen-figure__table-wrap{margin-top:var(--space-2);overflow-x:auto}.gen-figure__table{border-collapse:collapse;font-variant-numeric:tabular-nums;color:var(--color-text)}.gen-figure__table th,.gen-figure__table td{padding:var(--space-1) var(--space-3) var(--space-1) 0;border-bottom:1px solid var(--color-border);text-align:left}.gen-figure__table th{font-weight:var(--weight-medium);color:var(--color-text-secondary)}.gen-figure__table .gen-num{text-align:right}.gen-figure__skeleton{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-muted)}.gen-figure__error{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.gen-legend{gap:var(--space-2) var(--space-4);margin:var(--space-3) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-wrap:wrap;padding:0;list-style:none;display:flex}.gen-legend__item{align-items:center;gap:var(--space-2);display:inline-flex}.gen-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px;display:inline-block}.gen-swatch--1{background-color:var(--viz-1)}.gen-swatch--2{background-color:var(--viz-2)}.gen-swatch--3{background-color:var(--viz-3)}.gen-swatch--4{background-color:var(--viz-4)}.gen-swatch--5{background-color:var(--viz-5)}.gen-svg{width:100%;height:auto;font-family:var(--font-sans);display:block;overflow:visible}.gen-svg text{fill:var(--color-text-secondary);font-size:13px}.gen-svg .gen-svg__label{fill:var(--color-text);font-weight:var(--weight-medium)}.gen-svg .gen-svg__mono{font-family:var(--font-mono);font-size:12px}.gen-svg .gen-svg__axis-title{fill:var(--color-text-muted);font-size:12px}.gen-axis{stroke:var(--color-text-muted);stroke-width:1.25px;fill:none}.gen-grid{stroke:var(--color-border);stroke-width:1px}.gen-guide{stroke:var(--color-text-muted);stroke-width:1px;stroke-dasharray:2 3;fill:none}.gen-line{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.gen-line--1{stroke:var(--viz-1)}.gen-line--2{stroke:var(--viz-2)}.gen-line--3{stroke:var(--viz-3)}.gen-line--4{stroke:var(--viz-4)}.gen-line--5{stroke:var(--viz-5)}.gen-line--before{stroke:var(--color-text-muted);stroke-dasharray:5 4;stroke-width:1.5px}.gen-fill--1{fill:var(--viz-1)}.gen-fill--2{fill:var(--viz-2)}.gen-fill--3{fill:var(--viz-3)}.gen-fill--4{fill:var(--viz-4)}.gen-fill--5{fill:var(--viz-5)}.gen-arrow{stroke:var(--color-text);stroke-width:1.5px;fill:none}.gen-arrowhead{fill:var(--color-text)}.gen-dot{stroke:var(--color-surface);stroke-width:2px}.gen-dot--now{fill:var(--color-text)}.gen-dot--before{fill:var(--color-text-muted)}.gen-node{fill:var(--color-text-secondary)}.gen-branch{stroke:var(--color-text);stroke-width:1.5px;fill:none;stroke-linecap:square}.gen-steps{counter-reset:gen-step;margin:0;padding:0;list-style:none}.gen-steps__item{gap:0 var(--space-3);padding-block:var(--space-3);counter-increment:gen-step;grid-template-columns:2.25rem minmax(0,1fr);display:grid}.gen-steps__item+.gen-steps__item{border-top:1px solid var(--color-border)}.gen-steps__item:before{content:counter(gen-step,decimal-leading-zero);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text-muted);padding-top:.15em}.gen-steps__label{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-steps__expr{margin-top:var(--space-1);padding:var(--space-2) var(--space-3);background-color:var(--color-code-bg);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);white-space:pre;display:block;overflow-x:auto}.gen-steps__why{margin:var(--space-1) 0 0;color:var(--color-text-secondary);line-height:var(--leading-normal)}.gen-steps__result{align-items:baseline;gap:var(--space-2) var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:2px solid var(--color-text);flex-wrap:wrap;display:flex}.gen-steps__result-label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.gen-steps__result-value{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:var(--weight-semibold);color:var(--color-text)}.gen-identity{white-space:normal;word-spacing:.05em}.gen-stats{gap:var(--space-2) var(--space-6);margin:0 0 var(--space-4);flex-wrap:wrap;display:flex}.gen-stat{flex-direction:column;gap:2px;display:flex}.gen-stat dt{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.gen-stat dd{font-size:var(--font-size-lg);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text);margin:0}@container (max-width:460px){.gen-svg text{font-size:17px}.gen-svg .gen-svg__mono,.gen-svg .gen-svg__axis-title{font-size:16px}}.gen-figure--failed{border-style:dashed}@media(prefers-reduced-motion:reduce){.gen-figure{transition:none}}.gen-area-shade{fill:var(--viz-1);opacity:.28}.gen-fill--muted{fill:var(--color-border-strong)}.gen-check{gap:var(--space-3);flex-direction:column;display:flex}.gen-check__options{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.gen-check__option{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);cursor:pointer;grid-template-columns:auto auto minmax(0,1fr);display:grid}.gen-check__option:hover{border-color:var(--color-accent)}.gen-check__option:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.gen-check__option--selected{border-color:var(--color-accent);box-shadow:inset 3px 0 0 var(--color-accent)}.gen-check__options:disabled .gen-check__option{cursor:default}.gen-check__options:disabled .gen-check__option:not(.gen-check__option--selected){color:var(--color-text-secondary)}.gen-check__option input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--color-border-strong);background-color:var(--color-surface);border-radius:50%;place-items:center;width:1rem;height:1rem;margin:0;display:inline-grid}.gen-check__option input[type=radio]:before{content:"";background-color:var(--color-accent);border-radius:50%;width:.5rem;height:.5rem;transform:scale(0)}.gen-check__option input[type=radio]:checked{border-color:var(--color-accent)}.gen-check__option input[type=radio]:checked:before{transform:scale(1)}.gen-check__option input[type=radio]:focus-visible{outline:none}.gen-check__letter{border:1px solid var(--color-border-strong);width:1.6rem;height:1.6rem;font-family:var(--font-mono);font-size:var(--font-size-xs);border-radius:50%;place-items:center;display:inline-grid}.gen-check__option--selected .gen-check__letter{border-color:var(--color-accent);background-color:var(--color-accent);color:var(--color-surface)}.gen-check__text{line-height:var(--leading-normal)}.gen-check__submit{padding:var(--space-2) var(--space-5);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background-color:var(--color-accent);color:var(--color-surface);font:inherit;font-weight:var(--weight-medium);cursor:pointer;align-self:flex-start}.gen-check__submit:disabled{opacity:.45;cursor:not-allowed}.gen-check__submit:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.gen-check__error{font-size:var(--font-size-sm);color:var(--color-error);margin:0}.gen-mosaic__cell{fill-opacity:.22;stroke-width:1.5px}.gen-mosaic__cell--1{fill:var(--viz-1);stroke:var(--viz-1)}.gen-mosaic__cell--2{fill:var(--viz-2);stroke:var(--viz-2)}.gen-mosaic__stats{margin:var(--space-4) 0 0}.gen-roc__area{fill:var(--viz-1);fill-opacity:.1;stroke:none}.gen-timeline__ring{fill:none;stroke:var(--color-text);stroke-width:1.5px}.gen-timeline__ring-key{border:1.5px solid var(--color-text);border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.gen-timeline__neutral{background-color:var(--color-text-secondary)}.gen-timeline__list{margin:var(--space-3) 0 0;font-size:var(--font-size-sm);padding:0;list-style:none}.gen-timeline__item{gap:var(--space-1) var(--space-3);padding-block:var(--space-2);grid-template-columns:7.5rem 7.5rem minmax(0,1fr) auto;align-items:baseline;display:grid}.gen-timeline__item+.gen-timeline__item{border-top:1px solid var(--color-border)}.gen-timeline__time{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;color:var(--color-text-muted);white-space:nowrap}.gen-timeline__cat{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);display:inline-flex}.gen-timeline__event{flex-direction:column;gap:2px;min-width:0;display:flex}.gen-timeline__label{font-weight:var(--weight-medium);color:var(--color-text)}.gen-timeline__detail{color:var(--color-text-secondary)}.gen-timeline__flag{padding:0 var(--space-1);border:1px solid var(--color-text);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);white-space:nowrap;justify-self:start}@container (max-width:460px){.gen-timeline__item{grid-template-columns:auto minmax(0,1fr)}.gen-timeline__event,.gen-timeline__flag{grid-column:1/-1}}.gen-cds{gap:var(--space-3);flex-direction:column;display:flex}.gen-cds__logic{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-secondary);margin:0}.gen-cds__keyword{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-semibold);letter-spacing:.12em;color:var(--color-text);margin-inline-end:var(--space-1)}.gen-cds__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.gen-cds__row{gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:1.5rem minmax(0,1fr) auto;align-items:start;display:grid}.gen-cds__row--missing{border-style:dashed;border-color:var(--color-border-strong)}.gen-cds__mark{border:1.5px solid var(--color-text-muted);width:1.5rem;height:1.5rem;font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.gen-cds__row--met .gen-cds__mark{border-color:var(--color-text);background-color:var(--color-text);color:var(--color-surface)}.gen-cds__row--missing .gen-cds__mark{border-style:dashed}.gen-cds__body{flex-direction:column;gap:2px;min-width:0;display:flex}.gen-cds__label{font-weight:var(--weight-medium);color:var(--color-text)}.gen-cds__expr{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);overflow-wrap:anywhere}.gen-cds__value{font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.gen-cds__result{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);white-space:nowrap;padding-top:.3em}.gen-cds__row--met .gen-cds__result{color:var(--color-text)}.gen-cds__outcome{padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.gen-cds__outcome--fires{border:2px solid var(--color-text)}.gen-cds__outcome--blocked{border-style:dashed}.gen-cds__verdict{font-size:var(--font-size-base);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.gen-cds__tally{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-normal);color:var(--color-text-muted)}.gen-cds__action{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}@container (max-width:460px){.gen-cds__row{grid-template-columns:1.5rem minmax(0,1fr)}.gen-cds__result{grid-column:2;padding-top:0}}.gen-fw-label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-inline-end:var(--space-1)}.gen-fw-aims{flex-direction:column;display:flex}.gen-fw-aims__tally{margin-bottom:var(--space-3)}.gen-fw-aims__grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.gen-fw-aim{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);flex-direction:column;display:flex}.gen-fw-aim--worsens,.gen-fw-aim--mixed{border:2px solid var(--color-text)}.gen-fw-aim--unclear{border-style:dashed}.gen-fw-aim__head{align-items:center;gap:var(--space-2);display:flex}.gen-fw-aim__name{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-fw-aim__def{font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted);margin:0}.gen-fw-aim__effect{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);flex-wrap:wrap;margin:0;display:flex}.gen-fw-aim__mark{border:1.5px solid var(--color-text);width:1.5rem;height:1.5rem;font-size:var(--font-size-sm);letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.gen-fw-aim--improves .gen-fw-aim__mark{background-color:var(--color-text);color:var(--color-surface)}.gen-fw-aim--unclear .gen-fw-aim__mark{border-style:dashed;border-color:var(--color-text-muted)}.gen-fw-aim__flag{padding:0 var(--space-1);border:1px solid var(--color-text);border-radius:var(--radius-sm);font-weight:var(--weight-normal)}.gen-fw-aim__why{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text);margin:0}.gen-fw-aim__measure{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-secondary);margin:0}@container (max-width:460px){.gen-fw-aims__grid{grid-template-columns:minmax(0,1fr)}}.gen-fw-stm{gap:var(--space-3);flex-direction:column;display:flex}.gen-fw-stm__strip{gap:var(--space-1);grid-template-columns:repeat(8,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.gen-fw-stm__cell{justify-content:center;align-items:center;gap:var(--space-1);min-width:1.5rem;min-height:1.5rem;padding:var(--space-1);border:1.5px solid var(--color-text);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text);display:inline-flex}.gen-fw-stm__strip .gen-fw-stm__cell{flex-direction:column;min-height:3rem;display:flex}.gen-fw-stm__cell--contributing{background-color:var(--color-text);color:var(--color-surface)}.gen-fw-stm__cell--none{border-style:dashed;border-color:var(--color-text-muted);color:var(--color-text-muted)}.gen-fw-stm__n,.gen-fw-stm__cell-mark{font-weight:var(--weight-semibold)}.gen-fw-stm__key{margin:0}.gen-fw-stm__list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.gen-fw-stm__row{gap:var(--space-3);padding-block:var(--space-2);grid-template-columns:1.5rem minmax(0,1fr) 8.5rem;align-items:start;display:grid}.gen-fw-stm__row+.gen-fw-stm__row{border-top:1px solid var(--color-border)}.gen-fw-stm__num{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.gen-fw-stm__body{flex-direction:column;gap:2px;min-width:0;display:flex}.gen-fw-stm__name{font-weight:var(--weight-medium);color:var(--color-text)}.gen-fw-stm__def{font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted)}.gen-fw-stm__finding{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text);margin-top:2px}.gen-fw-stm__role{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);white-space:nowrap;padding-top:.15em}.gen-fw-stm__row--contributing .gen-fw-stm__role{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-fw-stm__row--none .gen-fw-stm__name{color:var(--color-text-secondary)}.gen-fw-stm__row--none .gen-fw-stm__role{color:var(--color-text-muted)}@container (max-width:460px){.gen-fw-stm__strip .gen-fw-stm__cell{min-height:2.5rem;padding:2px}.gen-fw-stm__row{gap:var(--space-1) var(--space-3);grid-template-columns:1.5rem minmax(0,1fr)}.gen-fw-stm__role{grid-column:2;padding-top:0}}.gen-fw-dikw{gap:var(--space-3);flex-direction:column;display:flex}.gen-fw-dikw__stairs{align-items:stretch;gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.gen-fw-dikw__step{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background-color:var(--color-surface-raised);border-top-width:3px;flex-direction:column;display:flex}.gen-fw-dikw__step--1{margin-top:var(--space-12);border-top-color:var(--viz-1)}.gen-fw-dikw__step--2{margin-top:var(--space-8);border-top-color:var(--viz-2)}.gen-fw-dikw__step--3{margin-top:var(--space-4);border-top-color:var(--viz-3)}.gen-fw-dikw__step--4{border-top-color:var(--viz-4);margin-top:0}.gen-fw-dikw__level{align-items:center;gap:var(--space-2);display:flex}.gen-fw-dikw__n{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.gen-fw-dikw__name{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-fw-dikw__def{font-size:var(--font-size-xs);line-height:var(--leading-normal);color:var(--color-text-muted)}.gen-fw-dikw__example{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text)}.gen-fw-dikw__action{padding:var(--space-3);border:2px solid var(--color-text);border-radius:var(--radius-sm);font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text);margin:0}@container (max-width:460px){.gen-fw-dikw__stairs{grid-template-columns:minmax(0,1fr)}.gen-fw-dikw__step--1{margin:0}.gen-fw-dikw__step--2{margin:0 0 0 var(--space-3)}.gen-fw-dikw__step--3{margin:0 0 0 var(--space-6)}.gen-fw-dikw__step--4{margin:0 0 0 var(--space-8)}}.gen-sy-legend{margin:0 0 var(--space-3)}.gen-sy-glyph{text-align:center;min-width:1em;font-size:var(--font-size-xs);color:var(--color-text-secondary);display:inline-block}.gen-sy-flow+.gen-sy-flow{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.gen-sy-flow__head{align-items:baseline;gap:0 var(--space-2);font-size:var(--font-size-base);font-weight:var(--weight-semibold);color:var(--color-text);flex-wrap:wrap;margin:0;display:flex}.gen-sy-flow__label{font-weight:var(--weight-normal);color:var(--color-text-secondary)}.gen-sy-flow__label:before{content:"· "}.gen-sy-flow__stats{gap:var(--space-2) var(--space-5);margin:var(--space-2) 0 var(--space-3)}.gen-sy-flow__stats dd{font-size:var(--font-size-base)}.gen-sy-scroll{overflow-x:auto}.gen-sy-lanes{column-gap:var(--space-2);display:grid}.gen-sy-roles--1{grid-template-columns:repeat(1,minmax(0,1fr))}.gen-sy-roles--2{grid-template-columns:repeat(2,minmax(0,1fr))}.gen-sy-roles--3{grid-template-columns:repeat(3,minmax(0,1fr))}.gen-sy-roles--4{grid-template-columns:repeat(4,minmax(0,1fr))}.gen-sy-roles--5{grid-template-columns:repeat(5,minmax(0,1fr))}.gen-sy-roles--6{grid-template-columns:repeat(6,minmax(0,1fr))}.gen-sy-n--1{grid-template-rows:auto repeat(1,auto)}.gen-sy-n--2{grid-template-rows:auto repeat(2,auto)}.gen-sy-n--3{grid-template-rows:auto repeat(3,auto)}.gen-sy-n--4{grid-template-rows:auto repeat(4,auto)}.gen-sy-n--5{grid-template-rows:auto repeat(5,auto)}.gen-sy-n--6{grid-template-rows:auto repeat(6,auto)}.gen-sy-n--7{grid-template-rows:auto repeat(7,auto)}.gen-sy-n--8{grid-template-rows:auto repeat(8,auto)}.gen-sy-n--9{grid-template-rows:auto repeat(9,auto)}.gen-sy-n--10{grid-template-rows:auto repeat(10,auto)}.gen-sy-n--11{grid-template-rows:auto repeat(11,auto)}.gen-sy-n--12{grid-template-rows:auto repeat(12,auto)}.gen-sy-n--13{grid-template-rows:auto repeat(13,auto)}.gen-sy-n--14{grid-template-rows:auto repeat(14,auto)}.gen-sy-n--15{grid-template-rows:auto repeat(15,auto)}.gen-sy-n--16{grid-template-rows:auto repeat(16,auto)}.gen-sy-n--17{grid-template-rows:auto repeat(17,auto)}.gen-sy-n--18{grid-template-rows:auto repeat(18,auto)}.gen-sy-n--19{grid-template-rows:auto repeat(19,auto)}.gen-sy-n--20{grid-template-rows:auto repeat(20,auto)}.gen-sy-lane--1{grid-column:1}.gen-sy-lane--2{grid-column:2}.gen-sy-lane--3{grid-column:3}.gen-sy-lane--4{grid-column:4}.gen-sy-lane--5{grid-column:5}.gen-sy-lane--6{grid-column:6}.gen-sy-at--1{grid-row:2}.gen-sy-at--2{grid-row:3}.gen-sy-at--3{grid-row:4}.gen-sy-at--4{grid-row:5}.gen-sy-at--5{grid-row:6}.gen-sy-at--6{grid-row:7}.gen-sy-at--7{grid-row:8}.gen-sy-at--8{grid-row:9}.gen-sy-at--9{grid-row:10}.gen-sy-at--10{grid-row:11}.gen-sy-at--11{grid-row:12}.gen-sy-at--12{grid-row:13}.gen-sy-at--13{grid-row:14}.gen-sy-at--14{grid-row:15}.gen-sy-at--15{grid-row:16}.gen-sy-at--16{grid-row:17}.gen-sy-at--17{grid-row:18}.gen-sy-at--18{grid-row:19}.gen-sy-at--19{grid-row:20}.gen-sy-at--20{grid-row:21}.gen-sy-band{border-radius:var(--radius-sm);grid-row:1/-1}.gen-sy-band.gen-sy-lane--1,.gen-sy-band.gen-sy-lane--3,.gen-sy-band.gen-sy-lane--5{background-color:var(--color-bg)}.gen-sy-lane{padding:var(--space-2) var(--space-2) var(--space-1);border-bottom:1px solid var(--color-border-strong);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);overflow-wrap:anywhere;grid-row:1;align-self:end}.gen-sy-steps{margin:0;padding:0;list-style:none;display:contents}.gen-sy-step{align-self:start;gap:var(--space-1);min-width:0;margin:var(--space-1) var(--space-1) 0;padding:var(--space-2);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--font-size-xs);line-height:var(--leading-tight);border-left-width:4px;flex-direction:column;display:flex;position:relative}.gen-sy-step:last-child{margin-bottom:var(--space-1)}.gen-sy-kind--1{border-left-color:var(--viz-1)}.gen-sy-kind--2{border-left-color:var(--viz-2)}.gen-sy-kind--3{border-left-color:var(--viz-3)}.gen-sy-kind--4{border-left-color:var(--viz-4)}.gen-sy-kind--5{border-left-color:var(--viz-5)}.gen-sy-step__top{align-items:baseline;gap:var(--space-2);display:flex}.gen-sy-step__num{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.gen-sy-step__role{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.gen-sy-step__action{font-size:var(--font-size-xs);color:var(--color-text);overflow-wrap:anywhere}.gen-sy-step__meta{gap:2px var(--space-2);font-family:var(--font-mono);color:var(--color-text-secondary);flex-wrap:wrap;font-size:.6875rem;display:flex}.gen-sy-step__kind{align-items:baseline;gap:2px;display:inline-flex}.gen-sy-step__min{font-variant-numeric:tabular-nums}.gen-sy-step__handoff{padding-top:var(--space-1);border-top:1px dashed var(--color-border-strong);color:var(--color-text-secondary);font-size:.6875rem}.gen-sy-map{gap:var(--space-5);flex-direction:column;display:flex}.gen-sy-cat,.gen-sy-exchange{gap:var(--space-2);flex-direction:column;display:flex}.gen-sy-cat__head{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin:0;display:flex}.gen-sy-std{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);border-left-width:4px}.gen-sy-std--1{border-left-color:var(--viz-1)}.gen-sy-std--2{border-left-color:var(--viz-2)}.gen-sy-std--3{border-left-color:var(--viz-3)}.gen-sy-std__head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.gen-sy-std__name{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-sy-std__count{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.gen-sy-std__about{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.gen-sy-std__steward{font-weight:var(--weight-medium);color:var(--color-text)}.gen-sy-std__list{margin:var(--space-2) 0 0;padding:0;list-style:none}.gen-sy-el{gap:var(--space-1) var(--space-4);padding-block:var(--space-2);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);line-height:var(--leading-normal);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);display:grid}.gen-sy-el__name{color:var(--color-text)}.gen-sy-el__code{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.gen-sy-el__value{padding:0 var(--space-1);background-color:var(--color-code-bg);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);overflow-wrap:anywhere}.gen-sy-el__display{color:var(--color-text-secondary)}.gen-sy-el__caveat{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.gen-sy-exchange{padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.gen-sy-exchange__line{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.gen-sy-tl-legend{margin:0 0 var(--space-3)}.gen-sy-tl__key{border:2px solid var(--color-text-muted);border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.gen-sy-tl__key--hi{border-color:var(--color-text);background-color:var(--color-text)}.gen-sy-tl__key--local{border-color:var(--color-text-secondary);border-style:dashed;border-radius:2px}.gen-sy-tl{margin:0;padding:0;list-style:none}.gen-sy-tl__decade+.gen-sy-tl__decade{margin-top:var(--space-3)}.gen-sy-tl__decade-head{padding-bottom:var(--space-1);border-bottom:1px solid var(--color-border);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--weight-semibold);letter-spacing:.04em;color:var(--color-text);margin:0}.gen-sy-tl__empty{margin:var(--space-2) 0 0 calc(3rem + var(--space-3));font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.gen-sy-tl__list{margin:0;padding:0;list-style:none}.gen-sy-tl__item{column-gap:var(--space-3);grid-template-columns:3rem minmax(0,1fr);display:grid}.gen-sy-tl__year{padding-top:var(--space-2);text-align:right;font-family:var(--font-mono);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.gen-sy-tl__body{min-width:0;padding:var(--space-2) 0 var(--space-2) var(--space-4);border-left:2px solid var(--color-border-strong);flex-direction:column;align-items:flex-start;gap:2px;display:flex;position:relative}.gen-sy-tl__body:before{content:"";top:calc(var(--space-2) + .3em);box-sizing:border-box;border:2px solid var(--color-text-muted);background-color:var(--color-surface);border-radius:50%;width:12px;height:12px;position:absolute;left:-7px}.gen-sy-tl__item--hi .gen-sy-tl__body:before,.gen-sy-tl__item--all .gen-sy-tl__body:before{border-color:var(--color-text);background-color:var(--color-text)}.gen-sy-tl__item--local .gen-sy-tl__body:before{border-style:dashed;border-color:var(--color-text-secondary);border-radius:2px}.gen-sy-tl__label{font-size:var(--font-size-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.gen-sy-tl__item--hi .gen-sy-tl__label{font-weight:var(--weight-semibold);color:var(--color-text)}.gen-sy-tl__item--all .gen-sy-tl__label{color:var(--color-text)}.gen-sy-tl__item--local .gen-sy-tl__label{padding:var(--space-1) var(--space-2);border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text)}.gen-sy-tl__cat{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);display:inline-flex}.gen-sy-tl__local{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-style:italic}@container (max-width:460px){.gen-sy-scroll{overflow:visible}.gen-sy-lanes{display:block}.gen-sy-band,.gen-sy-lane{display:none}.gen-sy-steps{gap:var(--space-2);flex-direction:column;display:flex}.gen-sy-step{font-size:var(--font-size-sm);align-self:stretch;margin:0}.gen-sy-step__role{clip-path:none;white-space:normal;width:auto;height:auto;font-weight:var(--weight-semibold);color:var(--color-text);position:static;overflow:visible}.gen-sy-step__action{font-size:var(--font-size-sm)}.gen-sy-step__meta,.gen-sy-step__handoff{font-size:var(--font-size-xs)}.gen-sy-el{grid-template-columns:minmax(0,1fr)}.gen-sy-tl__item{column-gap:var(--space-3);grid-template-columns:2.75rem minmax(0,1fr)}.gen-sy-tl__empty{margin-left:calc(2.75rem + var(--space-3))}.gen-sy-flow__label{flex-basis:100%}.gen-sy-flow__label:before{content:none}}.gen-ms-median{stroke:var(--color-text-secondary);stroke-width:1.5px;fill:none}.gen-ms-median--ext{stroke-dasharray:6 4}.gen-ms-ring{fill:none;stroke:var(--color-text);stroke-width:1.5px}.gen-ms-bracket{fill:none;stroke:var(--color-text-secondary);stroke-width:1.25px}.gen-ms-key-median,.gen-ms-key-change{border-top:1.5px solid var(--color-text-secondary);flex-shrink:0;width:16px;height:0;display:inline-block}.gen-ms-key-change{border-top:1.5px dotted var(--color-text-muted)}.gen-ms-key-ring{border:1.5px solid var(--color-text);border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.gen-ms-mean{stroke:var(--color-text);stroke-width:2px}.gen-ms-subhead{margin:var(--space-4) 0 var(--space-2);font-size:var(--font-size-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.gen-ms-reached{fill:var(--viz-1);fill-opacity:.35;stroke:none}.gen-ms-unreached{fill:var(--color-border);fill-opacity:.5;stroke:none}.gen-ms-curve{fill:none;stroke:var(--color-text-secondary);stroke-width:1.5px}.gen-ms-boundary{stroke:var(--color-surface);stroke-width:1.5px}.gen-ms-now{stroke:var(--color-text);stroke-width:1.5px}.gen-ms-cats{gap:var(--space-1);margin:var(--space-3) 0 0;font-size:var(--font-size-sm);flex-direction:column;padding:0;list-style:none;display:flex}.gen-ms-cat{gap:var(--space-1) var(--space-3);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:minmax(0,9rem) minmax(0,1fr) auto;align-items:baseline;display:grid}.gen-ms-cat__name{font-weight:var(--weight-medium);color:var(--color-text)}.gen-ms-cat__share{font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.gen-ms-cat__status{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);white-space:nowrap}.gen-ms-cat--next{border:2px solid var(--color-text)}.gen-ms-cat--next .gen-ms-cat__status,.gen-ms-cat--adopted .gen-ms-cat__status{color:var(--color-text)}.gen-ms-cat--ahead{border-style:dashed}@container (max-width:460px){.gen-ms-cat{grid-template-columns:minmax(0,1fr) auto}.gen-ms-cat__share{grid-area:2/1/auto/-1}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}
