:root{--proctor-ink:#101528;--proctor-muted:#66748f;--proctor-line:#e6eaf3;--proctor-bg:#f8faff;--proctor-surface:#ffffff;--proctor-media:#101828;--proctor-media-overlay:#020617;--proctor-media-muted:#94a3b8;--proctor-media-text:#e2e8f0;--proctor-soft:#f3f6fc;--proctor-accent:#184eff;--proctor-accent-soft:#eaf0ff;--proctor-success:#07965f;--proctor-success-soft:#e5fbf1;--proctor-warning:#b96708;--proctor-warning-soft:#fff5df;--proctor-danger:#ed2345;--proctor-danger-soft:#fff0f3;--proctor-glass-1:#9a63ff;--proctor-glass-2:#7554f6;--proctor-glass-3:#465cf3;--proctor-glass-4:#238df0;--proctor-glass-angle:118deg;--proctor-button-radius:13px;--proctor-button-shadow:0 5px 15px rgb(84 73 235/20%),inset 0 1px 0 rgb(255 255 255/46%);--proctor-button-hover-shadow:0 9px 24px rgb(86 70 240/30%),0 3px 10px rgb(35 141 240/14%),inset 0 1px 0 rgb(255 255 255/62%);--proctor-secondary-text:#4f46d9;--proctor-secondary-line:#ddd8ff;--proctor-secondary-end:#f5f3ff}.proctor-theme{color-scheme:light;--background:var(--proctor-bg);--foreground:var(--proctor-ink);--card:var(--proctor-surface);--card-foreground:var(--proctor-ink);--popover:var(--proctor-surface);--popover-foreground:var(--proctor-ink);--primary:var(--proctor-accent);--primary-foreground:#fff;--secondary:var(--proctor-soft);--secondary-foreground:var(--proctor-ink);--muted:var(--proctor-soft);--muted-foreground:var(--proctor-muted);--accent:var(--proctor-accent-soft);--accent-foreground:var(--proctor-accent);--destructive:var(--proctor-danger);--border:var(--proctor-line);--input:var(--proctor-line);--ring:var(--proctor-accent);color:var(--proctor-ink);background:var(--proctor-bg);font-size:14px;-webkit-font-smoothing:antialiased}.proctor-card{border:1px solid var(--proctor-line);border-radius:12px;background:var(--proctor-surface)}.proctor-muted{color:var(--proctor-muted)}.proctor-page-title{color:var(--proctor-ink);font-size:28px;font-weight:700;line-height:1.25;letter-spacing:-.035em}.proctor-brand{display:inline-flex;align-items:center;white-space:nowrap;color:var(--proctor-ink);font-size:23px;font-weight:750;letter-spacing:-.045em;text-decoration:none}.proctor-avatar,.proctor-brand span{color:var(--proctor-accent)}.proctor-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#dce7ff,#edf3ff);font-weight:600}.proctor-theme :where(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--proctor-line);background-color:var(--proctor-surface);color:var(--proctor-ink)}.proctor-theme :where(input,textarea)::placeholder{color:var(--proctor-muted)}.proctor-theme :where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--proctor-accent);outline-offset:3px}.proctor-button{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:9px;height:46px;padding:0 21px;border-radius:var(--proctor-button-radius);border:1px solid rgb(255 255 255/58%);color:#fff;font-size:14px;font-weight:600;letter-spacing:-.01em;cursor:pointer;text-decoration:none;white-space:nowrap;background:linear-gradient(var(--proctor-glass-angle),var(--proctor-glass-1) 0,var(--proctor-glass-2) 30%,var(--proctor-glass-3) 64%,var(--proctor-glass-4) 100%);box-shadow:var(--proctor-button-shadow);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.proctor-button:before{z-index:-1;inset:1px 1px 47%;border-radius:11px 11px 8px 8px;background:linear-gradient(180deg,rgb(255 255 255/40%),rgb(255 255 255/6%))}.proctor-button:after,.proctor-button:before{content:"";position:absolute;pointer-events:none}.proctor-button:after{inset:-60% auto -60% -42%;width:42%;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgb(255 255 255/28%),transparent);opacity:.7;transition:left .42s ease}.proctor-button:not(:disabled):not([aria-disabled=true]):hover{transform:translateY(-2px);filter:saturate(1.1) brightness(1.035);box-shadow:var(--proctor-button-hover-shadow)}.proctor-button:not(:disabled):not([aria-disabled=true]):hover:after{left:110%}.proctor-button:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px) scale(.985);filter:brightness(.94);box-shadow:0 3px 9px rgb(75 62 210/22%),inset 0 3px 7px rgb(37 29 137/23%)}.proctor-button:focus-visible{outline:2px solid var(--proctor-accent);outline-offset:3px}.proctor-button[data-proctor-size=sm]{height:38px;padding:0 16px;border-radius:11px;font-size:13px}.proctor-button[data-proctor-size=lg]{height:54px;padding:0 27px;border-radius:15px;font-size:16px}.proctor-button[data-proctor-size=icon]{width:36px;height:36px;padding:0;border-radius:9px}.proctor-button[data-proctor-variant=secondary]{color:var(--proctor-secondary-text);background:linear-gradient(180deg,var(--proctor-surface),var(--proctor-secondary-end));border-color:var(--proctor-secondary-line);box-shadow:0 2px 5px rgb(67 56 202/4%),inset 0 1px 0 #fff}.proctor-button[data-proctor-variant=ghost]{color:var(--proctor-muted);background:transparent;border-color:transparent;box-shadow:none}.proctor-button[data-proctor-variant=danger]{color:var(--proctor-danger);background:var(--proctor-surface);border-color:var(--proctor-danger);box-shadow:none}.proctor-button[data-proctor-variant=danger]:after,.proctor-button[data-proctor-variant=danger]:before,.proctor-button[data-proctor-variant=ghost]:after,.proctor-button[data-proctor-variant=ghost]:before{display:none}.proctor-button[data-proctor-variant=ghost]:not(:disabled):hover{transform:none;color:var(--proctor-accent);background:var(--proctor-accent-soft);box-shadow:none}.proctor-button[data-proctor-variant=danger]:not(:disabled):hover{transform:none;background:var(--proctor-danger-soft);box-shadow:none}.proctor-button[aria-current=page]{color:var(--proctor-accent);background:var(--proctor-accent-soft);border-color:var(--proctor-line)}.proctor-button:disabled,.proctor-button[aria-disabled=true]{opacity:.42;cursor:not-allowed;pointer-events:none;transform:none;filter:none;box-shadow:none}.proctor-shell{--proctor-sidebar-width:208px;display:flex;min-height:100dvh}.proctor-shell[data-sidebar-collapsed=true]{--proctor-sidebar-width:64px}.proctor-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;display:flex;flex-direction:column;width:var(--proctor-sidebar-width);overflow-y:auto;border-right:1px solid var(--proctor-line);background:linear-gradient(160deg,#fafbff,#f5f8fe)}.proctor-sidebar-brand{display:flex;align-items:center;flex-shrink:0;height:72px;padding:20px 23px}.proctor-brand-mark{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9px}.proctor-sidebar-toggle-row{display:flex;justify-content:flex-end;padding:0 14px 8px}.proctor-navigation{padding:4px 14px}.proctor-nav-link{display:flex;align-items:center;gap:12px;padding:12px;border-radius:9px;color:var(--proctor-muted);font-size:13px;text-decoration:none}.proctor-nav-link svg{flex-shrink:0}.proctor-nav-link:hover{background:var(--proctor-soft);color:var(--proctor-accent)}.proctor-nav-link[aria-current=page]{color:var(--proctor-accent);background:var(--proctor-accent-soft);font-weight:550}.proctor-sidebar-account{margin-top:auto;padding:20px 15px}.proctor-shell[data-sidebar-collapsed=true] .proctor-sidebar-brand,.proctor-shell[data-sidebar-collapsed=true] .proctor-sidebar-toggle-row{justify-content:center;padding-inline:0}.proctor-shell[data-sidebar-collapsed=true] .proctor-navigation,.proctor-shell[data-sidebar-collapsed=true] .proctor-sidebar-account{padding-inline:8px}.proctor-shell[data-sidebar-collapsed=true] :is(.proctor-nav-link,.proctor-account-link){justify-content:center;padding-inline:0}.proctor-shell[data-sidebar-collapsed=true] .proctor-sidebar-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.proctor-shell-body{flex:1;min-width:0;margin-left:var(--proctor-sidebar-width)}.proctor-shell-header{display:flex;flex-wrap:wrap;align-items:center;gap:14px;min-height:64px;padding:10px 26px;border-bottom:1px solid var(--proctor-line);background:rgb(255 255 255/60%)}.proctor-shell-context{flex:1 1 180px;min-width:0;overflow-wrap:anywhere}.proctor-shell-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;max-width:100%;margin-left:auto}.proctor-shell-content{padding:24px 26px 32px}.proctor-shell[data-density=compact] .proctor-shell-content{padding:14px 14px 24px}.proctor-mobile-navigation,.proctor-mobile-toggle{display:none}@media (max-width:767px){.proctor-sidebar{display:none}.proctor-shell-body{margin-left:0}.proctor-shell-header{padding:10px 14px;flex-wrap:wrap}.proctor-shell-context{flex-basis:calc(100% - 50px)}.proctor-shell[data-sidebar-collapsed=true] .proctor-mobile-navigation .proctor-nav-link{justify-content:flex-start;padding-inline:12px}.proctor-shell-actions{max-width:100%;margin-left:auto}.proctor-shell-content{padding:20px 14px}.proctor-mobile-toggle{display:inline-flex}.proctor-mobile-navigation{display:block;padding:8px 14px;background:var(--proctor-surface);border-bottom:1px solid var(--proctor-line)}.proctor-page-title{font-size:25px}}@media (prefers-reduced-motion:reduce){.proctor-button,.proctor-button:after{transition:none}.proctor-button:not(:disabled):active,.proctor-button:not(:disabled):hover{transform:none}.proctor-button:after{display:none}}@media print{.proctor-theme{background:white;color:#101528}.proctor-mobile-navigation,.proctor-shell-header,.proctor-sidebar{display:none!important}.proctor-shell-body{margin-left:0}.proctor-shell-content{padding:0!important}.proctor-card{box-shadow:none;break-inside:avoid}}.proctor-page-heading,.proctor-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.proctor-page-heading{margin-bottom:24px}.proctor-heading-copy{flex:1 1 220px;min-width:0;overflow-wrap:anywhere}.proctor-heading-description{margin-top:6px;color:var(--proctor-muted);font-size:14px;line-height:1.6}.proctor-heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:100%}.proctor-panel{padding:22px;min-width:0}.proctor-panel-heading{margin-bottom:20px}.proctor-panel-title{color:var(--proctor-ink);font-size:16px;font-weight:600;line-height:1.4}.proctor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}.proctor-toolbar>*{max-width:100%}.proctor-theme .proctor-field{display:block;width:100%;min-width:0;min-height:42px;border:1px solid var(--proctor-line);border-radius:9px;padding:9px 12px;color:var(--proctor-ink);background:var(--proctor-surface);font:inherit;line-height:1.5;box-shadow:none}.proctor-theme .proctor-field:focus-visible{outline:2px solid var(--proctor-accent);outline-offset:3px}.proctor-theme .proctor-field[aria-invalid=true]{border-color:var(--proctor-danger)}.proctor-theme .proctor-field:disabled,.proctor-theme .proctor-field[data-disabled]{cursor:not-allowed;opacity:.55;background:var(--proctor-soft)}.proctor-theme .proctor-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px}.proctor-theme .proctor-select-trigger[data-size=sm]{min-height:36px;padding-block:6px}.proctor-field-label{display:block;margin-bottom:7px;color:var(--proctor-ink);font-size:13px;font-weight:550}.proctor-field-error,.proctor-field-hint{margin-top:6px;font-size:12px;line-height:1.5}.proctor-field-hint{color:var(--proctor-muted)}.proctor-field-error{color:var(--proctor-danger)}.proctor-status{display:inline-flex;align-items:center;gap:6px;max-width:100%;border-radius:6px;padding:4px 8px;color:var(--proctor-muted);background:var(--proctor-soft);font-size:12px;font-weight:550;line-height:1.4}.proctor-status[data-tone=info]{color:var(--proctor-accent);background:var(--proctor-accent-soft)}.proctor-status[data-tone=success]{color:var(--proctor-success);background:var(--proctor-success-soft)}.proctor-status[data-tone=warning]{color:var(--proctor-warning);background:var(--proctor-warning-soft)}.proctor-inline-error,.proctor-status[data-tone=danger]{color:var(--proctor-danger);background:var(--proctor-danger-soft)}.proctor-inline-error{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px;border:1px solid var(--proctor-danger);border-radius:9px;line-height:1.5}.proctor-inline-error>svg{flex-shrink:0}.proctor-inline-error-copy{flex:1 1 160px;min-width:0;overflow-wrap:anywhere}.proctor-empty-state{display:flex;align-items:center;flex-direction:column;gap:8px;padding:24px 16px;border:1px dashed var(--proctor-line);border-radius:9px;text-align:center}.proctor-empty-state h3{font-size:14px;font-weight:600}.proctor-empty-state p{max-width:42ch;color:var(--proctor-muted);font-size:13px;line-height:1.6}.proctor-empty-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:2px;border-radius:10px;color:var(--proctor-muted);background:var(--proctor-soft)}.proctor-empty-action{margin-top:6px;max-width:100%}.proctor-skeleton{display:grid;gap:12px;padding-block:12px}.proctor-skeleton-line{height:12px;border-radius:5px;background:var(--proctor-line);animation:proctor-skeleton-pulse 1.6s ease-in-out infinite}.proctor-skeleton-title{width:45%;height:18px;margin-bottom:8px}.proctor-skeleton-short{width:70%}@keyframes proctor-skeleton-pulse{50%{opacity:.45}}.proctor-dialog-backdrop{z-index:60;background:color-mix(in srgb,var(--proctor-media-overlay) 48%,transparent)}.proctor-theme.proctor-dialog{z-index:70;width:min(512px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;border-color:var(--proctor-line);border-radius:12px;background:var(--proctor-surface)}.proctor-theme.proctor-popover,.proctor-theme.proctor-select-content{z-index:80;border-color:var(--proctor-line);border-radius:9px;background:var(--proctor-surface);color:var(--proctor-ink)}.proctor-theme.proctor-select-content{max-width:calc(100vw - 24px)}.proctor-theme.proctor-popover{width:min(288px,calc(100vw - 24px))}.proctor-theme.proctor-tooltip{z-index:90;max-width:min(280px,calc(100vw - 24px));border-radius:6px;color:var(--proctor-surface);background:var(--proctor-ink);font-size:12px}.proctor-tooltip>svg{fill:var(--proctor-ink);background:var(--proctor-ink)}@media (max-width:767px){.proctor-panel{padding:18px}.proctor-page-heading{margin-bottom:20px}.proctor-theme .proctor-field{font-size:16px}}@media (prefers-reduced-motion:reduce){.proctor-skeleton-line{animation:none}}.proctor-list-card{min-width:0;overflow:hidden;border:1px solid var(--proctor-line);border-radius:12px;background:var(--proctor-surface)}.proctor-list-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:18px 20px}.proctor-list-summary h2{font-size:16px;font-weight:600}.proctor-list-scroll{min-width:0;max-width:100%;overflow:auto}.proctor-list-table{width:100%;min-width:760px;border-collapse:collapse;text-align:left;font-size:13px}.proctor-list-table thead{background:var(--proctor-soft)}.proctor-list-table th{height:44px;padding:12px 20px;color:var(--proctor-muted);font-size:12px;font-weight:550;white-space:nowrap}.proctor-list-table td{padding:16px 20px;vertical-align:middle}.proctor-list-table tr{border-color:var(--proctor-line)}.proctor-list-table tbody tr:hover{background:var(--proctor-bg)}.proctor-list-table .proctor-list-actions{position:sticky;right:0;z-index:1;width:72px;min-width:72px;padding-inline:16px;background:var(--proctor-surface);box-shadow:-1px 0 var(--proctor-line)}.proctor-list-table th.proctor-list-actions{background:var(--proctor-soft)}.proctor-list-title{display:block;min-width:140px;max-width:300px;color:var(--proctor-ink);font-weight:550;white-space:normal;overflow-wrap:anywhere;line-height:1.5}a.proctor-list-title:hover{color:var(--proctor-accent);text-decoration:underline;text-underline-offset:3px}.proctor-list-secondary{color:var(--proctor-muted);font-size:12px;line-height:1.5}.proctor-list-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--proctor-line);padding:16px 20px;color:var(--proctor-muted);font-size:12px}.proctor-list-error{margin-bottom:16px}.proctor-list-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.proctor-list-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:42px;padding:4px;border:1px solid var(--proctor-line);border-radius:10px;background:var(--proctor-soft)}.proctor-list-tabs [role=tab]{min-width:0;padding:6px 14px;border-radius:7px;color:var(--proctor-muted);font-size:13px}.proctor-list-tabs [role=tab][data-state=active]{background:var(--proctor-surface);color:var(--proctor-accent);box-shadow:0 1px 3px rgb(16 21 40/6%)}.proctor-list-search{position:relative;width:min(100%,320px)}.proctor-list-search>svg{position:absolute;top:50%;left:12px;transform:translateY(-50%);pointer-events:none;color:var(--proctor-muted)}.proctor-list-search .proctor-field{padding-left:38px}.proctor-theme.proctor-dropdown-content{z-index:80;min-width:190px;border-color:var(--proctor-line);background:var(--proctor-surface)}.proctor-theme.proctor-alert-dialog{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;gap:16px;padding:24px;border:1px solid var(--proctor-line);box-shadow:0 16px 48px rgb(16 21 40/14%)}.proctor-form-actions{position:sticky;bottom:12px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border:1px solid var(--proctor-line);border-radius:12px;background:var(--proctor-surface);box-shadow:0 4px 20px rgb(16 21 40/8%)}.proctor-form-picker{width:100%;min-width:0;justify-content:space-between}.proctor-theme.proctor-form-dropdown{width:var(--radix-dropdown-menu-trigger-width);max-width:calc(100vw - 32px);padding:0}@media (max-width:767px){.proctor-list-footer,.proctor-list-summary{padding:16px}.proctor-list-search,.proctor-list-toolbar>*{width:100%}.proctor-list-tabs [role=tab]{padding-inline:8px}}.task-editor-form{display:flex;flex-direction:column;gap:16px;height:calc(100dvh - 102px);min-height:520px;min-width:0}.task-editor-layout{flex:1;min-height:0;gap:0}.task-editor-details-panel,.task-editor-workspace-panel{min-width:0;min-height:0}.task-editor-details-scroll,.task-editor-workspace-scroll{height:100%;min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.task-editor-details-scroll{padding-right:4px}.task-editor-workspace-scroll{padding-left:4px}.task-editor-resize-handle{margin-inline:8px;background:var(--proctor-line)}.task-editor-code{height:clamp(260px,38dvh,440px);min-height:260px}.task-editor-test-panel{min-width:0}.task-editor-form .editor-container{margin:0;max-width:none;color:var(--proctor-ink)}.task-editor-form .rich-text-toolbar{background:var(--proctor-soft);border-color:var(--proctor-line)}.task-editor-form .toolbar{flex-wrap:wrap}.task-editor-form .toolbar button.toolbar-item{padding:6px;border-radius:6px}.task-editor-form .toolbar .toolbar-item.active,.task-editor-form .toolbar .toolbar-item:hover:not([disabled]){background:var(--proctor-accent-soft)}.task-editor-form .editor-input{font-size:14px;line-height:1.65;min-height:210px}.task-editor-form .editor-placeholder{color:var(--proctor-muted);font-size:14px}.task-editor-form [role=tabpanel][hidden]{display:none}.proctor-project-editor{display:flex;flex-direction:column;min-height:460px;height:max(460px,64dvh)}.proctor-project-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(155px,190px) minmax(0,1fr);border:1px solid var(--proctor-line);border-radius:12px;overflow:hidden;background:var(--proctor-surface)}.proctor-project-tree{display:flex;flex-direction:column;min-height:0;min-width:0;border-right:1px solid var(--proctor-line);background:var(--proctor-soft)}.proctor-project-tree-viewport{flex:1;min-height:120px;min-width:0;overflow:hidden}.proctor-project-code{display:flex;flex-direction:column;min-width:0;min-height:0}.proctor-project-monaco{flex:1;min-height:240px}.proctor-theme .proctor-file-inline-input{width:100%;height:28px;min-height:28px;padding:2px 5px;font-size:12px;border:1px solid var(--proctor-accent);border-radius:4px}.proctor-template-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;padding:16px;text-align:left;border:1px solid var(--proctor-line);border-radius:12px;background:var(--proctor-surface);cursor:pointer}.proctor-template-card:hover{border-color:var(--proctor-accent);background:var(--proctor-accent-soft)}.proctor-theme .proctor-file-menu-button{width:28px;height:28px;padding:0;flex-shrink:0}.proctor-theme .proctor-field.proctor-code-field{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;padding:8px 10px;min-height:80px}@media (max-width:1050px){.task-editor-layout{display:block!important;overflow:visible!important}.task-editor-form{height:auto;min-height:0}.task-editor-details-panel,.task-editor-workspace-panel{flex:none!important;height:auto;overflow:visible!important}.task-editor-layout[data-details-collapsed=true] .task-editor-details-panel,.task-editor-resize-handle{display:none}.task-editor-details-scroll,.task-editor-workspace-scroll{height:auto;overflow:visible;padding:0;scrollbar-gutter:auto}.task-editor-workspace-scroll{margin-top:16px}}@media (max-width:600px){.proctor-project-editor{height:740px}.proctor-project-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:200px minmax(0,1fr)}.proctor-project-tree{border-right:0;border-bottom:1px solid var(--proctor-line)}}