@import"https://fonts.googleapis.com/css2?family=Inter:wght@400..600&display=swap";.ui-infotip__host{display:block;min-width:0}.ui-infotip__host:focus-visible{outline:1px solid var(--primary);outline-offset:2px}.ui-infotip{position:fixed;z-index:1200;pointer-events:none;max-width:300px;padding:var(--s2) var(--s3);border-radius:8px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-lg);color:var(--ink);font-size:var(--t-sm);line-height:var(--lh);text-align:left;white-space:normal}.ui-infotip__meta svg{flex:0 0 auto;margin-top:2px}.ui-infotip__meta{display:flex;align-items:flex-start;gap:4px;margin-top:4px;color:var(--muted)}.ui-infotip__title{font-weight:500}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);border:1px solid transparent;border-radius:var(--radius);background:var(--sheet);color:var(--ink);font-family:var(--font-body);font-weight:var(--w-em);line-height:1;white-space:nowrap;cursor:pointer;transition:transform var(--dur-press) var(--ease-out),background-color .1s var(--ease-out),border-color .1s var(--ease-out),color .1s var(--ease-out)}.ui-btn:not(:disabled):active{transform:scale(.98)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{cursor:default;opacity:.35}.ui-btn--sm{--ui-btn-pad: var(--s3);min-height:30px;padding:0 calc(var(--ui-btn-pad) - 1px);font-size:var(--t-sm);border-radius:7px}.ui-btn--md{--ui-btn-pad: 14px;min-height:36px;padding:0 calc(var(--ui-btn-pad) - 1px);font-size:var(--t-ui)}.ui-btn--lg{--ui-btn-pad: var(--s5);min-height:44px;padding:0 calc(var(--ui-btn-pad) - 1px);font-size:var(--t-base);border-radius:10px}.ui-btn--full{width:100%}.ui-btn--primary{background:var(--ink);color:var(--on-primary);font-weight:var(--w-strong)}@media (hover: hover){.ui-btn--primary:not(:disabled):hover{background:color-mix(in oklab,var(--ink),black 45%)}}.ui-btn--secondary{--ui-btn-pad: var(--s3);background:transparent;color:var(--ink-2)}@media (hover: hover){.ui-btn--secondary:not(:disabled):hover{background:var(--hover);color:var(--ink)}}.ui-field .ui-btn--secondary,form .ui-btn--secondary{box-shadow:inset 0 0 0 1px var(--line-strong)}.ui-btn--danger{background:var(--danger);color:var(--on-primary)}@media (hover: hover){.ui-btn--danger:not(:disabled):hover{background:var(--danger-strong)}}.ui-btn--ghost{background:transparent;color:var(--muted)}@media (hover: hover){.ui-btn--ghost:not(:disabled):hover{background:var(--hover);color:var(--ink)}}.ui-btn-why{display:inline-flex;align-items:baseline;gap:8px;min-height:36px;padding-top:7px;font-size:var(--t-ui);line-height:var(--lh);color:var(--muted);text-align:left;white-space:normal}.ui-btn-why:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--act);transform:translateY(-1px)}.ui-btn-why--full{width:100%}.ui-btn__icon{display:inline-flex;align-items:center;font-size:1.05em}.ui-btn__spinner{width:1em;height:1em;border:1.5px solid currentColor;border-right-color:transparent;border-radius:var(--radius-pill);animation:ui-btn-spin .7s linear infinite}@keyframes ui-btn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ui-btn:not(:disabled):active{transform:none}.ui-btn__spinner{animation-duration:1.6s}}.ui-card{background:var(--sheet);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.ui-card--tint{background:var(--paper);border-color:transparent}.ui-card--interactive{cursor:pointer}@media (hover: hover){.ui-card--interactive:hover{border-color:var(--line-strong)}}.ui-card__header{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--s3);padding:var(--s4) var(--s5) 0;background:transparent}.ui-card__header-text{flex:1 1 12rem;min-width:0;overflow-wrap:anywhere}.ui-card__title{font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-base);line-height:var(--lh-tight);margin:0;color:var(--ink)}.ui-card__subtitle{margin:var(--s1) 0 0;font-size:var(--t-sm);font-weight:400;color:var(--muted)}.ui-card__header-actions{display:flex;align-items:center;gap:var(--s2);flex:0 0 auto}.ui-card__body{padding:var(--s5)}.ui-card__footer{display:flex;align-items:center;gap:var(--s2);padding:var(--s3) var(--s5);border-top:1px solid var(--line-soft);background:transparent}@media (max-width: 560px){.ui-card__header,.ui-card__body,.ui-card__footer{padding-left:var(--s4);padding-right:var(--s4)}}.ui-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-weight:var(--w-body);font-size:var(--t-sm);line-height:var(--lh);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.ui-badge__dot{width:6px;height:6px;border-radius:50%;flex:0 0 auto;background:var(--draft)}.ui-badge--warn .ui-badge__dot{background:var(--act)}.ui-badge--success .ui-badge__dot{background:var(--ok)}.ui-badge--danger .ui-badge__dot{background:var(--danger)}.ui-badge--soft{min-width:20px;justify-content:center;padding:0 6px;border-radius:var(--radius-pill);font-size:var(--t-xs);font-weight:var(--w-strong)}.ui-badge--soft.ui-badge--warn{background:var(--warn-tint);color:var(--act-ink)}.ui-badge--soft.ui-badge--danger{background:var(--danger-tint);color:var(--danger-strong)}.ui-section__head{display:flex;align-items:baseline;gap:var(--s2);margin-bottom:var(--s3)}.ui-section__title{margin:0;font-family:var(--font-body);font-size:var(--t-base);font-weight:var(--w-strong)}.ui-section__action{margin-left:auto;display:flex;align-items:center;gap:var(--s2)}.ui-section__action>.ui-btn--ghost:last-child,.ui-page-header__actions .ui-btn--ghost:last-child{margin-inline-end:calc(-1 * var(--ui-btn-pad, 0px))}.ui-stack{display:flex;flex-direction:column;gap:var(--ui-gap, var(--s4))}.ui-row{display:flex;flex-direction:row;align-items:var(--ui-align, center);justify-content:var(--ui-justify, flex-start);gap:var(--ui-gap, var(--s3))}.ui-row--wrap{flex-wrap:wrap}.ui-grid{display:grid;grid-template-columns:repeat(var(--ui-cols, 2),minmax(0,1fr));gap:var(--ui-gap, var(--s4))}.ui-section{margin-bottom:var(--s6)}.ui-section:last-child{margin-bottom:0}.ui-page-header{display:flex;flex-direction:column;margin-bottom:var(--s5);padding:0}.ui-page-header__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s2) var(--s3);min-height:34px;margin-bottom:var(--s3)}.ui-page-header__status{min-width:0;font-size:var(--t-ui);color:var(--ink-2)}.ui-page-header__actions{display:flex;align-items:center;gap:var(--s1)}.ui-page-header__text{display:flex;flex-direction:column;min-width:0}.ui-page-header__eyebrow{font-family:var(--font-body);font-weight:var(--w-body);font-size:var(--t-sm);line-height:var(--lh);color:var(--muted);margin-bottom:6px}.ui-page-header__title{font-family:var(--font-serif);font-weight:var(--w-title);font-size:var(--t-display);line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--ink);min-width:0;overflow-wrap:break-word}.ui-page-header__subtitle{margin:var(--s2) 0 0;max-width:68ch;font-size:var(--t-ui);line-height:var(--lh);font-weight:var(--w-body);color:var(--muted)}.ui-sec{display:flex;align-items:center;gap:10px;margin:var(--s5) 0 var(--s2);font-family:var(--font-body);font-size:var(--t-sm);font-weight:var(--w-body);line-height:1;color:var(--muted)}.ui-sec:first-child{margin-top:0}.ui-sec__count{font-variant-numeric:tabular-nums;color:var(--muted)}.ui-sec__rule{flex:1;height:1px;background:var(--line)}.ui-sec__action{flex:none}.ui-stack>.ui-page-header,.tq-page>.ui-page-header{margin-bottom:calc(var(--s5) - var(--ui-gap, var(--s4)))}.ui-divider{border:0;border-top:1px solid var(--line);margin:var(--s4) 0}.ui-divider--vertical{border-top:0;border-left:1px solid var(--line);align-self:stretch;margin:0 var(--s2);height:auto}@media (max-width: 720px){.ui-grid{grid-template-columns:1fr}}.ui-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--s1);padding:var(--s7) var(--s5);border-radius:var(--radius-lg)}@media (max-width: 560px){.ui-empty{padding:var(--s6) var(--s4)}}.ui-empty--error{background:var(--danger-tint)}.ui-empty__icon{font-size:var(--t-h1);line-height:1;color:var(--muted);margin-bottom:var(--s2)}.ui-empty__title{font-family:var(--font-body);font-weight:var(--w-body);font-size:var(--t-base);margin:0;color:var(--ink)}.ui-empty__hint{margin:0;max-width:42ch;font-size:var(--t-ui);font-weight:400;color:var(--muted)}.ui-empty__actions{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s3)}.ui-field{display:block;margin-bottom:var(--s4)}.ui-field:last-child{margin-bottom:0}.ui-field__label{display:block;font-family:var(--font-body);font-weight:500;font-size:var(--t-sm);color:var(--ink-2);margin-bottom:var(--s1);line-height:var(--lh-tight)}.ui-field__req{color:var(--danger);margin-left:2px}.ui-field__hint{font-size:var(--t-xs);color:var(--muted);margin-top:var(--s1);line-height:var(--lh)}.ui-field__error{font-family:var(--font-body);font-weight:500;font-size:var(--t-xs);color:var(--danger);margin-top:var(--s1);line-height:var(--lh)}.ui-input,.ui-textarea{width:100%;font-family:var(--font-body);font-size:var(--t-ui);font-weight:400;color:var(--ink);background:var(--sheet);border:1px solid var(--line-strong);border-radius:var(--radius);padding:var(--s2) var(--s3);line-height:var(--lh);transition:border-color var(--dur-hover) var(--ease-out);-moz-appearance:none;appearance:none;-webkit-appearance:none}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--muted);opacity:1}.ui-textarea.ui-textarea--auto{resize:none;overflow:hidden;min-height:calc(1.4em + 2 * var(--s2) + 4px)}.ui-input:focus,.ui-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--primary-tint)}.ui-input:disabled,.ui-textarea:disabled{background:var(--surface-tint);color:var(--muted);cursor:not-allowed;box-shadow:none}.ui-input:read-only:not(:disabled),.ui-textarea:read-only:not(:disabled){background:var(--paper);border-color:transparent;color:var(--ink);resize:none;cursor:default}.ui-input:read-only:not(:disabled):focus,.ui-textarea:read-only:not(:disabled):focus{border-color:var(--accent)}.ui-input--invalid,.ui-textarea--invalid{border-color:var(--danger)}.ui-input--invalid:focus,.ui-textarea--invalid:focus{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-tint)}.ui-textarea{min-height:96px;resize:vertical}.ui-input--number{font-variant-numeric:tabular-nums}.ui-checkbox{display:inline-flex;align-items:flex-start;gap:var(--s2);cursor:pointer;font-family:var(--font-body);font-size:var(--t-ui);color:var(--ink);line-height:var(--lh)}.ui-checkbox--disabled{cursor:not-allowed;color:var(--muted)}.ui-checkbox__box{flex:0 0 auto;width:18px;height:18px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-press) var(--ease-out),background-color var(--dur-hover) var(--ease-out);margin-top:1px}.ui-checkbox__native{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.ui-checkbox__native:focus-visible+.ui-checkbox__box{box-shadow:0 0 0 3px var(--primary-tint);border-color:var(--accent)}.ui-checkbox__native:checked+.ui-checkbox__box{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.ui-checkbox__check{width:12px;height:12px;display:block;opacity:0;transition:opacity .08s ease}.ui-checkbox__native:checked+.ui-checkbox__box .ui-checkbox__check{opacity:1}.ui-checkbox--disabled .ui-checkbox__box{background:var(--surface-tint)}.ui-radiogroup{display:flex;flex-direction:column;gap:var(--s2)}.ui-radiogroup--row{flex-direction:row;flex-wrap:wrap;gap:var(--s3)}.ui-radio{display:inline-flex;align-items:flex-start;gap:var(--s2);cursor:pointer;font-family:var(--font-body);font-size:var(--t-ui);color:var(--ink);line-height:var(--lh)}.ui-radio--disabled{cursor:not-allowed;color:var(--muted)}.ui-radio__dot{flex:0 0 auto;width:18px;height:18px;border:1px solid var(--line-strong);border-radius:9999px;background:var(--surface);display:inline-flex;align-items:center;justify-content:center;margin-top:1px}.ui-radio__native{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.ui-radio__native:focus-visible+.ui-radio__dot{box-shadow:0 0 0 3px var(--primary-tint);border-color:var(--accent)}.ui-radio__native:checked+.ui-radio__dot:after{content:"";width:8px;height:8px;border-radius:9999px;background:var(--primary)}.ui-radio--disabled .ui-radio__dot{background:var(--surface-tint)}.md-editor{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color var(--dur-hover) var(--ease-out)}.md-editor:focus-within{border-color:var(--primary, var(--ink));box-shadow:0 0 0 3px var(--primary-tint, rgba(0, 0, 0, .06))}.md-editor--invalid{border-color:var(--danger)}.md-editor--loading{min-height:4.5em}.md-editor__content{min-height:4.5em;padding:var(--s3);outline:none;font:inherit;color:var(--ink)}.md-editor:focus-within .md-editor__content{font-size:.9em}.md-editor .md-editor__content:focus-visible{outline:none}.md-editor__content.ProseMirror{white-space:pre-wrap}.md-editor__content p{margin:0 0 var(--s2)}.md-editor__content p:last-child{margin-bottom:0}.md-editor__content ul,.md-editor__content ol{margin:0 0 var(--s2);padding-left:1.4em}.md-editor__content ul:last-child,.md-editor__content ol:last-child{margin-bottom:0}.md-editor__content li{margin:2px 0}.md-editor__content li>p{margin:0}.md-editor__content p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;color:var(--muted)}.md-editor__bar{display:flex;align-items:center;gap:var(--s1)}.md-editor__bubble{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:var(--radius-menu);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-lg)}.md-editor__tool{display:inline-grid;place-items:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;transition:background .1s ease,color .1s ease}@media (hover: hover){.md-editor__tool:hover{background:var(--surface-strong);color:var(--ink)}}.md-editor__tool--active{background:var(--ink);color:var(--surface)}@media (hover: hover){.md-editor__tool--active:hover{background:var(--ink);color:var(--surface)}}.md-editor__bubble-divider{width:1px;height:18px;margin:0 2px;background:var(--line)}.ui-select2{position:relative;display:block;width:100%}.ui-select2__trigger{display:flex;align-items:center;gap:var(--s2);width:100%;min-height:38px;text-align:left;font-family:var(--font-body);font-size:var(--t-ui);font-weight:400;color:var(--ink);background:var(--sheet);border:1px solid var(--line-strong);border-radius:var(--radius);padding:var(--s2) var(--s3);cursor:pointer;transition:background-color .1s var(--ease-out),border-color .1s var(--ease-out),box-shadow .1s var(--ease-out)}@media (hover: hover){.ui-select2__trigger:not(:disabled):hover{background:var(--surface-tint)}}.ui-select2--open .ui-select2__trigger:not(:disabled),.ui-select2__trigger:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--primary-tint)}.ui-select2__trigger:disabled{cursor:not-allowed;background:var(--surface-tint);color:var(--muted);box-shadow:none;transform:none}.ui-select2__trigger--invalid{border-color:var(--danger)}.ui-select2__body{flex:1 1 auto;min-width:0;display:flex;align-items:center}.ui-select2__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select2__placeholder{color:var(--muted);opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select2__chevron{flex:0 0 auto;color:currentColor;transition:transform .12s ease}.ui-select2--open .ui-select2__chevron{transform:rotate(180deg)}.ui-select2__chips{display:flex;flex-wrap:wrap;gap:var(--s1)}.ui-select2__chip{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-body);font-weight:500;font-size:var(--t-xs);line-height:1;color:var(--ink);background:var(--surface-tint);border-radius:var(--radius-pill);padding:3px 4px 3px 8px}.ui-select2__chip-label{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select2__chip-x{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:var(--radius-pill);color:var(--ink);cursor:pointer}@media (hover: hover){.ui-select2__chip-x:hover{background:var(--primary);color:var(--on-primary)}}.ui-select2__panel{position:fixed;z-index:1001;max-height:260px;overflow-y:auto;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-menu);box-shadow:var(--shadow-lg);padding:var(--s1);transform-origin:top center;animation:ui-select-pop var(--dur-pop) var(--ease-out)}@keyframes ui-select-pop{0%{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion: reduce){.ui-select2__panel{animation:ui-select-fade .12s linear}@keyframes ui-select-fade{0%{opacity:0}}}.ui-select2__empty{padding:var(--s2) var(--s3);font-size:var(--t-sm);color:var(--muted)}.ui-select2__note{position:sticky;bottom:calc(var(--s1) * -1);z-index:1;margin:var(--s1) calc(var(--s1) * -1) calc(var(--s1) * -1);padding:var(--s2) var(--s3);background:var(--sheet);border-top:1px solid var(--line-soft);color:var(--muted);font-size:var(--t-xs);line-height:var(--lh);font-weight:500}.ui-select2__search-wrap{position:sticky;top:0;z-index:1;padding:var(--s1);background:transparent;border-bottom:1px solid var(--line-soft)}.ui-select2__search{width:100%;min-height:34px;box-sizing:border-box;border:1px solid var(--line);border-radius:calc(var(--radius) - 4px);padding:var(--s1) var(--s2);color:var(--ink);font:inherit}.ui-select2__search:focus{outline:none;border-color:var(--accent)}.ui-select2__option{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s2);border-radius:calc(var(--radius-menu) - var(--s1));font-size:var(--t-ui);font-weight:400;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.ui-select2__option+.ui-select2__option{margin-top:2px}.ui-select2__option--active{background:#0000000d}.ui-select2__option--selected{font-weight:500}.ui-select2__option--disabled{color:var(--muted);opacity:.5;cursor:not-allowed}.ui-select2__option-copy{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.ui-select2__option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-select2__option-description{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:normal;color:var(--muted);font-size:var(--t-xs);line-height:var(--lh-tight);font-weight:400}.ui-select2__mark{flex:0 0 auto;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--primary-strong)}.ui-select2__box{width:18px;height:18px;border:1px solid var(--line-strong);border-radius:5px;background:var(--sheet);display:inline-flex;align-items:center;justify-content:center}.ui-select2__box--on{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.ui-tabs{display:flex;flex-direction:column;gap:var(--s4)}.ui-tablist{display:flex;flex-wrap:wrap;gap:var(--s4)}.ui-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-family:var(--font-body);font-weight:500;font-size:var(--t-ui);line-height:var(--lh-tight);cursor:pointer;transition:color .1s var(--ease-out)}@media (hover: hover){.ui-tab:hover:not(:disabled):not(.ui-tab--active){color:var(--ink)}}.ui-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.ui-tab:disabled{opacity:.4;cursor:not-allowed}.ui-tab--active{color:var(--ink);border-bottom-color:var(--ink)}.ui-tab__count{font-size:var(--t-xs);font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}.ui-tabpanel{outline:none}.ui-tabpanel[hidden]{display:none}.ui-segmented{display:inline-flex;align-items:stretch;gap:2px;padding:3px;background:var(--surface-tint);border-radius:10px}.ui-segmented--block{display:flex;width:100%}.ui-segmented__option{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1 1 auto;white-space:nowrap;font-family:var(--font-body);font-weight:500;font-size:var(--t-sm);color:var(--muted);background:transparent;border:0;border-radius:7px;padding:5px var(--s3);cursor:pointer;line-height:var(--lh-tight);display:inline-flex;align-items:center;justify-content:center;gap:var(--s1)}@media (hover: hover){.ui-segmented__option:hover:not(:disabled):not(.ui-segmented__option--active){color:var(--ink)}}.ui-segmented__option:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ui-segmented__option:disabled{opacity:.4;cursor:not-allowed}.ui-segmented__option--active{background:var(--sheet);color:var(--ink);box-shadow:0 1px 2px #00000014}.ui-segmented__icon{display:inline-flex;font-size:.9em}.ui-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:var(--s6) var(--s4);overflow-y:auto;overscroll-behavior:contain;background:#15151538;animation:ui-modal-fade var(--dur-pop) var(--ease-out)}@keyframes ui-modal-fade{0%{opacity:0}}.ui-modal__panel{position:relative;width:100%;max-width:520px;margin:auto;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-menu);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:100%;animation:ui-modal-pop var(--dur-pop) var(--ease-out)}@keyframes ui-modal-pop{0%{transform:scale(.96);opacity:0}}.ui-modal--sm{max-width:400px}.ui-modal--lg{max-width:720px}.ui-modal__header{display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s4) var(--s5) 0}.ui-modal__title{flex:1;margin:0;padding-top:4px;font-family:var(--font-body);font-weight:var(--w-strong);font-size:var(--t-lead);line-height:var(--lh-tight);color:var(--ink)}.ui-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:var(--radius);cursor:pointer;color:var(--muted);transition:background-color .1s var(--ease-out),color .1s var(--ease-out),transform var(--dur-press) var(--ease-out);line-height:1}@media (hover: hover){.ui-modal__close:hover{background:var(--hover);color:var(--ink)}}.ui-modal__close:active{transform:scale(.96)}.ui-modal__body{padding:var(--s4) var(--s5) var(--s5);overflow-y:auto;color:var(--ink);font-size:var(--t-ui);line-height:var(--lh-read)}.ui-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--s2);padding:var(--s3) var(--s5) var(--s4);border-top:1px solid var(--line-soft)}@media (max-width: 560px){.ui-modal__overlay{padding:var(--s3)}.ui-modal__header,.ui-modal__body,.ui-modal__footer{padding-left:var(--s4);padding-right:var(--s4)}}@media (prefers-reduced-motion: reduce){.ui-modal__panel{animation:ui-modal-fade .12s linear}}:root{--fold-ms: .24s}.ui-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--fold-ms) var(--ease-move)}.ui-fold--open{grid-template-rows:1fr;transition-timing-function:var(--ease-out)}.ui-fold__in{min-height:0;min-width:0;overflow:clip;opacity:0;transform:translateY(-4px);transition:opacity var(--fold-ms) var(--ease-move),transform var(--fold-ms) var(--ease-move)}.ui-fold--open>.ui-fold__in{opacity:1;transform:none;transition-timing-function:var(--ease-out)}.ui-fold--settled>.ui-fold__in{overflow:visible}.ui-fold-chevron{transition:transform var(--fold-ms) var(--ease-out)}.ui-fold-chevron--closed{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.ui-fold,.ui-fold-chevron{transition:none}.ui-fold__in,.ui-fold--open>.ui-fold__in{transform:none;transition:opacity .12s linear}}.ui-disclosure__summary{display:inline-flex;align-items:center;gap:var(--s1);padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.ui-collapsing{display:flex;flex-direction:column;min-width:0;--collapsing-bar-height: 0px;--collapsing-cluster-width: 0px;--collapsing-gutter: var(--s3)}.ui-collapsing__pin{position:sticky;top:0;z-index:30;height:0;overflow:visible;pointer-events:none}.ui-collapsing__bar{display:flex;align-items:center;gap:var(--s3);min-width:0;padding:var(--s2) var(--collapsing-gutter);border-bottom:var(--border-width) solid transparent;background:transparent}.ui-collapsing__bar--collapsed{border-bottom-color:var(--line);background:var(--surface);box-shadow:0 6px 12px -10px #0000002e;pointer-events:auto}.ui-collapsing__compact{flex:0 1 auto;min-width:0;visibility:hidden;pointer-events:auto}.ui-collapsing__bar--collapsed .ui-collapsing__compact{visibility:visible}.ui-collapsing__cluster{display:flex;align-items:center;flex:0 0 auto;margin-left:auto;gap:calc(var(--s3) * 2);pointer-events:auto}.ui-collapsing__center{display:flex;align-items:center;min-width:0}.ui-collapsing__actions{display:flex;align-items:center;flex:0 0 auto;gap:var(--s2)}.ui-collapsing__large{padding:var(--s3) var(--collapsing-gutter) var(--s4);padding-right:calc(var(--collapsing-cluster-width) + var(--s4) + var(--collapsing-gutter));background:var(--surface)}.ui-collapsing__large--collapsed{visibility:hidden}.ui-collapsing__eyebrow{margin:0 0 var(--s1);color:var(--muted);font-size:var(--t-sm);font-weight:400}.ui-collapsing__title{display:flex;min-width:0;margin:0;font-size:inherit;font-weight:inherit}.ui-collapsing__subtitle{margin:var(--s1) 0 0;color:var(--muted);font-size:var(--t-sm);font-weight:400}.ui-collapsing__flow{display:flex;flex-direction:column;min-width:0}@media (max-width: 560px){.ui-collapsing{--collapsing-gutter: var(--s2)}.ui-collapsing__large{order:0;padding-right:var(--collapsing-gutter)}.ui-collapsing__pin{order:1;height:auto;pointer-events:auto}.ui-collapsing__flow{order:2}.ui-collapsing__bar{flex-wrap:wrap;gap:var(--s2)}.ui-collapsing__compact{flex:1 1 0%;order:1}.ui-collapsing__cluster{display:contents}.ui-collapsing__actions{order:2;margin-left:auto}.ui-collapsing__center{order:3;flex:1 0 100%}.ui-collapsing__large{padding:var(--s2) var(--collapsing-gutter) var(--s3)}}.ui-switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;display:inline-flex;align-items:center;padding:0;background:none;border:none;cursor:pointer}.ui-switch--disabled{cursor:not-allowed}.ui-switch__track{position:relative;display:inline-flex;align-items:center;width:36px;height:22px;border-radius:var(--radius-pill);background:var(--line-strong);transition:background-color .12s var(--ease-out)}.ui-switch__knob{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:var(--radius-pill);background:var(--sheet);box-shadow:0 1px 2px #0000002e;transition:transform var(--dur-move) var(--ease-move)}.ui-switch--on .ui-switch__track{background:var(--primary)}.ui-switch--on .ui-switch__knob{transform:translate(14px)}.ui-switch:focus-visible{outline:none}.ui-switch:focus-visible .ui-switch__track{box-shadow:0 0 0 2px var(--sheet),0 0 0 4px var(--accent)}.ui-switch--disabled .ui-switch__track{opacity:.45}@media (prefers-reduced-motion: reduce){.ui-switch__knob{transition:none}}.ui-switch-row{display:inline-flex;align-items:flex-start;gap:var(--s3);cursor:pointer}.ui-switch-row--disabled{cursor:not-allowed}.ui-switch-row__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ui-switch-row__label{font-family:var(--font-body);font-weight:500;font-size:var(--t-base);color:var(--ink)}.ui-switch-row__hint{font-size:var(--t-sm);color:var(--muted)}.ui-switch-row>.ui-switch{flex:0 0 auto;margin-top:1px}.ui-datepicker{position:relative;display:block;width:100%}.ui-datepicker__control{display:flex;align-items:center;width:100%;min-height:38px;background:var(--sheet);border:1px solid var(--line-strong);border-radius:var(--radius);transition:background-color .1s var(--ease-out),box-shadow .1s var(--ease-out),border-color .1s var(--ease-out)}@media (hover: hover){.ui-datepicker__control:not(.ui-datepicker__control--disabled):hover{background:var(--surface-tint)}}.ui-datepicker--open .ui-datepicker__control:not(.ui-datepicker__control--disabled){border-color:var(--accent);box-shadow:0 0 0 3px var(--primary-tint)}.ui-datepicker__control:has(.ui-datepicker__trigger:focus-visible){border-color:var(--accent);box-shadow:0 0 0 3px var(--primary-tint)}.ui-datepicker__control--disabled{background:var(--surface-tint);box-shadow:none;transform:none}.ui-datepicker__control--invalid{border-color:var(--danger)}.ui-datepicker__trigger{display:flex;align-items:center;gap:var(--s2);flex:1 1 auto;min-width:0;text-align:left;font-family:var(--font-body);font-size:var(--t-ui);font-weight:500;color:var(--ink);background:transparent;border:0;border-radius:var(--radius);padding:var(--s2) var(--s3);cursor:pointer}.ui-datepicker__trigger:focus-visible{outline:none}.ui-datepicker__trigger:disabled{cursor:not-allowed;color:var(--muted)}.ui-datepicker__icon{flex:0 0 auto;color:var(--primary-strong)}.ui-datepicker__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-datepicker__value--empty{color:var(--muted);opacity:.75}.ui-datepicker__clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:var(--s2);padding:0;background:transparent;border:0;border-radius:var(--radius-pill);color:var(--muted);cursor:pointer}@media (hover: hover){.ui-datepicker__clear:hover{background:var(--primary);color:var(--on-primary)}}.ui-datepicker__clear:focus-visible{outline:1px solid var(--primary);outline-offset:1px}.ui-datepicker__panel{position:fixed;z-index:1001;width:268px;max-width:calc(100vw - var(--s4) * 2);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-menu);box-shadow:var(--shadow-lg);padding:var(--s3);transform-origin:top left;animation:ui-datepicker-pop var(--dur-pop) var(--ease-out)}@keyframes ui-datepicker-pop{0%{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion: reduce){.ui-datepicker__panel{animation:ui-datepicker-fade .12s linear}@keyframes ui-datepicker-fade{0%{opacity:0}}}.ui-datepicker__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);margin-bottom:var(--s2)}.ui-datepicker__month{font-family:var(--font-display);font-weight:500;font-size:var(--t-ui);color:var(--ink)}.ui-datepicker__nav{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:transparent;border:0;border-radius:var(--radius);color:var(--muted);cursor:pointer;transition:background-color .1s var(--ease-out),color .1s var(--ease-out)}@media (hover: hover){.ui-datepicker__nav:hover{background:var(--hover);color:var(--ink)}}.ui-datepicker__nav:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ui-datepicker__weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}.ui-datepicker__weekday{text-align:center;font-family:var(--font-display);font-size:var(--t-xs);font-weight:500;color:var(--muted);padding:4px 0}.ui-datepicker__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ui-datepicker__day{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;aspect-ratio:1;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:var(--t-sm);font-weight:500;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;font-variant-numeric:tabular-nums;transition:background-color .1s var(--ease-out),color .1s var(--ease-out)}@media (hover: hover){.ui-datepicker__day:hover{background:var(--hover)}}.ui-datepicker__day:focus-visible{outline:none;border-color:var(--primary-strong)}.ui-datepicker__day--outside{color:var(--muted);opacity:.45}.ui-datepicker__day--today{border-color:var(--line-strong)}.ui-datepicker__day--selected{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}@media (hover: hover){.ui-datepicker__day--selected:hover{background:var(--primary);color:var(--on-primary)}}.ui-datepicker__day--active{outline:1px solid var(--primary-strong);outline-offset:0;z-index:1}.ui-datepicker__dot{display:block;width:5px;height:5px;border-radius:var(--radius-pill);background:var(--danger)}.ui-datepicker__day .ui-datepicker__dot{position:absolute;bottom:3px;left:50%;transform:translate(-50%);pointer-events:none}.ui-datepicker__day--selected .ui-datepicker__dot{background:var(--on-primary)}.ui-datepicker__note{display:flex;align-items:flex-start;gap:var(--s1);margin:var(--s2) 0 0;padding-top:var(--s2);border-top:1px solid var(--line-soft);color:var(--muted);font-size:var(--t-xs);line-height:var(--lh);min-height:2.7em}.ui-datepicker__note .ui-datepicker__dot{flex:0 0 auto;margin-top:6px}.ui-datepicker__note-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.ui-datepicker__time{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line-soft)}.ui-datepicker__time-label{font-family:var(--font-display);font-size:var(--t-xs);font-weight:500;color:var(--muted)}.ui-datepicker__time-field{display:inline-flex;align-items:stretch;margin-right:auto;overflow:hidden;background:var(--sheet);border:1px solid var(--line-strong);border-radius:var(--radius)}.ui-datepicker__time-unit{width:34px;min-width:0;text-align:center;font-family:var(--font-body);font-size:var(--t-ui);font-weight:500;color:var(--ink);background:transparent;border:0;padding:6px 0}.ui-datepicker__time-unit:focus-visible{outline:none;background:var(--primary-tint)}.ui-datepicker__time-sep{display:flex;align-items:center;font-family:var(--font-body);font-size:var(--t-ui);font-weight:500;color:var(--ink)}.ui-datepicker__time-steps{display:flex;flex-direction:column;border-left:var(--border)}.ui-datepicker__time-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;flex:1 1 0;width:22px;padding:0;background:var(--surface-tint);border:0;color:var(--ink);cursor:pointer}.ui-datepicker__time-step+.ui-datepicker__time-step{border-top:1px solid var(--line)}@media (hover: hover){.ui-datepicker__time-step:hover{background:var(--primary-tint)}}.ui-datepicker__time-step:focus-visible{outline:none;background:var(--primary);color:var(--on-primary)}.ui-datepicker__done{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;font-family:var(--font-body);font-weight:500;font-size:var(--t-sm);color:var(--on-primary);background:var(--ink);border:0;border-radius:var(--radius);padding:6px var(--s3);cursor:pointer;transition:transform var(--dur-press) var(--ease-out),background-color .1s var(--ease-out)}@media (hover: hover){.ui-datepicker__done:hover{background:color-mix(in oklab,var(--ink),black 45%)}}.ui-datepicker__done:active{transform:scale(.98)}.ui-datepicker__footer{display:flex;align-items:stretch;gap:var(--s1);flex-direction:column;margin-top:var(--s2);padding-top:var(--s2);border-top:1px solid var(--line-soft)}.ui-datepicker__footer>button{display:flex;align-items:center;min-height:32px;padding:var(--s1) var(--s2);border-radius:var(--radius);text-align:left}.ui-datepicker__panel-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-size:var(--t-xs);font-weight:500}@media (hover: hover){.ui-datepicker__panel-action:hover{background:var(--primary-tint)}}.ui-datepicker__panel-action:focus-visible{outline:1px solid var(--primary);outline-offset:1px}.ui-datepicker__clear-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--t-xs);font-weight:500;color:var(--danger);padding:var(--s1) var(--s2);border-radius:var(--radius)}@media (hover: hover){.ui-datepicker__clear-btn:hover{background:var(--danger-tint)}}.ui-datepicker__clear-btn:focus-visible{outline:1px solid var(--danger);outline-offset:1px}.ui-banner{position:relative;display:flex;align-items:flex-start;gap:var(--s3);padding:0;font-size:var(--t-ui);line-height:var(--lh);color:var(--ink-2)}.ui-banner__icon{position:absolute;left:0;top:calc(var(--lh) * .5em - 3px);width:6px;height:6px;border-radius:50%;background:var(--draft)}.ui-banner--warn .ui-banner__icon{background:var(--act)}.ui-banner--success .ui-banner__icon{background:var(--ok)}.ui-banner__main{flex:1;min-width:0}.ui-banner:not(.ui-banner--danger):has(>.ui-banner__icon) .ui-banner__main{padding-left:14px}.ui-banner__title{display:inline;margin:0 6px 0 0;font-weight:var(--w-em);color:var(--ink)}.ui-banner__body{display:inline;color:var(--muted)}.ui-banner__body>:first-child{display:inline}.ui-banner__body>p:last-child{margin-bottom:0}.ui-banner__actions{display:flex;gap:var(--s2);margin-top:var(--s2)}.ui-banner--danger{padding:var(--s3) var(--s4);border-radius:var(--radius);background:var(--danger-tint)}.ui-banner--danger .ui-banner__icon{position:static;flex:none;margin-top:calc(var(--lh) * .5em - 3px);background:var(--danger)}.ui-banner--danger .ui-banner__title{color:var(--danger-strong)}.ui-banner--danger .ui-banner__body{color:var(--ink-2)}.ui-banner__dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;cursor:pointer;color:var(--muted);margin-top:-1px}@media (hover: hover){.ui-banner__dismiss:hover{background:var(--hover);color:var(--ink)}}.ui-table-scroll{overflow-x:auto;max-height:calc(100dvh - 2 * var(--s6));background:var(--sheet)}.ui-table{border-collapse:collapse;width:100%;font-size:var(--t-ui);color:var(--ink);font-variant-numeric:tabular-nums}.ui-table th,.ui-table td{border-bottom:1px solid var(--line-soft);padding:var(--s2) var(--s3);text-align:left;vertical-align:middle}.ui-table tr:last-child td{border-bottom:none}.ui-table th:first-child,.ui-table td:first-child{padding-left:0}.ui-table th:last-child,.ui-table td:last-child{padding-right:0}.ui-table thead th{font-family:var(--font-body);font-weight:500;font-size:var(--t-sm);background:var(--sheet);color:var(--muted);border-bottom-color:var(--line);position:sticky;top:0;z-index:2}@media (hover: hover){.ui-table--hover tbody tr:hover td{background:var(--blue-faint)}}.ui-th--num,.ui-td--num{text-align:right;font-variant-numeric:tabular-nums}.ui-th--center,.ui-td--center{text-align:center}.ui-table--sticky-first th:first-child,.ui-table--sticky-first td:first-child{position:sticky;left:0;z-index:1;background:var(--sheet);box-shadow:inset -1px 0 0 var(--line)}.ui-table--sticky-first thead th:first-child{z-index:3}.ui-cell-edit{padding:0}.ui-cell-edit__input{width:100%;min-width:56px;border:none;background:transparent;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink);padding:var(--s2) var(--s3);text-align:center;outline:none}.ui-cell-edit__input:focus{background:var(--primary-tint);box-shadow:inset 0 0 0 1px var(--accent)}.ui-cell-edit__input:disabled{color:var(--muted);cursor:not-allowed}.ui-cell-edit--dirty .ui-cell-edit__input{background:var(--warn-tint)}.ui-cell-edit--saved .ui-cell-edit__input{background:var(--success-tint)}@media (max-width: 560px){.ui-table th,.ui-table td{padding:var(--s2)}}.ui-slider{display:flex;align-items:center;gap:var(--s3)}.ui-slider--ticked{align-items:flex-start}.ui-slider__main{flex:1;min-width:0}.ui-slider__input{width:100%;min-width:0;accent-color:var(--primary);cursor:pointer;height:20px}.ui-slider__legend{position:relative;height:1.15em;margin-top:1px}.ui-slider__legend-tick{position:absolute;transform:translate(-50%);font-size:var(--t-xs);font-weight:400;font-variant-numeric:tabular-nums;color:var(--muted)}.ui-slider--ticked .ui-slider__value{margin-top:-2px}.ui-slider__value{flex:0 0 auto;min-width:34px;text-align:center;font-family:var(--font-body);font-weight:500;font-size:var(--t-sm);font-variant-numeric:tabular-nums;color:var(--ink);padding:2px var(--s1)}.ui-spinner{display:inline-block;box-sizing:border-box;border-style:solid;border-color:var(--line);border-top-color:var(--ink-2);border-radius:var(--radius-pill);animation:ui-spin .8s linear infinite;vertical-align:middle;flex:0 0 auto}.ui-spinner--sm{width:14px;height:14px;border-width:1.5px}.ui-spinner--md{width:20px;height:20px;border-width:2px}.ui-spinner--lg{width:28px;height:28px;border-width:2px}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-loading{display:flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--s5);color:var(--muted)}.ui-loading--block{flex-direction:column;gap:var(--s3);padding:var(--s6)}.ui-loading__label{font-family:var(--font-body);font-weight:400;font-size:var(--t-ui);color:var(--muted)}@media (prefers-reduced-motion: reduce){.ui-spinner{animation-duration:1.6s}}.ui-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:var(--radius);background:var(--rail-soft);color:var(--ink-2);font-family:var(--font-body);font-weight:var(--w-strong);line-height:1;overflow:hidden;-webkit-user-select:none;user-select:none}.ui-avatar--round{border-radius:var(--radius-pill)}.ui-avatar--xs{width:24px;height:24px;font-size:var(--t-xs)}.ui-avatar--sm{width:32px;height:32px;font-size:var(--t-xs)}.ui-avatar--md{width:40px;height:40px;font-size:var(--t-ui)}.ui-avatar--lg{width:56px;height:56px;font-size:var(--t-lead)}.ui-avatar__img{width:100%;height:100%;object-fit:cover;display:block}.ui-avatar--accent{background:var(--primary-tint);color:var(--primary-strong)}.ui-avatar--success{background:var(--success-tint);color:var(--success)}.ui-avatar--info{background:var(--info-tint);color:var(--info)}.ui-avatar--neutral{background:var(--surface-tint);color:var(--ink)}.img-gallery{--img-gap: 4px;width:100%;max-width:100%;border:var(--border);border-radius:var(--radius);overflow:hidden;background:var(--line)}.img-gallery__tile{position:relative;display:block;padding:0;margin:0;border:0;background:var(--surface-strong);cursor:pointer;overflow:hidden;min-width:0;min-height:0}.img-gallery__img{display:block;width:100%;height:100%;object-fit:cover;background:var(--surface-strong)}.img-gallery__more{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:500;font-size:var(--t-h1);color:var(--on-primary);background:#0000008c;pointer-events:none}.img-gallery--single .img-gallery__tile{width:100%;max-height:480px;background:var(--surface-strong)}.img-gallery--single .img-gallery__img{object-fit:contain}.img-gallery--two,.img-gallery--three,.img-gallery--quad{display:grid;gap:var(--img-gap)}.img-gallery--two{grid-template-columns:1fr 1fr;aspect-ratio:2 / 1}.img-gallery--three{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:3 / 2}.img-gallery--three .img-gallery__tile:first-child{grid-row:1 / span 2}.img-gallery--quad{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:3 / 2}.img-gallery__tile:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:-3px}.img-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--s4);background:#000000d1}.img-lightbox__panel{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;outline:none}.img-lightbox__figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--s3);max-width:92vw}.img-lightbox__img{display:block;max-width:92vw;max-height:82vh;object-fit:contain;border:var(--border);border-radius:var(--radius);background:var(--surface)}.img-lightbox__caption{display:flex;flex-direction:column;align-items:center;gap:var(--s1);max-width:92vw;color:var(--on-primary);font-size:var(--t-ui);text-align:center}.img-lightbox__counter{color:#ffffffb3;font-size:var(--t-xs);font-weight:500}.img-lightbox__close,.img-lightbox__nav{position:absolute;display:flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink);cursor:pointer;box-shadow:var(--shadow-lg)}.img-lightbox__close{top:0;right:0;width:40px;height:40px}.img-lightbox__nav{top:50%;transform:translateY(-50%);width:44px;height:44px}.img-lightbox__nav--prev{left:0}.img-lightbox__nav--next{right:0}@media (hover: hover){.img-lightbox__close:hover,.img-lightbox__nav:hover{background:var(--surface-tint)}}.img-lightbox__close:focus-visible,.img-lightbox__nav:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:2px}@media (max-width: 600px){.img-lightbox__nav{width:38px;height:38px}}.chv{flex:none;display:inline-block;vertical-align:middle;transition:transform var(--dur-move) var(--ease-out)}.chv[data-open]{transform:rotate(90deg)}.chv.dn{vertical-align:-1px;margin-left:2px;color:var(--muted)}@media (prefers-reduced-motion: reduce){.chv{transition:none!important}}.clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--lines, 2);line-clamp:var(--lines, 2);overflow:hidden;min-width:0;overflow-wrap:normal;word-break:normal;-webkit-hyphens:manual;hyphens:manual}.sh-tag{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;gap:3px;height:18px;padding:0 6px;border-radius:5px;font:var(--t-xs) / 1 var(--font-body);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);vertical-align:1px;white-space:nowrap}.sh-tag svg{width:11px;height:11px;color:var(--muted);flex:none}.sh-tag span{overflow:hidden;text-overflow:ellipsis;min-width:0}.rapor-muted{color:var(--muted);font-size:var(--t-sm)}.rapor-copy{margin:0}.rapor-back{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--s1);color:var(--muted);font-size:var(--t-ui);font-weight:var(--w-em);text-decoration:none}.rapor-back svg{margin-left:calc(-14px - var(--s1))}.rapor-back:hover{color:var(--ink);text-decoration:none}.rapor-notice:focus{outline:none}.rapor-list{margin:0;padding-left:var(--s4)}.rapor-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--s2)}.rapor-actions--start{justify-content:flex-start}.rapor-gen{color:var(--muted)}.rapor-preview{overflow-x:auto}.rapor-next{display:flex;justify-content:flex-end}.rapor-next>.ui-btn:last-child{margin-inline-end:calc(-1 * var(--ui-btn-pad, 0px))}.rapor-details>.ui-disclosure__summary,.rapor-done>.ui-disclosure__summary{margin-left:calc(-14px - var(--s1))}@media (max-width: 599.98px){.rapor-details>.ui-disclosure__summary,.rapor-done>.ui-disclosure__summary{margin-left:0;flex-direction:row-reverse;justify-content:flex-end}.rapor-back svg{margin-left:0}}.rapor-details ul{margin:var(--s2) 0 0;font-size:var(--t-sm)}.rapor-meta{display:inline-flex;flex-wrap:wrap;align-items:center;column-gap:var(--s2)}.rapor-pager{display:inline-flex;align-items:center;gap:2px}.rapor-pager__pos{margin-right:2px;font-variant-numeric:tabular-nums}.rapor-pager__pos:before{content:"·";margin-right:var(--s2)}.rapor-pager__btn{display:inline-grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out)}.rapor-pager__btn[hidden]{display:inline-grid;visibility:hidden}@media (hover: hover){.rapor-pager__btn:hover{background:var(--hover);color:var(--ink)}}.rapor-pager__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rapor-more{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:var(--radius);background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out)}@media (hover: hover){.rapor-more:hover{background:var(--hover);color:var(--ink)}}.rapor-more[aria-expanded=true]{background:var(--hover);color:var(--ink)}.rapor-menu{display:flex;flex-direction:column;padding:var(--s1)}.rapor-menu__row{display:block;width:100%;padding:var(--s2) var(--s3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:var(--t-ui);text-align:left;text-decoration:none;cursor:pointer}.rapor-menu__row:hover,.rapor-menu__row:focus-visible{background:var(--hover);text-decoration:none;outline:none}.rapor-page>.rapor-sec{margin-top:var(--s4)}.rapor-page>.ui-page-header+.rapor-sec,.rapor-page>.rapor-notice+.rapor-sec{margin-top:var(--s2)}.rapor-sec__head{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:var(--s3);row-gap:var(--s1);margin-bottom:var(--s2)}.rapor-sec__title{margin:0;font-family:var(--font-serif);font-size:var(--t-h3);font-weight:var(--w-title);line-height:var(--lh-tight)}.rapor-sec__count{color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums}.rapor-sec__status{font-size:var(--t-sm)}.rapor-sec__action{margin-left:auto;align-self:center}.rapor-sec__action>.ui-btn:last-child{margin-inline-end:calc(-1 * var(--ui-btn-pad, 0px))}.rapor-sec__meta{margin:0 0 var(--s2);color:var(--muted);font-size:var(--t-sm);line-height:var(--lh)}.rapor-steps{display:grid;grid-template-columns:minmax(0,1fr) auto auto;column-gap:var(--s5);margin:0;padding:0;list-style:none}.rapor-step{position:relative;display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:baseline;min-height:38px;padding:var(--s2) 0;box-sizing:border-box;font-size:var(--t-ui);line-height:var(--lh);color:var(--ink)}.rapor-step:before{content:"";position:absolute;left:0;top:calc(var(--s2) + var(--lh) * var(--t-ui) / 2 - 3px);width:6px;height:6px;border-radius:50%;background:var(--draft)}.rapor-step--act:before{background:var(--act)}.rapor-step--ok:before{background:var(--ok)}.rapor-step--muted{color:var(--muted)}.rapor-step--muted:before{display:none}.rapor-step__text{min-width:0;padding-left:14px;overflow-wrap:break-word}.rapor-step__note{font-size:var(--t-base)}.rapor-step__meta{color:var(--muted);font-size:var(--t-sm);white-space:nowrap}.rapor-step__who{color:var(--muted);font-size:var(--t-sm);white-space:nowrap;text-align:right}.rapor-step--act .rapor-step__who{color:var(--ink-2)}.rapor-step__act{justify-self:end;align-self:baseline}.rapor-step__act>.ui-btn{margin-block:-4px;margin-inline-end:calc(-1 * var(--ui-btn-pad, 0px))}.rapor-done{margin-top:var(--s1)}.rapor-done .ui-disclosure__summary{color:var(--muted);font-size:var(--t-sm)}.rapor-steps--done{padding-top:var(--s1)}.rapor-steps--done .rapor-step{min-height:0;padding-block:var(--s1);color:var(--ink-2)}.rapor-steps--done .rapor-step:before{top:calc(var(--s1) + var(--lh) * var(--t-ui) / 2 - 3px)}.rapor-sec{container-type:inline-size}@container (max-width: 680px){.rapor-steps{display:block}.rapor-step{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t t" "w a";row-gap:2px}.rapor-step__text{grid-area:t}.rapor-step__who{grid-area:w;text-align:left;padding-left:14px}.rapor-step__act{grid-area:a}}.rapor-doc{display:block;box-sizing:border-box;width:calc(100% + 2 * var(--s2));max-width:calc(68ch + 2 * var(--s2));margin:0 calc(-1 * var(--s2));padding:var(--s1) var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;resize:none;overflow:hidden;font-size:var(--t-lead);line-height:var(--lh-read);color:var(--ink);transition:background-color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out)}.rapor-doc::placeholder{color:var(--muted)}@media (hover: hover){.rapor-doc:not([readonly]):hover{background:var(--hover)}}.rapor-doc:focus{outline:none;background:transparent;box-shadow:inset 0 0 0 1px var(--line-strong)}.rapor-doc:focus-visible{outline:none}.rapor-doc__acts{margin-top:var(--s1)}.rapor-doc__acts>.ui-btn:first-child{margin-inline-start:calc(-1 * var(--ui-btn-pad, 0px))}.rapor-ek{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3)}.rapor-ek__row{display:grid;grid-template-columns:1fr 140px auto;gap:var(--s2);align-items:center}.rapor-grid{display:flex;flex-direction:column;gap:var(--s2)}.rapor-grid__table th{white-space:nowrap}.rapor-grid__table .rapor-grid__th--num{text-align:center}.rapor-grid__student{min-width:14rem}.rapor-grid__name{display:block;font-weight:var(--w-em)}.rapor-grid__status{display:block;margin-top:2px;font-size:var(--t-xs);line-height:var(--lh);color:var(--muted)}.rapor-grid__status .status-word{font-size:var(--t-xs)}.rapor-grid__why,.rapor-grid__saved{color:var(--muted)}.rapor-grid__td--num{min-width:4rem}.rapor-grid__td{white-space:nowrap}.rapor-grid__cell{display:block;position:relative}.rapor-grid__input{text-align:center;min-width:4rem}.rapor-grid__cell--dirty .rapor-grid__input{background:var(--hover)}.rapor-grid__cell--error .rapor-grid__input{background:var(--danger-tint);box-shadow:inset 0 0 0 1px var(--danger)}.rapor-grid__error{position:absolute;z-index:2;left:0;bottom:100%;padding:2px 6px;border-radius:var(--radius-sm);background:var(--danger);color:var(--on-primary);font-size:var(--t-xs);white-space:nowrap}.rapor-grid__toggle,.rapor-grid__list{border:0;background:transparent;font:inherit;color:var(--muted);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);text-align:left;transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out)}.rapor-grid__list{max-width:16rem;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.rapor-grid__toggle--on{color:var(--ink);font-weight:var(--w-em)}@media (hover: hover){.rapor-grid__toggle:hover:not(:disabled),.rapor-grid__list:hover:not(:disabled){background:var(--hover)}}.rapor-grid__toggle:focus-visible,.rapor-grid__list:focus-visible,.rapor-grid__ev:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rapor-grid__toggle:disabled,.rapor-grid__list:disabled{cursor:default}.rapor-grid__ev{text-decoration:none}@media (hover: hover){.rapor-grid__ev:hover .status-word{color:var(--ink)}}.rapor-cards{display:flex;flex-direction:column}.rapor-card{padding:var(--s3) 0;border-top:1px solid var(--line)}.rapor-card:first-child{border-top:0;padding-top:0}.rapor-card__head{margin-bottom:var(--s2)}.rapor-card__fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2) var(--s3);margin:0}.rapor-card__field{display:flex;flex-direction:column;gap:2px;min-width:0}.rapor-card__field dt{font-size:var(--t-xs);color:var(--muted)}.rapor-card__field dd{margin:0}.rapor-card__field .ui-cell-edit__input{box-sizing:border-box;height:40px;text-align:left;background:var(--paper);border-radius:var(--radius-sm)}.rapor-card__field .mj-popover{display:flex;width:100%}.rapor-card__field .rapor-grid__toggle,.rapor-card__field .rapor-grid__list,.rapor-card__field .rapor-grid__ev{display:flex;align-items:center;box-sizing:border-box;width:100%;max-width:none;height:40px;padding:0 var(--s3);background:var(--paper);border-radius:var(--radius-sm)}.rapor-periksa{display:flex;flex-direction:column;gap:var(--s4);width:100%;max-width:1480px;margin:0 auto;padding:var(--s5) var(--s6) var(--s7);box-sizing:border-box}@media (max-width: 599.98px){.rapor-periksa{padding:var(--s3) var(--s3) var(--s6)}}.rapor-periksa__grid{display:grid;grid-template-columns:minmax(20rem,34rem) minmax(0,1fr);gap:var(--s5);align-items:start}.rapor-periksa__text{position:sticky;top:var(--s3)}.rapor-periksa>.ui-page-header{margin-bottom:calc(var(--s5) - var(--s4))}.rapor-periksa__text>.ui-field{margin-bottom:0}.rapor-periksa__status{margin:0;display:flex;flex-wrap:wrap;gap:var(--s2)}.rapor-periksa__keys{margin:var(--s2) 0 0}@media (hover: none){.rapor-periksa__keys{display:none}}.rapor-periksa__ev{font-size:var(--t-lead);line-height:var(--lh-read)}.rapor-periksa__over{color:var(--danger)}.rapor-periksa__undo{margin:0;display:flex;align-items:center;gap:var(--s2);font-size:var(--t-ui)}.rapor-periksa__paper{min-width:0;background:var(--paper);border-radius:var(--radius);padding:var(--s3)}@media (max-width: 1100px){.rapor-periksa__grid{grid-template-columns:1fr}.rapor-periksa__text{position:static}}.rapor-print .v22+.v22{margin-top:var(--s5)}@media print{body *{visibility:hidden}.rapor-print,.rapor-print *{visibility:visible}.rapor-print{position:absolute;inset:0 auto auto 0;width:100%}.rapor-print .v22+.v22{margin-top:0;break-before:page}}.rapor-actions--start>.ui-btn--secondary:first-child{margin-inline-start:calc(-1 * var(--ui-btn-pad, 0px))}.rapor-moved{margin:0 0 var(--s3);color:var(--muted);font-size:var(--t-sm)}.subnav__list{display:grid;gap:1px;margin:0;padding:0;list-style:none}.subnav__group{margin-top:var(--s4)}.subnav__group-label{display:flex;align-items:baseline;gap:4px;margin:0 0 4px;padding:0 10px;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:var(--w-body);line-height:var(--lh);letter-spacing:0}.subnav__group-count{font-variant-numeric:tabular-nums}.subnav__group-action{margin-left:auto}.subnav__group-link{color:var(--muted);text-decoration:none;transition:color .1s var(--ease-out)}@media (hover: hover){.subnav__group-link:hover{color:var(--accent)}}.subnav__ordinal{flex:none;align-self:flex-start;width:14px;padding-top:6px;text-align:right;font:italic var(--t-ui) / 1.45 var(--font-serif);color:var(--muted)}.subnav__status{font-size:var(--t-xs);line-height:var(--lh)}.subnav__fact{flex:none;align-self:flex-end;padding-bottom:6px;font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums}.subnav__row{display:flex;align-items:center;gap:9px;min-height:36px;padding:0 10px;border-radius:var(--radius);color:var(--ink-2);font-size:var(--t-ui);font-weight:var(--w-body);text-decoration:none;transition:background-color .1s var(--ease-out),color .1s var(--ease-out)}@media (hover: hover){.subnav__row:hover{background:var(--hover);color:var(--ink);text-decoration:none}}.subnav__row.active{background:var(--sheet);color:var(--ink);font-weight:var(--w-em);box-shadow:0 1px 2px #0000000f}.subnav__icon{display:inline-grid;place-items:center;flex:0 0 auto;color:var(--muted)}.subnav__row.active .subnav__icon{color:var(--ink)}.subnav__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subnav__text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;padding:6px 0}.subnav__count{flex:0 0 auto;min-width:22px;color:var(--muted);font-size:var(--t-xs);font-variant-numeric:tabular-nums;text-align:right}.subnav__count--alert{color:var(--act-ink);font-weight:var(--w-strong)}.subnav__empty{margin:var(--s3) 10px;color:var(--muted);font-size:var(--t-sm)}.mj-panel--page .subnav__row{min-height:48px;font-size:var(--t-base)}.subnav__dot{flex:none;width:8px;height:8px;border-radius:50%}.subnav__label--serif{font-family:var(--font-serif);font-size:var(--t-base)}.subnav__row .subnav__fact:last-child{align-self:center;padding-bottom:0}.subnav__meta{font-size:var(--t-xs);line-height:var(--lh);color:var(--muted)}.subnav__dot{align-self:flex-start;margin-top:13px}.subnav__row:has(.subnav__text) .subnav__dot{margin-top:13px}.subnav__group-label--serif{align-items:baseline;gap:0;color:var(--ink-2);font-family:var(--font-serif);font-size:var(--t-ui);line-height:var(--lh-tight);margin-bottom:2px}.subnav__group-label--serif .subnav__ordinal{padding-top:0;margin-right:6px}.subnav__group--outline .subnav__row{padding-left:30px}.subnav__group--outline .subnav__label--serif{font-size:var(--t-ui)}.subnav__group--outline .subnav__text{padding:5px 0}.subnav__status--plain{color:var(--ink-2)}.subnav__list>li{position:relative}.subnav__aside{position:absolute;top:50%;right:40px;transform:translateY(-50%);font-size:var(--t-xs);opacity:0;transition:opacity var(--dur-hover, .1s) var(--ease-out)}.subnav__list>li:hover .subnav__aside,.subnav__aside:focus-within{opacity:1}@media (hover: none){.subnav__aside{opacity:1}}.subj-switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;max-width:100%;min-width:0;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.subj-switch__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subj-switch .chv{flex:none;color:var(--muted)}@media (hover: hover){.subj-switch:hover .chv{color:var(--ink)}}.subj-menu{display:flex;flex-direction:column;padding:4px}.subj-menu__row{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 10px;border-radius:6px;color:var(--ink-2);text-decoration:none;transition:background-color .1s var(--ease-out)}@media (hover: hover){.subj-menu__row:hover{background:var(--hover);color:var(--ink);text-decoration:none}}.subj-menu__row.is-current{color:var(--ink);font-weight:var(--w-em)}.subj-menu__dot{flex:none;width:8px;height:8px;border-radius:50%}.subj-menu__name{font-size:var(--t-base)}.pick{display:flex;flex-direction:column}.pick__search{display:flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-bottom:1px solid var(--line-soft);color:var(--muted)}.pick__search input{flex:1;min-width:0;border:0;background:none;color:var(--ink);font:inherit;font-size:var(--t-sm);outline:none}.pick__search input::placeholder{color:var(--muted)}.pick__list{display:flex;flex-direction:column;padding:4px;outline:none}.pick__list .subj-menu__row{cursor:pointer}.pick__list .subj-menu__row.is-hl{background:var(--hover);color:var(--ink)}.pick__lab{padding:8px 10px 2px;color:var(--muted);font-size:var(--t-xs)}.pick__kelas{color:var(--muted);font-weight:var(--w-body)}.pick__empty{margin:0;padding:8px 10px;color:var(--muted)}.pick__att{flex:none;width:6px;height:6px;margin-left:auto;border-radius:50%;background:var(--act-ink)}.pick__tick{display:inline-flex;flex:none;justify-content:flex-end;width:15px;margin-left:auto;color:var(--muted)}.pick__att+.pick__tick{margin-left:8px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex:0 0 auto;min-height:48px;padding:var(--s2) var(--s6) 0;background:var(--sheet);color:var(--ink)}@media (min-width: 861px){.topbar{padding-left:var(--page-pad)}}.topbar__crumbs{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted);font-size:var(--t-sm);font-weight:400}.topbar__crumb{display:inline-flex;align-items:center;gap:6px;min-width:0;color:inherit}@media (hover: hover){a.topbar__crumb:hover{color:var(--ink);text-decoration:none}}.topbar__crumb--current{color:var(--ink);font-weight:500}.topbar__crumb-text{display:block;overflow:hidden;max-width:260px;text-overflow:ellipsis;white-space:nowrap}.topbar__chevron{flex:0 0 auto;color:var(--muted)}.topbar__mobile-title{display:none;align-items:center;gap:var(--s1);min-width:0}.topbar__back,.topbar__icon-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;flex:0 0 auto;display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:var(--radius);background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.topbar__back:hover,.topbar__icon-button:hover{background:var(--hover);color:var(--ink)}}.topbar__back:active,.topbar__icon-button:active{transform:scale(.96)}.topbar__current-title{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:var(--t-base);font-weight:var(--w-strong)}.topbar__actions{display:flex;align-items:center;gap:var(--s1);flex:0 0 auto}.topbar__dot{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:var(--radius-pill);background:var(--accent)}.topbar__role-switch{position:fixed;right:var(--s4);bottom:var(--s4);z-index:35;border-radius:12px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-lg)}.topbar__role-switch .ui-segmented{background:transparent}@media (max-width: 599.98px){.topbar{min-height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--s2) 0}.topbar__mobile-title{display:flex;flex:1 1 auto}.topbar:has(.topbar__mobile-title) .topbar__crumbs{display:none}.topbar__crumbs{flex:1 1 auto;padding-left:var(--s2);overflow:hidden}.topbar__crumbs>.topbar__crumb:not(.topbar__crumb--leaf){display:none}.topbar__crumb--current{color:var(--ink);font-size:var(--t-base);font-weight:var(--w-strong)}.topbar__role-switch{right:var(--s3);bottom:calc(var(--mj-bar-h) + var(--s3))}.topbar--defer-mobile .topbar__crumbs,.topbar--defer-mobile .topbar__mobile-title{transition:opacity .16s var(--ease-out)}.topbar--defer-mobile:not(.topbar--scrolled) .topbar__crumbs,.topbar--defer-mobile:not(.topbar--scrolled) .topbar__mobile-title{opacity:0;pointer-events:none}.topbar--defer-title .topbar__current-title{transition:opacity .16s var(--ease-out)}.topbar--defer-title:not(.topbar--scrolled) .topbar__current-title{opacity:0}}@media (min-width: 861px){.topbar__crumb--leaf{overflow:hidden;max-width:40ch;transition:opacity .16s var(--ease-out)}.topbar--defer-title:not(.topbar--scrolled) .topbar__crumb--leaf{opacity:0;pointer-events:none;max-width:0}}.forced-mock-banner{position:fixed;bottom:var(--s4);left:50%;transform:translate(-50%);z-index:200;width:min(560px,calc(100vw - 2 * var(--s4)));box-shadow:var(--shadow-lg)}.forced-mock-banner{bottom:calc(var(--mj-bar-h) + var(--s3))}.auth-screen{min-height:100%;display:flex;align-items:center;justify-content:center;padding:var(--s5)}.auth-panel{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--s5)}.auth-brand{display:flex;align-items:center;gap:var(--s3)}.auth-brand__mark{display:grid;place-items:center;width:48px;height:48px;flex:0 0 auto;border-radius:var(--radius);background:var(--rail);font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-h2);line-height:1;color:var(--ink)}.auth-brand__text{display:flex;flex-direction:column;min-width:0}.auth-brand__name{font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-lead);line-height:1.1;color:var(--ink)}.auth-brand__tag{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.auth-eyebrow{display:block;font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-xs);color:var(--primary-strong);margin-bottom:var(--s1)}.auth-links{margin-top:var(--s1)}@media (max-width: 560px){.auth-screen{padding:var(--s4);align-items:flex-start;padding-top:var(--s7)}}.gabung__google.ui-btn{background:var(--sheet);color:var(--ink);border-color:var(--line)}.gabung__facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;margin:0;font-size:var(--t-sm, 14px)}.gabung__facts dt{color:var(--muted)}.gabung__facts dd{margin:0;color:var(--ink)}.gabung__account{margin:0;font-size:var(--t-sm, 14px);color:var(--muted)}.gabung__account-link{color:var(--primary-strong);white-space:nowrap}.student-home .ui-section{margin-bottom:var(--s6)}.student-home__calm{margin:0;color:var(--muted)}.student-home__link{font-size:var(--t-sm);font-weight:500}.student-home__bands{margin-top:var(--s5)}.student-home__undated{margin-top:var(--s4)}.student-rows{display:flex;flex-direction:column;margin-inline:calc(-1 * var(--s2))}.student-owe-link{display:block;color:inherit;text-decoration:none;border-radius:var(--radius)}.student-owe-link+.student-owe-link{border-top:1px solid var(--line-soft)}@media (hover: hover){.student-owe-link:hover{text-decoration:none;background:var(--hover)}}.student-owe-card{--owe-title-line: 22px;display:grid;grid-template-columns:3px minmax(0,1fr) auto;grid-template-areas:"mark word ." "mark title when" "mark meta .";align-items:start;column-gap:var(--s3);padding:var(--s3) var(--s2)}.student-owe-card__mark{grid-area:mark;width:3px;align-self:stretch;min-height:20px;border-radius:var(--radius-pill);background:var(--subj)}.student-owe-card__content{display:contents}.student-owe-card__word{grid-area:word;margin-bottom:2px;font-size:var(--t-sm);font-weight:var(--w-body);color:var(--muted)}.student-owe-card__word:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--act);vertical-align:.1em}.student-owe-card__word--urgent:before{background:var(--danger)}.student-owe-card__title{grid-area:title;min-width:0;font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--owe-title-line);color:var(--ink);overflow-wrap:anywhere}.student-owe-link--featured .student-owe-card__title{font-size:var(--t-h3)}.student-owe-link--featured .student-owe-card{--owe-title-line: 26px;padding-block:var(--s4)}.student-owe-card__meta{grid-area:meta;margin-top:2px;font-size:var(--t-sm);color:var(--muted)}.student-owe-card__when{grid-area:when;display:flex;align-items:center;justify-content:flex-end;height:var(--owe-title-line);font-size:var(--t-sm);color:var(--muted);text-align:right}.student-owe-card__when--urgent{color:var(--danger-strong);font-weight:500}.student-owe-card__when--graded{color:var(--muted);font-weight:var(--w-body)}.student-num{font-variant-numeric:tabular-nums}.student-band__title{display:flex;align-items:center;gap:var(--s2);margin:0 0 var(--s1);font-size:var(--t-sm);font-weight:var(--w-body);line-height:var(--lh);color:var(--muted)}.student-band__title:after{content:"";flex:1;height:1px;background:var(--line)}.student-band__title--urgent:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--danger)}.student-band__count{color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}@media (max-width: 480px){.student-owe-card{grid-template-columns:3px minmax(0,1fr);grid-template-areas:"mark word" "mark title" "mark meta" "mark when"}.student-owe-card__when{justify-content:flex-start;height:auto;margin-top:2px;text-align:left}.student-owe-link--featured .student-owe-card__title{font-size:var(--t-lead)}}.student-owe-card--quiet .student-owe-card__meta{grid-area:title;margin-top:0;line-height:var(--owe-title-line)}.student-home__grid{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"nav" "list" "glance";column-gap:var(--s7)}.student-home__nav{grid-area:nav;min-width:0;margin-bottom:var(--s5)}.student-home__list{grid-area:list;min-width:0}.student-home__glance{grid-area:glance;display:flex;flex-direction:column;gap:var(--s5);min-width:0;margin-top:var(--s6)}.student-home--wide .student-home__grid{grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:auto 1fr;grid-template-areas:"list nav" "list glance";align-items:start}.student-home--wide .student-home__nav{margin-bottom:0}.student-home--wide .student-home__glance{margin-top:var(--s5)}.agenda{--agenda-gutter: 48px;display:flex;flex-direction:column;gap:var(--s4)}.agenda>.student-home__calm{padding-left:var(--agenda-gutter)}.agenda-group .ui-sec{margin:0 0 var(--s1)}.agenda-group--act .ui-sec__label{position:relative}.agenda-group--act .ui-sec__label{padding-left:14px}.agenda-group--act .ui-sec__label:before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--act)}.agenda-group__rows,.agenda-day__rows{display:flex;flex-direction:column;min-width:0}.agenda-group__rows{margin-left:calc(var(--agenda-gutter) - var(--s2))}.agenda-day{display:grid;grid-template-columns:var(--agenda-gutter) minmax(0,1fr);align-items:start;margin-inline:calc(-1 * var(--s2));padding-inline:var(--s2);border-radius:var(--radius);scroll-margin-top:var(--s5);transition:background-color .2s var(--ease-out)}.agenda-day--marked{background:var(--hover)}@media (prefers-reduced-motion: reduce){.agenda-day{transition:none}}.agenda-day__rows{margin-left:calc(-1 * var(--s2))}.agenda-day__date{display:flex;flex-direction:column;align-items:flex-start;padding-top:var(--s2);line-height:1}.agenda-day__wd{font-size:var(--t-xs);color:var(--muted)}.agenda-day__num{display:grid;place-items:center;width:30px;height:30px;margin:2px 0 0 -6px;border-radius:50%;font-size:var(--t-lead);font-weight:500;font-variant-numeric:tabular-nums;color:var(--ink)}.agenda-day__date--today .agenda-day__wd{color:var(--ink)}.agenda-day__date--today .agenda-day__num{background:var(--ink);color:var(--surface, var(--sheet))}.agenda-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;column-gap:var(--s2);align-items:baseline;padding:var(--s2);border-radius:var(--radius);color:var(--ink);text-decoration:none}@media (hover: hover){.agenda-row:hover{background:var(--hover);text-decoration:none}}.agenda-row__dot{width:8px;height:8px;border-radius:50%;background:var(--subj);align-self:start;margin-top:7px}.agenda-row__main{display:flex;flex-direction:column;min-width:0}.agenda-row__title{font-family:var(--font-serif);font-size:var(--t-lead);line-height:22px;overflow-wrap:anywhere}.agenda-row__title--sans{font-family:var(--font-body);font-size:var(--t-ui)}.agenda-row__meta{margin-top:1px;font-size:var(--t-sm);color:var(--muted)}.agenda-row__when{font-size:var(--t-sm);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.agenda-row__when--act{color:var(--act-ink)}.agenda-row__when--act:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--act);vertical-align:.1em}.agenda-row__when--done{color:var(--muted)}@media (max-width: 480px){.agenda{--agenda-gutter: 40px}.agenda-row{grid-template-columns:8px minmax(0,1fr)}.agenda-row__when{grid-column:2;margin-top:2px}}.glance-group .ui-sec{margin-top:0}.glance-rows{display:flex;flex-direction:column}.glance-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;column-gap:var(--s2);align-items:baseline;padding:var(--s2) var(--s2);margin-inline:calc(-1 * var(--s2));border-radius:var(--radius);color:var(--ink);text-decoration:none}@media (hover: hover){.glance-row:hover{background:var(--hover);text-decoration:none}}.glance-row__dot{width:8px;height:8px;border-radius:50%;align-self:center}.glance-row__main{display:flex;flex-direction:column;min-width:0}.glance-row__title{font-family:var(--font-serif);font-size:var(--t-ui);line-height:var(--lh-tight);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glance-row__title--sans{font-family:var(--font-body)}.glance-row__quote{margin-top:2px;font-family:var(--font-serif);font-style:italic;font-size:var(--t-sm);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glance-row__fact{font-size:var(--t-xs);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.mini-month__head{gap:var(--s1)}.mini-month__title{font-variant-numeric:tabular-nums;margin-right:var(--s1)}.mini-month__nav,.mini-month__today{display:inline-grid;place-items:center;height:24px;min-width:24px;padding:0 var(--s1);border:0;border-radius:var(--radius);background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);cursor:pointer}.mini-month__nav:hover,.mini-month__today:hover{color:var(--ink);background:var(--hover)}.mini-month__chev-up{transform:rotate(180deg)}.mini-month__actions{display:inline-flex;align-items:center;gap:var(--s1)}.mini-month__grid{display:flex;flex-direction:column}.mini-month__row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.mini-month__wd{padding:var(--s1) 0;text-align:center;font-size:var(--t-xs);color:var(--muted)}.mini-month__row>[role=gridcell]{display:flex;justify-content:center}.mini-month__day{display:flex;flex-direction:column;align-items:center;gap:2px;width:40px;max-width:100%;height:40px;padding:4px 0 0;border:0;border-radius:var(--radius);background:none;color:var(--ink);font:inherit;cursor:pointer}.mini-month__day:disabled{cursor:default}@media (hover: hover){.mini-month__day:not(:disabled):hover{background:var(--hover)}}.mini-month__day:focus-visible{outline:none;background:var(--hover);box-shadow:0 0 0 2px var(--accent)}.mini-month__num{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-size:var(--t-sm);font-variant-numeric:tabular-nums;line-height:1}.mini-month__day.is-past .mini-month__num,.mini-month__day.is-out .mini-month__num{color:var(--muted)}.mini-month__day.is-today .mini-month__num{background:var(--hover);color:var(--ink);font-weight:600}.mini-month__day.is-selected .mini-month__num{box-shadow:inset 0 0 0 1.5px var(--ink)}.mini-month__dots{display:flex;align-items:center;gap:2px;height:6px}.mini-month__dot{width:5px;height:5px;border-radius:50%}.mini-month__dot--act{background:var(--act)}.mini-month__day.is-out .mini-month__dot{opacity:.45}.mini-month__more{font-size:9px;line-height:6px;color:var(--muted)}.mini-month__empty{margin:var(--s1) 0 0;min-height:1lh;font-size:var(--t-sm);color:var(--muted);white-space:pre}.mapel-next{margin:0;padding:0;list-style:none}.mapel-next__row{display:grid;grid-template-columns:minmax(140px,200px) minmax(0,1fr);gap:var(--s4);align-items:baseline;padding:var(--s3) 0;border-bottom:1px solid var(--line-soft)}.mapel-next__subject{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--muted)}.mapel-next__dot{flex:none;width:8px;height:8px;border-radius:50%}.mapel-next__item{display:flex;align-items:baseline;gap:var(--s3);min-width:0;color:var(--ink);text-decoration:none}@media (hover: hover){.mapel-next__item:hover{text-decoration:none}.mapel-next__item:hover .mapel-next__title{text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}}.mapel-next__title{flex:1;min-width:0;font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh)}.mapel-next__when,.mapel-next__none{flex:none;font-size:var(--t-sm);color:var(--muted)}.s-course-card{position:relative;display:flex;flex-direction:column;gap:2px;min-height:88px;padding:var(--s4);border-radius:var(--radius-lg);background:var(--subj-tint);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform var(--dur-press) var(--ease-out)}.s-course-card:active{transform:scale(.99)}@media (hover: hover){.s-course-card:hover{text-decoration:none}.s-course-card:hover .s-course-card__subject{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}}.s-course-card__subject{font-size:var(--t-base);font-weight:var(--w-strong);color:var(--subj);line-height:var(--lh-tight);overflow-wrap:anywhere}.s-course-card__meta{font-size:var(--t-sm);font-weight:400;color:var(--muted)}.s-course-card__news{margin-top:auto;padding-top:var(--s2);font-size:var(--t-sm);font-weight:500;color:var(--ink-2)}.s-course-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s3)}@media (min-width: 560px){.s-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1100px){.s-course-grid--wide{grid-template-columns:repeat(3,minmax(0,1fr))}}.course-search-popover{position:relative;flex:0 0 auto}.course-search-popover__trigger{position:relative;width:32px;min-height:32px;padding:0}.course-search-popover__trigger[aria-expanded=true]{background:var(--hover);color:var(--ink)}.course-search-popover__trigger[data-active=true]:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--primary)}.course-search-popover__panel{position:absolute;top:calc(100% + var(--s2));right:0;z-index:61;width:min(360px,calc(100vw - 24px));padding:var(--s3);border-radius:var(--radius-menu);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float);transform-origin:top right;animation:course-search-pop var(--dur-pop) var(--ease-out)}@keyframes course-search-pop{0%{opacity:0;transform:scale(.97)}}@media (prefers-reduced-motion: reduce){.course-search-popover__panel{animation:course-search-fade .12s linear}@keyframes course-search-fade{0%{opacity:0}}}.course-search-popover__panel[hidden]{display:none}.course-search-tools{display:grid;gap:var(--s3)}.course-search-tools--modal{padding-bottom:var(--s3);border-bottom:var(--border)}.course-search-tools__search{display:grid;gap:6px}.course-search-tools__search span{color:var(--muted);font-size:var(--t-xs);font-weight:500}.course-search-tools__search input{width:100%;height:40px;padding:0 var(--s3);border:var(--border);border-radius:var(--radius);background:var(--sheet);color:var(--ink);font:inherit}.course-search-tools__search input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.course-search-tools__grade-tags{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.course-search-tools__grade-tags button{flex:0 0 auto;min-height:32px;padding:0 var(--s3);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--sheet);color:var(--ink-2);font-family:var(--font-body);font-size:var(--t-sm);font-weight:500;cursor:pointer;transition:background-color .1s var(--ease-out)}@media (hover: hover){.course-search-tools__grade-tags button:hover{background:var(--surface-tint)}}.course-search-tools__grade-tags button.is-active{border-color:transparent;background:var(--primary-tint);color:var(--ink)}.s-course{display:flex;flex-direction:column;gap:var(--s5)}.s-course-head{position:relative;display:flex;flex-direction:column;gap:var(--s1);padding:var(--s3) var(--s5) var(--s4)}.s-course-head__meta{font-size:var(--t-sm);color:var(--muted);font-variant-numeric:tabular-nums}.s-course-head__title{position:relative;margin:0;padding-left:16px;font-family:var(--font-serif);font-size:var(--t-h1);font-weight:var(--w-body);line-height:var(--lh-tight);color:var(--ink);overflow-wrap:anywhere}.s-course-head__dot{position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--subj)}.s-outline{--meta-w: 156px;--gut: 28px;display:flex;flex-direction:column;gap:var(--s3);padding-left:var(--s5)}.s-group-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:4px;width:calc(100% + var(--gut));min-height:36px;margin:0 0 0 calc(var(--gut) * -1);padding:0 8px 0 var(--gut);border:0;border-radius:var(--radius-sm);background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);text-align:left;cursor:pointer;transition:background-color .1s var(--ease-out)}.s-group-row__label{color:var(--ink-2)}.s-group-row__count{font-variant-numeric:tabular-nums}.s-group-row__action{display:inline-flex;margin-left:auto}.s-outline__themes{display:flex;flex-direction:column}.s-outline__themes>.s-theme,.s-theme-fold>.ui-fold__in>.s-theme{padding-bottom:var(--s5)}.s-theme__head{position:relative;display:flex;align-items:baseline}.s-theme__ord{position:absolute;left:calc(var(--s5) * -1);width:14px;text-align:right;font:italic var(--t-lead) / var(--lh-tight) var(--font-serif);color:var(--muted)}.s-theme__title{margin:0;font-family:var(--font-serif);font-size:var(--t-h3);font-weight:var(--w-title);line-height:var(--lh-tight);overflow-wrap:anywhere}.s-theme__idea{margin:var(--s1) 0 0;font-family:var(--font-serif);font-size:var(--t-base);font-style:italic;color:var(--ink-2);line-height:var(--lh)}.s-sessions,.s-acts{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.s-sessions{margin-top:var(--s2)}.s-ses__head{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:grid;grid-template-columns:var(--meta-w) minmax(0,1fr) auto;align-items:baseline;column-gap:0;width:calc(100% + var(--gut));min-height:38px;margin-left:calc(var(--gut) * -1);padding:8px 8px 8px var(--gut);border:0;border-radius:var(--radius-sm);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background-color .1s var(--ease-out)}@media (hover: hover){.s-ses__head:hover,.s-group-row:hover{background:var(--hover)}}.s-ses__chev{position:absolute;left:6px;top:0;bottom:0;display:inline-flex;align-items:center;color:var(--muted)}.s-ses__meta{font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:var(--s3)}.s-ses__title{min-width:0;font-family:var(--font-serif);font-size:var(--t-base);line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-ses--past .s-ses__title{color:var(--ink-2)}.s-ses__mark{margin-left:var(--s3);font-size:var(--t-xs);color:var(--muted);white-space:nowrap}.s-ses--now .s-ses__mark{color:var(--ink-2);font-weight:var(--w-em)}.s-ses__empty{margin:0 0 var(--s2) var(--meta-w);font-size:var(--t-sm);color:var(--muted)}.s-acts{padding-bottom:var(--s2)}.s-act{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;width:calc(100% + var(--gut));min-height:34px;margin-left:calc(var(--gut) * -1);padding:0 8px 0 calc(var(--gut) + var(--meta-w) - 22px);border-radius:var(--radius-sm);color:var(--ink);text-decoration:none;transition:background-color .1s var(--ease-out)}@media (hover: hover){.s-act:hover{background:var(--hover);text-decoration:none}}.s-act__icon{display:inline-flex;color:var(--muted)}.s-act__title{min-width:0;font-family:var(--font-serif);font-size:var(--t-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-act__st{margin-left:var(--s3);font-size:var(--t-xs);white-space:nowrap}@media (max-width: 600px){.s-outline{--meta-w: 0px}.s-ses__head{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.s-ses__meta{grid-column:1 / -1}.s-ses__empty{margin-left:0}.s-act{padding-left:calc(var(--gut) - 24px);grid-template-columns:24px minmax(0,1fr) auto}.s-course-head{padding:var(--s2) var(--s5) var(--s3)}.s-course-head__title{font-size:var(--t-h2)}}.course-detail-tabs{display:flex;align-items:flex-end;gap:var(--s5);box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;border-bottom:1px solid var(--line)}.course-detail-tabs[data-fade=start]{-webkit-mask-image:linear-gradient(to right,transparent,#000 32px);mask-image:linear-gradient(to right,transparent,#000 32px)}.course-detail-tabs[data-fade=end]{-webkit-mask-image:linear-gradient(to left,transparent,#000 32px);mask-image:linear-gradient(to left,transparent,#000 32px)}.course-detail-tabs[data-fade=both]{-webkit-mask-image:linear-gradient(to right,transparent,#000 32px,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to right,transparent,#000 32px,#000 calc(100% - 32px),transparent)}.course-detail-tabs::-webkit-scrollbar{display:none}.course-detail-tab{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--s2);min-height:40px;padding:var(--s2) 0;border:0;background:transparent;color:var(--muted);font-family:var(--font-body);font-size:var(--t-ui);font-weight:500;cursor:pointer;scroll-snap-align:start}@media (hover: hover){.course-detail-tab:hover{color:var(--ink)}}.course-detail-tab--active{color:var(--ink)}.course-detail-tab--active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:1px;background:var(--ink)}.course-detail-tab__dot{display:inline-block;flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--danger)}@media (max-width: 560px){.course-detail-tabs{gap:var(--s4)}}.ui-textarea.announcement-field{display:block;width:calc(100% + 2 * var(--s2));margin:calc(-1 * var(--s1)) calc(-1 * var(--s2)) 0;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;box-shadow:none;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read);transition:background-color var(--dur-hover) var(--ease-out)}.ui-textarea.announcement-field::placeholder{color:var(--muted);font-family:var(--font-body);font-size:var(--t-ui)}.ui-textarea.announcement-field:hover,.ui-textarea.announcement-field:focus{background:var(--hover);border-color:transparent;box-shadow:none;outline:none}.announcement-composer{padding-bottom:var(--s2);border-bottom:1px solid var(--line)}.announcement-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);min-height:32px;margin-top:var(--s1)}.announcement-composer:not(:focus-within):not(.announcement-composer--filled) .announcement-bar{visibility:hidden}.announcement-composer__crosspost{padding:var(--s2) 0 0}.announcement-meta{color:var(--muted);font-size:var(--t-xs)}.announcement-error{margin:var(--s1) 0 0;color:var(--danger);font-size:var(--t-xs)}.announcement-item{padding:var(--s3) 0}.announcement-item+.announcement-item{border-top:1px solid var(--line)}.announcement-item__head{display:flex;align-items:center;flex-wrap:wrap;column-gap:var(--s1);min-height:28px;font-family:var(--font-body);font-size:var(--t-ui)}.announcement-item__author{min-width:0;color:var(--ink);font-weight:600;overflow-wrap:anywhere}.announcement-item__new{display:inline-flex;align-items:center;gap:6px}.announcement-item__dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.announcement-item__head>.mj-popover{margin-left:auto}@media (hover: hover){.announcement-item .route-more{opacity:0;transition:opacity .1s var(--ease-out)}.announcement-item:hover .route-more,.announcement-item:focus-within .route-more,.announcement-item .route-more[aria-expanded=true]{opacity:1}}.announcement-item__body{margin:var(--s1) 0 0;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read);white-space:pre-wrap;overflow-wrap:anywhere}.announcement-item__edit{margin-top:var(--s1)}.route-token,.route-status{display:inline-flex;align-items:baseline;gap:var(--s1);padding:0;border:0;background:none;color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;text-decoration:underline dotted transparent;text-underline-offset:3px;transition:text-decoration-color var(--dur-hover, .1s) var(--ease-out)}.route-token:hover,.route-token[aria-expanded=true],button.route-status:hover{color:var(--ink);text-decoration-color:currentColor}.route-token:focus-visible,.route-status:focus-visible,.route-status__btn:focus-visible,.route-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.route-status.st{gap:var(--s1);cursor:default}.route-status__btn{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:var(--w-strong);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.route-more{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer}.route-more:hover,.route-more[aria-expanded=true]{background:var(--hover);color:var(--ink)}@media (hover: hover){.route-more{opacity:0;transition:opacity .1s var(--ease-out)}.activity-row:hover .route-more,.activity-row:focus-within .route-more,.route-more[aria-expanded=true]{opacity:1}}.activity-row--route-hidden .activity-row__title,.activity-row--route-hidden .activity-row__icon{color:var(--muted)}.activity-row--route-hidden .activity-row__title{text-decoration:line-through;text-decoration-color:var(--line-strong)}.route-menu{display:flex;flex-direction:column;padding:var(--s1) 0}.route-menu__note{margin:0;padding:var(--s2) var(--s3) var(--s1);color:var(--muted);font-size:var(--t-xs);line-height:var(--lh)}.route-menu__row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;column-gap:var(--s2);width:100%;padding:var(--s2) var(--s3);border:0;background:none;color:var(--ink);font:inherit;font-size:var(--t-sm);text-align:left;cursor:pointer}.route-menu__row:hover,.route-menu__row:focus-visible{background:var(--hover);outline:none}.route-menu__row--sep{border-top:1px solid var(--line-soft)}.route-menu__row--lead:not(:last-child){border-bottom:1px solid var(--line-soft)}.route-menu__row--lead+.route-menu__row--sep{border-top:0}.route-menu__mark{display:grid;place-items:center;height:18px;color:var(--muted)}.route-menu__main{display:flex;flex-direction:column;gap:2px;min-width:0;line-height:18px}.route-menu__main--person{font-family:var(--font-serif);font-size:var(--t-ui)}.route-menu__hint{color:var(--muted);font-size:var(--t-xs);line-height:var(--lh)}.route-menu__aside{color:var(--muted);font-size:var(--t-xs);line-height:18px;font-variant-numeric:tabular-nums}.route-check{display:grid;place-items:center;width:16px;height:16px;margin-top:1px;border:1.5px solid var(--line-strong);border-radius:4px;color:var(--on-accent)}.route-check--on{border-color:var(--accent);background:var(--accent)}.route-add{display:inline-flex;align-items:center;gap:var(--tl-gap);margin-top:var(--s1);padding:var(--s1) 0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);cursor:pointer}.route-add>svg{width:var(--tl-mark)}.route-add:hover,.route-add[aria-expanded=true]{color:var(--ink)}.route-add-form{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3)}.route-add-form__title{width:100%;padding:var(--s2);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-family:var(--font-serif);font-size:var(--t-base)}.route-add-form__title:focus{outline:2px solid var(--accent);outline-offset:-1px}.route-add-form__types{display:flex;flex-wrap:wrap;gap:var(--s1)}.route-add-form__type{padding:var(--s1) var(--s2);border:1px solid var(--line);border-radius:var(--radius-pill);background:none;color:var(--muted);font:inherit;font-size:var(--t-xs);cursor:pointer}.route-add-form__type[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--primary-tint)}.theme-timeline__evidence{font-size:var(--t-sm);text-decoration:none}.theme-timeline__evidence:hover{text-decoration:underline;text-underline-offset:3px}.theme-timeline__design-link{align-self:center;padding:var(--s1) var(--s2);border-radius:var(--radius-sm);color:var(--ink-2);font-size:var(--t-sm);text-decoration:none;white-space:nowrap}.theme-timeline__design-link:hover{background:var(--hover);color:var(--ink)}.activity-row__icon--handle{padding:0;border:0;border-radius:var(--radius);background:none;cursor:grab}.activity-row__icon--handle:active{cursor:grabbing}.activity-row__icon--handle:hover{color:var(--ink)}.activity-row__icon--handle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.activity-row{position:relative}.route-more-slot{position:absolute;top:calc(var(--s3) - 3px);right:var(--s2)}.activity-row:has(.route-more-slot) .activity-row__topline{padding-right:32px}.activity-row--instruction .activity-row__open{grid-template-columns:var(--tl-mark) minmax(0,1fr)}.course-timeline__body{container-type:inline-size}@container (max-width: 640px){.activity-row__open{grid-template-columns:var(--tl-mark) minmax(0,1fr)}.activity-row__badges{grid-column:2;flex-wrap:wrap;justify-content:flex-start;height:auto;margin:var(--s2) 0 0}.activity-row__action{width:auto}.activity-row__grade-cta{order:-1;margin-left:-12px}}@media (prefers-reduced-motion: reduce){.route-token,.route-status,.route-more{transition:none}}.shared-notice{margin:0 0 var(--s4)}.shared-notice__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2);margin:0;font-size:var(--t-ui)}.shared-notice__sep{color:var(--muted)}.shared-link{display:inline-flex;align-items:center;gap:var(--s1);padding:0;border:0;background:none;color:var(--muted);font:inherit;cursor:pointer;text-decoration:underline dotted transparent;text-underline-offset:3px}.shared-link:hover{color:var(--ink);text-decoration-color:currentColor}.shared-link--ink{color:var(--ink);font-weight:var(--w-strong);text-decoration:underline;text-decoration-color:currentColor}.shared-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.shared-notice__list{margin-top:var(--s3)}.shared-notice__group+.shared-notice__group{margin-top:var(--s4)}.shared-notice__theme{margin:0 0 var(--s1);font-family:var(--font-serif);font-size:var(--t-sm);color:var(--muted)}.shared-lines{list-style:none;margin:0;padding:0}.shared-line{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s4);align-items:baseline;padding:var(--s1) 0;font-size:var(--t-ui)}.shared-line__text{margin:0;min-width:0}.shared-line__where,.shared-line__what,.shared-line__local{color:var(--muted)}.shared-line__what{color:var(--ink)}.shared-line__title{font-family:var(--font-serif);color:var(--ink)}.shared-line__acts{display:inline-flex;gap:var(--s3);white-space:nowrap}.shared-line__diff{grid-column:1 / -1;margin:var(--s1) 0 var(--s2);max-width:32em;font-family:var(--font-serif);font-size:var(--t-base);line-height:1.6;white-space:pre-wrap}.shared-line__diff del{color:var(--muted)}.shared-line__diff ins{text-decoration:none;background:var(--primary-tint);border-radius:3px}@media (max-width: 560px){.shared-line{grid-template-columns:minmax(0,1fr);row-gap:var(--s1)}}.shared-offer{position:fixed;left:50%;bottom:var(--s5);z-index:950;display:flex;align-items:baseline;gap:var(--s4);max-width:calc(100vw - 2 * var(--s4));padding:var(--s3) var(--s4);border-radius:12px;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);font-size:var(--t-ui);transform:translate(-50%);animation:shared-offer-in var(--dur-pop, .16s) var(--ease-out)}.shared-offer__acts{display:inline-flex;gap:var(--s3)}@keyframes shared-offer-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.shared-offer{animation:shared-offer-fade .12s linear}@keyframes shared-offer-fade{0%{opacity:0}}}.theme-timeline__remove{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);cursor:pointer}.theme-timeline__remove:hover,.theme-timeline__remove:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.leave-class{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px}.leave-class__locked,.leave-class__error{margin:6px 0 0;font-size:var(--t-sm, 14px);color:var(--muted)}.leave-class__error{color:var(--warn)}.drag-handle{display:grid;place-items:center;flex:0 0 auto;color:var(--ink);cursor:grab}.drag-handle:active{cursor:grabbing}.drag-handle--boxed{width:34px;height:34px;border:var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .12s ease,box-shadow .12s ease}.drag-handle--bare{width:26px;height:30px;border:0;background:transparent;color:var(--muted);border-radius:var(--radius)}.drag-handle:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:2px}.drag-handle--bare:focus-visible{color:var(--primary);background:var(--primary-tint)}@media (hover: hover){.drag-handle--bare{opacity:0;transition:opacity .1s var(--ease-out)}:hover>.drag-handle--bare,:focus-within>.drag-handle--bare,.reorder-active .drag-handle--bare{opacity:1}}.reorder-target{position:relative;transition:opacity .12s ease}.reorder-target--before:before,.reorder-target--after:after{content:"";position:absolute;left:var(--s2);right:var(--s2);height:4px;border-radius:var(--radius-pill);background:var(--primary);box-shadow:0 0 0 2px var(--surface),var(--shadow-sm);z-index:3;pointer-events:none;transform-origin:left center;animation:reorder-line-in .18s var(--ease-out)}.reorder-target--before:before{top:3px}.reorder-target--after:after{bottom:3px}@keyframes reorder-line-in{0%{opacity:0;transform:scaleX(.95)}to{transform:scaleX(1)}}.reorder-active{opacity:.45}@media (prefers-reduced-motion: reduce){.reorder-target--before:before,.reorder-target--after:after{animation:none}.reorder-target{transition:none}}.lampiran{display:flex;flex-direction:column;gap:var(--s3);min-width:0}.lampiran__head{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.lampiran__label{font-weight:500;font-size:var(--t-ui);color:var(--ink)}.lampiran__count{font-size:var(--t-sm);color:var(--muted);font-variant-numeric:tabular-nums}.lampiran__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s2);min-width:0}.lampiran__row{position:relative;display:flex;flex-direction:column;gap:var(--s2);padding:var(--s2);margin-inline:calc(-1 * var(--s2));border-radius:var(--radius);background:transparent;min-width:0;transition:background-color var(--dur-hover) var(--ease-out)}.lampiran__row--editable:hover,.lampiran__row--editable:focus-within{background:var(--hover)}.lampiran__line{display:flex;align-items:center;gap:var(--s3);min-width:0}.lampiran__icon{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--paper);color:var(--ink-2)}.lampiran__thumb{flex:0 0 auto;width:36px;height:36px;object-fit:cover;border-radius:var(--radius-sm)}.lampiran__copy{display:flex;align-items:baseline;gap:var(--s2);flex:1 1 auto;min-width:0}.lampiran__name,.lampiran__meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lampiran__name{flex:0 1 auto;font-weight:500;color:var(--ink)}.lampiran__meta{flex:0 10000 auto}.lampiran__name a{color:inherit;text-decoration:none}.lampiran__name a:hover,.lampiran__name a:focus-visible{text-decoration:underline}.lampiran__meta{font-size:var(--t-sm);color:var(--muted)}.lampiran__trailing{display:flex;align-items:center;gap:var(--s1);flex:0 0 auto}.lampiran__open{display:none}.lampiran__embed{min-width:0}.lampiran__poster{display:flex;align-items:center;justify-content:center;gap:var(--s2);width:100%;min-height:96px;padding:var(--s4);border:0;border-radius:var(--radius);background:var(--surface-tint);color:var(--ink);font-weight:500;cursor:pointer}.lampiran__poster-mark{display:grid;place-items:center}.lampiran__frame{width:100%;aspect-ratio:16 / 9;border:0;border-radius:var(--radius);background:var(--surface)}.lampiran__caution{margin:0;font-size:var(--t-sm);color:var(--muted)}.lampiran__caution:before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--act);vertical-align:.1em}.lampiran__add{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.lampiran__chips{display:flex;flex-wrap:wrap;gap:var(--s2);min-width:0}.lampiran__head .lampiran__chips{margin-left:auto;margin-block:-5px}@media (hover: hover){.lampiran__chips{opacity:0;transition:opacity var(--dur-press) var(--ease-out)}.lampiran:hover .lampiran__chips,.lampiran:focus-within .lampiran__chips,.lampiran__chips--open{opacity:1}}.lampiran__chip{flex:0 0 auto;border-style:dashed;box-shadow:none}.lampiran__chip--active{border-style:solid;color:var(--primary);border-color:var(--line);transform:none;box-shadow:none}.lampiran__surface{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s2);align-items:center}.lampiran__field{min-width:0}.lampiran__hint{margin:0;font-size:var(--t-sm);color:var(--muted)}.lampiran__hint--warn{color:var(--warn)}.lampiran__removed{margin:0;font-size:var(--t-sm);color:var(--muted)}.lampiran__removed:empty{display:none}.lampiran__uploads{min-width:0}.lampiran__upload{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.lampiran__upname{font-size:var(--t-sm);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 600px){.lampiran__copy{flex-direction:column;align-items:stretch;gap:1px}.lampiran__name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:break-word}.lampiran__meta{white-space:normal;overflow-wrap:break-word}}@media (max-width: 480px){.lampiran__surface{grid-template-columns:minmax(0,1fr);justify-items:start}}.lampiran--inline{margin-top:var(--s2);padding:0;border:0;background:transparent;box-shadow:none}.lampiran__chip.ui-btn:not(:disabled):hover,.lampiran__chip.ui-btn:not(:disabled):active{box-shadow:none;transform:none;background:var(--surface-tint);border-color:var(--line)}@media (hover: hover){.lampiran__remove{opacity:0;transition:opacity .1s var(--ease-out)}.lampiran__row:hover .lampiran__remove,.lampiran__row:focus-within .lampiran__remove,.lampiran__row:hover .drag-handle--bare,.lampiran__row:focus-within .drag-handle--bare{opacity:1}}.lampiran__line>.drag-handle{position:absolute;top:calc(var(--s2) + 3px);left:calc(-26px - var(--s1))}.lampiran__inline-add{display:inline-flex;align-items:center;gap:var(--s2);height:30px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);cursor:pointer}.lampiran__inline-add:hover{color:var(--ink)}.lampiran--inline .lampiran__chips{opacity:1}.lampiran--inline .lampiran__add{gap:0}.lampiran--inline .lampiran__surface{margin-top:var(--s2)}.instruction-player__empty{margin:0;color:var(--muted)}.mathfield{display:block;width:100%}.mathfield__fail{margin-top:var(--s2)}math-field{display:block;width:100%;border:var(--border);border-radius:var(--radius);background:var(--surface);padding:9px var(--s3);font-size:var(--t-lead);color:var(--ink);--caret-color: var(--primary);--selection-background-color: var(--primary-tint)}math-field:focus,math-field:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:2px}math-field::part(menu-toggle),math-field::part(virtual-keyboard-toggle){display:none}.mathtext{display:inline-block;vertical-align:middle}.symwrap{position:relative;margin-top:var(--s2)}.symbar{display:flex;flex-wrap:wrap;gap:var(--s4);padding:var(--s2);background:var(--surface-tint);border:var(--border);border-radius:var(--radius)}.symgrp{display:flex;flex-wrap:wrap;gap:var(--s1)}.symkey{min-height:40px;min-width:40px;padding:0 9px;border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--t-base);font-weight:var(--w-strong);line-height:1;box-shadow:var(--shadow-xs);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s ease,background-color .12s ease}.symkey:active{transform:scale(.96);background:var(--primary-tint)}.symkey .symglyph{display:inline-block;white-space:nowrap}.symkey .base{font-size:1.15em}.symkey sup,.symkey sub{font-size:.55em;font-weight:var(--w-strong);line-height:0}.symkey sup{vertical-align:.85em}.symkey sub{vertical-align:-.38em}.symkey--word{font-size:var(--t-xs)}.symkey--more{background:var(--primary-tint);color:var(--primary);font-weight:var(--w-strong)}.symkey[aria-expanded=true]{background:var(--primary);color:var(--on-primary)}.sympop{position:absolute;left:0;right:0;top:100%;z-index:6;margin-top:var(--s1);background:var(--surface);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:var(--s2);max-height:264px;overflow:auto}.sympop__search{width:100%;border:var(--border);border-radius:var(--radius);padding:8px var(--s3);font:inherit;font-size:var(--t-ui);background:var(--surface);color:var(--ink);margin-bottom:var(--s2)}.sympop__list{display:flex;flex-wrap:wrap;gap:var(--s1)}.sympop__list--rows{flex-direction:column}.sympop__row{display:flex;align-items:center;gap:var(--s2);width:100%;min-height:40px;border:var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-xs);font:inherit;font-size:var(--t-sm);font-weight:var(--w-strong);color:var(--ink);padding:0 var(--s3);cursor:pointer;text-align:left;transition:transform .12s ease,background-color .12s ease}.sympop__row:active{transform:scale(.98);background:var(--primary-tint)}.sympop__row .symglyph{min-width:30px;font-size:var(--t-lead)}.sympop__none{color:var(--muted);font-size:var(--t-xs);padding:var(--s2);margin:0}@media (prefers-reduced-motion: reduce){.symkey,.sympop__row{transition:none}}.ai-glyph{font-size:1.05em;line-height:1}.ai-card-trigger{flex:0 0 auto;white-space:nowrap}.ai-row-trigger{flex:0 0 auto;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:var(--t-ui);cursor:pointer;transition:background-color var(--dur-hover),color var(--dur-hover),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.ai-row-trigger:hover,.ai-row-trigger:focus-visible{background:var(--hover);color:var(--ink)}}.ai-row-trigger:active{transform:scale(.97)}.ai-standalone-host,.ai-standalone-host__panel{display:contents}.ai-pop{position:fixed;z-index:1001;display:flex;flex-direction:column;border-radius:var(--r-sheet);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 0 0 1px #0000000d,0 28px 60px -18px #0000004d,0 6px 16px -8px #0000001a;text-align:left;color:var(--ink);animation:ai-pop-in var(--dur-pop) var(--ease-out)}@keyframes ai-pop-in{0%{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion: reduce){.ai-pop{animation:ai-fade .12s linear}}@media (prefers-reduced-transparency: reduce){.ai-pop{background:var(--sheet)}}@keyframes ai-fade{0%{opacity:0}}.ai-pop__notch{position:absolute;left:calc(var(--nx) - 7px);top:-6px;width:14px;height:14px;transform:rotate(45deg);background:#fffffff7;box-shadow:-1px -1px #0000000f;clip-path:polygon(0 0,100% 0,0 100%);pointer-events:none}.ai-pop.up .ai-pop__notch{top:auto;bottom:-6px;box-shadow:1px 1px #0000000f;clip-path:polygon(100% 0,100% 100%,0 100%)}.ai-pop.side .ai-pop__notch{left:-6px;top:calc(var(--ny) - 7px);box-shadow:-1px 1px #0000000f;clip-path:polygon(0 0,0 100%,100% 100%)}.ai-pop.side.side-l .ai-pop__notch{left:auto;right:-6px;box-shadow:1px -1px #0000000f;clip-path:polygon(0 0,100% 0,100% 100%)}.ai-pop__x{position:absolute;top:8px;right:8px;z-index:1;width:24px;height:24px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color var(--dur-hover),color var(--dur-hover)}.ai-pop__x:hover,.ai-pop__x:focus-visible{color:var(--ink);background:var(--hover);outline:none}.ai-pop__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px 12px;font-size:var(--t-sm);line-height:1.45}.ai-pop__foot{flex:0 0 auto;border-radius:0 0 var(--r-sheet) var(--r-sheet);background:#fff9}.ai-pop__slot:empty{display:none}.ai-pop.sheet{position:fixed;border-radius:var(--r-sheet) var(--r-sheet) 0 0;animation:ai-sheet-in var(--dur-sheet) var(--ease-drawer)}.ai-pop.sheet .ai-pop__foot{border-radius:0;padding-bottom:env(safe-area-inset-bottom,0)}@keyframes ai-sheet-in{0%{transform:translateY(24px);opacity:0}}.ai-target-lit{background-color:#1f5a4412!important;border-radius:8px;outline:4px solid rgba(31,90,68,.07);outline-offset:0;transition:background-color var(--dur-pop)}.ai-acts{animation:ai-fade .2s var(--ease-out)}.ai-acts>button{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);width:100%;padding:10px 18px;border:0;border-top:1px solid rgba(0,0,0,.07);background:transparent;font:inherit;font-size:var(--t-sm);line-height:1.4;color:var(--ink-2);text-align:left;cursor:pointer;transition:background-color var(--dur-hover)}.ai-acts>button:hover:not(:disabled),.ai-acts>button:focus-visible{background:#0000000a;outline:none}.ai-acts>button:disabled{color:var(--muted);cursor:default}.ai-acts>button i{flex:none;font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums}.ai-acts>button i svg{display:block;transition:transform var(--dur-pop) var(--ease-out)}.ai-acts>.ai-acts__pri{color:var(--ink);font-weight:var(--w-em)}.ai-pop__foot>:last-child>button:last-child{border-radius:0 0 var(--r-sheet) var(--r-sheet)}.ai-acts.ai-foot-line,.susun__slot .ai-acts{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s4);padding:10px 18px;border-top:1px solid rgba(0,0,0,.07)}.ai-acts.ai-foot-line>button,.susun__slot .ai-acts>button{width:auto;padding:4px 0;border:0;border-radius:0;background:none;color:var(--ink-2)}.ai-acts.ai-foot-line>button:hover:not(:disabled),.ai-acts.ai-foot-line>button:focus-visible,.susun__slot .ai-acts>button:hover:not(:disabled),.susun__slot .ai-acts>button:focus-visible{background:none;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.ai-acts.ai-foot-line>.ai-acts__pri,.susun__slot .ai-acts>.ai-acts__pri{padding:6px 12px;border-radius:var(--radius);background:var(--ink);color:var(--paper, var(--sheet));font-weight:var(--w-strong)}.ai-acts.ai-foot-line>.ai-acts__pri:hover:not(:disabled),.ai-acts.ai-foot-line>.ai-acts__pri:focus-visible,.susun__slot .ai-acts>.ai-acts__pri:hover:not(:disabled),.susun__slot .ai-acts>.ai-acts__pri:focus-visible{background:var(--ink);color:var(--paper, var(--sheet));text-decoration:none;opacity:.88}.ai-acts.ai-foot-line>.ai-acts__pri:focus-visible,.susun__slot .ai-acts>.ai-acts__pri:focus-visible{outline:2px solid var(--focus, var(--ink));outline-offset:2px}.ai-acts.ai-foot-line>.ai-acts__pri:disabled,.susun__slot .ai-acts>.ai-acts__pri:disabled{background:var(--line);color:var(--muted)}.ai-acts.ai-foot-line>.ai-acts__pri i,.susun__slot .ai-acts>.ai-acts__pri i{color:inherit;opacity:.6}.ai-lead{margin:0 28px var(--s2) 0;font-size:var(--t-sm);color:var(--ink-2)}.ai-note{margin:6px 0 0;font-size:var(--t-xs);line-height:1.45;color:var(--muted)}.ai-pop__body>.ui-sec:first-child,.ai-pop__body>:first-child>.ui-sec:first-child{margin-right:28px}.ai-wait{margin:2px 28px 0 0;font-size:var(--t-sm);color:var(--ink-2)}.ai-el{color:var(--muted);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){.ai-acts{animation-duration:1ms}}.ai-fail strong{display:block;margin-right:28px;font-size:var(--t-sm);font-weight:var(--w-em);color:var(--ink)}.ai-fail p{margin:4px 0 0;font-size:var(--t-sm);color:var(--ink-2)}.ai-link{display:inline-flex;align-items:center;gap:var(--s1);padding:2px 6px;margin:-2px -6px;border:none;border-radius:6px;background:none;cursor:pointer;font:inherit;font-size:var(--t-xs);color:var(--muted);transition:background-color var(--dur-hover),color var(--dur-hover)}@media (hover: hover){.ai-link:hover,.ai-link:focus-visible{background:var(--hover);color:var(--ink);outline:0}}.ai-section+.ai-section{margin-top:var(--s4)}.ai-context-section__label{margin:0 0 2px;font-weight:var(--w-em);color:var(--ink);font-size:var(--t-xs)}.ai-chips{display:flex;flex-wrap:wrap;gap:6px;margin:var(--s3) 0 var(--s2)}.ai-ready-row{display:flex;gap:var(--s2);align-items:baseline;padding:var(--s2) 0;font-size:var(--t-sm)}.ai-ready-row+.ai-ready-row{border-top:1px solid rgba(0,0,0,.06)}.ai-ready-row__sev{flex:0 0 64px;font-size:var(--t-xs);color:var(--muted)}.ai-ready-row--blocker .ai-ready-row__sev{color:var(--danger-strong, var(--danger))}.ai-ready-row__msg{flex:1;min-width:0;color:var(--ink-2)}.ai-undo{margin-top:var(--s3)}.ai-undo-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:var(--t-xs)}.ai-undo-row+.ai-undo-row{border-top:1px solid rgba(0,0,0,.06)}.ai-bp{display:flex;flex-direction:column;gap:var(--s2)}.ai-bp-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ai-bp-step{display:inline-flex;align-items:center;gap:6px}.ai-bp-word{font-size:var(--t-xs);color:var(--muted)}.ai-bp-select{flex:0 0 auto;max-width:100%;min-width:0;font:inherit;font-size:var(--t-xs);color:var(--ink);background:var(--surface);border:var(--border);border-radius:8px;padding:4px 6px}.ai-bp-for{display:inline-flex;align-items:center;gap:8px;flex:1 1 160px;min-width:0}.ai-bp-select--criterion{flex:1 1 auto}.ai-bp-x{flex:0 0 auto;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}@media (hover: hover){.ai-bp-x:hover,.ai-bp-x:focus-visible{background:var(--hover);color:var(--ink)}}.ai-bp-add{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:2px 0;font-size:var(--t-xs);font-weight:var(--w-em);color:var(--ink-2);cursor:pointer}.ai-bp-add:disabled{opacity:.35;cursor:not-allowed}.ai-step-btn{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:var(--border);border-radius:8px;background:var(--surface);font-weight:var(--w-em);cursor:pointer;transition:background-color var(--dur-hover),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.ai-step-btn:not(:disabled):hover,.ai-step-btn:not(:disabled):focus-visible{background:var(--hover);outline:0}}.ai-step-btn:not(:disabled):active{transform:scale(.97)}.ai-step-btn:disabled{opacity:.35;cursor:not-allowed}.ai-step-count{flex:0 0 auto;min-width:34px;text-align:center;font-weight:var(--w-em);font-size:var(--t-xs);font-variant-numeric:tabular-nums;color:var(--ink);padding:2px var(--s2)}.ai-qgen-item{padding:var(--s3) 0;border-bottom:1px solid var(--line-soft)}.ai-qgen-item--off{opacity:.45}.ai-qgen-item__top{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;min-height:23px}.ai-qgen-item__text{font-family:var(--font-serif);font-size:var(--t-sm);margin:6px 0;white-space:pre-wrap;line-height:var(--lh);min-height:20px}.ai-qgen-skel-pill{display:inline-block;height:23px;border-radius:var(--radius-pill);background:var(--surface-strong)}.ai-qgen-skel-pill:nth-child(1){width:20px}.ai-qgen-skel-pill:nth-child(2){width:86px}.ai-qgen-skel-pill:nth-child(3){width:54px}.ai-qgen-skel-bar{height:20px;margin:6px 0;width:86%;border-radius:6px;background:var(--surface-strong)}.ai-qgen-skel-chip{display:inline-block;height:29px;width:78px;border-radius:var(--radius-pill);background:var(--surface-strong)}.ai-qgen-more{padding:var(--s2) 0;margin-bottom:var(--s2);font-size:var(--t-xs);color:var(--muted);text-align:center}.ai-qgen-item--in{animation:ai-fade .15s ease-out}@media (prefers-reduced-motion: reduce){.ai-qgen-item--in{animation:none}}.ai-qgen-item__choices{margin:0 0 6px;padding-left:1.2em;font-size:var(--t-xs);color:var(--muted)}.ai-qgen-item__choices .is-correct{color:var(--success);font-weight:var(--w-em)}.ai-qgen-item__actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}@media (hover: hover){.ai-qgen-item:not(:hover):not(:focus-within)>.ai-qgen-item__actions{opacity:0}.ai-qgen-item__actions{transition:opacity var(--dur-hover) var(--ease-out)}}.ai-cov-row{display:flex;gap:var(--s2);align-items:baseline;justify-content:space-between;padding:var(--s2) 0}.ai-cov-row+.ai-cov-row{border-top:1px solid rgba(0,0,0,.06)}.ai-cov-row__name{flex:1;min-width:0;font-size:var(--t-xs)}.ai-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-sec__action .ai-card-trigger{color:var(--muted);font-size:var(--t-sm)}.ui-sec__action .ai-card-trigger:hover{color:var(--ink)}.ai-steer__q{margin:0 28px var(--s2) 0;font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);color:var(--ink)}.ai-steer .ai-chips{margin:0 0 var(--s2)}.ai-steer .ui-textarea{margin-top:var(--s1);min-height:0;resize:none}.ai-steer__more{margin-bottom:0}.ai-steer__rest{margin:0 0 var(--s1)}.ai-inline{position:fixed;z-index:950;display:flex;flex-direction:column;overflow-y:auto;padding:var(--s3) var(--s4) var(--s3);margin-left:calc(-1 * var(--s4));box-sizing:content-box;border-radius:var(--r-sheet);background:var(--sheet);box-shadow:0 0 0 1px #0000000f,0 18px 40px -16px #00000038,0 4px 10px -6px #00000014;font-family:var(--font-body);animation:ai-fade .16s var(--ease-out)}@media (max-width: 599px){.ai-inline{margin-left:0;box-sizing:border-box}}.ai-inline__head{display:flex;align-items:center;gap:10px;margin-bottom:var(--s2);font-size:var(--t-sm);color:var(--muted)}.ai-inline__rule{flex:1;height:1px;background:var(--line)}.ai-inline__body{display:grid}.ai-inline__body>*{grid-area:1 / 1;min-width:0}.ai-inline__text,.ai-inline__diff{font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read);color:var(--ink)}.ai-inline__text>:first-child{margin-top:0}.ai-inline__text>:last-child{margin-bottom:0}.ai-inline__diff{margin:0;white-space:pre-wrap}.ai-inline__diff del{color:var(--muted);text-decoration-color:#00000059}.ai-inline__diff ins{text-decoration:none;background:#1f5a441a;border-radius:3px}.ai-swap{display:inline-grid}.ai-swap>*{grid-area:1 / 1;text-align:right}.ai-swap>[aria-hidden=true]{visibility:hidden}.ai-using{padding:0;border:0;background:none;font:inherit;font-size:var(--t-sm);color:var(--muted);cursor:pointer}.ai-using:hover,.ai-using[aria-expanded=true]{color:var(--ink)}.ai-using:focus-visible{outline:2px solid var(--focus, var(--ink));outline-offset:2px;border-radius:4px}.ai-using__list{margin:var(--s3) 0 0;padding:var(--s2) 0 0;border-top:1px solid var(--line-soft, var(--line));list-style:none;font-size:var(--t-xs);line-height:1.6;color:var(--muted)}.ai-inline__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s3);margin-top:var(--s3)}.ai-inline--loading .ai-inline__row,.ai-inline__done{margin-top:0}.ai-inline__wait{margin:0;font-size:var(--t-sm);color:var(--ink-2)}.ai-inline__btn{padding:4px 0;border:0;background:none;font:inherit;font-size:var(--t-sm);color:var(--ink-2);cursor:pointer}.ai-inline__btn:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.ai-inline__btn--end{margin-left:auto}.ai-inline__done{font-size:var(--t-sm);color:var(--ink-2)}.ai-inline__x{display:grid;place-items:center;width:26px;height:26px;margin-left:auto;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer}.ai-inline__x:hover{background:var(--hover);color:var(--ink)}.ai-inline .ai-acts{display:flex;gap:var(--s3);margin-top:var(--s2)}.ai-inline .ai-acts>button{width:auto;padding:4px 0;border:0}.susun-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001;display:grid;place-items:start center;padding:var(--s6) var(--s5);background:#1414141f;animation:ai-fade .16s var(--ease-out)}.susun{display:flex;flex-direction:column;width:min(1040px,100%);max-height:calc(100vh - 2 * var(--s6));border-radius:var(--r-sheet);background:var(--sheet);box-shadow:0 0 0 1px #0000000d,0 28px 60px -18px #0000004d;font-family:var(--font-body);animation:ai-pop-in var(--dur-sheet) var(--ease-out)}.susun__head{display:flex;align-items:center;justify-content:space-between;padding:var(--s3) var(--s3) var(--s2) var(--s5)}.susun__title{font-size:var(--t-ui);font-weight:var(--w-em);color:var(--ink)}.susun__x{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer}.susun__x:hover{background:var(--hover);color:var(--ink)}.susun__cols{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:0 var(--s6);padding:0 var(--s5);overflow:hidden}.susun__now,.susun__new{min-height:0;overflow-y:auto;padding-bottom:var(--s4)}.susun__new .ai-section{padding:0;border:0}.susun__list{margin:0;padding:0 0 0 1.4em;font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);color:var(--ink-2)}.susun__list li{padding:6px 0;border-bottom:1px solid var(--line-soft)}.susun__list li::marker{color:var(--muted);font-style:italic}.susun__empty{margin:0;font-size:var(--t-sm);color:var(--muted)}.susun__foot{flex:none;display:flex;align-items:center;gap:var(--s3);padding-right:18px;border-top:1px solid rgba(0,0,0,.07)}.susun__slot{flex:1;min-width:0}.susun__slot .ai-acts{border-top:0}@media (max-width: 760px){.susun-layer{padding:0;place-items:end stretch}.susun{width:100%;height:85vh;max-height:92vh;border-radius:var(--r-sheet) var(--r-sheet) 0 0}.susun__cols{grid-template-columns:minmax(0,1fr);align-content:start;overflow-y:auto}.susun__now,.susun__new{overflow:visible}.susun__now .susun__list,.susun__now .susun__empty{display:none}}.qgen-lead{margin:0;font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh);color:var(--ink)}.qgen-line{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.qgen-adjust{display:inline-flex;align-items:center;gap:6px;margin:var(--s2) 0;padding:4px 0;border:0;background:none;font:inherit;font-size:var(--t-sm);color:var(--ink-2);cursor:pointer}.qgen-adjust:hover{color:var(--ink)}.qgen-adjust__body{margin:0 0 var(--s3);padding-left:20px}.att-wrap{display:flex;flex-direction:column;gap:var(--s3)}.att{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s3);width:calc(100% + 2 * var(--s2));margin-inline:calc(-1 * var(--s2));padding:var(--s2);border:0;border-radius:var(--radius);background:transparent;color:var(--ink);text-align:left;text-decoration:none;justify-content:space-between}.att--interactive{font:inherit;cursor:pointer}@media (hover: hover){.att--interactive:hover{background:var(--hover);text-decoration:none}}.att__lead{display:flex;align-items:center;gap:var(--s3);flex:1;min-width:0}.att__media{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border-radius:var(--radius);background:var(--paper);color:var(--ink-2)}.att__main{display:flex;flex-direction:column;gap:2px;flex:1 1 45%;min-width:0}.att__meta{color:var(--muted);font-size:var(--t-xs);font-weight:400}.att__line{display:flex;align-items:center;gap:var(--s2);min-width:0}.att__label{font-weight:500;font-size:var(--t-ui);color:var(--ink);min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere}.att__link{display:inline-flex;align-items:center;gap:var(--s1);min-width:0;color:var(--primary);font-weight:500;font-size:var(--t-ui);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (hover: hover){.att__link:hover{text-decoration:underline}}.att__pill{display:inline-flex;align-items:center;gap:var(--s1);flex:0 0 auto;padding:var(--s1) var(--s3);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--sheet);color:var(--ink);font:inherit;font-weight:500;font-size:var(--t-sm)}.att__toggle{cursor:pointer}.att__embed{border-radius:var(--radius);overflow:hidden;background:var(--ink)}.att__frame{display:block;width:100%;aspect-ratio:16 / 9;border:0}.att--compact{gap:var(--s2);min-height:44px;padding:var(--s2) var(--s3);background:var(--sheet)}.att--compact .att__media{width:28px;height:28px;background:var(--surface)}.att--compact .att__label{font-size:var(--t-sm)}.assignment-player__prompt{margin:0;color:var(--ink);white-space:pre-wrap}.assignment-player__file{display:flex;align-items:center;gap:var(--s3)}.assignment-player__file-note{color:var(--muted);font-size:var(--t-sm)}.assignment-upload{display:flex;flex-direction:column;gap:var(--s2)}.assignment-upload__label{font-size:var(--t-sm);font-weight:500;color:var(--ink-2)}.assignment-upload__hint{font-size:var(--t-xs);color:var(--muted);line-height:var(--lh)}.assignment-upload__retry{margin-top:var(--s2)}.assignment-submit-hint{font-size:var(--t-xs);color:var(--muted);line-height:var(--lh);text-align:right}.reflection-answer__prompt{margin:0;font-size:var(--t-lead);font-weight:400;line-height:var(--lh)}.reflection-answer__n{min-width:1.2em;font-size:var(--t-sm);color:var(--muted);font-variant-numeric:tabular-nums}@media (min-width: 561px){.reflection-answer__n{margin-left:calc(-1.2em - var(--s2))}}.discussion-player__spacer{flex:1}.discussion-player__post{width:100%}.discussion-player__post-body{min-width:0;overflow-wrap:anywhere}.discussion-player__time{font-size:var(--t-xs);color:var(--muted)}.discussion-player__replies{display:flex;flex-direction:column;gap:var(--s2);list-style:none;margin:var(--s3) 0 0;padding-left:var(--s4);border-left:var(--border)}.discussion-player__reply{padding-top:var(--s2)}.discussion-player__reply+.discussion-player__reply{border-top:1px solid var(--line-soft)}.ui-card.disc-compose,.ui-card.disc-post{border:0;border-radius:0;background:transparent;box-shadow:none}.disc-compose>.ui-card__header,.disc-compose>.ui-card__body,.disc-post>.ui-card__body{padding-inline:0}.disc-compose .ui-card__title{font-size:var(--t-base);font-weight:var(--w-strong)}.disc-compose textarea{font-family:var(--font-serif);font-size:var(--t-base)}.ui-card.disc-post{border-top:1px solid var(--line)}.discussion-player__text{font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh);color:var(--ink);white-space:pre-wrap}.disc-post .discussion-player__replies+*,.disc-post .discussion-player__post+.ui-btn{margin-top:var(--s2)}.quiz-q__index{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);font-family:var(--font-display);font-weight:500;font-size:var(--t-sm);font-variant-numeric:tabular-nums}.quiz-q__index--toggle{position:relative;cursor:pointer;color:inherit}.quiz-q__index--toggle:after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}.quiz-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--quiz-fold-ms) cubic-bezier(.4,0,.2,1)}.quiz-fold--open{grid-template-rows:1fr}.quiz-fold__in{overflow:clip;min-height:0;min-width:0;padding-right:4px;opacity:0;visibility:hidden;transition:opacity .16s ease,visibility var(--quiz-fold-ms)}.quiz-fold__in>*{margin-bottom:4px}.quiz-fold--open>.quiz-fold__in{opacity:1;visibility:visible}@media (prefers-reduced-motion: reduce){.quiz-fold,.quiz-fold__in{transition:none}}.quiz-row-shell{display:flex;align-items:flex-start;gap:var(--s1);padding-left:var(--s3)}.quiz-row-shell>.drag-handle{margin-top:var(--s3)}.quiz-row{display:flex;align-items:flex-start;gap:var(--s3);flex:1;min-width:0;padding:var(--s3) var(--s4) var(--s3) var(--s1);border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.quiz-row__main{display:flex;flex-direction:column;gap:var(--s1);flex:1;min-width:0}.quiz-row__say{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap;min-width:0}.quiz-row__prompt{flex:1 1 12rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-serif);font-size:var(--t-base);font-weight:400}.quiz-row__prompt--empty{color:var(--muted);font-weight:400}.quiz-row__key{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-sm);color:var(--muted)}.quiz-row__key--missing{color:var(--danger)}.quiz-row__meta{display:flex;align-items:center;gap:var(--s1);flex-wrap:wrap;min-width:0}.quiz-row__meta .ui-badge{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quiz-row__points{flex:none;font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-sm)}.quiz-row__chevron{flex:none;color:var(--muted);margin-top:2px}.quiz-hint__mark{display:inline-flex;align-items:center;gap:var(--s1);flex:none;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.quiz-hint__rest{display:flex;align-items:baseline;gap:var(--s2);width:100%;padding:var(--s1) 0;border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.quiz-hint__rest-text{min-width:0;font-size:var(--t-sm);color:var(--muted)}.quiz-hint__box{max-height:118px;overflow-y:auto}.quiz-hint__toggle{display:inline-flex;align-items:center;gap:var(--s1);padding:var(--s3) 0;border:0;background:none;font:inherit;font-size:var(--t-sm);font-weight:var(--w-strong);color:var(--primary);text-align:left;cursor:pointer}.quiz-hint__text{margin:var(--s1) 0 0;font-size:var(--t-sm);color:var(--muted)}.quiz-choice{display:flex;align-items:flex-start;gap:var(--s2)}.quiz-choice__grow{flex:1;min-width:0}.quiz-choice__mark{display:inline-flex;align-items:center;flex:none;min-height:calc(1.4em + 2 * var(--s2, 8px) + 4px)}.quiz-match__row{display:flex;align-items:flex-start;gap:var(--s2)}.quiz-match__prompt{flex:1;min-width:0;font-weight:500}.quiz-match__link{flex:none;color:var(--muted)}.quiz-match__chosen{font-weight:500}.quiz-points-control{width:5.75rem;flex:none;margin:0}.quiz-points-control .ui-field__label{margin-bottom:3px;font-size:var(--t-xs)}.quiz-points-control .ui-input{min-height:34px;padding-block:var(--s1)}.quiz-points-control__row{display:inline-flex;align-items:center;gap:var(--s1)}.quiz-points-control__unit{color:var(--muted);font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong)}.quiz-add{display:flex;align-items:center;column-gap:var(--s3);row-gap:var(--s4);flex-wrap:wrap}.quiz-add__split{flex:0 1 auto;max-width:100%;min-width:0;align-items:stretch;padding:0;overflow:hidden}.quiz-add__split:has(.ui-select2--open){transform:none;box-shadow:none}.quiz-add__split[aria-disabled=true]{pointer-events:none}.quiz-add__split-body,.quiz-add__split-arrow{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--s2);background:transparent;border:0;color:inherit;font:inherit;cursor:pointer}.quiz-add__split-body{min-width:0;padding:var(--s2) var(--s4)}.quiz-add__split-arrow{padding:var(--s2) var(--s3);border-left:var(--border)}.quiz-add__split-body:focus-visible,.quiz-add__split-arrow:focus-visible{outline:var(--border-width) solid var(--on-primary);outline-offset:calc(var(--border-width) * -2)}.quiz-add__split-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--lh)}.quiz-add__split-kind{font-weight:var(--w-strong);opacity:.85;white-space:nowrap}.quiz-add__split-menu{display:flex;width:auto}.quiz-add__btn{flex:0 0 auto}.quiz-option{display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh);cursor:pointer}.quiz-option+.quiz-option{border-top:1px solid var(--line)}.quiz-option--picked+.quiz-option,.quiz-option+.quiz-option--picked{border-top-color:transparent}.quiz-option--picked{--ui-tint-hover-bg: var(--primary-tint);--ui-tint-active-bg: var(--primary-tint-strong);background:var(--primary-tint)}.quiz-option__input{margin-top:4px;flex:none;accent-color:var(--primary)}.quiz-option__text{flex:1;min-width:0}.quiz-key{margin:0;padding:var(--s2) var(--s3);border-radius:var(--radius-sm);background:var(--success-tint);color:var(--success-ink);font-size:var(--t-sm);overflow-wrap:anywhere}.quiz-credit{margin:var(--s1) 0 0;color:var(--muted);font-size:var(--t-xs);line-height:var(--lh);overflow-wrap:anywhere}.quiz-credit__label{color:var(--muted)}.quiz-credit a{color:inherit;text-decoration:underline}.quiz-q__prompt{margin:0;font-weight:var(--w-strong)}.quiz-num{font-variant-numeric:tabular-nums}.quiz-nav__where{margin:0;font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.quiz-nav__jump{min-height:44px;font-variant-numeric:tabular-nums}.quiz-nav__clear{margin:0;color:var(--muted)}.quiz-dots{display:flex;gap:3px}.quiz-dots__dot{flex:1 1 0;max-width:48px;height:3px;border-radius:var(--radius-pill);background:var(--line)}.quiz-dots__dot--done{background:var(--ink-2)}.quiz-dots__dot--current{background:var(--primary)}.quiz-player{flex:1 1 auto}.quiz-foot{margin-top:auto;position:sticky;bottom:0;z-index:5;background:var(--surface);border-top:var(--border);--quiz-bleed: calc(50vw - var(--mj-chrome-w, 0px) / 2 - 50%);margin-inline:calc(var(--quiz-bleed) * -1);padding:var(--s3) var(--quiz-bleed)}.quiz-foot:after{content:"";position:absolute;top:100%;left:0;right:0;height:var(--app-scroll-foot, 0px);background:var(--surface)}.quiz-jump{display:block}.quiz-jump__list{display:grid;flex:1 1 auto;min-width:0;grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:var(--s1);overflow-y:auto;max-height:34vh;scrollbar-width:none;padding:6px 0}.quiz-jump__list::-webkit-scrollbar{display:none}.quiz-jump__num{position:relative;flex:0 0 auto;min-width:32px;min-height:32px;padding:0 var(--s1);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);font:inherit;font-size:var(--t-sm);font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer}.quiz-jump__num:after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}.quiz-jump__list .quiz-jump__num{min-width:0;width:100%}.quiz-jump__num--done{background:var(--surface-tint);color:var(--ink)}.quiz-jump__num--current{background:var(--primary-tint);color:var(--ink);font-weight:var(--w-strong)}.quiz-walk{display:flex;align-items:flex-start;gap:var(--s4)}.quiz-walk .quiz-jump{flex:1 1 auto;min-width:0}.quiz-walk__step{flex:0 0 auto;width:44px;height:44px;padding:0;border-radius:var(--radius)}.quiz-outcome{margin:0;font-size:var(--t-sm);color:var(--muted)}.quiz-formula{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3);background:var(--surface-tint);border:var(--border);border-radius:var(--radius)}.quiz-qimg__label{font-size:var(--t-xs);font-weight:var(--w-strong)}.quiz-chip-select{width:auto}.quiz-chip{display:inline-flex;align-items:center;gap:var(--s1);padding:3px var(--s2);border:var(--border);border-radius:var(--radius-pill);background:var(--surface);box-shadow:var(--shadow-xs);color:var(--ink);font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:1.1;white-space:nowrap;cursor:pointer}.quiz-qimg__spacer{flex:1 1 auto}.quiz-qimg__empty{margin:0;font-size:var(--t-xs);color:var(--muted)}.quiz-qimg__need{display:flex;flex-direction:column;gap:var(--s1);min-width:0;padding:var(--s2) var(--s3);border:1px solid var(--warn);border-radius:var(--radius);background:var(--warn-tint);overflow:clip}.quiz-qimg__need-head{margin:0;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--warn)}.quiz-qimg__need-text{margin:0;font-size:var(--t-sm);color:var(--warn);overflow-wrap:anywhere}.quiz-qimg__need-why{margin:0;font-size:var(--t-xs);color:var(--warn);overflow-wrap:anywhere}.quiz-qimg__thumbs{display:flex;flex-wrap:wrap;gap:var(--s3);margin:0;padding:0;list-style:none}.quiz-qimg__thumb{position:relative;display:flex;flex-direction:column;gap:var(--s1);width:96px}.quiz-qimg__open{display:block;width:96px;height:72px;padding:0;overflow:hidden;border:var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}.quiz-qimg__open img{display:block;width:100%;height:100%;object-fit:cover}.quiz-qimg__off{position:absolute;top:-8px;right:-8px;display:grid;place-items:center;width:22px;height:22px;padding:0;border:var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);cursor:pointer}.quiz-qimg__name{overflow:hidden;font-size:var(--t-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.quiz-qimg__thumb--working .quiz-qimg__name{opacity:.6}.quiz-qimg__error{font-size:var(--t-xs);color:var(--danger-strong)}.quiz-qimg__pop-head{margin:0;font-size:var(--t-xs);color:var(--muted)}.quiz-qimg__opt{display:flex;align-items:center;gap:var(--s2);width:100%;padding:var(--s2);border:0;border-radius:var(--radius);background:transparent;text-align:left;cursor:pointer}.quiz-qimg__opt[aria-pressed=true]{background:var(--primary-tint);font-weight:var(--w-strong)}.quiz-qimg__opt-thumb{flex:none;width:40px;height:30px;border:var(--border);border-radius:var(--radius);object-fit:cover}.quiz-qimg__opt-name{min-width:0;overflow:hidden;font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.quiz-add-strip{border:var(--border-width) dashed var(--line, currentColor);border-radius:var(--radius-lg, 1rem);padding:var(--s4);background:var(--surface-tint, transparent)}.quiz-add-strip__empty{text-align:center}.quiz-add-strip__icon{font-size:var(--t-h1);line-height:1}.quiz-add-strip__title{margin:var(--s1) 0 0;font-weight:var(--w-strong)}.quiz-add-strip__hint{margin:var(--s1) 0 0;color:var(--muted);font-size:var(--t-ui)}.quiz-add-strip__empty~.quiz-add{justify-content:center}.quiz-add__crit{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.quiz-add__crit-lead{color:var(--muted)}.quiz-add__crit-pick{flex:0 1 auto;width:auto;max-width:100%;min-width:0}.quiz-add__crit-hint{margin:0;color:var(--muted);font-size:var(--t-ui)}.quiz-repair{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;padding-top:var(--s3);border-top:var(--border);color:var(--muted);font-size:var(--t-ui)}.quiz-add__doors{display:flex;align-items:center;gap:var(--s1);flex-wrap:wrap;flex:1 0 100%}.quiz-q__index--flat{border:0;background:transparent;box-shadow:none;min-width:0;padding:0;font-size:var(--t-h3);font-weight:var(--w-strong)}.quiz-q__kind{font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--primary)}.quiz-q__fold-icon{transform:rotate(180deg)}.quiz-q__menu{display:flex;flex-direction:column}.quiz-q__menu-row{display:flex;align-items:center;gap:var(--s2);width:100%;padding:var(--s2) var(--s3);border:0;border-radius:var(--radius);background:transparent;font-family:var(--font-body);font-size:var(--t-sm);font-weight:var(--w-strong);text-align:left;cursor:pointer;color:var(--ink)}.quiz-q__menu-row:hover{background:var(--surface-tint)}.quiz-q__menu-row--danger{color:var(--danger)}.quiz-grp{display:flex;flex-direction:column;gap:var(--s2)}.quiz-grp+.quiz-grp{padding-top:var(--s5);border-top:1px solid var(--surface-strong)}.quiz-grp .ui-field{margin-bottom:0}.quiz-field--hero>.ui-field__label{font-size:var(--t-base);font-weight:var(--w-strong)}.quiz-grp--meta .ui-field__label,.quiz-grp--meta .ui-select2__label{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.quiz-qimg--quiet{order:1}.quiz-fw{position:relative}.quiz-fw>.ui-textarea{padding-right:38px}.quiz-sig{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:26px;height:26px;padding:0;border:var(--border);border-radius:var(--radius-sm, 6px);background:var(--surface);color:var(--muted);opacity:.45;cursor:pointer;transition:opacity .12s ease,background .12s ease,color .12s ease}.quiz-sig:hover,.quiz-fw:focus-within .quiz-sig{opacity:1}.quiz-sig--on{opacity:1;background:var(--primary);color:var(--on-primary)}.quiz-sig:focus-visible{opacity:1;outline:1px solid var(--primary);outline-offset:2px}.quiz-choice-wrap{display:flex;flex-direction:column;--quiz-choice-grip: 0px}.quiz-choice-wrap.reorder-target{--quiz-choice-grip: calc(26px + var(--s2))}.quiz-choice__grip{margin-top:4px}.quiz-echo{margin:var(--s1) 0 0;padding-left:var(--s3);border-left:1px solid var(--surface-strong);font-size:var(--t-sm);line-height:var(--lh-read);color:var(--muted)}.quiz-choice-wrap>.quiz-echo{margin-left:calc(var(--quiz-choice-grip) + 20px + var(--s2))}.quiz-pick__ctx{margin:0 0 var(--s4);font-size:var(--t-ui);line-height:var(--lh-read);color:var(--ink)}.quiz-pick__ctx span{color:var(--muted);font-style:italic}.quiz-pick__q{display:flex;gap:var(--s2);align-items:center;margin-bottom:var(--s2)}.quiz-pick__q>:first-child{flex:1;min-width:0}.quiz-pick__src{margin:0 0 var(--s3);font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.quiz-pick__res{min-height:268px}.quiz-pick__idle{margin:0;padding:var(--s5) var(--s3);text-align:center;font-size:var(--t-sm);color:var(--muted)}.quiz-pick__hits{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:var(--s3);margin:0;padding:0;list-style:none}.quiz-pick__hit{display:block;width:100%;padding:0;overflow:hidden;text-align:left;background:var(--surface);border:var(--border);border-radius:var(--radius);cursor:pointer}.quiz-pick__hit:hover{transform:none}.quiz-pick__hit:focus-visible{outline:var(--border-width) solid var(--ink);outline-offset:2px}.quiz-pick__hit-img{display:block;width:100%;height:108px;object-fit:cover;background:var(--surface-strong)}.quiz-pick__hit-meta{display:block;padding:var(--s2);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh);color:var(--ink)}.quiz-pick__hit-lic{display:block;margin-top:2px;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.quiz-pick__skipped{margin:var(--s3) 0 0;font-size:var(--t-xs);color:var(--muted)}.quiz-pick__state{padding:var(--s4);text-align:center;font-size:var(--t-sm);line-height:var(--lh-read);color:var(--muted);border:1px dashed var(--surface-strong);border-radius:var(--radius)}.quiz-pick__state b{display:block;margin-bottom:var(--s1);font-family:var(--font-display);font-size:var(--t-ui);color:var(--ink)}.quiz-pick__state-acts{display:flex;gap:var(--s2);flex-wrap:wrap;justify-content:center;margin-top:var(--s3)}.quiz-pick__confirm{padding:var(--s3);background:var(--surface-tint);border:var(--border);border-radius:var(--radius)}.quiz-pick__big{display:block;width:100%;max-height:280px;object-fit:contain;background:var(--surface-strong);border-radius:var(--radius)}.quiz-pick__rows{margin:var(--s3) 0;font-size:var(--t-xs);line-height:var(--lh-read)}.quiz-pick__rows dt{font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.quiz-pick__rows dd{margin:0 0 var(--s2)}.quiz-pick__alt{margin-bottom:var(--s3)}.quiz-pick__acts{display:flex;gap:var(--s2);flex-wrap:wrap}.quiz-pick__error{margin:0 0 var(--s2);font-size:var(--t-xs);color:var(--danger)}.quiz-pick__note{margin:var(--s3) 0 0;font-size:var(--t-xs);line-height:var(--lh-read);color:var(--muted)}.quiz-player .quiz-question.ui-card{border:0;border-radius:0;background:transparent;box-shadow:none}.quiz-player .quiz-question>.ui-card__header,.quiz-player .quiz-question>.ui-card__body{padding-inline:0}.quiz-question .ui-card__title{font-family:var(--font-serif);font-size:var(--t-h2);font-weight:400;line-height:var(--lh)}.quiz-question .quiz-num{border:0;background:transparent;padding:0;color:var(--muted);font-size:var(--t-sm);font-weight:400}.quiz-question .quiz-options{gap:0}.ui-card.quiz-qrow{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.quiz-qrow .quiz-row-shell{padding-left:0}.quiz-fw textarea,.quiz-fw .ui-input{font-family:var(--font-serif);font-size:var(--t-base)}.ae-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--s6) var(--s5)}.ae-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#1515152e}.ae-sheet{--doc-gutter: 80px;position:relative;display:flex;flex-direction:column;width:min(1120px,100%);height:100%;max-height:920px;border-radius:var(--r-sheet);background:var(--sheet);box-shadow:var(--glass-shadow);overflow:hidden;outline:none}.ae-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:52px;padding:0 var(--s3) 0 var(--doc-gutter);font-family:var(--font-body);font-size:var(--t-sm)}.ae-bar__type{color:var(--muted)}.ae-bar__end{display:inline-flex;align-items:center;gap:var(--s3)}.ae-saved{color:var(--muted);white-space:nowrap}.ae-x{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer;transition:background var(--dur-hover) var(--ease-out)}.ae-x:hover{background:var(--hover);color:var(--ink)}.ae-x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ae-scroll{position:relative;flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start}.ae-doc{position:relative;min-width:0;max-width:800px;width:100%;padding:var(--s3) var(--s6) 120px var(--doc-gutter)}.ae-props{position:sticky;top:0;align-self:stretch;min-height:100%;padding:var(--s3) var(--s5) var(--s6);background:var(--paper);font-family:var(--font-body);font-size:var(--t-sm)}.ae-pgroup+.ae-pgroup{margin-top:var(--s5)}.ae-pgroup>.ui-sec{margin:0 0 var(--s1)}.ae-prop{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:baseline;column-gap:var(--s3);min-height:30px;padding:5px 0}.ae-prop__k{color:var(--muted)}.ae-prop__v{min-width:0;color:var(--ink);line-height:var(--lh)}.ae-prop__v--quiet,.ae-prop__v--quiet .ae-pv{color:var(--muted)}.ae-pv,.ae-props .route-token{display:inline;margin:0 -6px;padding:2px 6px;border:0;border-radius:var(--radius-sm);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background var(--dur-hover) var(--ease-out)}.ae-pv:hover,.ae-props .route-token:hover{background:var(--hover)}.ae-pv:focus-visible,.ae-props .route-token:focus-visible{outline:2px solid var(--accent);outline-offset:0}.ae-props .ui-datepicker{display:inline;width:auto;min-width:0}.ae-pv--list{display:block;width:calc(100% + 12px)}.ae-plines{display:block}.ae-plines>span{display:block}.ae-plines>span+span{margin-top:2px}.ae-pnote{margin:var(--s1) 0 0;color:var(--muted);line-height:var(--lh)}.ae-route{margin:0 0 var(--s5);color:var(--muted);line-height:var(--lh)}.ae-route .st{margin-left:-12px}.ae-route__acts{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:2px}.ae-link{padding:0;border:0;background:none;color:var(--ink-2);font:inherit;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.ae-link:hover{color:var(--ink);text-decoration-color:currentColor}.ae-head{margin-bottom:var(--s6)}.ae-title{display:block;width:100%;margin:0;padding:0;border:0;background:none;color:var(--ink);font:var(--w-title) var(--t-h1) / var(--lh-tight) var(--font-serif);letter-spacing:-.01em;resize:none;overflow:hidden;outline:none}.ae-title::placeholder{color:var(--muted)}.ae-title-row{display:flex;align-items:baseline;gap:var(--s3)}.ae-title-row .ae-title{flex:1;min-width:0}.ae-plan{flex:none;font-family:var(--font-body);font-size:var(--t-sm);color:var(--muted);text-decoration:none}.ae-plan:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.ae-pop{display:flex;flex-direction:column;gap:var(--s3);padding:var(--s3)}.ae-pop__note{margin:0;font-size:var(--t-sm);color:var(--muted);line-height:var(--lh)}.ae-pop__line{margin:0;font-size:var(--t-sm);color:var(--ink-2)}.ae-pop__line b{font-weight:var(--w-em);color:var(--ink)}.ae-pop__person{font-family:var(--font-serif);font-size:var(--t-base);color:var(--ink-2);line-height:var(--lh)}.ae-doc .ae-sec{margin-top:var(--s6)}.ae-head+.ae-sec{margin-top:0}.ae-sec>.ui-sec{margin:0 0 var(--s3)}.ae-field{position:relative}.ae-field__hint{position:absolute;top:100%;left:0;margin-top:6px;font-family:var(--font-body);font-size:var(--t-xs);color:var(--muted);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-hover) var(--ease-out)}.ae-field:focus-within .ae-field__hint{opacity:.6;transition-delay:.4s}.ae-doc .md-editor,.ae-doc .md-editor:focus-within{border:0;border-radius:0;background:none;box-shadow:none}.ae-doc .md-editor__content,.ae-doc .md-editor:focus-within .md-editor__content,.ae-doc .md-editor--loading{min-height:1.6em;max-width:32em;padding:0;font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read);color:var(--ink)}.ae-doc .md-editor__content p.is-editor-empty:first-child:before{color:var(--muted)}.ae-doc .ae-line{display:block;width:100%;padding:0;border:0;background:none;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);resize:none;outline:none}.ae-doc .ae-line::placeholder{color:var(--muted)}.ae-list{margin:0;padding:0;list-style:none}.ae-item{position:relative;padding:10px 64px 10px 0;border-bottom:1px solid var(--line-soft)}.ae-item:first-child{padding-top:2px}.ae-item__n{position:absolute;left:-22px;width:14px;text-align:right;font-family:var(--font-serif);font-style:italic;font-size:var(--t-sm);line-height:var(--lh);color:var(--muted);padding-top:1px}.ae-item__acts{position:absolute;top:4px;right:0;display:inline-flex;gap:2px;opacity:0;transition:opacity var(--dur-hover) var(--ease-out)}.ae-item:first-child .ae-item__acts{top:-4px}.ae-item:hover .ae-item__acts,.ae-item:focus-within .ae-item__acts{opacity:1}@media (hover: none){.ae-item__acts{opacity:1}}.ae-item__x{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer}.ae-item__x:hover{background:var(--hover);color:var(--ink)}.ae-item>.ui-banner{margin-top:var(--s2)}.ae-empty{margin:0 0 var(--s2);font-size:var(--t-sm);color:var(--muted)}.ae-add{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s2)}.ae-add__btn{display:inline-flex;align-items:center;gap:6px;padding:6px 0;border:0;background:none;color:var(--muted);font-family:var(--font-body);font-size:var(--t-sm);cursor:pointer}.ae-add__btn:hover:not(:disabled){color:var(--ink)}.ae-doc .lampiran__head{flex-wrap:nowrap;gap:10px;margin-bottom:0}.ae-doc .lampiran__label{font-size:var(--t-sm);font-weight:var(--w-body);color:var(--muted)}.ae-doc .lampiran__count{color:var(--muted)}.ae-doc .lampiran__head:after{content:"";order:2;flex:1;height:1px;background:var(--line)}.ae-doc .lampiran__head>.lampiran__chips{order:3;margin-left:0}@media (min-width: 768px){.ae-doc .quiz-fold--row{margin-left:-74px}.ae-doc .quiz-fold--card{margin-inline:-25px}}.ae-doc .quiz-fold--card .ui-card{border-color:transparent;background:var(--paper)}.ae-doc .quiz-fold--card :is(.ui-textarea,.ui-input),.ae-doc .quiz-fold--card :is(.ui-textarea,.ui-input):focus{border-color:transparent;border-radius:0;background:transparent;box-shadow:none;padding-left:0;font-family:var(--font-serif);font-size:var(--t-base)}.ae-doc .quiz-fold--card :is(.ui-textarea,.ui-input):focus{box-shadow:inset 0 -1px 0 var(--line-strong)}.ae-doc .quiz-fold--card :is(.ui-textarea--invalid,.ui-input--invalid){box-shadow:inset 0 -1px 0 var(--danger)}.ae-doc .quiz-fold--card .ui-field__label{font-weight:var(--w-body);color:var(--muted)}@media (max-width: 767px){.ae-layer{padding:0;align-items:flex-end}.ae-sheet{width:100%;max-height:none;height:calc(100% - 12px);border-radius:var(--r-sheet) var(--r-sheet) 0 0}.ae-sheet{--doc-gutter: var(--s5)}.ae-bar{padding:0 var(--s2) 0 var(--doc-gutter)}.ae-scroll{display:block}.ae-doc{padding:var(--s2) var(--s5) var(--s6) var(--doc-gutter)}.ae-doc .lampiran__line>.drag-handle{left:calc(var(--s2) - var(--doc-gutter));width:var(--doc-gutter)}.ae-props{position:static;min-height:0;padding:var(--s5) var(--s5) 96px}.ae-title{font-size:var(--t-h2)}.ae-doc .lampiran__head{flex-wrap:wrap}.ae-doc .lampiran__head>.lampiran__chips{flex-basis:100%;margin-block:0}}.ae-doc .quiz-fold--card .quiz-points-control .ui-input{padding-right:6px;text-align:right;font-family:var(--font-body);font-variant-numeric:tabular-nums}@media (max-width: 767px){.ae-doc .quiz-row-shell{padding-left:0}.ae-doc .quiz-row-shell>.drag-handle{display:none}.ae-doc .quiz-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;column-gap:var(--s2);row-gap:var(--s1);padding-left:0;padding-right:0}.ae-doc .quiz-row .quiz-row__main{display:contents}.ae-doc .quiz-row .quiz-q__index{grid-area:1 / 1;display:inline;min-width:0;height:auto;padding:0;font-family:var(--font-serif);font-style:italic}.ae-doc .quiz-row .quiz-row__say{display:contents}.ae-doc .quiz-row .quiz-row__prompt{grid-area:1 / 2}.ae-doc .quiz-row .quiz-row__key{grid-column:1 / -1}.ae-doc .quiz-row .quiz-row__chevron{grid-area:1 / 3;align-self:start}.ae-doc .quiz-row .quiz-row__main>:not(.quiz-row__say){grid-column:1 / -1}}.quiz-run{display:flex;flex-direction:column}.quiz-run__state{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);margin:0 0 var(--s2);font-family:var(--font-display);font-size:var(--t-base);font-weight:var(--w-strong);color:var(--ink)}.quiz-run__dot{width:12px;height:12px;flex:0 0 auto;border:var(--border);border-radius:var(--radius-pill);background:var(--surface)}.quiz-run__state--open .quiz-run__dot{background:var(--success)}.quiz-run__since{font-family:var(--font-body);font-size:var(--t-xs);font-weight:500;color:var(--muted)}.quiz-run__actions{display:flex;flex-wrap:wrap;gap:var(--s2)}.quiz-run__collected{margin:var(--s5) 0 0;font-size:var(--t-xs);color:var(--muted)}.quiz-run__link{position:relative;padding:0;border:0;background:none;font:inherit;color:var(--primary-strong);text-decoration:underline;cursor:pointer}.quiz-run__link:after{content:"";position:absolute;inset-inline:0;top:50%;height:24px;transform:translateY(-50%)}.quiz-run__link:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:2px}.quiz-run__missing{margin:var(--s2) 0 0;padding-left:var(--s4);font-size:var(--t-xs);color:var(--ink)}.student-activity-shell{display:flex;flex-direction:column;gap:var(--s5);flex:1 0 auto}.student-activity-hero{display:flex;flex-direction:column;gap:var(--s2)}.student-activity-hero__eyebrow{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--muted)}.student-activity-hero__mark{width:3px;height:14px;flex:none;border-radius:var(--radius-pill);background:var(--subj)}.student-activity-hero__title{margin:0;font-family:var(--font-serif);font-size:clamp(26px,4.4vw,34px);font-weight:500;line-height:var(--lh-tight);letter-spacing:-.005em;color:var(--ink);overflow-wrap:anywhere}.student-activity-hero__group{margin:0;color:var(--muted);font-size:var(--t-ui);line-height:var(--lh)}.student-activity-shell .player-prompt,.student-activity-shell .reflection-answer__prompt,.student-activity-shell .quiz-match__prompt,.student-activity-shell .player-layout>.player-teacher-comment .ui-banner__body{font-family:var(--font-serif)}.student-activity-shell .player-prompt{font-size:var(--t-lead);line-height:var(--lh-read)}.student-activity-shell .player-layout>.player-teacher-comment .ui-banner__body{font-size:var(--t-base);line-height:var(--lh-read)}.student-activity-shell .player-layout textarea,.student-activity-shell .player-layout .ProseMirror{font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read)}.submit-moment{display:flex;align-items:center;gap:var(--s3);padding:var(--s4);border-radius:var(--radius-lg);background:var(--success-tint);color:var(--success-ink);transform-origin:50% 0;animation:submit-moment-arrive .28s var(--ease-out) both}.submit-moment__seal{display:inline-grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--sheet);color:var(--success)}.submit-moment__words{display:flex;flex-direction:column;gap:1px}.submit-moment__title{font-family:var(--font-serif);font-size:var(--t-h3);color:var(--ink)}.submit-moment__body{font-size:var(--t-sm);color:var(--success-ink)}@keyframes submit-moment-arrive{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}@keyframes submit-moment-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.submit-moment{animation:submit-moment-fade .2s linear both}}.student-activity-shell--moment .player-layout>.ui-banner--success{display:none}.player-layout{flex:1 1 auto;min-height:0}.player-prompt{margin:0;font-size:var(--t-base);line-height:var(--lh-read);color:var(--ink);white-space:pre-line}.s-criteria{display:grid;gap:var(--s3);padding:var(--s4);border-radius:var(--radius-lg);background:var(--paper)}.s-criteria__heading{margin:0;font-size:var(--t-sm);font-weight:500;color:var(--muted)}.s-criteria__list{display:grid;gap:var(--s4);margin:0;padding:0;list-style:none}.s-criteria__item{display:grid;gap:var(--s1)}.s-criteria__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s2)}.s-criteria__label{font-family:var(--font-serif);font-size:var(--t-base);color:var(--ink)}.s-criteria__weight{font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums}.s-criteria__mark{margin-left:auto;font-size:var(--t-sm);font-weight:var(--w-body);color:var(--ink);font-variant-numeric:tabular-nums}.s-criteria__descriptor{margin:0;font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);color:var(--ink-2)}.s-criteria__indicator{margin:0;padding-left:var(--s3);border-left:1px solid var(--line-strong);font-size:var(--t-ui);line-height:var(--lh)}.s-criteria__indicator-label{font-size:var(--t-xs);color:var(--muted)}.s-criteria__indicator-text{font-family:var(--font-serif);color:var(--ink-2)}.sh-chips{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s1);color:var(--ink-2)}.sh-chips__item{display:inline-flex;gap:var(--s1)}.sh-chips__dot{color:var(--muted)}.sh-chip{border-radius:var(--radius-sm);cursor:help;white-space:nowrap}.sh-chip:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.sh-chip--quiet{color:var(--muted);text-decoration:underline dashed var(--line-strong);text-underline-offset:3px}.sh-result{display:grid;gap:var(--s3);padding:var(--s4);border-radius:var(--radius-lg);background:var(--paper)}.sh-result__heading{margin:0;font-size:var(--t-sm);font-weight:500;color:var(--muted)}.sh-result__said{display:grid;gap:var(--s1)}.sh-result__who{font-size:var(--t-sm);font-weight:var(--w-strong);color:var(--ink)}.sh-result__words{margin:0;font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);color:var(--ink-2)}.sh-lines{display:grid;gap:var(--s2);margin:0;padding:0;list-style:none}.sh-lines__item{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s1) var(--s2)}.sh-lines__label{font-family:var(--font-serif);color:var(--ink)}.sh-lines__mark{margin-left:auto;font-size:var(--t-sm);color:var(--ink);font-variant-numeric:tabular-nums}.sh-others{display:grid;gap:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.sh-others__rule{margin:0;font-size:var(--t-sm);line-height:var(--lh);color:var(--muted)}.sh-others__subject{display:grid;gap:var(--s2)}.sh-others__subject .sh-lines__label,.sh-others__subject .sh-lines__mark{color:var(--ink-2)}.sh-others__label{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.sh-others__none{font-size:var(--t-sm);color:var(--muted)}.sh-graded-by{margin:0;font-size:var(--t-sm);line-height:var(--lh);color:var(--muted)}.calendar-header{align-items:stretch;margin-bottom:0;padding-block:0}.calendar-header .ui-page-header__bar{justify-content:flex-start}.calendar-view-controls{display:flex;align-items:center;align-self:flex-end;justify-content:flex-end;gap:var(--s2);min-width:0}@media (max-width: 900px){.calendar-header{align-items:flex-start;flex-direction:column;gap:var(--s4)}}@media (max-width: 600px){.calendar-screen{gap:var(--s6)}.calendar-header .ui-page-header__subtitle{display:none}.calendar-view-controls{align-items:center;gap:var(--s3);width:100%}.calendar-view-controls .ui-segmented{flex:1 1 auto}}.cal-agenda__day .student-band__title{margin-bottom:var(--s1)}.cal-agenda__word--quiet{color:var(--muted);font-weight:400}.cal-agenda__word--quiet:before{background:var(--draft)}.cal-agenda__word--warn,.cal-agenda__title--done{color:var(--muted)}.ui-datepicker.cal-chip-picker{display:contents}button.cal-chip--movable{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;margin:0;border:0;background-color:transparent;font-family:inherit;text-align:left;cursor:grab;touch-action:manipulation}button.cal-week__due.cal-chip--movable{width:auto;background:radial-gradient(circle at 6px 50%,var(--cal-event-accent, var(--primary)) 3px,transparent 3.5px),var(--sheet);border:var(--border)}button.cal-week__all-day-event.cal-chip--movable{background-color:var(--cal-event-bg, var(--surface-tint))}.cal-chip--open{background-color:var(--primary-tint)!important}.cal-drag-source{opacity:.35}.cal-drag-ghost{z-index:1200;pointer-events:none;cursor:grabbing;border-radius:var(--radius-sm);background-color:var(--glass)!important;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-lg);transition:none!important}.cal-drop-target{background-color:var(--primary-tint)!important;box-shadow:inset 0 0 0 1.5px var(--primary)}.cal-month{display:flex;flex-direction:column;gap:var(--s4)}.cal-month__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-width:0}.cal-month__period,.cal-month__controls{flex:0 1 auto;min-width:0}.cal-month__label{font-family:var(--font-display);font-weight:500;font-size:var(--t-lead);color:var(--ink);min-width:9.5rem;text-align:center}.cal-month__scroll{overflow-x:auto;border:var(--border);border-radius:var(--radius-lg);background:var(--sheet)}.cal-month__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:44rem}.cal-month__weekday{font-family:var(--font-display);font-weight:500;font-size:var(--t-xs);color:var(--muted);text-align:center;padding:var(--s2) var(--s2);border-bottom:var(--border)}.cal-month__weekday:not(:last-child){border-right:var(--border)}.cal-month__cell{min-height:6.5rem;padding:var(--s2);display:flex;flex-direction:column;gap:var(--s1);background:var(--sheet)}.cal-month__cell:not(:nth-child(7n)){border-right:var(--border)}.cal-month__cell:not(:nth-child(n+43)){border-bottom:var(--border)}.cal-month__cell--muted .cal-month__date{color:var(--muted)}.cal-month__date{font-weight:500;font-size:var(--t-sm);color:var(--ink);display:flex;justify-content:flex-end;line-height:var(--lh)}.cal-month__today-pill{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 var(--s1);background:var(--primary-tint);color:var(--primary);font-weight:var(--w-strong);border-radius:var(--radius-pill)}.cal-month__events{display:flex;flex-direction:column;gap:var(--s1);min-width:0}.cal-event{display:flex;align-items:flex-start;gap:6px;min-width:0;padding:2px var(--s1);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--t-xs);font-weight:400;line-height:var(--lh-tight);text-decoration:none}.cal-event:before{content:"";flex:0 0 auto;width:7px;height:7px;margin-top:4px;border-radius:var(--radius-pill);background:var(--cal-event-accent, var(--primary))}@media (hover: hover){.cal-event:hover{background:var(--hover);text-decoration:none}}.cal-event:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cal-event--done,.cal-event--closed{color:var(--muted)}.cal-event--done:before,.cal-event--closed:before{background:transparent;box-shadow:inset 0 0 0 1.5px var(--cal-event-accent, var(--primary))}.cal-event--returned,.cal-event--overdue{color:var(--danger-strong)}.cal-event__check{flex:0 0 auto;font-weight:500}.cal-event__status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cal-event__title{flex:1 1 auto;min-width:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.cal-month__more{align-self:flex-start;font-size:var(--t-xs)}@media (max-width: 560px){.cal-month__bar{align-items:stretch;flex-direction:column;gap:var(--s4)}.cal-month__controls{order:-1}.cal-month__period{justify-content:flex-start}.cal-month__grid{min-width:0}.cal-month__cell{min-height:3.5rem;padding:var(--s1)}.cal-month__date{justify-content:center}.cal-month__events{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:0}.cal-event{padding:4px}.cal-event:before{margin-top:0}.cal-event__check,.cal-event__title{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.cal-month__more{display:none}}.cal-month__period>.ui-btn--ghost:first-child{margin-left:calc(-1 * var(--ui-btn-pad, 0px))}.cal-week{display:flex;flex-direction:column;gap:var(--s4)}.cal-week__bar{flex-wrap:wrap}.cal-week__label{font-family:var(--font-display);font-weight:500;font-size:var(--t-lead);color:var(--ink);min-width:11rem;text-align:center}.cal-week__scroll{overflow-x:auto;border:var(--border);border-radius:var(--radius-lg);background:var(--surface)}.cal-week__grid{display:grid;grid-template-columns:3.25rem repeat(7,minmax(6.5rem,1fr));min-width:44rem}.cal-week__corner{border-bottom:var(--border);border-right:var(--border)}.cal-week__daycol-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--s2);border-bottom:var(--border)}.cal-week__daycol-header:not(:last-child){border-right:var(--border)}.cal-week__weekday{font-family:var(--font-display);font-weight:500;font-size:var(--t-xs);color:var(--muted)}.cal-week__daynum{font-family:var(--font-display);font-weight:500;font-size:var(--t-base);color:var(--ink)}.cal-week__daycol-header--today .cal-week__daynum{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 var(--s1);background:var(--primary-tint);color:var(--primary);font-weight:var(--w-strong);border-radius:var(--radius-pill)}.cal-week__all-day-label,.cal-week__all-day{min-height:2.25rem;padding:var(--s1);border-bottom:var(--border)}.cal-week__all-day-label{border-right:var(--border);font-size:var(--t-xs);color:var(--muted);text-align:right}.cal-week__all-day:not(:last-child){border-right:var(--border)}.cal-week__all-day-event{display:block;overflow:hidden;padding:2px 4px 2px 14px;border-radius:var(--radius-sm);background:radial-gradient(circle at 6px 50%,var(--cal-event-accent, var(--primary)) 3px,transparent 3.5px);color:var(--ink);font-size:var(--t-xs);line-height:var(--lh-tight);text-decoration:none;text-overflow:ellipsis;white-space:nowrap}@media (hover: hover){.cal-week__all-day-event:hover{background-color:var(--hover);text-decoration:none}}.cal-week__all-day-event--grade-by,.cal-week__due--grade-by{color:var(--warn)}.cal-week__hours{display:flex;flex-direction:column;border-right:var(--border)}.cal-week__hour-label{display:flex;align-items:flex-start;justify-content:flex-end;padding:2px var(--s1) 0 0;font-size:var(--t-xs);color:var(--muted);border-bottom:var(--border);box-sizing:border-box}.cal-week__daycol{position:relative;background:var(--sheet)}.cal-week__daycol:not(:last-child){border-right:var(--border)}.cal-week__daycol--today{background:var(--paper)}.cal-week__hour-row{border-bottom:var(--border);box-sizing:border-box}.cal-week__period{position:absolute;left:2px;right:2px;display:flex;flex-direction:column;gap:1px;overflow:hidden;padding:2px 4px;background:var(--cal-event-bg, var(--primary-tint));border-radius:var(--radius-sm);box-sizing:border-box;color:var(--ink);text-decoration:none}@media (hover: hover){.cal-week__period:hover{filter:brightness(.97);text-decoration:none}}.cal-week__period-course{font-weight:500;font-size:var(--t-xs);color:var(--cal-event-accent, var(--ink));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-week__period-time{font-size:var(--t-xs);color:var(--muted)}.cal-week__due{position:absolute;left:2px;right:2px;z-index:2;display:block;padding:1px 4px 1px 14px;background:radial-gradient(circle at 6px 50%,var(--cal-event-accent, var(--primary)) 3px,transparent 3.5px),var(--sheet);border:var(--border);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--t-xs);text-decoration:none}.cal-week__due:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cal-week__due-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-week__due--done,.cal-week__all-day-event--done{opacity:.5}.cal-week__due--returned,.cal-week__all-day-event--returned,.cal-week__due--overdue,.cal-week__all-day-event--overdue{color:var(--danger-strong)}.cal-week__due--closed,.cal-week__all-day-event--closed{opacity:.5}.cal-week__now-line{position:absolute;left:0;right:0;z-index:3;height:1px;background:var(--primary);pointer-events:none}.cal-week__now-line:before{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--primary)}.cal-week__bar>.ui-btn--ghost:first-child{margin-left:calc(-1 * var(--ui-btn-pad, 0px))}.cal-week__done{margin-right:3px;vertical-align:-1px}.inbox-unread{font-size:var(--t-sm);color:var(--primary);font-variant-numeric:tabular-nums}.inbox-list{display:flex;flex-direction:column}.inbox-row{--inbox-title-line: 22px;display:grid;grid-template-columns:8px minmax(0,1fr) auto;grid-template-areas:". type ." "dot title time" ". body body";align-items:start;column-gap:8px;margin-inline:calc(-1 * var(--s2));padding:var(--s3) var(--s2);border-radius:var(--radius);cursor:pointer}.inbox-row+.inbox-row{border-top:1px solid var(--line-soft)}.inbox-row--static{cursor:default}@media (hover: hover){.inbox-row:not(.inbox-row--static):hover{background:var(--hover)}}.inbox-row__dot{grid-area:dot;align-self:start;width:7px;height:7px;margin-top:calc((var(--inbox-title-line) - 7px) / 2);border-radius:var(--radius-pill)}.inbox-row--unread .inbox-row__dot{background:var(--primary)}.inbox-row__main,.inbox-row__line{display:contents}.inbox-row__type{grid-area:type;margin-bottom:2px;font-size:var(--t-xs);color:var(--muted)}.inbox-row__type--act{color:var(--danger-strong);font-weight:500}.inbox-row__time{grid-area:time;display:flex;align-items:center;height:var(--inbox-title-line);font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums}.inbox-row__title{grid-area:title;min-width:0;line-height:var(--inbox-title-line);font-size:var(--t-base);font-weight:500;color:var(--muted);overflow-wrap:anywhere}.inbox-row--unread .inbox-row__title{color:var(--ink)}.inbox-row__body{grid-area:body;margin:2px 0 0;font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh);color:var(--ink-2);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.s-grades-course{display:flex;flex-direction:column;gap:var(--s3)}.s-grades-course__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--s1) var(--s3)}.s-grades-course__title{display:inline-flex;align-items:center;gap:var(--s2);margin:0;font-size:var(--t-lead);font-weight:var(--w-strong)}.s-grades-course__title a{color:var(--subj);font-weight:var(--w-strong)}.s-grades-course__mark{width:3px;height:16px;flex:none;border-radius:var(--radius-pill);background:var(--subj)}.s-grades__muted{color:var(--muted);font-size:var(--t-sm)}.s-grades__returned{color:var(--danger-strong);font-size:var(--t-sm);font-weight:500}.s-grades__count{font-variant-numeric:tabular-nums}.s-grades__total{padding:var(--s3) var(--s4);border-radius:var(--radius);background:var(--subj-tint)}.s-grades__total-label{font-size:var(--t-sm);color:var(--ink-2)}.s-grades__total-num{font-size:var(--t-h2);font-weight:var(--w-strong);font-variant-numeric:tabular-nums;color:var(--ink)}.s-grades__activity{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.s-grades__title{font-family:var(--font-serif);font-size:var(--t-base);font-weight:400;line-height:22px;color:var(--ink)}.s-grades .ui-table td{vertical-align:top}.s-grades .ui-table td.ui-td--num{line-height:22px}.s-grades__score{color:var(--ink);font-size:var(--t-sm);white-space:nowrap}.s-grades__score strong{font-size:var(--t-base);font-weight:var(--w-strong);color:var(--ink);font-variant-numeric:tabular-nums}.s-grades__fold-row>td{padding:0;border-bottom:0}.s-grades__fold-body{padding:var(--s2) var(--s3)}.s-grades__feedback{margin:2px 0 0;max-width:62ch;font-family:var(--font-serif);font-size:var(--t-ui);line-height:var(--lh);color:var(--ink-2)}.grades-glance{margin:0;padding:0;list-style:none}.grades-glance__row{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr) auto;gap:var(--s4);align-items:baseline;padding:var(--s3) 0;border-bottom:1px solid var(--line-soft);color:var(--ink);text-decoration:none}@media (hover: hover){.grades-glance__row:hover{text-decoration:none}.grades-glance__row:hover .grades-glance__subject{text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}}.grades-glance__subject{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-serif);font-size:var(--t-lead)}.grades-glance__dot{flex:none;width:8px;height:8px;border-radius:50%}.grades-glance__total,.grades-glance__count{font-size:var(--t-sm);color:var(--muted);font-variant-numeric:tabular-nums}.grades-glance__total strong{color:var(--ink);font-weight:var(--w-em)}.s-grades__closed{font-size:var(--t-sm)}.tq-page{--ui-gap: var(--s6);display:grid;gap:var(--ui-gap)}.tq-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--s6) var(--s7);align-items:start}@media (max-width: 900px){.tq-split{grid-template-columns:minmax(0,1fr)}}.tq-section{display:grid;gap:var(--s2);min-width:0}.tq-section__head{display:flex;align-items:baseline;gap:var(--s2);margin:0;padding-bottom:var(--s2);border-bottom:1px solid var(--line);color:var(--ink);font-family:var(--font-body);font-size:var(--t-base);font-weight:var(--w-strong)}.tq-section__aside{margin-left:auto;color:var(--muted);font-size:var(--t-sm);font-weight:400}.tq-section__link{font-size:var(--t-sm);font-weight:500}.tq-list{display:grid;margin:0;padding:0;list-style:none}.tq-row{--tq-title-line: 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;column-gap:var(--s3);row-gap:1px;min-height:52px;padding:var(--s2) var(--s2);margin:0 calc(var(--s2) * -1);border:0;border-bottom:1px solid var(--line-soft);border-radius:var(--radius);color:inherit;text-decoration:none;text-align:left;background:transparent;width:calc(100% + var(--s4));font:inherit;cursor:pointer}.tq-list>.tq-row:last-child,.tq-list>li:last-child>.tq-row{border-bottom-color:transparent}.tq-row--static{cursor:default}@media (hover: hover){a.tq-row:hover,button.tq-row:hover{background:var(--hover);text-decoration:none}}.tq-row__body{display:contents}.tq-row__title{overflow:hidden;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-base);font-weight:500;line-height:var(--tq-title-line);text-overflow:ellipsis;white-space:nowrap;grid-column:1}.tq-row__meta{grid-column:1;overflow:hidden;color:var(--muted);font-size:var(--t-sm);text-overflow:ellipsis;white-space:nowrap}.tq-row__end{grid-column:2;grid-row:1;height:var(--tq-title-line);display:inline-flex;justify-content:flex-end;align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.tq-count{display:inline-flex;justify-content:flex-end;min-width:22px;color:var(--act-ink);font-size:var(--t-sm);font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.tq-empty{margin:0;padding:var(--s3) 0;color:var(--muted);font-size:var(--t-ui)}.tq-more{justify-self:start;margin-top:var(--s1);padding:var(--s1) 0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:var(--t-sm);cursor:pointer}@media (hover: hover){.tq-more:hover{color:var(--ink)}}.tq-day{display:grid;grid-template-columns:76px minmax(0,1fr);gap:var(--s3);padding:var(--s2) 0;border-bottom:1px solid var(--line-soft)}.tq-day:last-child{border-bottom-color:transparent}.tq-day__label{padding-top:3px;color:var(--muted);font-size:var(--t-sm)}.tq-day__label--today{color:var(--ink);font-weight:var(--w-strong)}.tq-day__items{display:grid;gap:var(--s1);min-width:0}.tq-day__item{display:grid;gap:0;min-width:0;color:inherit;text-decoration:none}.tq-day__item .tq-row__title{font-size:var(--t-base)}@media (hover: hover){a.tq-day__item:hover .tq-row__title{text-decoration:underline;text-underline-offset:3px}}@media (max-width: 560px){.tq-row__title,.tq-row__meta{white-space:normal}.tq-day{grid-template-columns:1fr;gap:var(--s1)}}.tq-row__title--sans{font-family:var(--font-body);font-size:var(--t-base);font-weight:500;line-height:var(--tq-title-line)}.tq-leaving{display:grid;grid-template-rows:1fr;pointer-events:none;animation:tq-collapse .2s var(--ease-move) .18s forwards}.tq-leaving>.tq-leaving__clip{min-height:0;overflow-x:visible;overflow-y:clip}.tq-leaving .tq-row{animation:tq-leave .2s var(--ease-out) forwards}@keyframes tq-leave{to{opacity:0;transform:translate(12px)}}@keyframes tq-collapse{to{grid-template-rows:0fr}}@media (prefers-reduced-motion: reduce){.tq-leaving .tq-row{animation:tq-fade-out .16s linear forwards}@keyframes tq-fade-out{to{opacity:0}}.tq-leaving{animation-duration:1ms;animation-delay:.2s}}.tq-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s3);margin:0;padding:0;list-style:none}.tq-card{display:grid;gap:2px;min-height:96px;padding:var(--s4);border-radius:10px;background:var(--surface-tint);color:inherit;text-decoration:none;transition:background-color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}@media (hover: hover){a.tq-card:hover{background:var(--blue-tint-strong);text-decoration:none}}a.tq-card:active{transform:scale(.98)}.tq-card__title{color:var(--ink);font-size:var(--t-base);font-weight:550}.tq-card__meta{color:var(--muted);font-size:var(--t-sm)}.tq-card__foot{align-self:end;margin-top:var(--s2);color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){a.tq-card:active{transform:none}}.open-choose{margin:var(--s6) 0 0;font-size:var(--t-base)}.open-choose__lead{margin-right:var(--s2);color:var(--muted)}.open-choose__sep{color:var(--muted)}.open-choose__option{color:var(--accent);text-decoration:none}.open-choose__out{margin:var(--s2) 0 0;font-size:var(--t-sm)}.open-choose__out a{color:var(--muted);text-decoration:none}.open-choose__out a:hover,.open-choose__out a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.open-choose__option:hover,.open-choose__option:focus-visible{text-decoration:underline;text-underline-offset:3px}.open-choose__option--button{padding:0;border:0;background:none;font:inherit;cursor:pointer}.claim-course-modal{max-width:920px;width:min(100%,920px);overflow:hidden}.claim-course-modal .ui-modal__body{padding:0}.claim-course-modal .ui-modal__footer{background:var(--surface)}@media (max-width: 720px){.teacher-courses-header .course-search-popover{flex:0 0 auto}}.claim-course-modal__selection{margin-right:auto;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-strong)}.claim-course-picker{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);height:clamp(320px,50vh,560px);min-height:0;overflow:hidden}.claim-course-modal .ui-modal__body>.ui-banner,.claim-course-modal .ui-modal__body>.ui-empty,.claim-course-modal .ui-modal__body>.ui-loading{margin:var(--s4) var(--s5)}.claim-course-picker__subjects,.claim-course-picker__classes{min-width:0;min-height:0;overflow-y:auto}.claim-course-picker__subjects{display:grid;align-content:start;gap:var(--s4);padding:var(--s4);border-right:var(--border);background:color-mix(in srgb,var(--surface-tint) 55%,white)}.claim-course-picker__stage{display:grid;gap:8px}.claim-course-picker__stage h3{margin:0;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:var(--w-strong)}.claim-course-picker__subject-list{display:grid;gap:8px}.claim-course-picker__subjects button{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;padding:10px 12px;border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);text-align:left;box-shadow:var(--shadow-xs);cursor:pointer}.claim-course-picker__subjects button:hover{transform:none;box-shadow:none}.claim-course-picker__subjects button.is-active{background:var(--primary-tint);box-shadow:var(--shadow-sm)}.claim-course-picker__subject-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:var(--t-ui);font-weight:var(--w-strong)}.claim-course-picker__subject-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:var(--border);border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-xs);font-size:var(--t-xs);font-weight:var(--w-strong)}.claim-course-picker__subject-classes{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px}.claim-course-picker__subject-classes em{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--muted);font-style:normal;font-size:var(--t-xs);font-weight:var(--w-strong);line-height:1}.claim-course-picker__subject-classes em.is-selected{background:var(--primary);color:var(--on-primary)}.claim-course-picker__subject-classes em.is-claimed-other{background:var(--surface-tint);color:var(--muted);opacity:.72}.claim-course-picker__subject-matrix{grid-column:1 / -1;display:grid;gap:5px;padding-top:1px}.claim-course-picker__matrix-row{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:6px}.claim-course-picker__matrix-row strong{color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:1}.claim-course-picker__matrix-row span{display:flex;flex-wrap:wrap;gap:4px}.claim-course-picker__matrix-row i{width:18px;height:18px;border:1.5px solid var(--line);border-radius:5px;background:var(--surface-tint)}.claim-course-picker__matrix-row i.is-selected{background:var(--primary)}.claim-course-picker__matrix-row i.is-claimed-other{background:var(--surface-tint);opacity:.72}.claim-course-picker__classes{display:grid;align-content:start;gap:var(--s4);padding:var(--s4) var(--s5) var(--s5)}.claim-course-picker__heading{display:flex;align-items:center;gap:var(--s3);min-width:0}.claim-course-picker__heading strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:var(--t-lead)}.claim-course-picker__heading span{color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-strong)}.claim-course-picker__grades{display:grid;gap:var(--s4)}.claim-course-picker__grade{display:grid;gap:var(--s2)}.claim-course-picker__grade h3{margin:0;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:var(--w-strong)}.claim-course-picker__class-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.claim-course-picker__class{position:relative;display:grid;place-items:center;gap:2px;min-height:44px;padding:8px;border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs);cursor:pointer;font-family:var(--font-display);font-size:var(--t-ui);font-weight:var(--w-strong);transition:transform .1s ease,box-shadow .1s ease,background .1s ease}.claim-course-picker__class:hover{transform:none;box-shadow:none}.claim-course-picker__class small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:currentColor;opacity:.78;font-family:var(--font-body);font-size:var(--t-xs);font-weight:var(--w-strong)}.claim-course-picker__class input{position:absolute;opacity:0;pointer-events:none}.claim-course-picker__class:has(input:checked){background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-sm)}.claim-course-picker__class.is-mine{cursor:pointer}.claim-course-picker__class.is-release{background:var(--surface);color:var(--ink);outline:1px solid var(--warn);outline-offset:1px}.claim-course-picker__class.is-claimed-other{background:var(--surface-tint);color:var(--muted);cursor:pointer;opacity:.78;box-shadow:none}.claim-course-picker__class:focus-within{outline:1px solid var(--accent);outline-offset:2px}.claim-course-picker__empty{margin:0;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-strong)}@media (max-width: 720px){.claim-course-picker{grid-template-columns:1fr;height:min(62vh,620px)}.claim-course-picker__subjects{grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);overflow-x:auto;border-right:0;border-bottom:var(--border)}}@media (max-width: 480px){.claim-course-picker__class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.teacher-course{display:grid;gap:var(--s5);min-width:0}.teacher-course__header{margin-bottom:0}.teacher-course-main{min-width:0}.students-panel{display:grid;gap:var(--s3)}.students-panel__summary{margin:0;color:var(--muted);font-size:var(--t-ui)}.class-schedule__chip{cursor:pointer;--ui-tint-hover-bg: var(--surface);--ui-tint-active-bg: var(--primary-tint);--ui-tint-border: var(--line)}.class-schedule__chip,.class-schedule__chip--unset{border:0;border-radius:7px;background:transparent;color:var(--ink-2);font-family:inherit;font-size:var(--t-sm);font-weight:var(--w-body);box-shadow:none;--ui-tint-hover-bg: var(--hover);--ui-tint-active-bg: var(--hover);--ui-tint-border: transparent}.class-schedule__chip--unset:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--warn);flex:none}.class-schedule__panel{display:flex;flex-direction:column;gap:var(--s3);padding:var(--s3)}.class-schedule__warn{margin:0;color:var(--danger, var(--ink));font-size:var(--t-sm);font-weight:var(--w-strong)}.meeting-days{display:flex;flex-direction:column;gap:var(--s2)}.meeting-days__question{margin:0;font-family:var(--font-display);font-size:var(--t-ui);font-weight:var(--w-strong)}.meeting-days__row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s1)}.meeting-days__day{min-height:44px;border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-family:var(--font-display);font-size:var(--t-sm);font-weight:var(--w-strong);cursor:pointer}.meeting-days__day--on{background:var(--primary, var(--ink));border-color:var(--primary, var(--line));color:var(--on-primary);--ui-tint-hover-bg: color-mix(in srgb, var(--primary) 88%, var(--ink));--ui-tint-active-bg: color-mix(in srgb, var(--primary) 76%, var(--ink));--ui-tint-border: color-mix(in srgb, var(--primary) 76%, var(--ink))}.meeting-days__day:focus-visible{outline:var(--border-width) solid var(--ink);outline-offset:2px}.meeting-days__hint{margin:0;color:var(--muted);font-size:var(--t-xs)}.import-dates{display:flex;flex-direction:column;gap:var(--s4)}.import-dates__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.import-dates__back{display:inline-flex;align-items:center;gap:var(--s1);min-height:32px;padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:var(--t-sm);font-weight:var(--w-strong)}.import-dates__back:hover{color:var(--ink)}.import-dates__ready{font-family:var(--font-display);font-size:var(--t-sm);font-weight:var(--w-strong);color:var(--muted)}.import-dates__body{display:flex;flex-direction:column;gap:var(--s4)}.import-dates__cols{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:stretch;border:var(--border);border-radius:var(--radius);overflow:hidden}.import-dates__ask{min-width:0;padding:var(--s4);border-right:var(--border);background:color-mix(in srgb,var(--surface-tint) 55%,white)}.import-dates__result{min-width:0;padding:var(--s4);background:var(--surface)}.import-dates__after{margin:var(--s2) 0 0;color:var(--muted);font-size:var(--t-xs);line-height:var(--lh)}.import-dates__result .import-dates__empty{height:100%;border:0;border-radius:0;background:transparent;box-shadow:none}@media (max-width: 720px){.import-dates__cols{grid-template-columns:minmax(0,1fr)}.import-dates__ask{border-right:0;border-bottom:var(--border)}}.import-dates__change{padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-size:var(--t-sm);font-weight:var(--w-strong);text-decoration:underline}.import-dates__label{margin:0 0 var(--s2);font-family:var(--font-display);font-size:var(--t-ui);font-weight:var(--w-strong)}.import-dates__follows{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);margin:var(--s2) 0 0;color:var(--muted);font-size:var(--t-sm)}.import-dates__preview{display:flex;flex-direction:column;gap:var(--s1);margin:0;padding:0;list-style:none;max-height:260px;overflow:auto}.import-dates__row{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);padding:var(--s2) var(--s3);border:var(--border);border-radius:var(--radius);background:var(--surface);font-size:var(--t-sm)}.import-dates__row-main{display:inline-flex;align-items:baseline;gap:var(--s2);min-width:0}.import-dates__row-num{color:var(--muted);font-family:var(--font-display);font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.import-dates__row-date{color:var(--muted);font-weight:var(--w-strong);white-space:nowrap}.import-dates__row-clash{display:flex;align-items:baseline;gap:var(--s2);flex-basis:100%;margin-top:calc(var(--s1) * -1);color:var(--muted);font-size:var(--t-xs);line-height:var(--lh)}.import-dates__clash-dot{flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:var(--danger);transform:translateY(-1px)}.import-dates .import-dates__actions{flex-direction:row-reverse}@media (max-width: 480px){.import-dates .import-dates__actions{flex-direction:column;align-items:stretch}}.session-undated-dot{position:relative;display:inline-block;width:8px;height:8px;flex:0 0 auto;margin-right:var(--s1);border-radius:50%;background:var(--danger, var(--warn))}.teach-plan__intro{color:var(--muted)}.teach-plan__title{display:grid;gap:6px}.teach-plan__title .teach-plan__intro{max-width:760px;font-family:var(--font-body);font-size:var(--t-sm);font-weight:var(--w-strong);line-height:var(--lh)}.teach-plan-workspace{max-width:960px;width:min(100%,960px);overflow:hidden}.teach-plan-workspace .ui-modal__body{padding:0}.teach-plan-workspace .ui-modal__footer{background:var(--surface)}.plan-picker{min-height:0}.plan-picker>.import-dates{padding:var(--s4) var(--s5)}.plan-picker>.ui-banner,.plan-picker>.ui-empty,.plan-picker>.ui-loading{margin:var(--s4) var(--s5)}.plan-picker__workspace{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);height:clamp(360px,58vh,680px);overflow:hidden}.plan-picker__shelf,.plan-picker__preview{min-width:0;min-height:0;overflow-y:auto}.plan-picker__shelf{display:grid;border-right:var(--border);background:color-mix(in srgb,var(--surface-tint) 55%,white)}.plan-picker__shelf-scroll{display:grid;align-content:start;gap:var(--s4);min-height:0;overflow-y:auto;padding:var(--s4)}.plan-picker__group{display:grid;gap:var(--s2)}.plan-picker__group-head{display:flex;align-items:center;gap:var(--s2)}.plan-picker__group-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:var(--t-sm)}.plan-picker__theme-list{display:grid;gap:8px}.plan-picker__theme{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--s2);padding:10px 12px;border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;box-shadow:var(--shadow-xs)}.plan-picker__theme:hover{transform:none;box-shadow:none}.plan-picker__theme.is-active{background:var(--blue-tint);box-shadow:var(--shadow-sm)}.plan-picker__theme.is-muted{opacity:.72;cursor:not-allowed}.plan-picker__theme-main{min-width:0;display:grid;gap:3px}.plan-picker__theme-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere;font-family:var(--font-display);font-size:var(--t-ui);font-weight:var(--w-strong);line-height:var(--lh-tight)}.plan-picker__theme-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.plan-picker__theme-state{display:inline-flex;color:var(--primary-strong)}.plan-picker__preview{padding:var(--s5);background:var(--surface)}.plan-preview__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4)}.plan-preview__title-block{min-width:0}.plan-preview__eyebrow{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong)}.plan-preview__title-block h3{margin:2px 0 0;font-family:var(--font-display);font-size:var(--t-h2);line-height:var(--lh-tight)}.plan-preview__title-block p{margin:var(--s2) 0 0;color:var(--muted);font-weight:var(--w-strong);line-height:var(--lh)}.plan-preview__action{flex:0 0 auto}.plan-preview__section{display:grid;gap:var(--s2);padding-top:var(--s4);border-top:var(--border)}.plan-preview__sessions{display:grid;gap:var(--s3)}.plan-picker__preview .plan-zone__pillars--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-picker__preview .plan-zone__pillars--cards .plan-pillar{gap:5px;padding:10px 12px;border:var(--border);border-radius:var(--radius);background:var(--surface-tint)}.plan-picker__preview .plan-zone__pillars--cards .plan-pillar dd{font-size:var(--t-xs);line-height:var(--lh)}.plan-theme__meta{display:block;margin-top:3px;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-theme__added,.ui-btn.plan-theme__added[aria-disabled=true]{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;box-shadow:none;background:transparent;opacity:1;transform:none;cursor:default;font-size:var(--t-xs);font-weight:var(--w-body);color:var(--muted)}.plan-theme__pull-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.plan-zone__label{display:inline-flex;align-items:center;gap:5px;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-zone__goals{margin:0;padding-left:18px;display:grid;gap:2px;font-size:var(--t-sm);font-weight:var(--w-strong)}.plan-zone__goals li::marker{color:var(--primary)}.plan-outcome{display:grid;gap:4px;padding:8px 10px;border:var(--border);border-radius:var(--radius);background:var(--surface-tint)}.plan-outcome__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2)}.plan-outcome__statement{font-size:var(--t-sm);font-weight:var(--w-strong);color:var(--ink)}.plan-outcome__indicators{margin:0;padding-left:16px;display:grid;gap:2px;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-outcome__indicators li::marker{color:var(--primary)}.plan-zone__pillars{margin:0;display:grid;gap:8px}.plan-pillar{display:grid;gap:1px}.plan-pillar dt{font-size:var(--t-xs);font-weight:var(--w-strong);letter-spacing:.03em;color:var(--primary)}.plan-pillar dd{margin:0;font-size:var(--t-sm);font-weight:500;color:var(--ink)}.plan-session{border:var(--border);border-radius:var(--radius);background:var(--surface-tint);padding:var(--s2);display:grid;gap:var(--s2)}.plan-session__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2)}.plan-session__title{font-weight:var(--w-strong);font-size:var(--t-sm)}.plan-session__dur{color:var(--muted);font-weight:var(--w-strong)}.plan-activity-list{display:grid;gap:6px;padding-left:var(--s2)}.plan-activity{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding:6px 8px;border:var(--border);border-radius:var(--radius);background:var(--surface)}.plan-activity>.ui-btn{box-shadow:var(--shadow-xs)}.plan-activity>.ui-btn:hover{box-shadow:none;transform:none}.plan-activity__body{min-width:0;display:grid;gap:3px}.plan-activity__title{font-size:var(--t-sm);font-weight:var(--w-strong)}.plan-activity__tags{display:inline-flex;flex-wrap:wrap;gap:4px}.plan-theme__footnote{margin:0;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-theme__pending{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.plan-theme__criteria{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.plan-theme__criteria--cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px}.plan-theme__criteria-label{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-criterion{display:grid;gap:4px;padding:8px 10px;border:var(--border);border-radius:var(--radius);background:var(--surface-tint)}.plan-criterion__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2);font-size:var(--t-xs)}.plan-criterion__head span{color:var(--muted);font-weight:var(--w-strong)}.plan-criterion p{margin:0;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh)}.plan-deliverable{display:grid;min-width:0;gap:4px;padding:8px 10px;border:var(--border);border-radius:var(--radius);background:var(--surface-tint)}.plan-deliverable__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:var(--s2);font-size:var(--t-xs)}.plan-deliverable__head strong{min-width:0;overflow-wrap:anywhere}.plan-deliverable__head .ui-badge{max-width:150px;min-width:0;justify-self:end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-deliverable p{margin:0;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh)}.plan-deliverable__assesses{margin:0;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.plan-theme__preview{border-top:var(--border);padding-top:var(--s2)}.plan-theme__preview dl{margin:0;display:grid;gap:4px}.plan-theme__preview dt{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.plan-theme__preview dd{margin:0 0 var(--s2);font-size:var(--t-sm);font-weight:var(--w-strong)}.plan-theme__preview ul{margin:0;padding-left:18px;display:grid;gap:2px}.plan-theme__preview li::marker{color:var(--primary)}@media (max-width: 599.98px){.plan-picker__workspace{grid-template-columns:minmax(0,1fr);height:auto;max-height:none;overflow:visible}.plan-picker__shelf{border-right:0;border-bottom:var(--border)}.plan-picker__shelf,.plan-picker__preview,.plan-picker__shelf-scroll{overflow:visible}}@media (max-width: 560px){.teach-plan-workspace{width:100%}.plan-picker__preview{padding:var(--s4)}.teach-plan__title .teach-plan__intro{font-size:var(--t-xs)}.plan-picker__preview .plan-zone__pillars--cards,.plan-theme__criteria--cards{grid-template-columns:minmax(0,1fr)}.plan-preview__head,.plan-session__head,.plan-activity{align-items:flex-start;flex-direction:column}.plan-preview__action{width:100%}}.course-timeline{--tl-step: var(--s5);--tl-gap: var(--s1);--tl-mark: calc(var(--tl-step) - var(--tl-gap));--tl-hang: calc(var(--s5) + var(--tl-gap));--tl-eyebrow-line: 16px;--tl-theme-line: 28px;--tl-session-line: var(--s5);--tl-activity-line: 22px;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}.course-timeline__toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s4);padding:0 0 var(--s3);margin-bottom:var(--s4)}.course-timeline__toolbar-text{flex:1 1 auto;min-width:200px}.course-timeline__toolbar h2{margin:0;font-size:var(--t-base);font-weight:var(--w-strong)}.course-timeline__toolbar p{margin:0;color:var(--muted);font-size:var(--t-sm)}.course-timeline__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--s2);flex-wrap:wrap;flex:0 0 auto}.course-timeline__body{padding:0;background:transparent}.course-timeline__sections{display:flex;flex-direction:column;gap:var(--s6)}@media (max-width: 599.98px){.course-timeline__sections{padding-left:var(--tl-hang)}}.theme-timeline{border-top:1px solid var(--line)}.theme-timeline__header{display:grid;grid-template-columns:var(--s5) minmax(0,1fr) auto;column-gap:var(--tl-gap);align-items:start;margin-left:calc(-1 * var(--tl-hang));padding:var(--s4) 0 var(--s3)}.theme-timeline__toggle{width:var(--s5);height:var(--tl-theme-line);margin-top:calc(var(--tl-eyebrow-line) + 2px);padding:0;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:var(--radius);background:transparent;color:var(--muted)}.theme-timeline__title-button{min-width:0;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.theme-timeline__title{display:block;font-family:var(--font-serif);font-size:var(--t-h2);font-weight:500;line-height:var(--tl-theme-line)}.theme-timeline__meta{color:var(--muted);font-size:var(--t-sm)}.theme-timeline__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--s2);flex-wrap:wrap;height:var(--tl-theme-line);margin-top:calc(var(--tl-eyebrow-line) + 2px);margin-left:var(--s3)}.theme-timeline__content{padding:0 0 var(--s2)}.theme-timeline__eyebrow{display:block;margin-bottom:2px;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:400;line-height:var(--tl-eyebrow-line)}.theme-timeline__eyebrow-toggle{border:0;padding:0;background:transparent;cursor:pointer;text-align:left}.session-rail{position:relative;display:flex;flex-direction:column;gap:0}.session-rail__line{position:absolute;top:var(--s4);bottom:var(--s4);left:calc(var(--tl-mark) / 2);width:1px;background:var(--line)}.session-rail__empty{color:var(--muted)}.session-timeline{position:relative}.session-timeline__number{position:relative;z-index:1;width:var(--tl-mark);height:var(--tl-session-line);display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--sheet);color:var(--muted);font-family:var(--font-serif);font-size:var(--t-ui);font-style:italic;line-height:1}.session-timeline__card{border-bottom:1px solid var(--line-soft)}.session-timeline__header{display:grid;grid-template-columns:var(--s5) var(--tl-mark) minmax(0,1fr);column-gap:var(--tl-gap);align-items:start;margin-left:calc(-1 * var(--tl-hang));padding:var(--s3) 0}.session-timeline__toggle{width:var(--s5);height:var(--tl-session-line);padding:0;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:var(--radius);background:transparent;color:var(--muted)}.session-timeline__title-wrap{min-width:0}.session-timeline__title{display:inline-block;max-width:100%;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-lead);font-weight:500;line-height:var(--tl-session-line);vertical-align:top}.session-timeline__meta{color:var(--muted);font-size:var(--t-sm)}.timeline-metarow{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s3);margin-top:var(--s1)}.timeline-controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2)}.ui-datepicker.timeline-datepicker{display:inline-flex;width:auto}.activity-list{display:flex;flex-direction:column;gap:0;padding:0 0 var(--s3) var(--tl-step)}.activity-list__empty{margin:0;padding-left:var(--tl-step);color:var(--muted);font-size:var(--t-sm)}.activity-row{display:flex;align-items:stretch;margin-inline:calc(-1 * var(--s2));border-radius:var(--radius);color:var(--ink);scroll-margin-top:var(--s5, 32px);transition:background .3s var(--ease-out)}@media (hover: hover){.activity-row:hover{background:var(--hover)}}.activity-row--instruction{border-color:transparent;border-left-width:0;background:transparent;box-shadow:none}.activity-row--instruction:hover{transform:none;box-shadow:none;background:transparent}.activity-row--highlight,.activity-row--highlight:hover{background:var(--rail-soft)}.activity-row__open{display:grid;grid-template-columns:var(--tl-mark) minmax(0,1fr) auto;column-gap:var(--tl-gap);align-items:start;flex:1;min-width:0;padding:var(--s3) var(--s2);border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:default}.activity-row__icon{align-self:start;width:var(--tl-mark);height:var(--tl-activity-line);display:grid;place-items:center;color:var(--muted)}.activity-row__body{min-width:0}.activity-row--instruction .activity-row__body{position:relative}.activity-row__topline{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--s2);min-width:0;overflow:visible}.activity-row__title{flex:0 1 auto;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-serif);font-size:var(--t-base);font-weight:500;line-height:var(--tl-activity-line);color:var(--ink)}.activity-row__meta{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s1);padding-block:2px;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-body)}.activity-row__meta-item{display:inline-flex;align-items:center;min-width:0}.activity-row__meta-group{gap:var(--s2);flex-wrap:nowrap;white-space:nowrap}.activity-row__meta-chip,.activity-row__meta-action{display:inline-flex;align-items:center;gap:4px;min-width:0}.activity-row__meta-chip{max-width:100%}.activity-row__meta-icon{display:inline-flex;align-items:center;flex:0 0 auto;color:var(--muted)}.activity-row__meta-action{padding:0;border:0;border-bottom:1px dotted transparent;background:transparent;color:inherit;font:inherit;cursor:pointer}.activity-row__meta-action:hover,.activity-row__meta-action:focus-visible,.activity-row__meta-action--active{border-bottom-color:currentColor;color:var(--ink);outline:0}.activity-row__meta-action.activity-row__due-add{margin-inline:-4px;padding:0 4px;border:0;border-radius:var(--radius-sm);color:var(--ink-2)}.activity-row__meta-action.activity-row__due-add:hover,.activity-row__meta-action.activity-row__due-add:focus-visible{background:var(--hover);color:var(--ink)}.activity-row__offline-chip{display:inline-flex;align-items:baseline;gap:4px;flex:0 0 auto;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);white-space:nowrap}.activity-row__offline-chip>svg{align-self:center}.activity-row__weight-chip{display:inline-flex;align-items:center;flex:0 0 auto;padding:2px 8px;border:var(--border);border-radius:var(--radius-pill);background:var(--surface-tint);color:var(--primary-strong);box-shadow:var(--shadow-xs);font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-xs);white-space:nowrap}.activity-row__type-chip,.activity-row__setup-chip,.activity-row__setup-fix{flex:0 0 auto}.activity-row__setup-fix{display:inline-flex;align-items:center;gap:4px;padding:0 4px;border:0;border-radius:var(--radius-sm);background:none;color:var(--ink-2);font-family:var(--font-body);font-size:var(--t-xs);white-space:nowrap;cursor:pointer}.activity-row__setup-fix:hover,.activity-row__setup-fix:focus-visible{background:var(--hover);color:var(--ink)}.activity-row__instruction-body{color:var(--ink-2);font-family:var(--font-serif);font-size:var(--t-base);font-weight:var(--w-body);line-height:var(--lh-read)}.teacher-instruction{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2);width:100%}.teacher-instruction__compose{position:relative;display:flex;align-items:flex-start;gap:var(--s2);width:100%}.teacher-instruction__body{display:block;width:auto;margin:calc(-1 * var(--s1)) calc(-1 * var(--s2)) 0;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit;text-align:left;cursor:text;transition:background-color var(--dur-hover) var(--ease-out)}.teacher-instruction__body-shell{display:block;flex:1 1 auto;min-width:0}.teacher-instruction__body:hover,.teacher-instruction__body:focus-visible{background:var(--hover)}.teacher-instruction__compose--editing>.md-editor,.teacher-instruction__compose--editing>.md-editor:focus-within{flex:1 1 auto;min-width:0;position:relative;margin:calc(-1 * var(--s1)) calc(-1 * var(--s2)) 0;border:0;border-radius:var(--radius-sm);background:var(--hover);box-shadow:inset 0 0 0 1px var(--line)}.teacher-instruction__editor,.md-editor:focus-within .teacher-instruction__editor{min-height:0;max-height:360px;overflow:auto;padding:var(--s1) var(--s2);color:var(--ink-2);font-family:var(--font-serif);font-size:var(--t-base);font-weight:var(--w-body);line-height:var(--lh-read)}.teacher-instruction__compose--editing>.md-editor--loading{min-height:0}.teacher-instruction__compose--editing .md-editor__bar{position:absolute;top:var(--s1);right:var(--s2);z-index:2;height:auto;padding:2px;border-radius:var(--radius-menu);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float);transform:translateY(-100%);transform-origin:bottom right;animation:ti-bar-in var(--dur-pop) var(--ease-out)}.teacher-instruction__compose--editing .md-editor__bar>.ui-btn{min-height:24px;height:24px}@keyframes ti-bar-in{0%{opacity:0;transform:translateY(-100%) scale(.96)}}@media (prefers-reduced-motion: reduce){.teacher-instruction__compose--editing .md-editor__bar{animation:none}}.teacher-instruction__empty{color:var(--muted)}.teacher-instruction-settings{width:min(540px,100%);margin-top:var(--s2)}.teacher-instruction-settings .ui-field{min-width:0;margin:0}.teacher-instruction-settings .ui-field__label{margin-bottom:3px}.teacher-instruction-settings .ui-input,.teacher-instruction-settings .ui-select2__trigger,.teacher-instruction-settings .ui-datepicker__trigger{min-height:36px}@media (max-width: 980px){.teacher-instruction-settings{width:100%}}.activity-row__badges{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:var(--s2);flex:0 0 auto;flex-wrap:nowrap;height:var(--tl-activity-line);margin-left:var(--s3)}.activity-row__action{width:142px;min-height:34px;justify-content:center}@media (hover: hover){.ui-btn--ghost.activity-row__action{opacity:0;transition:opacity .1s var(--ease-out)}.activity-row:hover .ui-btn--ghost.activity-row__action,.activity-row:focus-within .ui-btn--ghost.activity-row__action{opacity:1}}.activity-row__grade-cta{white-space:nowrap}.activity-row__grade-cta--warn,.activity-row__grade-cta--danger,.activity-row__grade-cta--info{color:var(--act)}.activity-row__grade-cta--success{color:var(--muted)}.activity-row__grade-cta.activity-row__grade-cta--info,.activity-row__grade-cta.activity-row__grade-cta--success,.activity-row__grade-cta.activity-row__grade-cta--danger,.activity-row__grade-cta.activity-row__grade-cta--warn{background:transparent;border-color:transparent}@media (hover: hover){.activity-row__grade-cta.activity-row__grade-cta--info:hover,.activity-row__grade-cta.activity-row__grade-cta--success:hover,.activity-row__grade-cta.activity-row__grade-cta--danger:hover,.activity-row__grade-cta.activity-row__grade-cta--warn:hover{background:var(--hover)}}.ui-modal__overlay:has(.course-drawer){justify-content:flex-end;padding:0}.course-drawer{width:clamp(360px,40vw,640px);max-width:100vw;height:100dvh;max-height:none;margin:0;border-top:0;border-right:0;border-bottom:0;border-radius:0;box-shadow:none;background:var(--blue-tint)}.course-drawer--wide{width:min(100vw,640px);max-width:640px}.course-drawer .ui-modal__header{background:var(--blue-tint-strong);border-bottom:var(--border)}.course-drawer .ui-modal__body{overflow:auto}.course-drawer .ui-stack{gap:var(--s6)}.course-drawer .ui-modal__footer{background:var(--blue-tint-strong)}.course-drawer__eyebrow{color:var(--primary-strong);font-family:var(--font-display);font-size:var(--t-xs);font-weight:var(--w-strong)}.course-drawer__title{margin:var(--s1) 0 0;font-size:var(--t-h2)}.course-drawer__subtle{margin:var(--s1) 0 0;color:var(--muted);font-weight:var(--w-strong)}.course-drawer__section{padding-top:var(--s5);border-top:var(--border)}.course-drawer__section h3{margin-bottom:var(--s3);font-size:var(--t-ui)}.course-drawer__section p{color:var(--ink);font-size:var(--t-ui);font-weight:550}.course-drawer__section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3)}.course-drawer__section-head h3{margin-bottom:var(--s3)}.drawer-session-list{display:flex;flex-direction:column;gap:var(--s3)}.drawer-session{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s3);padding:var(--s3);border:var(--border);border-radius:var(--radius);background:#ffffff94}.drawer-session__number{width:30px;height:30px;display:grid;place-items:center;border:var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);font-family:var(--font-display);font-weight:var(--w-strong)}.drawer-session h4{margin:0;font-size:var(--t-base)}.drawer-session p{margin:var(--s1) 0 var(--s2);color:var(--muted);font-size:var(--t-xs)}.drawer-activity-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}@media (max-width: 720px){.course-timeline__toolbar{align-items:stretch;flex-direction:column}.course-timeline__actions{align-items:center;justify-content:flex-start;flex-direction:row}.theme-timeline .theme-timeline__header{grid-template-columns:var(--s5) minmax(0,1fr)}.theme-timeline__actions{grid-column:2;justify-content:flex-start;height:auto;margin:var(--s2) 0 0 calc(-1 * (var(--s3) + 1px))}.activity-row__open{grid-template-columns:var(--tl-mark) minmax(0,1fr)}.activity-row__badges{grid-column:2;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;height:auto;margin:var(--s2) 0 0}.activity-row__action{width:auto}.activity-row__topline{align-items:flex-start;flex-wrap:wrap}.activity-row__title{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.activity-row--instruction .activity-row__topline .activity-row__type-chip{display:none}.activity-row__meta{flex-wrap:wrap;gap:var(--s1) var(--s2);overflow:visible;white-space:normal}.course-drawer,.course-drawer--wide{width:100vw;max-width:100vw}}.activity-row__tags{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-goals{margin:0;padding-left:18px;display:grid;gap:3px;font-size:var(--t-ui)}.drawer-goals li::marker{color:var(--primary)}.drawer-pillars{margin:0;display:grid;gap:10px}.drawer-pillars--cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.drawer-pillar{display:grid;gap:2px}.drawer-pillars--cards .drawer-pillar{gap:5px;padding:10px 12px;border:var(--border);border-radius:var(--radius);background:#ffffff94}.drawer-pillar dt{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--primary)}.drawer-pillar dd{margin:0;font-size:var(--t-xs);line-height:var(--lh);color:var(--ink)}.drawer-goal__statement{font-weight:var(--w-strong)}.drawer-goal__indicators{margin:3px 0 0;padding-left:16px;display:grid;gap:2px;font-size:var(--t-xs);font-weight:500;color:var(--muted)}.drawer-goal__indicators li::marker{color:var(--primary)}.drawer-deliverable{display:grid;gap:5px;padding:10px 12px;border:var(--border);border-radius:var(--radius);background:#ffffff94}.drawer-deliverable__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2)}.drawer-deliverable__title{font-size:var(--t-sm);font-weight:var(--w-strong)}.drawer-deliverable p{margin:0;font-size:var(--t-xs);line-height:var(--lh);color:var(--muted)}.drawer-deliverable__assesses{margin:0;font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.drawer-rubrics{display:grid;gap:10px}.drawer-rubric__criteria{margin:0;padding:0;display:grid;gap:8px;font-size:var(--t-sm);list-style:none}.drawer-rubrics--cards .drawer-rubric__criteria li{display:grid;gap:3px;padding:8px 10px;border:var(--border);border-radius:var(--radius);background:#ffffff94}.drawer-rubric__meta,.drawer-rubric__weight{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}@media (max-width: 720px){.drawer-pillars--cards{grid-template-columns:minmax(0,1fr)}}.course-timeline__hidden-count{display:flex}.theme-timeline__hidden-notice{display:flex;align-items:baseline;gap:var(--s1) var(--s3);flex-wrap:wrap;margin-top:var(--s2)}.theme-timeline__hidden-text{flex:1 1 200px;display:flex;align-items:baseline;gap:6px;margin:0;color:var(--ink-2);font-size:var(--t-sm);line-height:var(--lh)}.theme-timeline__hidden-text:before{content:"";flex:none;align-self:center;width:6px;height:6px;border-radius:50%;background:var(--act)}.theme-timeline__undated{font-size:var(--t-sm)}.session-timeline__header .session-undated-dot{width:6px;height:6px;margin-right:0;background:var(--act)}.theme-timeline__bigidea{margin:var(--s1) 0 0;color:var(--muted);font-family:var(--font-serif);font-size:var(--t-ui);line-height:var(--lh)}@media (hover: hover){.theme-timeline__toggle,.session-timeline__toggle{opacity:0;transition:opacity var(--dur-hover) var(--ease-out)}.theme-timeline__header:hover .theme-timeline__toggle,.theme-timeline__header:focus-within .theme-timeline__toggle,.theme-timeline__toggle[aria-expanded=false],.session-timeline__header:hover .session-timeline__toggle,.session-timeline__header:focus-within .session-timeline__toggle,.session-timeline__toggle[aria-expanded=false]{opacity:1}}.theme-timeline__toggle:hover,.session-timeline__toggle:hover{color:var(--ink)}@media (hover: none){.vis-chip--quiet{display:none}}@media (hover: hover){.vis-chip--quiet{opacity:0;transition:opacity var(--dur-press) var(--ease-out)}.theme-timeline__header:hover .timeline-metarow>.vis-chip--quiet,.session-timeline__header:hover .vis-chip--quiet,.vis-chip--quiet:focus-within,.vis-chip--quiet:has([aria-expanded=true]){opacity:1}}@media (prefers-reduced-motion: reduce){.activity-row,.theme-timeline__toggle,.session-timeline__toggle,.vis-chip--quiet,.ui-btn--ghost.activity-row__action,.teacher-instruction__body{transition:none}}.tl-chip{display:inline-flex;align-items:center;gap:var(--s1);margin-inline:-4px;padding:2px 4px;border:0;border-radius:var(--radius-sm, 6px);background:transparent;box-shadow:none;color:var(--ink-2);font-family:var(--font-body);font-size:var(--t-sm);font-weight:var(--w-body);line-height:var(--lh-tight);white-space:nowrap;cursor:pointer}@media (hover: hover){.tl-chip:hover{background:var(--hover);color:var(--ink)}}.tl-chip>svg:first-child{color:var(--muted)}.tl-chip__detail{color:var(--muted)}.tl-chip__caret{margin-left:1px;color:var(--muted)}.tl-chip--hidden,.tl-chip--auto-undated{color:var(--muted)}.vis-chip__pop{padding:var(--s2);display:flex;flex-direction:column;gap:2px}.vis-chip__status{padding:var(--s1) var(--s2) var(--s2);font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.vis-chip__override{margin:0;padding:0 var(--s2) var(--s2);font-size:var(--t-xs);line-height:var(--lh);color:var(--muted)}.vis-chip__item{--ui-tint-hover-bg: var(--primary-tint);--ui-tint-active-bg: var(--primary-tint-strong);display:flex;align-items:flex-start;gap:var(--s2);width:100%;padding:var(--s2);border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.vis-chip__item--active{background:var(--surface-tint);border-color:var(--line)}.vis-chip__item-icon{flex:0 0 auto;margin-top:1px;color:var(--muted)}.vis-chip__item--active .vis-chip__item-icon{color:var(--ink)}.vis-chip__item-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.vis-chip__item-label{font-family:var(--font-display);font-weight:var(--w-strong);font-size:var(--t-sm);line-height:var(--lh-tight)}.vis-chip__item-hint{font-size:var(--t-xs);font-weight:500;color:var(--muted);line-height:var(--lh-tight)}.vis-chip__item-check{flex:0 0 auto;margin-top:1px;color:var(--ink)}.vis-chip__auto-settings{display:grid;gap:var(--s2);margin-top:var(--s1);padding:var(--s3) var(--s2) var(--s2);border-top:1.5px solid var(--line)}.vis-chip__auto-label{font-size:var(--t-xs);font-weight:var(--w-strong)}.vis-chip__auto-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh-tight)}.vis-chip__default{width:fit-content;padding:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--primary);font:inherit;font-size:var(--t-xs);font-weight:var(--w-strong);cursor:pointer}.lead-stepper{display:inline-grid;flex:0 0 auto;grid-template-columns:34px 54px 34px;align-items:stretch;border:var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.lead-stepper button,.lead-stepper input{min-width:0;height:36px;border:0;border-radius:0;background:transparent;color:var(--ink);font:inherit;font-weight:var(--w-strong)}.lead-stepper button{display:grid;place-items:center;cursor:pointer}.lead-stepper button:hover:not(:disabled),.lead-stepper button:focus-visible{background:var(--primary-tint);outline:0}.lead-stepper button:disabled{opacity:.35;cursor:default}.lead-stepper input{border-inline:1.5px solid var(--ink);text-align:center}.lead-stepper input::-webkit-inner-spin-button,.lead-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.design-owned{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;color:var(--muted);font-size:var(--t-sm)}.toolbar-menu{position:relative}.toolbar-menu__pop{position:absolute;top:calc(100% + var(--s2));right:0;z-index:45;display:grid;gap:var(--s1);width:max-content;min-width:210px;padding:var(--s2);border:var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-md)}.toolbar-menu__item{--ui-tint-hover-bg: var(--primary-tint);--ui-tint-active-bg: var(--primary-tint-strong);--ui-tint-border: transparent;display:flex;align-items:center;gap:var(--s2);width:100%;padding:var(--s2) var(--s3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-weight:var(--w-strong);text-align:left;cursor:pointer}.toolbar-menu__item:focus-visible{background:var(--primary-tint);outline:0}@media (max-width: 520px){.toolbar-menu__pop{right:auto;left:0}}.toolbar-menu .ui-btn .chv.dn{color:inherit}.course-vis-control__pop{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3);color:var(--ink)}.course-vis-control__input-row{display:flex;align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.course-vis-control__pop p{margin:0;color:var(--muted);font-size:var(--t-xs);line-height:var(--lh)}.course-vis-control__status{min-height:16px;color:var(--primary-strong);font-size:var(--t-xs);font-weight:var(--w-strong)}.grading-hub{display:block}.grading-hub__head{margin-bottom:var(--s4);padding-bottom:var(--s3);border-bottom:var(--border)}.grading-hub__head h2{margin:0;font-size:var(--t-h3)}.grading-hub__head p{margin:var(--s2) 0 0;max-width:64ch;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-strong)}.grading-hub__intro{min-width:0;flex:1 1 22rem}.amx-theme{display:grid;gap:var(--s3);padding-top:var(--s3);border-top:var(--border)}.amx-theme:first-of-type{border-top:none;padding-top:0}.amx-theme__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.amx-theme__title{margin:0;font-family:var(--font-serif);font-size:var(--t-h3);font-weight:500}.amx-theme__sub{margin:2px 0 0;color:var(--muted);font-size:var(--t-sm)}.amx-theme__mode{margin:0;color:var(--muted);font-size:var(--t-sm);line-height:var(--lh)}.amx-scroll{position:relative;isolation:isolate;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--sheet)}.amx-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:620px}.amx-th,.amx-td{--amx-title-line: 20px;border-bottom:1px solid var(--line-soft);border-right:1px solid var(--line-soft);padding:var(--s2);text-align:center;vertical-align:top;line-height:var(--amx-title-line)}.amx-td>svg{display:block;margin:calc((var(--amx-title-line) - 16px) / 2) auto 0}.amx-table tr>*:last-child{border-right:none}.amx-table tbody tr:last-child .amx-td{border-bottom:none}.amx-th{background:var(--sheet);border-bottom-color:var(--line);color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:500;position:sticky;top:0;z-index:3}.amx-th__hint{display:block;margin-top:2px;font-family:var(--font-body, inherit);font-size:var(--t-xs);font-weight:400;color:var(--muted)}.amx-th--act,.amx-td--act{text-align:left;width:220px;min-width:220px;position:sticky;left:0;z-index:4;background:var(--surface);border-right:none}.amx-th--act{background:var(--sheet);z-index:6}.amx-th--act:after,.amx-td--act:after{content:"";position:absolute;top:0;right:calc(0px - var(--border-width));bottom:0;width:var(--border-width);background:var(--line);pointer-events:none}.amx-th--grade,.amx-td--grade{width:88px;min-width:88px}.amx-th--crit,.amx-td--cell{width:140px;min-width:112px}.amx-act-row{display:flex;align-items:center;gap:var(--s2);min-width:0}.amx-act{display:grid;gap:1px;min-width:0}.amx-act__title{font-family:var(--font-serif);font-weight:500;font-size:var(--t-base);line-height:var(--amx-title-line, 20px)}.amx-act__size{cursor:help}.amx-act__type{color:var(--muted);font-size:var(--t-xs)}.amx-row--ungraded{opacity:.6}.amx-row--ungraded:hover{opacity:.8}.amx-row--arrived>.amx-td{background:var(--primary-tint)}.amx-row--arrived>.amx-td--act{box-shadow:inset 3px 0 0 0 var(--primary)}.amx-row--arrived.amx-row--ungraded{opacity:1}.amx-crit-label{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;cursor:pointer;font:inherit;font-family:var(--font-serif);font-size:var(--t-ui);font-weight:500;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-decoration-style:dotted;text-underline-offset:3px;padding:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--s1)}@media (hover: hover){.amx-crit-label:hover{text-decoration-color:currentColor}}.amx-crit-wt{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:4px;color:var(--muted);font-size:var(--t-xs);font-weight:500}.amx-dash{color:var(--muted);font-weight:var(--w-strong)}.amx-coverage .amx-td{background:var(--paper)}.amx-coverage .amx-td--act{font-size:var(--t-xs);color:var(--muted)}.amx-graded-total{color:var(--muted);font-size:var(--t-xs);white-space:nowrap}.amx-cov{font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.amx-define{margin-top:var(--s1)}.amx-rubrik{display:grid;gap:var(--s4)}.amx-rubrik__matrix{min-width:0}.amx-rail{display:flex;gap:var(--s1);overflow-x:auto;padding-bottom:var(--s1);scrollbar-width:none}.amx-rail::-webkit-scrollbar{display:none}.amx-rail__item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--s2);flex:0 0 auto;min-width:190px;max-width:280px;padding:var(--s2) var(--s3);text-align:left;border:0;border-radius:var(--radius);background:transparent;color:var(--ink);cursor:pointer;font:inherit}@media (hover: hover){.amx-rail__item:hover{background:var(--hover)}}.amx-rail__item--active{border-color:transparent;background:var(--primary-tint)}.amx-rail__dot{width:8px;height:8px;margin-top:6px;border-radius:var(--radius-pill)}.amx-rail__dot--success{background:var(--success)}.amx-rail__dot--warn{background:var(--warn)}.amx-rail__dot--neutral{background:var(--rail-soft)}.amx-rail__body{display:grid;gap:1px;min-width:0}.amx-rail__name{font-family:var(--font-serif);font-weight:500;font-size:var(--t-base);line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amx-rail__meta{color:var(--muted);font-size:var(--t-xs)}.amx-crit-flag{display:block;margin-top:2px;color:var(--warn);font-size:var(--t-xs);font-weight:var(--w-strong)}.amx-act__title--link{color:var(--ink)}@media (hover: hover){.amx-act__title--link:hover{color:var(--primary)}}.amx-tick{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--radius);background:none;color:var(--ink);cursor:pointer}.amx-tick:hover{background:var(--hover)}.amx-tick:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.criterion-detail__weight{color:var(--muted);font-size:var(--t-sm)}.criterion-detail__section-label{font-size:var(--t-xs);font-weight:var(--w-strong);color:var(--muted)}.criterion-detail__gp{display:flex;flex-wrap:wrap;gap:var(--s2)}.criterion-detail__levels{display:grid;grid-template-columns:max-content 1fr;gap:var(--s2) var(--s4);margin:0}.criterion-detail__level{font-weight:var(--w-strong);font-size:var(--t-sm);white-space:nowrap}.criterion-detail__level-score{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}.criterion-detail__descriptor{margin:0;font-family:var(--font-serif);color:var(--ink)}.students-panel__source{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 16px}.students-panel__history{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.route-menu.students-panel__menu{min-width:220px}.students-panel__menu .route-menu__row{white-space:nowrap}@media (hover: hover){.students-table__row:hover .route-more,.students-table__row:focus-within .route-more{opacity:1}}.gradebook-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gradebook-legend{display:flex;align-items:center;gap:var(--s1);margin:0 0 var(--s3);color:var(--muted);font-size:var(--t-xs)}.gradebook-name{display:inline-flex;align-items:center;gap:var(--s2);white-space:nowrap}.gradebook-cell{padding:0}.gradebook-cell__shell{position:relative;display:flex;align-items:stretch}.gradebook-cell__input{flex:1;padding-left:0;padding-right:26px}.gradebook-grid .gradebook-cell__input{text-align:left;font-variant-numeric:tabular-nums}.gradebook-cell:focus-within{outline:1px solid var(--primary);outline-offset:-3px}.gradebook-cell--group .gradebook-cell__input{background:var(--info-tint)}.gradebook-cell--error .gradebook-cell__input{background:var(--danger-tint);box-shadow:inset 0 0 0 2px var(--danger)}.gradebook-cell__open{position:absolute;top:50%;right:4px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;gap:2px;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .1s var(--ease-out),background .1s var(--ease-out),color .1s var(--ease-out)}@media (hover: none){.gradebook-cell__open,.gradebook-cell__rubric-link>svg{opacity:.6}}.gradebook-cell__shell:hover .gradebook-cell__open,.gradebook-cell__open:focus-visible{opacity:1;background:var(--surface);color:var(--ink)}.gradebook-cell--rubric{background:transparent}.gradebook-cell__rubric-link{--ui-tint-hover-bg: var(--primary-tint);--ui-tint-active-bg: var(--primary-tint-strong);position:relative;display:flex;align-items:center;justify-content:flex-start;gap:var(--s2);width:100%;min-height:52px;padding:var(--s2) 26px var(--s2) 0;font-variant-numeric:tabular-nums;border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer}.gradebook-cell__rubric-link:focus-visible{background:var(--primary-tint)}.gradebook-cell__rubric-link>svg{position:absolute;top:50%;right:8px;transform:translateY(-50%);color:var(--muted);opacity:0;transition:opacity .1s var(--ease-out)}.gradebook-cell__rubric-link:hover>svg,.gradebook-cell__rubric-link:focus-visible>svg{opacity:1}.gradebook-cell__pending{position:absolute;top:50%;right:26px;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;background:var(--warn);box-shadow:0 0 0 2px var(--surface);pointer-events:none}.gradebook-cell__status{position:absolute;top:3px;left:4px;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.gradebook-cell__status--saving{color:var(--warn);animation:gradebook-spin .9s linear infinite}.gradebook-cell__status--saved{color:var(--muted)}@keyframes gradebook-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.gradebook-cell__status--saving{animation:none}}.gradebook-cell__grouptag{position:absolute;bottom:3px;left:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--info, var(--ink));opacity:.85;pointer-events:none}.gradebook-cell--rubric .gradebook-cell__grouptag{bottom:auto;top:4px}.gradebook-cell--returned .gradebook-cell__input,.gradebook-cell--rubric.gradebook-cell--returned{background:var(--warn-tint);box-shadow:inset 0 0 0 2px var(--warn)}.gradebook-cell__returned{position:absolute;bottom:3px;left:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--warn);pointer-events:none}.gradebook-cell--rubric .gradebook-cell__returned{bottom:auto;top:4px}@media (max-width: 560px){.gradebook-name{flex-direction:column;align-items:flex-start;gap:3px;white-space:normal}.gradebook-name>span:first-child{display:-webkit-box;overflow:hidden;line-height:var(--lh-tight);overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}}.gradebook-views{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s3);margin-bottom:var(--s3)}.gradebook-howto{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:var(--t-xs);cursor:pointer}@media (max-width: 560px){.gradebook-grid .ui-banner{padding:var(--s2) var(--s3)}.gradebook-grid .ui-banner__actions{margin-top:var(--s1)}}.gradebook-grid .ui-banner{margin-bottom:var(--s3)}.gradebook-grid .ui-table-scroll{position:relative;isolation:isolate;width:fit-content;max-width:100%}.gradebook-grid .ui-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content}.gradebook-grid .ui-table th:first-child,.gradebook-grid .ui-table td:first-child{width:200px;border-right:none}.gradebook-grid .ui-table--sticky-first th:first-child,.gradebook-grid .ui-table--sticky-first td:first-child{z-index:4}.gradebook-grid .ui-table--sticky-first thead th:first-child{z-index:6}.gradebook-grid .ui-table--sticky-first th:first-child:after,.gradebook-grid .ui-table--sticky-first td:first-child:after{content:"";position:absolute;top:0;right:calc(0px - var(--border-width));bottom:0;width:var(--border-width);background:var(--line);pointer-events:none}.gradebook-grid .ui-table .gradebook-head{width:136px;min-width:136px;padding-top:var(--s1);padding-bottom:var(--s1);text-align:left;vertical-align:top}.gradebook-head--highlight{background:var(--rail-soft);box-shadow:inset 0 0 0 2px var(--primary)}.gradebook-head--final{color:var(--ink);box-shadow:inset 1px 0 0 var(--line)}.gradebook-grid .ui-table td.gradebook-final{text-align:left;font-weight:var(--w-strong);font-variant-numeric:tabular-nums;box-shadow:inset 1px 0 0 var(--line)}.gradebook-final__reason{display:block;font-size:var(--t-xs);font-weight:400;line-height:var(--lh-tight);color:var(--muted)}.gradebook-final__reason--clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gradebook-head__due{display:block;color:var(--muted);font-size:var(--t-xs);font-weight:400;line-height:14px}.gradebook-head__title{display:-webkit-box;overflow:hidden;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-sm);font-weight:400;line-height:17px;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:2;height:34px}.gradebook-head__pending{flex:0 0 auto;margin:0;padding:0 2px;border:0;border-radius:var(--radius);background:none;color:var(--warn);font-family:inherit;font-size:var(--t-xs);font-weight:var(--w-strong);line-height:17px;font-variant-numeric:tabular-nums;cursor:pointer}@media (hover: hover){.gradebook-head__pending:hover{text-decoration:underline;text-underline-offset:2px}}.gradebook-head__shared{display:block;color:var(--muted);font-size:var(--t-xs);font-weight:400;line-height:14px}.gradebook-head__stack{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.gradebook-head__name{display:flex;align-items:flex-start;gap:4px;width:100%;min-width:0}.gradebook-head__name>.ui-infotip__host{display:block;min-width:0;flex:0 1 auto}.gradebook-head__edit{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;height:16px;padding:0 2px;border:none;border-radius:var(--radius);background:none;color:var(--muted);cursor:pointer;transition:background .1s ease,color .1s ease,opacity .1s var(--ease-out)}@media (hover: hover){.gradebook-head__edit{opacity:0}th:hover .gradebook-head__edit,th:focus-within .gradebook-head__edit{opacity:1}.gradebook-head__edit:hover{background:var(--hover);color:var(--ink)}}@media (max-width: 560px){.gradebook-grid .ui-table th:first-child,.gradebook-grid .ui-table td:first-child{width:128px}.gradebook-head{width:116px;min-width:116px}}.gradebook-howto__tip{display:flex;flex-direction:column;gap:2px}.gradebook-howto__share{font-variant-numeric:tabular-nums}.gradebook-tools{display:flex;justify-content:flex-end;margin:0 0 var(--s2)}.gradebook-summary-link{margin-left:var(--s2);color:var(--muted);font-size:var(--t-sm);text-decoration:none}.gradebook-summary-link:hover,.gradebook-summary-link:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.nilai-rapor{display:flex;flex-direction:column;gap:var(--s3)}.nilai-rapor__model,.nilai-rapor__muted,.nilai-rapor__why{margin:0;color:var(--muted);font-size:var(--t-sm)}.nilai-rapor__why{text-align:right}.nilai-rapor__notice:focus{outline:none}.nilai-rapor__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2) var(--s3)}.nilai-rapor__summary{margin:0;font-weight:var(--w-em)}.nilai-rapor__actions{display:inline-flex;flex-wrap:wrap;gap:var(--s2);justify-content:flex-end}.nilai-rapor__actions--start{justify-content:flex-start}@media (max-width: 720px){.nilai-rapor__actions{justify-content:flex-start}.nilai-rapor__why{text-align:left}}.nilai-rapor__element{display:flex;align-items:center;gap:var(--s2);max-width:28rem}.nilai-rapor__element-label{font-weight:var(--w-em);font-size:var(--t-sm)}.nilai-rapor__element>:last-child{flex:1}.nilai-rapor__head{min-width:9rem;vertical-align:top}.nilai-rapor__outcome-text{display:block;margin-top:2px;font-family:var(--font-body);font-weight:var(--w-em);font-size:var(--t-xs);text-transform:none;white-space:normal;color:var(--muted)}.nilai-rapor__student{min-width:12rem}.nilai-rapor__name{font-weight:var(--w-em);white-space:nowrap}.nilai-rapor__class{white-space:nowrap}.nilai-rapor__flag{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:4px;white-space:normal}.nilai-rapor__flag-actions{display:inline-flex;flex-wrap:wrap;gap:6px}.nilai-rapor__sub{display:block;font-size:var(--t-xs);color:var(--muted);white-space:normal}.nilai-rapor__input{text-align:right}.nilai-rapor__cell--error .ui-cell-edit__input{background:var(--danger-tint);box-shadow:inset 0 0 0 1px var(--danger)}.nilai-rapor__cell-error{display:block;padding:0 var(--s3) var(--s1);font-size:var(--t-xs);color:var(--danger-strong);text-align:right}.nilai-rapor__level{min-width:11rem}.nilai-rapor__level--dirty{background:var(--hover)!important}.nilai-rapor__eyebrow{margin:0;font-size:var(--t-sm);color:var(--muted)}.nilai-rapor__title{margin:0;font-family:var(--font-display);font-size:var(--t-h2)}.nilai-rapor__title:focus{outline:none}.nilai-rapor__card-title{margin:0 0 var(--s2);font-family:var(--font-display);font-size:var(--t-base)}.nilai-rapor__steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s3)}.nilai-rapor__steps>li{display:flex;gap:var(--s2);align-items:flex-start}.nilai-rapor__step-icon{flex:none;width:6px;height:6px;margin-top:calc(var(--lh-read) * var(--t-base) / 2 - 3px);border-radius:50%;background:var(--draft)}.nilai-rapor__step-icon--ok{background:var(--ok)}.nilai-rapor__step-icon--warn{background:var(--act)}.nilai-rapor__step-extra{margin-top:6px}.nilai-rapor__match,.nilai-rapor__decision{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s2)}.nilai-rapor__match-select{width:18rem;max-width:100%}.nilai-rapor__changed{background:var(--surface-tint);padding:0 4px;border-radius:4px;font-weight:var(--w-strong)}.nilai-rapor__review-table{display:flex;flex-direction:column;gap:var(--s2)}.nilai-rapor__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2)}.nilai-rapor__list{margin:0;padding-left:1.1rem}.nilai-rapor__file{display:none}.nilai-rapor__samples{display:flex;flex-direction:column;gap:var(--s2)}.nilai-rapor__log{background:var(--paper);border-radius:var(--radius);padding:var(--s3);display:flex;flex-direction:column;align-items:flex-start;gap:4px}.nilai-rapor__log>div{align-self:stretch}.nilai-rapor__log-head{margin:0}.nilai-rapor__adapt-row>td{padding:0!important;border:0}.nilai-rapor__adapt{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3) var(--s4);background:var(--paper)}.nilai-rapor__adapt-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s3);align-items:center}@media (max-width: 560px){.nilai-rapor__adapt-line{grid-template-columns:1fr;gap:var(--s1)}}.status-word{white-space:normal;align-items:baseline}.status-word>.ui-badge__dot{align-self:flex-start;margin-top:calc(var(--lh) * .5em - 3px)}.person-text{font-family:var(--font-serif)}.gp-rows{display:flex;flex-direction:column;gap:var(--s4);margin:var(--s2) 0 0;padding:0;list-style:none}.gp-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:baseline;column-gap:var(--s2);row-gap:var(--s2)}.gp-row__name{font-size:var(--t-base);color:var(--ink);min-width:0;overflow-wrap:anywhere}.gp-row__rank{color:var(--muted);font-size:var(--t-sm)}.gp-row__nums{grid-column:4;color:var(--muted);font-size:var(--t-sm);white-space:nowrap}.gp-bar__track{grid-column:1 / -1;display:block;height:4px;border-radius:var(--radius-pill);background:var(--surface-tint);overflow:hidden}.gp-bar__fill{display:block;height:100%;border-radius:var(--radius-pill);background:var(--faint)}@container (max-width: 480px){.gp-row{grid-template-columns:auto minmax(0,1fr)}.gp-row__nums{grid-column:1 / -1}}.gp-picker{width:100%;max-width:340px}.ringkasan{max-width:640px;margin:0 auto;padding:var(--s6) var(--s4);color:var(--ink)}.ringkasan__actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s6);font-size:var(--t-sm)}.ringkasan__actions a{color:var(--muted);text-decoration:none}.ringkasan__title{margin:0 0 var(--s5);font-size:var(--t-h2);font-weight:600}.ringkasan__meta{display:grid;grid-template-columns:max-content 1fr;gap:var(--s2) var(--s5);margin:0}.ringkasan__meta dt{color:var(--muted)}.ringkasan__meta dd{margin:0}.ringkasan__table{width:100%;margin-top:var(--s6);border-collapse:collapse;font-size:var(--t-base)}.ringkasan__table th,.ringkasan__table td{padding:var(--s2) 0;border-bottom:1px solid var(--line);text-align:left}.ringkasan__table td:last-child,.ringkasan__table th:last-child{text-align:right}.ringkasan__table tfoot th,.ringkasan__table tfoot td{border-bottom:0;font-weight:600}@media print{body *{visibility:hidden}.ringkasan,.ringkasan *{visibility:visible}.ringkasan{position:absolute;top:0;left:0;width:100%;max-width:none;padding:0}.no-print{display:none!important}}.undang{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;padding:clamp(24px,4vw,56px);gap:clamp(20px,3vw,40px)}.undang__title{margin:0;font-family:var(--font-display);font-weight:var(--w-title);line-height:1.02;letter-spacing:-.02em;font-size:clamp(56px,11vw,168px);overflow-wrap:anywhere}.undang__subjects{font-size:.42em;color:var(--muted);letter-spacing:0}.undang__body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start;flex:1}.undang__invite{display:flex;flex-direction:column;gap:12px}.undang__address{margin:0;font-family:var(--font-display);font-size:clamp(32px,4.6vw,64px);font-weight:var(--w-strong)}.undang__code-label{margin:12px 0 0;font-size:var(--t-sm);color:var(--muted)}.undang__code{margin:0;font-family:var(--font-display);font-size:clamp(56px,8vw,120px);font-weight:var(--w-title);letter-spacing:.12em;font-variant-numeric:tabular-nums;line-height:1}.undang__qr{width:clamp(160px,18vw,240px);aspect-ratio:1;background:var(--sheet);color:var(--ink);margin-top:16px}.undang__qr svg{display:block;width:100%;height:100%}.undang__qr span{font-size:var(--t-micro);color:var(--muted);line-height:1.3}.undang__closed{margin:8px 0 0;color:var(--warn);font-size:var(--t-sm)}.undang__roster{display:flex;flex-direction:column;gap:12px;min-width:0}.undang__count{margin:0;font-size:var(--t-lead);font-weight:var(--w-strong)}.undang__names{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-family:var(--font-serif);font-size:clamp(26px,3vw,40px);line-height:1.25}.undang__names li{border-bottom:1px solid var(--line-soft);padding:6px 0;overflow-wrap:anywhere}.undang__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;border-top:1px solid var(--line-soft);padding-top:20px}@media (prefers-reduced-motion: no-preference){.undang__name--new{animation:undang-name-in .16s ease-out}}@keyframes undang-name-in{0%{opacity:0}}@media (max-width: 599.98px){.undang__body{grid-template-columns:minmax(0,1fr)}}.new-class{max-width:var(--page-read)}.new-class__subjects{border:0;margin:0;padding:0;min-width:0}.new-class__subjects legend{padding:0;margin-bottom:4px;font-weight:var(--w-strong)}.new-class__options{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:12px 16px;margin-top:12px}.new-class__subject-line{margin:0;color:var(--ink-2);font-size:var(--t-sm)}.grade-immersive{width:100%}.grade-student__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:var(--s5);align-items:start}.grade-student__work,.grade-student__side{min-width:0}.grade-student__side>.ui-stack{padding:0}.grade-student__side{padding-left:var(--s5);border-left:var(--border)}.subv-sheet{min-width:0}.subv-sheet__meta{margin:0 0 var(--s3);color:var(--muted);font-size:var(--t-sm);font-weight:400}.subv-sheet__handin--flag{color:var(--warn)}.grade-student__work .att{width:100%;margin-inline:0;padding-inline:0;border-top:var(--border);border-radius:0;background:transparent}.grade-student__work .att__main{flex-direction:row;align-items:center;gap:var(--s2)}.grade-student__work .att__line{min-width:0}.grade-student__work .att__meta{order:1;flex:0 0 auto;white-space:nowrap}.grade-student__work .att__label{display:block;-webkit-line-clamp:1;line-clamp:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grade-student__work .att__link{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grade-student__work .att__link svg{display:none}.grade-student__work .att-wrap{gap:0}.grade-student__work .att-wrap+.att-wrap{margin-top:calc(var(--s3) * -1)}.grade-student__work .att__embed{margin-bottom:var(--s3)}.grade-student__work .att{position:relative}.grade-student__work .att__toggle{position:absolute;top:50%;right:0;translate:0 -50%;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius);background:var(--sheet);color:var(--muted);font-size:var(--t-sm);font-weight:500;opacity:0}.grade-student__work .att__toggle svg{display:none}.grade-student__work .att:hover .att__toggle,.grade-student__work .att:focus-within .att__toggle,.grade-student__work .att__toggle[aria-expanded=true]{opacity:1}@media (hover: hover){.grade-student__work .att__toggle:hover{background:var(--surface-tint);color:var(--ink)}}@media (hover: none){.grade-student__work .att__toggle{position:static;translate:none;opacity:1}}.grade-size{color:var(--muted);font-size:var(--t-sm);cursor:help;text-decoration:underline dotted var(--line-strong);text-underline-offset:3px}.grade-criterion__gp-text{color:var(--muted);font-size:var(--t-sm);font-weight:400}.grade-peek__field{font-size:var(--t-sm)}.grade-peek__field-name{color:var(--muted);font-size:var(--t-xs);font-weight:500}.ui-card.grade-criterion{border:0;border-radius:0;background:transparent;box-shadow:none}.ui-card.grade-criterion>*{padding-inline:0}.ui-card.grade-criterion:first-child>.ui-card__body{padding-top:0}.ui-card.grade-criterion+.ui-card.grade-criterion{border-top:1px solid var(--line)}.grade-criteria-rule{margin:0;color:var(--muted);font-size:var(--t-sm);line-height:var(--lh)}.grade-criterion__title{font-family:var(--font-serif);font-size:var(--t-base);font-weight:500;min-width:0}.grade-criterion__code{margin-right:.25em;font-family:var(--font-body);font-size:var(--t-sm);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.grade-criterion__link{display:grid;gap:2px}.grade-criterion__indicator,.grade-criterion__outcome{margin:0;font-family:var(--font-serif);line-height:var(--lh)}.grade-criterion__indicator{color:var(--ink-2);font-size:var(--t-ui)}.grade-criterion__outcome-tip{display:block;min-width:0}.grade-criterion__outcome{display:block;color:var(--muted);font-size:var(--t-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grade-criterion__outcome-lead{font-family:var(--font-body)}.grade-criterion__gp{display:inline-block;cursor:help;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;text-decoration-color:var(--muted)}.grade-criterion__derived{margin:0;color:var(--muted);font-size:var(--t-sm);line-height:var(--lh)}.grade-criterion__derived-lead{color:var(--ink);font-weight:500}.grade-criterion__derived-lead+.grade-criterion__derived-detail:before{content:" — "}.grade-criterion__spread{margin:0;color:var(--muted);font-size:var(--t-sm);line-height:var(--lh);font-variant-numeric:tabular-nums;min-height:calc(var(--t-sm) * var(--lh) * 2)}.grade-criterion__levels{display:flex;flex-direction:column;margin:0;padding-left:6px;border-left:1px solid var(--line);container-type:inline-size}.grade-criterion__rung{display:grid;grid-template-columns:118px minmax(0,1fr) 2.5em;gap:10px;align-items:baseline;width:100%;margin:0;padding:5px var(--s2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.grade-criterion__rung-word{font-family:var(--font-body);font-size:var(--t-sm);color:var(--muted);min-width:0}.grade-criterion__rung-desc{font-family:var(--font-serif);font-size:var(--t-base);line-height:1.5;color:var(--ink);min-width:0}@container (max-width: 420px){.grade-criterion__rung{grid-template-columns:minmax(0,1fr) 2.5em;grid-template-areas:"word score" "desc desc";row-gap:2px}.grade-criterion__rung-word{grid-area:word}.grade-criterion__rung-score{grid-area:score}.grade-criterion__rung-desc{grid-area:desc}}.grade-criterion__rung.is-active{background:var(--primary-tint)}.grade-criterion__rung.is-active .grade-criterion__rung-word{color:var(--ink);font-weight:500}.grade-criterion__rung-score{justify-self:end;font-size:var(--t-sm);font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}@media (hover: hover){.grade-criterion__rung:not(.is-active):hover{background:var(--hover)}}.grade-criterion__rung:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}@media (max-width: 420px){.grade-criterion__levels{padding-left:2px}.grade-criterion__rung{grid-template-columns:84px minmax(0,1fr) 2em;gap:var(--s2)}}.grade-criterion__adjust{--adjust-h: 38px;display:flex;align-items:center;gap:var(--s2);height:var(--adjust-h)}.grade-criterion__adjust-btn{padding:2px 0;border:0;background:transparent;color:var(--muted);font-size:var(--t-sm);text-decoration:underline dotted var(--line-strong);text-underline-offset:3px;cursor:pointer}@media (hover: hover){.grade-criterion__adjust-btn:hover{color:var(--ink)}}.grade-criterion__ungraded{color:var(--muted);font-size:var(--t-sm);font-style:italic}.grade-criterion__custom{color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums}.grade-criterion__score-input{width:80px;height:var(--adjust-h);min-height:0}.grade-rubric-group-head{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;padding-bottom:var(--s2);border-bottom:var(--border)}.grade-hint{color:var(--muted);font-size:var(--t-sm);font-weight:400}.grade-action{align-self:flex-start}.grade-action.ui-btn--danger{margin-inline-start:calc(var(--ui-btn-pad) * -1);background:transparent;color:var(--danger)}@media (hover: hover){.grade-action.ui-btn--danger:not(:disabled):hover{background:var(--danger-tint)}}.grade-savebar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;padding:var(--s3) 0;padding-bottom:calc(var(--s3) + env(safe-area-inset-bottom));background:var(--sheet);border-top:var(--border)}.grade-savebar>.ui-btn{flex:0 0 auto;margin-inline-start:auto}.grade-savebar__final{flex:1 0 100%;min-height:calc(var(--lh) * 1em);line-height:var(--lh);font-size:var(--t-sm);font-weight:400;color:var(--ink-2);white-space:nowrap}.grade-seemode{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2)}.grade-feedback{display:flex;flex-direction:column;gap:var(--s2)}.grade-feedback__label{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);font-weight:500;color:var(--ink)}.grade-feedback__actions{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}@media (max-width: 560px){.grade-savebar>.ui-btn{flex:1 1 auto}}@media (max-width: 900px){.grade-student__layout{grid-template-columns:1fr}.grade-student__side{padding-left:0;padding-top:var(--s5);border-left:0;border-top:var(--border)}}.grade-pivot{display:flex;flex-direction:column;gap:var(--s4)}.grade-pivot__bar{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}.grade-pivot__pos{font-size:var(--t-xs);font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.grade-pivot__arrows{display:inline-flex;gap:var(--s1)}.grade-pivot__head{display:flex;flex-direction:column;gap:var(--s1)}.grade-pivot__prompt{margin:0;font-family:var(--font-serif);font-size:var(--t-lead);font-weight:500;line-height:var(--lh)}.grade-pivot__count{margin:0;font-size:var(--t-xs);font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}.grade-pivot__rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.grade-pivot__row{display:grid;grid-template-columns:12rem 1fr auto;gap:var(--s3);align-items:start;padding:var(--s3) 0;border-top:1px solid var(--line-soft, var(--surface-strong))}.grade-pivot__row--anchor{background:var(--surface-tint)}.grade-pivot__who{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s1);min-width:0}.grade-pivot__from{font-size:var(--t-xs);font-weight:500;color:var(--muted)}.grade-pivot__answer{min-width:0}.grade-pivot__mark{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap}@media (max-width: 720px){.grade-pivot__row{grid-template-columns:1fr}}.grade-feedback textarea{font-family:var(--font-serif);font-size:var(--t-base);line-height:var(--lh-read)}.mj-frame--focus .grader-chrome{animation:grader-focus-in .16s var(--ease-out) .11s both}@keyframes grader-focus-in{0%{opacity:0}}.subv__item{display:flex;flex-direction:column;gap:var(--s2)}.subv__item+.subv__item{margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--surface-strong)}.subv__qstrip+.subv__item{margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--surface-strong)}.subv__label{align-self:flex-start;color:var(--muted);font-size:var(--t-sm);font-weight:400}.subv__text{margin:0;padding:0;color:var(--ink);font-family:var(--font-serif);font-size:var(--t-lead);line-height:var(--lh-read);white-space:pre-wrap;word-break:break-word}.subv__discussion{display:grid;gap:var(--s3)}.subv__discussion-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);flex-wrap:wrap;padding-bottom:var(--s2);border-bottom:var(--border)}.subv__discussion-head strong{font-family:var(--font-display)}.subv__discussion-head div{display:grid;gap:2px}.subv__discussion-head em{color:var(--muted);font-size:var(--t-xs);font-style:normal;font-weight:var(--w-strong)}.subv__discussion-head span{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__discussion-post{display:grid;gap:var(--s2);padding:var(--s3);border:var(--border);border-radius:var(--radius);background:var(--surface-tint)}.subv__discussion-post--reply{margin-left:var(--s4);background:var(--surface)}.subv__discussion-post p{margin:0;line-height:var(--lh-read)}.subv__discussion-meta{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.subv__discussion-meta strong{font-size:var(--t-sm);font-weight:var(--w-strong)}.subv__discussion-meta span{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__qstrip{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:var(--s1)}.subv__qstrip-cell{display:grid;place-items:center;min-width:44px;min-height:44px;padding:var(--s1);border:var(--border);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;line-height:1.1;cursor:pointer}.subv__qstrip-n{font-size:var(--t-xs);font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.subv__qstrip-glyph{font-size:var(--t-sm);font-weight:var(--w-strong)}.subv__qstrip-cell--full{background:var(--success-tint);border-color:var(--success-ink);color:var(--success-ink)}.subv__qstrip-cell--partial{background:var(--warn-tint);border-color:var(--warn);color:var(--warn)}.subv__qstrip-cell--wrong{background:var(--danger-tint);border-color:var(--danger-strong);color:var(--danger-strong)}.subv__qstrip-cell--open{border-style:dashed;color:var(--muted)}.subv__item:focus{outline:var(--border-width) solid var(--primary);outline-offset:var(--s1)}.subv__quiz-head{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap}.subv__quiz-prompt{font-weight:var(--w-strong);line-height:var(--lh)}.subv__quiz-missing{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__quiz-unanswered{margin:0;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-strong)}.subv__quiz-rows{margin:0;padding:var(--s3);border:var(--border);border-radius:var(--radius);background:var(--surface-tint);list-style:none;display:grid;gap:var(--s2)}.subv__quiz-row{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap;font-size:var(--t-ui);line-height:var(--lh-read)}.subv__quiz-given{word-break:break-word}.subv__quiz-expected{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__quiz-crit{border:var(--border);border-radius:var(--radius);background:var(--surface-tint);padding:var(--s3);box-shadow:var(--shadow-xs)}.subv__quiz-crit-title{margin:0;font-family:var(--font-display);font-size:var(--t-sm);font-weight:var(--w-strong)}.subv__quiz-crit-rule{margin:var(--s1) 0 var(--s2);color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh)}.subv__quiz-crit-lines{margin:0;padding:0;list-style:none;display:grid;gap:var(--s2)}.subv__quiz-crit-line{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);font-size:var(--t-sm);font-weight:var(--w-strong)}.subv__quiz-crit-name{min-width:0;overflow-wrap:anywhere}.subv__quiz-crit-name--muted{color:var(--muted)}.subv__quiz-crit-value{display:flex;align-items:baseline;gap:var(--s2);white-space:nowrap}.subv__quiz-crit-pending{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__quiz-mark{display:inline-flex;align-items:baseline;gap:var(--s1);white-space:nowrap}.subv__quiz-mark-input{width:4.5rem;text-align:right}.subv__quiz-mark-input--auto{background:var(--surface-tint);color:var(--muted)}.subv__quiz-mark-input--changed{background:var(--warn-tint);border-color:var(--warn)}.subv__quiz-mark-of{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__quiz-mark-changed{margin:0;color:var(--warn);font-size:var(--t-xs);font-weight:var(--w-strong)}.subv__quiz-pivot{margin:0}.subv__discussion-post>p,.subv__discussion-post .subv__post-text,.subv__quiz-prompt{font-family:var(--font-serif)}.grade-group-adjust{display:grid;gap:var(--s2)}.grade-group-adjust__head{display:flex;align-items:center;gap:var(--s2)}.grade-group-adjust__head strong{font-family:var(--font-display);font-size:var(--t-base)}.grade-group-adjust__sub{margin:0;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:var(--lh)}.grade-group-adjust__base{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2);padding:var(--s2) 0;border-top:var(--border);border-bottom:var(--border)}.grade-group-adjust__base span{color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.grade-group-adjust__base strong{font-family:var(--font-display);font-size:var(--t-lead);font-variant-numeric:tabular-nums}.grade-group-adjust__table{display:grid;border:var(--border);border-radius:var(--radius);overflow:hidden}.grade-group-adjust__row{display:grid;grid-template-columns:minmax(72px,1fr) 40px auto;gap:var(--s2);align-items:center;padding:var(--s2);background:var(--surface)}.grade-group-adjust__row+.grade-group-adjust__row{border-top:var(--border)}.grade-group-adjust__row.is-active{background:var(--primary-tint)}.grade-group-adjust__row--head{background:var(--surface-tint);color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.grade-group-adjust__name{padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:var(--w-strong);text-align:left;cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis}.grade-group-adjust__row.is-active .grade-group-adjust__name{color:var(--primary-strong)}.grade-group-adjust__row>strong{justify-self:end;font-variant-numeric:tabular-nums}.grade-group-adjust__final--adj{color:var(--primary-strong)}.grade-group-adjust__row .ui-field{margin:0}.grade-group-adjust__row .ui-input{min-height:32px;padding:4px;text-align:center}.grade-group-adjust__stepper{display:flex;align-items:center;gap:4px}.grade-group-adjust__stepper .ui-field{width:48px;flex:0 0 auto}.grade-group-adjust__step{display:inline-flex;align-items:center;gap:1px;height:32px;padding:0 6px;flex:0 0 auto;border:var(--border)!important;border-radius:var(--radius);background:var(--surface)!important;color:var(--ink)!important;font-weight:var(--w-strong);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color .1s ease}@media (hover: hover) and (pointer: fine){.grade-group-adjust__step:hover{background:var(--primary-tint)!important}}.grade-group-adjust__note-toggle{display:grid;place-items:center;width:30px;height:32px;flex:0 0 auto;border:var(--border)!important;border-radius:var(--radius);background:var(--surface)!important;color:var(--muted)!important;cursor:pointer;transition:background-color .1s ease}.grade-group-adjust__note-toggle.is-on{background:var(--primary-tint)!important;color:var(--primary-strong)!important}@media (hover: hover) and (pointer: fine){.grade-group-adjust__note-toggle:hover{background:var(--primary-tint)!important;color:var(--primary-strong)!important}}.grade-group-adjust__note{grid-column:1 / -1}.grade-group-adjust__note .ui-textarea{min-height:52px;resize:vertical}.grade-group-adjust__privacy{margin:0;color:var(--muted);font-size:var(--t-xs);font-weight:var(--w-strong)}.grader-chrome{min-width:0}.grader-chrome .ui-collapsing{--collapsing-gutter: max(var(--s5), calc((100% - 1180px)/2) )}@media (max-width: 599.98px){.grader-chrome .ui-collapsing{--collapsing-gutter: var(--s4)}}@media (max-width: 560px){.grader-chrome .ui-collapsing{--collapsing-gutter: var(--s3)}}.grader-chrome__body{display:flex;flex-direction:column;gap:var(--s4);padding-top:var(--s4);padding-inline:var(--collapsing-gutter);padding-bottom:var(--s6);border-top:var(--border)}.grader-chrome__switcher{min-width:0;max-width:100%}.grader-switch{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.grader-switch__text{display:flex;flex-direction:column;gap:1px;min-width:0}.grader-switch__title{display:flex;align-items:center;gap:var(--s2);min-width:0;font-family:var(--font-serif);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grader-switch__caret{flex:0 0 auto}.grader-switch__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grader-switch__prefix{flex:0 0 auto;color:var(--muted);font-weight:var(--w-strong)}.grader-switch__meta{overflow:hidden;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body);text-overflow:ellipsis;white-space:nowrap}.grader-switch--large .grader-switch__title{font-size:var(--t-h1);letter-spacing:-.01em}.grader-switch--compact{padding:var(--s1) var(--s2);border-radius:var(--radius)}@media (hover: hover){.grader-switch--compact:hover{background:var(--surface-tint)}}.grader-switch--compact .grader-switch__title{font-size:var(--t-ui)}.grader-switch--compact.grader-switch--open{background:var(--primary-tint)}.grader-switch:focus-visible{outline:var(--border-width) solid var(--primary);outline-offset:2px}@media (max-width: 560px){.grader-switch--large .grader-switch__title{font-size:var(--t-h3)}}.grader-stepper{display:flex;align-items:center;gap:var(--s1);min-width:0}.grader-stepper__nav{flex:0 0 auto}.grader-stepper__name{display:inline-flex;align-items:baseline;gap:var(--s2);min-width:0;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;font-size:var(--t-ui);font-weight:var(--w-em);cursor:pointer}.grader-stepper__name>.chv{align-self:center;flex:none;color:var(--muted)}@media (hover: hover){.grader-stepper__name:not(:disabled):hover{background:var(--surface-tint)}}.grader-stepper__name[aria-expanded=true]{background:var(--surface-tint)}.grader-stepper__state{flex:none;font-size:var(--t-sm);white-space:nowrap}.grader-stepper__name:disabled{cursor:default;opacity:.55}.grader-stepper__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grader-stepper__pos{flex:0 0 auto;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-iconbtn{display:inline-grid;place-items:center;width:32px;height:32px;flex:0 0 auto;padding:0;border:0;border-radius:var(--radius);background:transparent;color:var(--ink-2);cursor:pointer}@media (hover: hover){.grader-iconbtn:not(:disabled):hover{background:var(--surface-tint);color:var(--ink)}}.grader-iconbtn[aria-expanded=true]{background:var(--surface-tint);color:var(--ink)}.grader-iconbtn:disabled{cursor:default;opacity:.45}.grader-dot{display:inline-block;width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--draft)}.grader-dot--pending{box-shadow:inset 0 0 0 1.5px var(--act);background:transparent}.grader-dot--graded{background:var(--ok)}.grader-list{display:flex;flex-direction:column}.grader-row{display:flex;align-items:flex-start;gap:var(--s3);width:100%;padding:var(--s3);border:0;border-top:1px solid rgba(0,0,0,.12);background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.grader-row:first-child{border-top:0}.grader-row:hover{background:var(--surface-tint)}.grader-row--active{background:var(--primary-tint)}.grader-row__main{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.grader-row__title{overflow:hidden;font-family:var(--font-serif);font-size:var(--t-ui);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.grader-row__meta{color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-row__tail{flex:0 0 auto;color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body);white-space:nowrap}.grader-list__foot{margin:0;padding:var(--s3);border-top:var(--border);background:var(--surface-tint);color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-menu{display:flex;flex-direction:column}.grader-menu__row{display:flex;align-items:flex-start;gap:var(--s3);width:100%;padding:var(--s3);border:0;border-top:1px solid rgba(0,0,0,.12);background:var(--surface);color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.grader-menu__row:first-child{border-top:0}.grader-menu__row:hover{background:var(--surface-tint);text-decoration:none}.grader-menu__row:disabled{cursor:default;opacity:.55}.grader-menu__row>svg{flex:0 0 auto;margin-top:1px}.grader-menu__main{display:flex;flex-direction:column;gap:2px;min-width:0}.grader-menu__title{font-size:var(--t-ui);font-weight:var(--w-body)}.grader-menu__hint{color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-menu__hint--warn{color:var(--warn)}.grader-picker{display:flex;flex-direction:column}.grader-picker__filters{display:flex;flex-wrap:wrap;gap:var(--s2);padding:var(--s3) var(--s3) 0}.grader-picker__search{display:flex;align-items:center;gap:var(--s2);padding:var(--s3);color:var(--muted)}.grader-picker__search>.ui-input,.grader-picker__search input{flex:1;min-width:0}.grader-picker__section-label{margin:0;padding:var(--s1) var(--s3);border-top:var(--border);border-bottom:var(--border);background:var(--surface-tint);color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-picker__row{display:flex;align-items:center;gap:var(--s2);width:100%;padding:var(--s3);border:0;border-top:1px solid rgba(0,0,0,.12);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--t-sm);font-weight:var(--w-body);text-align:left;cursor:pointer}.grader-picker__section .grader-picker__row:first-of-type{border-top:0}.grader-picker__row:hover{background:var(--surface-tint)}.grader-picker__row--active{background:var(--primary-tint)}.grader-picker__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grader-picker__auto{flex:0 0 auto;font-size:var(--t-xs)}.grader-picker__score{flex:0 0 auto;color:var(--muted);font-weight:var(--w-strong)}.grader-picker__empty{margin:0;padding:var(--s4);color:var(--muted);font-size:var(--t-sm);font-weight:var(--w-body)}.grader-chrome__place{display:block}.grader-chrome__waiting{color:var(--warn)}.submission-list__title{font-family:var(--font-serif);font-weight:500}.submission-list__done{margin:0;color:var(--muted);font-size:var(--t-ui)}.gp-scope-menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:var(--t-ui);font-weight:500;cursor:pointer}.gp-scope-menu:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.gp-scope-menu__item{display:block;width:100%;padding:var(--s2) var(--s3);border:0;background:none;color:var(--ink);font:inherit;font-size:var(--t-ui);text-align:left;cursor:pointer}.gp-scope-menu__item[aria-checked=true]{font-weight:600}.gp-scope-menu__item:hover{background:var(--hover)}.v22.simple-print{--ink: #1c1c1c;--muted: #5b5b5b;--rule: #c9c9c9;--rule-strong: #6f6f6f;background:#fff;color:#202020;font-family:Arial,sans-serif;font-size:11px;line-height:1.4;print-color-adjust:exact;-webkit-print-color-adjust:exact;border:1px solid var(--rule);max-width:210mm}.v22 .print-sheet{padding:28px 26px 34px}.v22 .en{color:var(--muted);font-weight:400;font-style:italic;font-size:.9em}.v22 .bi{display:inline-block;vertical-align:top}.v22 .bi>.en{display:block;margin-left:0}.v22.id-only .en{display:none}.v22 .bi>.sub{display:block;font-size:11px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted)}.v22 .print-header{text-align:center;margin-bottom:16px}.v22 .print-title{margin:0;font-size:15px;line-height:1.2;letter-spacing:.02em;font-family:Arial,sans-serif}.v22 .print-subtitle{margin-top:3px;font-weight:600;font-size:11px}.v22 .print-school-level{display:block;margin-top:2px;font-size:11px;font-weight:600}.v22 .print-revision{margin-top:6px;font-size:10px;font-weight:700;color:var(--muted)}.v22 .print-identity{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;margin:0 0 28px;padding:10px 0;border-block:1px solid var(--rule-strong)}.v22 .print-pair{display:grid;grid-template-columns:110px 8px 1fr;align-items:baseline}.v22 .print-pair b{font-weight:400;color:var(--muted)}.v22 .print-pair b [lang=id]{color:var(--ink)}.v22 .print-pair>span:last-child{font-weight:700;color:var(--ink)}.v22 .print-section{margin-top:28px}.v22 .print-sheet>:first-child{margin-top:0}.v22 .print-section>*+*{margin-top:8px}.v22 .print-section-title{margin:0 0 8px;font-size:13px;font-weight:750;line-height:1.25;text-align:left;font-family:Arial,sans-serif}.v22 .print-section-title [lang=id]{text-transform:uppercase;letter-spacing:.02em}.v22 .print-section-title .en{font-size:11px;margin:1px 0 0;text-transform:none;letter-spacing:0}.v22 .print-copy{margin:0;text-align:left;white-space:pre-line}.v22 .print-legend{margin:4px 0 0;font-size:10px;color:var(--muted)}.v22 .print-placeholder .print-legend{font-style:italic}.v22 .table-scroll{overflow-x:auto}.v22 .print-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0;border:1px solid var(--rule)}.v22 .print-table th,.v22 .print-table td{border:1px solid var(--rule);padding:5px 7px;vertical-align:top;overflow-wrap:anywhere}.v22 .print-table thead th{background:#f1f1f1;font-weight:700;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule-strong)}.v22 .print-table tbody th{background:#f7f7f7;font-weight:700;text-align:left}.v22 .print-table tbody+tbody{border-top:1px solid var(--rule-strong)}.v22 .print-table .center,.v22 .print-table thead th.center,.v22 .signature-table th{text-align:center}.v22 .signature-table .sign-row td{height:24mm;vertical-align:bottom}.v22 .sign-line{display:inline-block;width:70%;border-bottom:1px solid var(--rule-strong)}.v22 .result-key{width:62%;margin:12px 0 8px}.v22 .scale-bar{display:grid;grid-template-columns:repeat(4,1fr);column-gap:2px;margin-top:2px}.v22 .scale-bar .step{display:grid;text-align:center;align-items:start}.v22 .scale-bar .lv{display:block;min-width:0}.v22 .scale-bar span{display:block;margin-top:3px;font-size:9.5px;line-height:1.2;color:var(--ink);font-weight:600}.v22 .scale-bar small{display:block;margin-top:1px;font-size:9px;line-height:1.25;color:#767676}.v22 .lv{display:inline-block;min-width:30px;padding:1px 6px;border-radius:3px;font-size:9.5px;font-weight:700;text-align:center;line-height:1.5}.v22 .lv1{background:#ececec;color:#333}.v22 .lv2{background:#cfcfcf;color:#222}.v22 .lv3{background:#6e6e6e;color:#fff}.v22 .lv4{background:#333;color:#fff}@media (max-width: 640px){.v22 .print-sheet{padding:20px 13px}.v22 .print-identity{grid-template-columns:1fr}}@media print{.v22.simple-print{border:0;max-width:none}.v22 .print-sheet{padding:0}.v22 .table-scroll{overflow:visible}.v22 .print-table th{background:#fff}.v22 .page-start{break-before:page}.v22 .keep-together{break-inside:avoid}}.neo-settings__section{margin:0 0 var(--s3);color:var(--ink);font-size:var(--t-base);font-weight:500}.neo-settings__subsection{margin:var(--s4) 0 var(--s3);color:var(--muted);font-size:var(--t-sm);font-weight:500}.neo-settings__choice{display:flex;flex-direction:column;gap:2px}.neo-settings__choice-label{color:var(--ink);font-weight:500}.neo-settings__choice-hint{color:var(--muted);font-size:var(--t-sm);font-weight:400;line-height:var(--lh)}.neo-notif-settings__kinds-label{color:var(--muted);font-size:var(--t-sm);font-weight:500}.neo-settings__time{max-width:160px}.neo-language{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.neo-language__label{color:var(--ink);font-size:var(--t-base);font-weight:500}.neo-language__toggle{display:inline-flex;gap:2px;padding:3px;border-radius:10px;background:var(--surface-tint)}.neo-language__option{min-width:40px;padding:4px 10px;border:none;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:var(--t-sm);font-weight:500;text-align:center;cursor:pointer;transition:color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}.neo-language__option:active{transform:scale(.97)}.neo-language__option.is-active{background:var(--sheet);color:var(--ink);box-shadow:0 1px 2px #00000014}.neo-language--stacked{flex-wrap:wrap;row-gap:var(--s1)}.neo-language__hint{flex:1 0 100%;color:var(--muted);font-size:var(--t-sm)}.school-name{display:grid;gap:var(--s2)}.school-name__label{color:var(--muted);font-size:var(--t-sm)}@layer theme,base,meja,components,utilities;@layer meja{:root{--font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display: var(--font-body);--font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, ui-serif, serif;--t-micro: 11.5px;--t-xs: 12px;--t-sm: 13px;--t-ui: 14px;--t-base: 15px;--t-input: 16px;--t-lead: 17px;--t-h3: 20px;--t-h2: 22px;--t-h1: 28px;--t-display: clamp(28px, 4.2vw, 40px);--lh-tight: 1.25;--lh: 1.45;--lh-read: 1.6;--w-body: 400;--w-em: 500;--w-strong: 550;--w-title: 500;--desk: #ECECE8;--paper: #F8F8F6;--sheet: #FFFFFF;--hover: rgba(0, 0, 0, .045);--sel: #FFFFFF;--bg: var(--desk);--surface: var(--sheet);--surface-tint: #F4F4F1;--surface-strong: #ECECE8;--rail-soft: #E3E3DE;--ink: #151515;--ink-2: #4B4B52;--muted: #76767E;--faint: #ADADB3;--line: #E6E6E1;--line-soft: #F0F0EC;--line-strong: #D4D4CE;--tint: #F4ECDA;--accent: #1F5A44;--accent-strong: #184A38;--accent-tint: #E6EFEA;--accent-tint-strong: #D6E6DD;--on-accent: #FFFFFF;--subj-1: #3B6EA5;--subj-1-tint: #E8EFF7;--subj-2: #2F7D5B;--subj-2-tint: #E5F2EC;--subj-3: #B5562F;--subj-3-tint: #F7EBE5;--subj-4: #7A4FA0;--subj-4-tint: #F0EAF6;--subj-5: #A17A1A;--subj-5-tint: #F6F0DE;--subj-6: #2C7F8C;--subj-6-tint: #E3F1F3;--success: #1F7A52;--success-tint: #E8F3ED;--success-ink: #1F6A48;--warn: #A06000;--warn-tint: #FBF3E4;--warn-ink: #8A5300;--danger: #B42318;--danger-tint: #FBECEA;--danger-strong: #912018;--info: #3B6EA5;--info-tint: #EEF3F9;--act: var(--warn);--act-ink: var(--warn-ink);--ok: #1F7A52;--draft: var(--faint);--scrim-light: rgba(21, 21, 21, .12);--elev-xs: none;--elev-sm: none;--elev-md: 0 0 0 1px rgba(0, 0, 0, .05), 0 1px 3px rgba(0, 0, 0, .06);--elev-lg: 0 0 0 1px rgba(0, 0, 0, .06), 0 12px 32px -8px rgba(0, 0, 0, .18), 0 4px 10px -4px rgba(0, 0, 0, .08);--elev-float: var(--elev-lg);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-move: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--dur-press: .1s;--dur-pop: .16s;--dur-move: .2s;--dur-pop-out: .12s;--dur-hover: .1s;--dur-morph: .24s;--dur-sheet: .28s;--dur-fade-rm: .12s;--stagger: 80ms;--glass: rgba(255, 255, 255, .88);--glass-paper: color-mix(in oklab, var(--paper) 88%, transparent);--glass-blur: blur(18px) saturate(1.5);--glass-shadow: 0 0 0 1px rgba(0, 0, 0, .06), 0 16px 38px -12px rgba(0, 0, 0, .24);--rule-w: 1px;--rule-w-strong: 1px;--rule: var(--rule-w) solid var(--line);--rule-strong: var(--rule-w-strong) solid var(--line-strong);--r-sm: 6px;--r-row: 8px;--r-menu: 12px;--r-sheet: 14px;--r-pill: 9999px;--gap: 8px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--z-raised: 1;--z-sticky: 30;--z-rail-float: 40;--z-pop: 60;--z-sheet: 70;--z-toast: 80;--z-tip: 1000}@media (prefers-reduced-transparency: reduce){:root{--glass: var(--sheet);--glass-paper: var(--paper);--glass-blur: none}}}@layer theme,base,meja,components,utilities;@layer meja{.wz-tipx{position:fixed;z-index:var(--z-tip);box-sizing:border-box;width:max-content;max-width:min(280px,calc(100vw - 24px));overflow-wrap:anywhere;padding:7px 11px;border-radius:9px;display:flex;flex-direction:column;gap:2px;pointer-events:none;background:#fffffff7;box-shadow:0 0 0 1px #0000000f,0 10px 28px -8px #00000038;font:12.5px/1.4 var(--font-body);color:var(--ink-2);text-align:left;white-space:normal;-webkit-font-smoothing:antialiased}.wz-tipx .when{color:var(--muted)}.wz-tipx .why{color:var(--muted);font-style:italic}.wz-tipx .eg{display:block;margin-top:4px;padding-top:5px;border-top:1px solid rgba(0,0,0,.07)}.wz-tipx .wz-eg1{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:8px;row-gap:2px;font-size:var(--t-xs);color:var(--muted)}.wz-tipx .wz-eg1 span{display:contents}.wz-tipx .wz-eg1 b{font-weight:var(--w-body);color:var(--faint);white-space:nowrap}}@layer meja{.mj-popover{display:inline-flex;min-width:0}.wz{--wz-pad-x: 18px;position:fixed;z-index:var(--z-pop);box-sizing:border-box;max-width:calc(100vw - 24px);min-width:0;overflow-wrap:anywhere;display:flex;flex-direction:column;border-radius:var(--r-sheet);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 0 0 1px #0000000d,0 28px 60px -18px #0000004d,0 6px 16px -8px #0000001a;text-align:left;font-family:var(--font-body);color:var(--ink);animation:wz-grow var(--dur-pop) var(--ease-out)}.wz:focus-visible{outline:none}.wz.kb{animation:none}@keyframes wz-grow{0%{opacity:0;transform:scale(.96)}}@keyframes wz-fade{0%{opacity:0}}.wz-in{box-sizing:border-box;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:14px var(--wz-pad-x) 8px;border-radius:inherit;max-height:inherit}.slid>.wz-notch{display:none}.wz-notch{position:absolute;left:calc(var(--nx) - 7px);top:-6px;width:14px;height:14px;transform:rotate(45deg);background:#fffffff7;box-sizing:border-box;border-top:1px solid rgba(0,0,0,.08);border-left:1px solid rgba(0,0,0,.08);clip-path:polygon(0 0,100% 0,0 100%);pointer-events:none}.wz.up .wz-notch{top:auto;bottom:-6px;border:0;border-right:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08);clip-path:polygon(100% 0,100% 100%,0 100%)}.wz.side .wz-notch{left:-6px;top:calc(var(--ny) - 7px);border:0;border-left:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08);clip-path:polygon(0 0,0 100%,100% 100%)}.wz.side.side-l .wz-notch{left:auto;right:-6px;border:0;border-top:1px solid rgba(0,0,0,.08);border-right:1px solid rgba(0,0,0,.08);clip-path:polygon(0 0,100% 0,100% 100%)}.wz.sheet{left:0!important;right:0;top:auto!important;bottom:0!important;width:100%!important;max-width:none;border-radius:16px 16px 0 0!important;padding-bottom:env(safe-area-inset-bottom)}.wz.sheet:before{content:"";position:absolute;left:50%;top:6px;width:36px;height:4px;margin-left:-18px;border-radius:2px;background:#00000029;z-index:2;pointer-events:none}.wz.sheet .wz-notch{display:none}.wz.sheet .wz-acts :is(button,a):last-child{border-radius:0}.wz-sec{display:flex;align-items:center;gap:10px;margin:16px 0 8px;font:500 var(--t-micro) / 1 var(--font-body);letter-spacing:.02em;color:var(--muted)}.wz-sec:after{content:"";flex:1;height:1px;background:#00000014}.wz-acts{margin:14px calc(-1 * var(--wz-pad-x)) -8px}.wz-acts :is(button,a){-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;display:flex;text-decoration:none;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;min-width:0;padding:10px var(--wz-pad-x);border-top:1px solid rgba(0,0,0,.07);font:13.5px/1.4 var(--font-body);color:var(--ink-2);text-align:left}.wz-acts :is(button,a):hover,.wz-acts :is(button,a):focus-visible{background:#0000000a;outline:none}.wz-acts :is(button,a):last-child{border-radius:0 0 var(--r-sheet) var(--r-sheet)}.wz-acts :is(button,a)>span{min-width:0}.wz-acts i{font-style:normal;color:var(--faint)}.wz-acts svg{flex:none;color:var(--faint)}.wz-acts .pri-r{color:var(--ink);font-weight:var(--w-em)}.wz-cfm{--wz-pad-x: 16px}.wz-cfm .wz-in{padding:14px var(--wz-pad-x) 12px}.wz-cfm-t{display:block;font:600 var(--t-ui) / 1.4 var(--font-body);color:var(--ink)}.wz-cfm-l{margin:4px 0 0;font:13.5px/1.45 var(--font-body);color:var(--ink-2)}.wz-cfm-b{display:flex;gap:8px;margin-top:12px}.wz-cfm-b button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;height:32px;padding:0 12px;border-radius:var(--r-row);font:500 13.5px/1 var(--font-body);transition:background var(--dur-hover),transform var(--dur-press) var(--ease-out)}.wz-cfm-b button:active{transform:scale(.97)}.wz-cfm-b .wz-cfm-yes{background:var(--danger);color:var(--sheet)}.wz-cfm-b .wz-cfm-yes:hover{background:var(--danger-strong)}.wz-cfm-b .wz-cfm-yes.ok{background:var(--ink)}.wz-cfm-b .wz-cfm-yes.ok:hover{background:#000}.wz-cfm-b .wz-cfm-no{color:var(--ink-2)}.wz-cfm-b .wz-cfm-no:hover{background:var(--hover)}@media (prefers-reduced-motion: reduce){.wz{animation:wz-fade .12s linear}}}@layer meja{.mj-sheet__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-sheet);display:flex;align-items:flex-start;justify-content:center;padding:var(--s6) var(--s4);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;background:#15151538;animation:mj-sheet-fade var(--dur-pop) var(--ease-out)}@keyframes mj-sheet-fade{0%{opacity:0}}.mj-sheet{position:relative;box-sizing:border-box;width:100%;min-width:0;overflow-wrap:anywhere;max-width:520px;margin:auto;background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--r-menu);box-shadow:var(--elev-lg);display:flex;flex-direction:column;max-height:100%;animation:mj-sheet-pop var(--dur-pop) var(--ease-out)}.mj-sheet:focus-visible{outline:none}@keyframes mj-sheet-pop{0%{transform:scale(.96);opacity:0}}.mj-sheet--sm{max-width:400px}.mj-sheet--lg{max-width:720px}.mj-sheet__header{display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s4) var(--s5) 0}.mj-sheet__title{flex:1;margin:0;padding-top:4px;font-family:var(--font-body);font-weight:var(--w-strong);font-size:var(--t-lead);line-height:var(--lh-tight);color:var(--ink)}.mj-sheet__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:var(--r-row);cursor:pointer;color:var(--muted);transition:background-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out);line-height:1}@media (hover: hover){.mj-sheet__close:hover{background:var(--hover);color:var(--ink)}}.mj-sheet__close:active{transform:scale(.96)}.mj-sheet__body{min-width:0;padding:var(--s4) var(--s5) var(--s5);overflow-y:auto;overflow-x:hidden;color:var(--ink);font-size:var(--t-ui);line-height:var(--lh-read)}.mj-sheet__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--s2);padding:var(--s3) var(--s5) var(--s4);border-top:1px solid var(--line-soft)}@media (max-width: 599.98px){.mj-sheet__overlay{padding:var(--s3)}.mj-sheet__header,.mj-sheet__body,.mj-sheet__footer{padding-left:var(--s4);padding-right:var(--s4)}.mj-sheet__overlay:has(.mj-popover__sheet){align-items:flex-end;padding:0}.mj-popover__sheet{margin:auto 0 0;max-width:none;max-height:82vh;border-radius:var(--r-sheet) var(--r-sheet) 0 0;padding-bottom:env(safe-area-inset-bottom)}.mj-popover__sheet .mj-sheet__body{padding:0}}@media (prefers-reduced-motion: reduce){.mj-sheet{animation:mj-sheet-fade .12s linear}}}@layer meja{.mj-toast__host{position:fixed;z-index:var(--z-toast);bottom:var(--s5);right:var(--s5);display:flex;flex-direction:column;gap:var(--s2);max-width:min(360px,calc(100vw - 32px));pointer-events:none}.mj-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--s2);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--r-menu);box-shadow:var(--elev-lg);padding:10px var(--s3);font-family:var(--font-body);font-size:var(--t-ui);line-height:var(--lh);color:var(--ink);animation:mj-toast-in var(--dur-pop) var(--ease-out)}@keyframes mj-toast-in{0%{transform:translateY(8px) scale(.98);opacity:0}}.mj-toast--leaving{pointer-events:none;animation:mj-toast-out .14s var(--ease-out) forwards}@keyframes mj-toast-out{to{transform:translateY(8px) scale(.98);opacity:0}}.mj-toast__dot{flex:0 0 auto;width:8px;height:8px;border-radius:var(--r-pill);margin-top:6px;background:var(--faint)}.mj-toast--success .mj-toast__dot{background:var(--success)}.mj-toast--danger .mj-toast__dot{background:var(--danger)}.mj-toast--info .mj-toast__dot{background:var(--info)}.mj-toast--warn .mj-toast__dot{background:var(--warn)}.mj-toast__msg{flex:1;min-width:0;font-weight:var(--w-em)}.mj-toast__action{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap;cursor:pointer}@media (hover: hover){a.mj-toast__action:hover{text-decoration:underline;text-underline-offset:3px}}.mj-toast__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;background:transparent;border:none;cursor:pointer;color:var(--muted);font-size:var(--t-ui);line-height:1;padding:0 0 0 var(--s1)}@media (hover: hover){.mj-toast__close:hover{color:var(--ink)}}@media (prefers-reduced-motion: reduce){.mj-toast{animation:mj-toast-fade .12s linear}.mj-toast--leaving{animation:mj-toast-fade .12s linear reverse forwards}@keyframes mj-toast-fade{0%{opacity:0}}}}@layer meja{.wz-seg{display:flex;flex-wrap:wrap;gap:4px}.wz-seg--block>button{flex:1 1 0}.wz-seg>button,.mj-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);min-width:32px;padding:3px 10px;border-radius:var(--r-pill);background:#0000000b;font:13px/1.5 var(--font-body);color:var(--ink-2);white-space:nowrap;transition:background var(--dur-hover),color var(--dur-hover),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.wz-seg>button:not(:disabled):hover,.mj-chip:not(:disabled):hover{background:#00000014}}.wz-seg>button[aria-checked=true],.mj-chip[aria-pressed=true]{background:var(--ink);color:var(--sheet)}.wz-seg>button:not(:disabled):active,.mj-chip:not(:disabled):active{transform:scale(.97)}.wz-seg>button:focus-visible,.mj-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.wz-seg>button:disabled,.mj-chip:disabled{opacity:.4;cursor:not-allowed}.wz-seg-i{display:inline-flex;font-size:.9em}@media (prefers-reduced-motion: reduce){.wz-seg>button:not(:disabled):active,.mj-chip:not(:disabled):active{transform:none}}}@layer meja{.chv{flex:none;display:inline-block;vertical-align:middle;transition:transform var(--dur-move) var(--ease-out)}.chv[data-open]{transform:rotate(90deg)}.chv.dn{vertical-align:-1px;margin-left:2px;color:var(--muted)}.clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--lines, 2);line-clamp:var(--lines, 2);overflow:hidden;min-width:0;overflow-wrap:normal;word-break:normal;-webkit-hyphens:manual;hyphens:manual}.sh-tag{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;gap:3px;height:18px;padding:0 6px;border-radius:5px;font:var(--t-micro) / 1 var(--font-body);font-style:normal;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);vertical-align:1px;white-space:nowrap}.sh-tag svg{width:11px;height:11px;color:var(--muted);flex:none}.sh-tag span{overflow:hidden;text-overflow:ellipsis;min-width:0}@media (prefers-reduced-motion: reduce){.chv{transition:none}}}@layer meja{.mj-landed{animation:mj-landed .6s var(--ease-out)}@keyframes mj-landed{0%{background:#eef3ef}to{background:transparent}}}@layer meja{.mj-frame{--mj-rail: 56px;--mj-panel-w: 264px;--mj-panel: 0px;--mj-chrome-w: calc(var(--mj-rail) + var(--mj-panel) + var(--gap));--mj-bar-h: 0px;position:relative;display:grid;grid-template-columns:var(--mj-rail) var(--mj-panel) minmax(0,1fr);grid-template-areas:"rail panel content";height:100dvh;overflow:hidden;background-color:var(--desk);color:var(--ink);font-family:var(--font-body);transition:grid-template-columns var(--dur-move) var(--ease-move)}.mj-frame--panel-open{--mj-panel: calc(var(--mj-panel-w) + var(--gap))}.mj-frame__rail{grid-area:rail;position:relative;z-index:var(--z-rail-float);width:56px;height:100dvh}.mj-frame__panel{grid-area:panel;position:relative;z-index:var(--z-raised);box-sizing:border-box;min-width:0;height:100dvh;padding:8px 8px 8px 0;overflow:hidden}.mj-frame--panel-open:not([data-mj-moving]) .mj-frame__panel{overflow:visible}.mj-frame:not(.mj-frame--panel-open) .mj-frame__panel .mj-panel__in{opacity:0;transition:opacity .14s var(--ease-out)}.mj-frame__content{grid-area:content;position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;margin:8px 8px 8px 0;overflow:hidden;background-color:var(--sheet);border-radius:var(--r-sheet);box-shadow:0 0 0 1px #0000000a,0 1px 3px #00000008}.mj-frame__content--resizing>*{width:var(--pin-w);min-width:var(--pin-w)}.mj-frame--folded .mj-frame__content{--mj-unfold-room: 36px}.mj-frame__unfold{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;top:15px;left:12px;z-index:5;display:inline-grid;place-items:center;width:28px;height:28px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);cursor:pointer;animation:mj-frame-in .16s var(--ease-out) .12s both;transition:background-color .1s var(--ease-out),color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.mj-frame__unfold:hover{background:var(--hover);color:var(--ink)}}.mj-frame__unfold:active{transform:scale(.96)}@keyframes mj-frame-in{0%{opacity:0}}.mj-frame--phone{--mj-rail: 0px;--mj-panel: 0px;--mj-chrome-w: 0px;--mj-bar-h: calc(60px + env(safe-area-inset-bottom)) ;grid-template-columns:minmax(0,1fr);grid-template-areas:"content";background-color:var(--sheet);transition:none}.mj-frame--phone .mj-frame__content{margin:0;border-radius:0;box-shadow:none}.mj-frame--focus{--mj-rail: 0px;--mj-panel: 0px;--mj-chrome-w: 0px;--mj-bar-h: 0px;grid-template-columns:minmax(0,1fr);grid-template-areas:"content";background-color:var(--sheet);transition:none}.mj-frame--focus .mj-frame__content{margin:0;border-radius:0;box-shadow:none}.mj-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mj-rail{position:absolute;top:0;bottom:0;left:0;box-sizing:border-box;display:flex;flex-direction:column;width:56px;padding:10px 8px;color:var(--ink-2);border-radius:0 var(--r-sheet) var(--r-sheet) 0;background-color:transparent;-webkit-backdrop-filter:blur(0px) saturate(1);backdrop-filter:blur(0px) saturate(1);box-shadow:0 0 0 1px #0000,0 12px 32px -8px #0000,0 4px 10px -4px #0000;transition:width var(--dur-move) var(--ease-move),background-color var(--dur-move) var(--ease-move),box-shadow var(--dur-move) var(--ease-move),backdrop-filter var(--dur-move) var(--ease-move),-webkit-backdrop-filter var(--dur-move) var(--ease-move)}.mj-frame--rail-pinned{--mj-rail: 224px}.mj-rail--pinned{width:224px}.mj-rail--paper{z-index:var(--z-rail-float);background-color:var(--glass-paper);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--elev-lg)}.mj-rail--float{width:224px;z-index:var(--z-rail-float);background-color:var(--glass-paper);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--elev-lg)}.mj-rail--collapsed .mj-rail__link,.mj-rail--collapsed .mj-rail__top{overflow:hidden}.mj-rail__top{position:relative;display:flex;align-items:center;height:40px;margin-bottom:14px;min-width:0}.mj-rail__pin{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:auto;display:inline-grid;place-items:center;width:28px;height:28px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--muted);cursor:pointer;transition:opacity .12s var(--ease-out) 40ms,background-color .1s var(--ease-out),color .1s var(--ease-out)}@media (hover: hover){.mj-rail__pin:hover{background:var(--hover);color:var(--ink)}}.mj-rail--pinned .mj-rail__pin{color:var(--ink-2)}.mj-rail__nav,.mj-rail__foot{display:flex;flex-direction:column;gap:4px}.mj-rail__foot{margin-top:auto;padding-top:var(--s4)}.mj-rail__link{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;height:40px;padding:0 10px;border:0;border-radius:var(--r-row);background-color:transparent;color:var(--ink-2);font:inherit;font-size:var(--t-ui);font-weight:500;text-align:left;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .1s var(--ease-out),color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.mj-rail__link:hover{background-color:var(--hover);color:var(--ink);text-decoration:none}}.mj-rail__link:active{transform:scale(.98)}.mj-rail__link:focus-visible,.mj-mark:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mj-rail__link.active{background-color:var(--sheet);color:var(--ink);font-weight:var(--w-strong);box-shadow:0 1px 2px #00000012}.mj-rail__icon{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:20px;height:20px}.mj-rail__text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.mj-rail__link--count .mj-rail__text{margin-right:32px}.mj-rail__extra{display:flex;flex-direction:column;min-width:0;min-height:0;margin-top:var(--s4)}.mj-rail__dot{position:absolute;top:-2px;right:-3px;width:7px;height:7px;border-radius:var(--r-pill);background:var(--accent);box-shadow:0 0 0 2px var(--desk);transition:opacity .12s var(--ease-out)}.mj-rail--float .mj-rail__dot:not(.mj-rail__dot--new){opacity:0}.mj-rail__count{position:absolute;top:50%;left:178px;transform:translateY(-50%);display:inline-block;min-width:20px;color:var(--act-ink);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:18px;text-align:center;font-variant-numeric:tabular-nums}.mj-rail__label{transition:opacity .12s var(--ease-out) 40ms}.mj-rail--collapsed .mj-rail__label{opacity:0;pointer-events:none;transition:opacity 80ms var(--ease-out)}.mj-switch{position:relative}.mj-mark{flex:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:var(--r-row);background-color:transparent;cursor:pointer;transition:background-color .1s var(--ease-out)}.mj-mark--still{cursor:default}@media (hover: hover){button.mj-mark:hover{background-color:var(--hover)}}.mj-mark--open{background-color:#0000000f}.mj-mark__logo{width:24px;height:24px;object-fit:contain;filter:grayscale(1) contrast(1.15);mix-blend-mode:multiply;opacity:.88}.mj-user{position:relative}.mj-user--rail{width:100%}.mj-user__trigger{height:40px;padding-left:4px}.mj-avatar{display:inline-grid;place-items:center;flex:0 0 auto;width:32px;height:32px;overflow:hidden;border-radius:9999px;background-color:var(--rail-soft);color:var(--ink-2);font-size:var(--t-xs);font-weight:var(--w-strong);line-height:1}.mj-avatar img{width:100%;height:100%;object-fit:cover}.mj-avatar--sm{width:24px;height:24px}.mj-user__who{display:flex;flex-direction:column;min-width:0;line-height:var(--lh-tight)}.mj-user__name{overflow:hidden;color:var(--ink);font-size:var(--t-sm);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.mj-user__sub{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-xs);font-weight:400}.mj-menu__pop{position:absolute;z-index:var(--z-pop);box-sizing:border-box;display:flex;flex-direction:column;gap:1px;width:232px;max-width:calc(100vw - 24px);overflow-wrap:anywhere;padding:4px;border-radius:var(--r-menu);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--elev-lg);color:var(--ink);font-family:var(--font-body);animation:mj-menu-pop var(--dur-pop) var(--ease-out)}.mj-switch__pop{top:calc(100% + 6px);left:0;width:248px;transform-origin:top left}.mj-user--rail .mj-user__pop{left:calc(100% + 10px);bottom:0;transform-origin:bottom left}.mj-user--tab .mj-user__pop{right:6px;bottom:calc(100% + 10px);transform-origin:bottom right}@keyframes mj-menu-pop{0%{opacity:0;transform:scale(.96)}}.mj-menu__item{box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:0 10px;border:0;border-radius:calc(var(--r-menu) - 4px);background-color:transparent;color:var(--ink);font:inherit;font-size:var(--t-ui);font-weight:400;text-align:left;text-decoration:none;cursor:pointer;transition:background-color .1s var(--ease-out)}@media (hover: hover){.mj-menu__item:hover{background-color:#0000000d;text-decoration:none}}.mj-menu__item:active{background-color:#00000014}.mj-menu__item svg{flex:0 0 auto;color:var(--muted)}.mj-menu__grow{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mj-menu__label{padding:8px 10px 2px;color:var(--muted);font-size:var(--t-xs)}.mj-menu__sep{height:0;margin:4px 6px;border:none;border-top:1px solid var(--line)}.mj-switch__school{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 10px}.mj-switch__tile{display:inline-grid;place-items:center;flex:0 0 auto;width:24px;height:24px;overflow:hidden;border-radius:6px;background-color:var(--sheet);box-shadow:0 0 0 1px #0000000f;color:var(--muted);font-size:var(--t-micro);font-weight:var(--w-strong)}.mj-switch__tile img{width:20px;height:20px;object-fit:contain}.mj-switch__who{display:flex;flex-direction:column;min-width:0;line-height:var(--lh-tight)}.mj-switch__name{overflow:hidden;color:var(--ink);font-size:var(--t-ui);text-overflow:ellipsis;white-space:nowrap}.mj-switch__year{color:var(--muted);font-size:var(--t-xs);font-variant-numeric:tabular-nums}.mj-switch__here{cursor:default;font-weight:var(--w-em)}@media (hover: hover){.mj-switch__here:hover{background-color:transparent}}.mj-menu__item svg.mj-menu__check{color:var(--ink)}.mj-panel{box-sizing:border-box;width:100%;height:100%;border-radius:var(--r-sheet);background-color:var(--paper);color:var(--ink-2)}.mj-panel__in{box-sizing:border-box;display:flex;flex-direction:column;width:264px;height:100%;min-height:0;padding:12px 8px 8px;transition:opacity .18s var(--ease-out) 60ms}.mj-panel__head{display:flex;align-items:center;gap:var(--s2);min-height:34px;padding:0 4px 0 10px;margin-bottom:var(--s2)}.mj-panel__where{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.mj-panel__title{margin:0;overflow:hidden;color:var(--ink);font-family:var(--font-body);font-size:15px;font-weight:400;letter-spacing:0;line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.mj-panel__sub{color:var(--muted);font-size:var(--t-xs);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.mj-panel__slot{display:flex;flex:1 1 auto;align-items:center;min-width:0}.mj-panel__where+.mj-panel__slot{flex:0 1 auto}.mj-panel__fold{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border:0;border-radius:var(--r-sm);background-color:transparent;color:var(--muted);cursor:pointer;transition:background-color .1s var(--ease-out),color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}@media (hover: hover){.mj-panel__fold:hover{background-color:var(--hover);color:var(--ink)}}.mj-panel__fold:active{transform:scale(.96)}.mj-panel__search{box-sizing:border-box;height:32px;margin:0 2px var(--s2);padding:0 10px;border:0;border-radius:var(--r-sm);background-color:var(--sheet);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);font:inherit;font-size:var(--t-sm)}.mj-panel__search:focus-visible{outline:2px solid var(--accent);outline-offset:0}.mj-panel__body{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 -2px;padding:0 2px var(--s2)}.mj-panel__list{display:grid;gap:1px;margin:0;padding:0;list-style:none}.mj-panel__group{margin-top:var(--s4)}.mj-panel__group-label{display:flex;align-items:baseline;gap:4px;margin:0 0 4px;padding:0 10px;color:var(--muted);font-family:var(--font-body);font-size:var(--t-xs);font-weight:400;line-height:var(--lh);letter-spacing:0}.mj-panel__group-count{font-variant-numeric:tabular-nums}.mj-panel__group-action{margin-left:auto}.mj-row{box-sizing:border-box;display:flex;align-items:center;gap:9px;min-height:36px;padding:0 10px;border-radius:8px;color:var(--ink-2);font-size:14px;font-weight:400;line-height:var(--lh);text-decoration:none;transition:background-color .1s var(--ease-out),color .1s var(--ease-out)}.mj-row--two{min-height:52px;padding:8px 10px}@media (hover: hover){.mj-row:hover{background-color:var(--hover);color:var(--ink);text-decoration:none}}.mj-row.active{background-color:var(--sheet);color:var(--ink);font-weight:500;box-shadow:0 1px 2px #0000000f}.mj-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.mj-row__icon{display:inline-grid;place-items:center;flex:0 0 auto;color:var(--muted)}.mj-row.active .mj-row__icon{color:var(--ink)}.mj-row__label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mj-row__text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.mj-row__meta{color:var(--muted);font-size:var(--t-xs);font-weight:400;line-height:var(--lh)}.mj-row__count{flex:0 0 auto;min-width:22px;color:var(--muted);font-size:var(--t-xs);font-variant-numeric:tabular-nums;text-align:right}.mj-row__count--alert{color:var(--act-ink);font-weight:var(--w-strong)}.mj-panel--page{height:auto;overflow:visible;border-radius:0;background-color:transparent}.mj-panel--page .mj-panel__in{width:auto;height:auto;padding:0}.mj-panel--page .mj-panel__head{padding:0 0 var(--s2)}.mj-panel--page .mj-panel__title{font-size:var(--t-h2);font-weight:var(--w-strong)}.mj-panel--page .mj-row{min-height:48px;font-size:var(--t-base)}.mj-panel--page .mj-row--two{min-height:52px}.mj-panel--page .mj-panel__search{height:40px;margin-inline:0}.mj-bar{position:fixed;right:0;bottom:0;left:0;z-index:var(--z-sticky);box-sizing:border-box;display:flex;align-items:stretch;height:calc(60px + env(safe-area-inset-bottom));padding:0 var(--s1);padding-bottom:env(safe-area-inset-bottom);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 -1px 0 var(--line);font-family:var(--font-body)}.mj-bar>*,.mj-bar>.mj-user{flex:1 1 0;min-width:0}.mj-bar__item{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;height:100%;padding:0 2px;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--t-xs);font-weight:500;line-height:var(--lh-tight);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .1s var(--ease-out),transform var(--dur-press) var(--ease-out)}.mj-bar__item:active{transform:scale(.96)}.mj-bar__item.active{color:var(--ink);font-weight:var(--w-strong)}.mj-bar__icon{position:relative;display:inline-grid;place-items:center;width:44px;height:26px;border-radius:var(--r-pill);transition:background-color .12s var(--ease-out)}.mj-bar__item.active .mj-bar__icon{background-color:#0000000f}.mj-bar__dot{position:absolute;top:2px;right:9px;width:7px;height:7px;border-radius:var(--r-pill);background:var(--accent)}.mj-bar__label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (pointer: coarse){.mj-panel__search{font-size:max(16px,var(--control-font-size, 0px))}.mj-rail__link:after,.mj-mark:after,.mj-panel__fold:after,.mj-frame__unfold:after,.mj-row:after,.mj-menu__item:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}.mj-mark,.mj-panel__fold,.mj-row,.mj-menu__item{position:relative}}@media (prefers-reduced-motion: reduce){.mj-frame,.mj-rail,.mj-rail__link,.mj-bar__item{transition:none}.mj-rail__link:active,.mj-bar__item:active,.mj-panel__fold:active,.mj-frame__unfold:active{transform:none}.mj-menu__pop{animation:mj-menu-fade .12s linear}.mj-panel__in,.mj-frame:not(.mj-frame--panel-open) .mj-frame__panel .mj-panel__in{transition:opacity .12s linear}}@keyframes mj-menu-fade{0%{opacity:0}}}:root{--page-read: 700px;--page-wide: 1180px;--page-pad: 44px;--primary: var(--accent);--primary-strong: var(--accent-strong);--primary-tint: var(--accent-tint);--primary-tint-strong: var(--accent-tint-strong);--on-primary: var(--on-accent);--border: var(--rule);--border-strong: var(--rule-strong);--border-width: var(--rule-w);--border-width-strong: var(--rule-w-strong);--radius-sm: var(--r-sm);--radius: var(--r-row);--radius-lg: var(--r-sheet);--radius-menu: var(--r-menu);--radius-pill: var(--r-pill);--shadow-xs: var(--elev-xs);--shadow-sm: var(--elev-sm);--shadow-md: var(--elev-md);--shadow-lg: var(--elev-lg);--shadow-float: var(--elev-float);--rail: var(--desk);--blue-tint: var(--line-soft);--blue-tint-strong: var(--line);--blue-faint: var(--paper)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{min-width:320px}body{font-family:var(--font-body);font-size:var(--t-base);font-weight:var(--w-body);line-height:var(--lh-read);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--w-title);line-height:var(--lh-tight);letter-spacing:-.01em;color:var(--ink);margin:0 0 var(--s3)}h1{font-size:var(--t-h1)}h2{font-size:var(--t-h3)}h3{font-size:var(--t-lead)}h4{font-size:var(--t-base)}p{margin:0 0 var(--s3)}strong,b{font-weight:var(--w-strong)}a{color:var(--primary);text-decoration:none}@media (hover: hover){a:hover{text-decoration:underline}}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}svg.lucide{stroke-width:1.75}svg.lucide:is([width="10"],[width="11"],[width="12"],[width="13"]){stroke-width:2}button,input,select,textarea{font-family:inherit}@media (pointer: coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{font-size:max(var(--t-input),var(--control-font-size, 0px))!important}}:root{--press-area: 24px}@media (pointer: coarse){:root{--press-area: 44px}}:where(button,a[href],summary,[role=button],[role=tab],[role=radio],[role=menuitem],[role=menuitemradio],[role=option],[role=switch],[role=gridcell][tabindex]){position:relative}:where(button,a[href],summary,[role=button],[role=tab],[role=radio],[role=menuitem],[role=menuitemradio],[role=option],[role=switch],[role=gridcell][tabindex]):not(.course-detail-tab--active,.course-search-popover__trigger,.quiz-run__link,.quiz-q__index--toggle,.quiz-jump__num):after{content:"";position:absolute;left:50%;top:50%;width:max(100%,var(--press-area));height:max(100%,var(--press-area));transform:translate(-50%,-50%)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.st,.tq-word--ok,.tq-word--warn,.tq-word--danger,.tq-word--muted{display:inline-flex;align-items:baseline;gap:8px;color:var(--muted);font-weight:var(--w-body)}.st:before,.tq-word--ok:before,.tq-word--warn:before,.tq-word--danger:before,.tq-word--muted:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;align-self:center;background:var(--st-dot, var(--draft))}.st--act,.tq-word--warn{--st-dot: var(--act)}.st--ok,.tq-word--ok{--st-dot: var(--ok)}.st--danger,.tq-word--danger{--st-dot: var(--danger)}.st--draft,.tq-word--muted{--st-dot: var(--draft)}.st--plain:before{display:none}.ui-tactile{transition:transform var(--dur-press) var(--ease-out),background-color .1s var(--ease-out),border-color .1s var(--ease-out),color .1s var(--ease-out),opacity .1s var(--ease-out)}.ui-tactile--pressable:not(:disabled):active{transform:scale(var(--ui-press-scale, .98))}@media (hover: hover){.ui-tactile--tint:not(:disabled):hover{background:var(--ui-tint-hover-bg, var(--hover));border-color:var(--ui-tint-border, transparent)}}.ui-tactile--tint:not(:disabled):active{background:var(--ui-tint-active-bg, rgba(0, 0, 0, .07));border-color:var(--ui-tint-border, transparent)}@media (prefers-reduced-motion: reduce){.ui-tactile--pressable:not(:disabled):active{transform:none}}.md__p{margin:0 0 var(--s2)}.md__p:last-child{margin-bottom:0}.md__ul,.md__ol{margin:0 0 var(--s2);padding-left:1.4em}.md__ul:last-child,.md__ol:last-child{margin-bottom:0}.md__ul li,.md__ol li{margin:2px 0}.md strong{font-weight:var(--w-strong)}.md em{font-style:italic}.app-main{flex:1;min-width:0;min-height:0;padding:var(--s6) var(--s6);--app-scroll-foot: calc(var(--s6) + env(safe-area-inset-bottom));padding-bottom:var(--app-scroll-foot);scroll-padding-bottom:var(--app-scroll-foot);overflow-y:auto}.app-page{display:flex;flex-direction:column;width:100%;max-width:calc(var(--page-wide) + var(--page-pad) - var(--s6));min-height:100%;padding-left:calc(var(--page-pad) - var(--s6))}.app-page>*{width:100%}.app-page>*>*{max-width:var(--page-read)}.app-page>*>.page-wide{max-width:var(--page-wide)}@media (max-width: 599.98px){.app-page{padding-left:0}}.app-page--item{animation:app-page-in .11s var(--ease-out)}.app-page--module{animation:app-page-in .16s var(--ease-out)}@keyframes app-page-in{0%{opacity:0}}.mj-frame--focus .app-main{padding:0}.mj-frame--focus .app-page{max-width:none;padding-left:0}.mj-frame--focus .app-page>*>*{max-width:none}.auth-wrap{min-height:100%;display:flex;align-items:center;justify-content:center;padding:var(--s5)}.join-code-input::placeholder{text-transform:none;letter-spacing:normal}@media (max-width: 599.98px){.app-main{padding:var(--s4)}}.mj-frame--phone:not(.mj-frame--focus) .app-main{--app-scroll-foot: calc(var(--mj-bar-h) + var(--s5));padding-bottom:var(--app-scroll-foot);scroll-padding-bottom:var(--app-scroll-foot)}@media (max-width: 560px){.app-main{padding:var(--s4) var(--s3)}}.ui-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.landed{animation:landed-pulse .6s var(--ease-out)}@keyframes landed-pulse{0%{background-color:var(--primary-tint)}}
