/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */.ui-dialog-overlay{z-index:60;background:#00000073;position:fixed;inset:0}.ui-dialog{z-index:60;width:min(448px,100% - 32px);min-width:0;max-height:calc(100dvh - 32px);color:var(--color-ink);font:var(--type-body);border-radius:var(--radius-card);overscroll-behavior:contain;background:#fff;flex-direction:column;display:flex;position:fixed;inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 20px 60px -10px #0006}.ui-dialog--form{width:min(720px,100% - 32px)}.ui-dialog--student{width:min(520px,100% - 32px)}.ui-dialog__content{overscroll-behavior:contain;min-height:0;overflow-y:auto}.ui-dialog__header{flex:none;align-items:flex-start;gap:16px;padding:24px 24px 16px;display:flex}.ui-dialog__heading{flex:1;min-width:0}.ui-dialog__title{font:var(--type-section-title);overflow-wrap:anywhere;margin:0}.ui-dialog__description{font:var(--type-body-sm);color:var(--color-ink-secondary);margin:8px 0 0}.ui-dialog__body{padding:8px 24px 24px}.ui-dialog__footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ui-dialog--drawer{border-radius:0;height:100dvh;max-height:100dvh;inset:0 0 0 auto;transform:none}.ui-dialog--drawer .ui-dialog__content{height:100%}.ui-dialog__sheet-handle{display:none}body[data-scroll-locked] .vc-main-topbar{pointer-events:none}@media (max-width:767px){.ui-dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ui-dialog__header{gap:8px;padding:16px 16px 12px}.ui-dialog__body{padding:4px 16px 16px}.ui-dialog--drawer,.ui-dialog--sheet{width:100%;height:auto;max-height:calc(92dvh - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;inset:auto 0 0;transform:none}.ui-dialog__sheet-handle{background:0 0;border:0;place-items:center;width:44px;height:24px;margin:0 auto;display:grid}.ui-dialog__sheet-handle span{background:var(--color-neutral-300);border-radius:999px;width:36px;height:4px}}@media (max-height:480px){.ui-dialog__header{flex-shrink:1;min-height:0;overflow-y:auto}}.ui-filter-panel{z-index:60;width:min(420px,100vw - 32px);max-height:var(--radix-popover-content-available-height);border:1px solid var(--control-border);border-radius:var(--radius-card);color:var(--color-ink);background:#fff;padding:16px;overflow-y:auto;box-shadow:0 12px 32px #00000026}.ui-filter-panel__header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.ui-filter-panel__header h2{font:var(--type-subheading);margin:0}.ui-dialog__close-row{flex:none;justify-content:flex-end;padding:8px 16px 0;display:flex}.ui-dialog.ui-dialog--sidebar{border-radius:0;width:min(86vw,360px);height:100dvh;min-height:0;max-height:100dvh;inset:0 auto 0 0;transform:none}.ui-dialog--sidebar .ui-dialog__content,.ui-sidebar-content{flex-direction:column;height:100%;min-height:0;display:flex}.ui-dialog--sidebar .ui-dialog__content{overflow-y:auto}@media (max-width:767px){.ui-sidebar-desktop{display:none}}.ui-form-stack{gap:16px;display:grid}.ui-form-field{gap:8px;min-width:0;display:grid}.ui-form-field>label,.ui-form-label{font:var(--type-label)}.ui-form-field>.ui-control{width:100%}.ui-form-hint{font:var(--type-caption);color:var(--color-ink-muted);margin:0}.ui-form-error,.ui-form-success,.ui-form-warning{font:var(--type-body-sm);overflow-wrap:anywhere;margin:0}.ui-form-error{color:var(--color-ink-danger)}.ui-form-success{color:var(--color-ink)}.ui-form-warning{color:var(--color-ink-warning)}.ui-consent{font:var(--type-body-sm);cursor:pointer;align-items:flex-start;gap:8px;display:flex}.ui-consent>.ui-choice{flex:0 0 20px}.ui-consent a{color:var(--color-ink-link);text-decoration:underline}@layer components{.ui-table-container{border:1px solid var(--color-neutral-200);border-radius:var(--radius-control,8px);background:#fff;min-width:0;overflow:auto}@media (max-width:780px){.ui-table-container--desktop{display:none}}.ui-table{border-collapse:separate;border-spacing:0;width:100%;font:var(--type-body-sm);color:var(--color-ink-secondary);text-align:left}.ui-table td,.ui-table th{border-bottom:1px solid var(--color-neutral-200);vertical-align:middle;padding:12px 16px}.ui-table thead{background:var(--color-neutral-50)}.ui-table th{font:var(--type-caption-strong);text-align:inherit;color:var(--color-ink-muted)}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table tbody tr:hover{background:var(--color-neutral-50)}.ui-table tbody tr.is-selected{background:var(--sig-signal-bg)}.ui-table[data-density=compact] :is(th,td){padding:8px 12px}.ui-table-primary{color:var(--color-ink);font-weight:400}.ui-table-secondary{color:var(--color-ink-muted);font:var(--type-caption)}.ui-table-numeric{font-variant-numeric:tabular-nums}.ui-table-link{color:var(--color-ink);text-underline-offset:3px;text-decoration:none}.ui-table-link:hover{text-decoration:underline}.ui-table a:focus-visible{outline:2px solid var(--control-focus,#960);outline-offset:3px}.ui-table .ui-table-empty{text-align:center;color:var(--color-ink-muted);padding:40px 16px}.ui-copy-value{align-items:center;gap:4px;max-width:100%;display:inline-flex;position:relative}.ui-copy-value__text{overflow-wrap:anywhere;font:var(--type-code-caption)}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--control-sm:32px;--control-md:40px;--control-lg:48px;--radius-control:8px;--radius-card:12px;--layout-content:1152px;--layout-page:1200px;--layout-form:768px;--page-gutter:var(--space-6);--control-border:var(--color-neutral-300);--control-focus:#960;--control-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23404040' stroke-width='1.5'%3E%3Cpath d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E")}.ui-button.ui-button,.ui-control.ui-control{box-sizing:border-box;min-width:0;max-width:100%;min-height:var(--control-md);padding:calc(var(--space-2) - 1px)var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-control);color:var(--color-ink);background-color:#fff;margin-block:0;transition:background-color .12s,border-color .12s,color .12s}.ui-button.ui-button{justify-content:center;align-items:center;gap:var(--space-2);padding-inline:var(--space-4);text-align:center;white-space:normal;overflow-wrap:anywhere;cursor:pointer;font:var(--type-label);flex-shrink:0;text-decoration:none;display:inline-flex}.ui-button.ui-button:hover:not(:disabled){background-color:var(--color-neutral-100);text-decoration:none}.ui-button.ui-button--primary{background-color:var(--color-primary-500);color:var(--color-ink);border-color:#0000}.ui-button.ui-button--primary:hover:not(:disabled){background-color:var(--color-primary-400)}.ui-button.ui-button--dark{background-color:var(--color-neutral-900);color:var(--color-ink-inverse);border-color:#0000}.ui-button.ui-button--dark:hover:not(:disabled){background-color:var(--color-neutral-800)}.ui-button.ui-button--ghost,.ui-button.ui-button--link{background-color:#0000;border-color:#0000}.ui-button.ui-button--link{color:#000;text-underline-offset:4px}.ui-button.ui-button--link:hover:not(:disabled){color:#000;background-color:#0000;text-decoration:underline}.ui-button.ui-button--danger{color:var(--color-ink-inverse);background-color:#b91c1c;border-color:#0000}.ui-button.ui-button--danger:hover:not(:disabled){background-color:#991b1b}.ui-button.ui-button--sm,.ui-control.ui-control--sm{min-height:var(--control-sm);padding:calc(var(--space-1) - 1px)var(--space-3)}.ui-button.ui-button--lg,.ui-control.ui-control--lg{min-height:var(--control-lg);padding:calc(var(--space-3) - 1px)var(--space-6)}.ui-button.ui-button--lg{font:var(--type-subheading)}.ui-button.ui-button--icon{width:var(--control-md);height:var(--control-md);padding:0}.ui-button.ui-button--icon.ui-button--sm{width:var(--control-sm);height:var(--control-sm)}.ui-button.ui-button--icon.ui-button--lg{width:var(--control-lg);height:var(--control-lg)}.ui-button>svg{flex:none;width:20px;height:20px}.ui-button--sm>svg{width:16px;height:16px}.ui-control.ui-control{width:100%;font:var(--type-body)}.ui-control.ui-control:hover:not(:disabled){border-color:var(--color-neutral-400)}.ui-control.ui-select,.ui-control.ui-select-trigger{appearance:none;padding-right:var(--space-10);background-image:var(--control-chevron);background-repeat:no-repeat;background-size:20px 20px;background-position:right var(--space-3)center;cursor:pointer}.ui-control.ui-select[multiple],.ui-control.ui-select[size]:not([size="1"]){padding-right:var(--space-3);background-image:none}.ui-control.ui-select-trigger{align-items:center;list-style:none;display:flex}.ui-select-trigger::-webkit-details-marker{display:none}.ui-control.ui-textarea{resize:vertical;min-height:128px}.ui-control::placeholder{color:var(--color-ink-muted);opacity:1}.ui-button.ui-button:focus-visible,.ui-control.ui-control:focus-visible{outline:2px solid var(--control-focus);outline-offset:2px;box-shadow:none}.ui-control.ui-control[aria-invalid=true]{border-color:#b91c1c}.ui-button.ui-button:disabled,.ui-control.ui-control:disabled{opacity:.55;cursor:not-allowed}.ui-field{align-content:start;gap:var(--space-2);min-width:0;display:grid}.ui-field-label{color:var(--color-ink-secondary);font:var(--type-label)}.ui-page{padding:var(--page-gutter);min-width:0}.ui-page__content{gap:var(--space-6);width:100%;max-width:var(--layout-content);min-width:0;margin-inline:auto;display:grid;container-type:inline-size}.ui-page__content--form{max-width:var(--layout-form)}.ui-filters{align-items:end;gap:var(--space-4);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.ui-filters>*{grid-column:span 3;min-width:0}.ui-filters>.ui-button{justify-self:start}.ui-segment{border:1px solid var(--control-border);border-radius:var(--radius-control);min-width:0;display:flex;overflow:hidden}.ui-segment>label{min-height:calc(var(--control-md) - 2px);padding:var(--space-2);cursor:pointer;text-align:center;font:var(--type-label);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.ui-segment>label+label{border-left:1px solid var(--control-border)}.ui-segment>label:has(:checked){background:var(--color-neutral-900);color:var(--color-ink-inverse)}.ui-segment>label:has(:focus-visible){outline:2px solid var(--control-focus);outline-offset:-3px}@media (max-width:767px){:root{--page-gutter:var(--space-4)}}@media (max-width:767px),(pointer:coarse){.ui-button.ui-button,.ui-control.ui-control{min-height:44px}.ui-button.ui-button--lg,.ui-control.ui-control--lg{min-height:var(--control-lg)}.ui-button.ui-button--icon{min-width:44px;height:44px}.ui-segment>label{min-height:44px}.ui-control.ui-textarea{min-height:128px}}@media (prefers-reduced-motion:reduce){.ui-button.ui-button,.ui-control.ui-control{transition:none}}.ui-button.vc-mobile-menu{display:none}.ui-control.ui-select-trigger{gap:var(--space-2);width:auto}.ui-select-trigger>svg{flex-shrink:0;width:20px;height:20px}@media (max-width:767px){.ui-button.vc-mobile-menu{display:inline-flex}}@container (max-width:720px){.ui-filters>*{grid-column:span 6}}@container (max-width:480px){.ui-filters>*{grid-column:1/-1}}.ui-choice.ui-choice{appearance:auto;width:20px;height:20px;accent-color:var(--color-neutral-900);cursor:pointer;flex-shrink:0;margin:0}.ui-choice.ui-choice:focus-visible{outline:2px solid var(--control-focus);outline-offset:2px}.ui-choice.ui-choice:disabled{opacity:.55;cursor:not-allowed}@media (max-width:767px),(pointer:coarse){label:has(>.ui-choice){min-height:44px}}.ui-button.ui-button--success{color:var(--color-ink-success);background-color:#ecfdf5;border-color:#a7f3d0}.ui-button.ui-button--success:hover:not(:disabled){background-color:#d1fae5}.ui-button.ui-button--info{color:var(--color-ink-info);background-color:#f0f9ff;border-color:#bae6fd}.ui-button.ui-button--info:hover:not(:disabled){background-color:#e0f2fe}.ui-control.ui-textarea--compact{min-height:80px}.ui-choice-target{cursor:pointer;flex:0 0 44px;justify-content:center;align-items:center;width:44px;min-height:44px;display:inline-flex}.ui-card{overflow-wrap:anywhere;border:1px solid var(--color-neutral-200);border-radius:var(--radius-card);min-width:0;color:var(--color-ink);background:#fff}.ui-card--inverse{border-color:var(--color-neutral-800);background:var(--color-neutral-950);color:var(--color-ink-inverse)}.ui-card--muted{background:var(--color-neutral-50)}.ui-card--success{border-color:var(--sig-ok-soft);background:var(--sig-ok-bg)}.ui-card--warning{border-color:var(--sig-warn-soft);background:var(--sig-warn-bg);color:var(--color-ink-warning)}.ui-card--danger{border-color:var(--sig-bad-soft);background:var(--sig-bad-bg);color:var(--color-ink-danger)}.ui-badge{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-3);background:var(--color-neutral-100);color:var(--color-ink-secondary);font:var(--type-caption);border-radius:999px;display:inline-flex}.ui-badge svg{width:1em;height:1em}.ui-badge--success{color:#065f46;background:#ecfdf5}.ui-badge--warning{background:var(--sig-warn-bg);color:var(--color-ink-warning)}.ui-badge--danger{background:var(--sig-bad-bg);color:var(--color-ink-danger)}.ui-badge--info{background:var(--sig-info-bg);color:var(--color-ink-info)}.ui-badge svg{flex:none}.ui-card--link{text-decoration:none;transition:border-color .15s,box-shadow .15s}.ui-card.ui-card--link:hover{border-color:var(--color-neutral-400);text-decoration:none;box-shadow:0 4px 12px #00000014}.ui-card--link:focus-visible{outline:2px solid var(--control-focus);outline-offset:3px}.ui-disclosure{border-bottom:1px solid var(--color-neutral-200);min-width:0}.ui-button.ui-disclosure-trigger{text-align:left;white-space:normal;overflow-wrap:anywhere;justify-content:space-between;gap:var(--space-4);width:100%}.ui-disclosure-indicator{flex:none}.ui-disclosure-trigger[data-state=open] .ui-disclosure-indicator{transform:rotate(45deg)}.ui-disclosure-content{padding:var(--space-4);overflow-wrap:anywhere;color:var(--color-ink-secondary)}.ui-disclosure-content[data-state=closed]{display:none}.ui-disclosure-content>p{margin:0}@media (prefers-reduced-motion:reduce){.ui-card--link{transition:none}}.ui-card-content,.ui-card-header{padding:var(--space-5)}.ui-card-header+.ui-card-content{padding-top:0}.ui-sticky-surface{z-index:10;background:#fff;position:sticky}.ui-card-footer{justify-content:space-between;align-items:center;gap:var(--space-3);border-top:1px solid var(--color-neutral-100);padding:var(--space-3)var(--space-5);flex-wrap:wrap;display:flex}.ui-switch{cursor:pointer;background:0 0;border:0;flex:0 0 44px;align-items:center;width:44px;height:44px;padding:0;display:inline-flex;position:relative}.ui-switch:before{content:"";background:var(--color-neutral-300);border-radius:999px;width:36px;height:24px;transition:background-color .12s;position:absolute;top:10px;left:4px}.ui-switch[data-state=checked]:before{background:var(--color-primary-500)}.ui-switch-thumb{background:#fff;border-radius:50%;width:20px;height:20px;margin-left:6px;transition:transform .12s;position:relative;box-shadow:0 1px 2px #0002}.ui-switch-thumb[data-state=checked]{transform:translate(12px)}.ui-switch:focus-visible{outline:2px solid var(--control-focus);outline-offset:3px}.ui-switch:disabled{opacity:.5;cursor:not-allowed}.ui-dropdown-menu{z-index:80;min-width:min(180px,var(--radix-dropdown-menu-content-available-width));max-width:var(--radix-dropdown-menu-content-available-width);overflow-wrap:anywhere;max-height:var(--radix-dropdown-menu-content-available-height);border:1px solid var(--color-neutral-200);border-radius:var(--radius-control);color:var(--color-ink);background:#fff;padding:4px;overflow-y:auto;box-shadow:0 4px 20px #00000014}.ui-dropdown-item{padding:var(--space-2)var(--space-3);cursor:pointer;font:var(--type-body-sm);border-radius:4px;outline:none;align-items:center;gap:8px;display:flex}.ui-dropdown-item[data-highlighted]{background:var(--color-neutral-100)}.ui-dropdown-item[data-disabled]{opacity:.4;pointer-events:none}.ui-dropdown-item[data-destructive]{color:var(--color-ink-danger)}.ui-dropdown-item>svg{width:16px;height:16px}.ui-dropdown-separator{background:var(--color-neutral-200);height:1px;margin:4px}.ui-tooltip{z-index:90;max-width:min(240px,var(--radix-tooltip-content-available-width));overflow-wrap:anywhere;padding:var(--space-2)var(--space-3);background:var(--color-ink);color:#fff;font:var(--type-caption);border-radius:6px}.ui-tooltip-arrow{fill:var(--color-ink)}.ui-input-group{min-width:0;padding:var(--space-1)var(--space-2);border:1px solid var(--control-border);border-radius:var(--radius-control);background:#fff;align-items:center;gap:4px;display:flex}.ui-input-group:focus-within{outline:2px solid var(--control-focus);outline-offset:2px}.ui-input-group .ui-control.ui-input-group-input{width:0;min-width:0;box-shadow:none;padding:var(--space-1)var(--space-2);background:0 0;border:0;flex:1 1 0}.ui-input-group .ui-control.ui-input-group-input:focus{box-shadow:none;border:0;outline:none}@media (prefers-reduced-motion:reduce){.ui-switch-thumb,.ui-switch:before{transition:none}}.ui-input-group:has(input[aria-invalid=true]){border-color:#b91c1c}@media (max-width:767px),(pointer:coarse){.ui-dropdown-item{min-height:44px}}