@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600;700&family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap";[data-admin-theme=light]{--bg: #e9eef5;--surface: #ffffff;--surface2: #f1f5f9;--input: #ffffff;--border: #c3cedc;--text: #0f172a;--dim: #475569;--title: #0c2d6b;--accent: #0a4c9c;--accent2: #334155;--on-accent: #ffffff;--purple: #8643a8;--green: #1d6e31;--blue: #0040dd;--pink: #ba0d3d;--warn: #905100;--orange: #b32e00;--danger: #bb0012;--shadow: 0 1px 2px rgba(15, 23, 42, .07), 0 12px 28px -14px rgba(15, 23, 42, .24);--card-border: #bcc8d8;--card-shadow: var(--shadow);--sidebar-bg: #c9d5e6;--sidebar-border: #aebdd2;--sidebar-text: #0f2744;--sidebar-hover: rgba(11, 99, 206, .1);--sidebar-warn: #7a4500;--hover: color-mix(in srgb, var(--text) 6%, transparent);--focus: color-mix(in srgb, var(--accent) 30%, transparent);--selected-bg: #027abb;--selected-text: #ffffff;--btn-primary-bg: #0f172a;--btn-primary-text: #ffffff;--btn-bg: #f8fafc;--btn-text: #0b4a8b;--btn-hover: #eaf1fb;--field-border: #7a8ba3;--field-shadow: 0 1px 2px rgba(15, 23, 42, .06);--tint-base: #ffffff;--table-head-bg: #cfdbeb;--table-head-text: #0c2d6b;--table-head-hover: #0a4c9c;--action-edit-bg: #e0f2fe;--action-edit-border: #0284c7;--action-clone-bg: #ede9fe;--action-clone-border: #8b5cf6;--action-visibility-bg: #fef3c7;--action-visibility-border: #d97706;--banner-from: #0f172a;--banner-mid: #0b3b5e;--banner-to: #0284c7;--banner-shade: #075a8a;--banner-title: rgba(255, 255, 255, .9);--banner-text: #ffffff}[data-admin-theme=light] .admin-sidebar{--warn: var(--sidebar-warn);border-right-color:var(--sidebar-border);background:var(--sidebar-bg)}[data-admin-theme=light] .admin-nav button{color:var(--sidebar-text)}[data-admin-theme=light] .admin-nav button.is-parent-active{color:var(--text)}[data-admin-theme=light] .admin-nav button:hover,[data-admin-theme=light] .admin-profile:hover{background:var(--sidebar-hover)}[data-admin-theme=light] .admin-nav button.is-active,[data-admin-theme=light] .admin-nav button.is-active:hover{background:var(--selected-bg);color:var(--selected-text)}[data-admin-theme=light] .admin-table-row.is-clickable:hover,[data-admin-theme=light] .admin-notification:hover{background:var(--hover)}[data-admin-theme=light] .admin-toolbar,[data-admin-theme=light] .admin-table-card{border-color:var(--card-border);box-shadow:var(--card-shadow)}[data-admin-theme=light] .admin-table-head{border-bottom-color:color-mix(in srgb,var(--table-head-text) 25%,var(--table-head-bg));background:var(--table-head-bg);color:var(--table-head-text)}[data-admin-theme=light] .admin-table-head .admin-table-sort-header{color:var(--table-head-text)}[data-admin-theme=light] .admin-table-head .admin-table-sort-header:hover{color:var(--table-head-hover)}[data-admin-theme=light] .admin-assign-table .admin-table-head>:last-child{background:var(--table-head-bg)}[data-admin-theme=light] .admin-page h1,[data-admin-theme=light] .admin-table-sort-header{color:var(--title)}[data-admin-theme=light] .admin-banner{border-color:transparent;background:linear-gradient(100deg,var(--banner-from) 0%,var(--banner-mid) 46%,var(--banner-to) 100%);box-shadow:0 14px 34px -18px var(--banner-to)}[data-admin-theme=light] .admin-banner__shade{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--banner-shade) 35%,transparent) 38%,var(--banner-shade) 80%)}[data-admin-theme=light] .admin-banner__bar{background:var(--banner-to);box-shadow:none}[data-admin-theme=light] .admin-banner__title{color:var(--banner-title);text-shadow:none}[data-admin-theme=light] .admin-banner__subtitle{color:var(--banner-text)}[data-admin-theme=light] .admin-pill{color:color-mix(in srgb,var(--accent) 70%,var(--title));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent)}[data-admin-theme=light] .admin-pill--green{--pill-tone: var(--green)}[data-admin-theme=light] .admin-pill--warn{--pill-tone: var(--warn)}[data-admin-theme=light] .admin-pill--danger{--pill-tone: var(--danger)}[data-admin-theme=light] .admin-pill--blue{--pill-tone: var(--blue)}[data-admin-theme=light] .admin-pill--purple{--pill-tone: var(--purple)}[data-admin-theme=light] .admin-pill--orange{--pill-tone: var(--orange)}[data-admin-theme=light] .admin-pill--pink{--pill-tone: var(--pink)}[data-admin-theme=light] .admin-pill--dim{--pill-tone: var(--dim)}[data-admin-theme=light] :is(.admin-pill--green,.admin-pill--warn,.admin-pill--danger,.admin-pill--blue,.admin-pill--purple,.admin-pill--orange,.admin-pill--pink,.admin-pill--dim){background:color-mix(in srgb,var(--pill-tone) 13%,var(--surface));color:color-mix(in srgb,var(--pill-tone) 66%,var(--title));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pill-tone) 30%,transparent)}[data-admin-theme=light] .admin-select select,[data-admin-theme=light] .admin-search input{border-color:var(--field-border);background:var(--input);box-shadow:var(--field-shadow)}[data-admin-theme=light] .admin-select select:focus,[data-admin-theme=light] .admin-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}[data-admin-theme=light] .admin-btn.admin-btn--primary,[data-admin-theme=light] .admin-btn.admin-btn--primary:hover{border-color:transparent;background:var(--btn-primary-bg);color:var(--btn-primary-text)}[data-admin-theme=light] .admin-btn.admin-btn--primary:hover{filter:brightness(1.08)}[data-admin-theme=light] .admin-btn.admin-btn--toggle,[data-admin-theme=light] .admin-btn.admin-btn--surface2{border-color:var(--field-border);background:var(--btn-bg);color:var(--btn-text)}[data-admin-theme=light] .admin-btn.admin-btn--toggle:hover,[data-admin-theme=light] .admin-btn.admin-btn--surface2:hover{border-color:var(--accent);background:var(--btn-hover);color:var(--accent)}[data-admin-theme=light] .admin-btn.admin-btn--toggle.is-active{border-color:transparent;background:var(--selected-bg);color:var(--selected-text)}[data-admin-theme=light] .admin-btn.admin-btn--danger{border-color:color-mix(in srgb,var(--danger) 70%,var(--field-border))}[data-admin-theme=light] .admin-pagination button{border-color:var(--field-border);color:var(--btn-text)}[data-admin-theme=light] .admin-pagination button.is-active{border-color:transparent;background:var(--selected-bg);color:var(--selected-text)}[data-admin-theme=light] .admin-btn:focus-visible,[data-admin-theme=light] .admin-icon-button:focus-visible,[data-admin-theme=light] .admin-pagination button:focus-visible,[data-admin-theme=light] .admin-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 5px var(--focus)}[data-admin-theme=light] .admin-action-button:not(.admin-action-button--danger,.admin-action-button--success,.admin-action-button--warning){border-color:var(--field-border);background:var(--btn-bg)}[data-admin-theme=light] .admin-action-button:not(.admin-action-button--danger,.admin-action-button--success,.admin-action-button--warning):hover{border-color:var(--accent);background:var(--btn-hover)}[data-admin-theme=light] .admin-action-button:not(.admin-action-button--danger,.admin-action-button--success,.admin-action-button--warning) .clx-icon{filter:brightness(0);opacity:.82}[data-admin-theme=light] .admin-action-button--danger{border-color:color-mix(in srgb,var(--danger) 60%,var(--tint-base));background:color-mix(in srgb,var(--danger) 10%,var(--tint-base))}[data-admin-theme=light] .admin-action-button:disabled{opacity:.62}[data-admin-theme=light] .admin-action-button[aria-label^="Chỉnh sửa"]{border-color:var(--action-edit-border);background:var(--action-edit-bg)}[data-admin-theme=light] .admin-action-button[aria-label^="Chỉnh sửa"]:hover{border-color:var(--action-edit-border);background:color-mix(in srgb,var(--action-edit-border) 22%,var(--tint-base))}[data-admin-theme=light] .admin-action-button[aria-label^="Nhân bản"]{border-color:var(--action-clone-border);background:var(--action-clone-bg)}[data-admin-theme=light] .admin-action-button[aria-label^="Nhân bản"]:hover{border-color:var(--action-clone-border);background:color-mix(in srgb,var(--action-clone-border) 22%,var(--tint-base))}[data-admin-theme=light] .admin-action-button:is([aria-label^=Ẩn],[aria-label^=Hiện]){border-color:var(--action-visibility-border);background:var(--action-visibility-bg)}[data-admin-theme=light] .admin-action-button:is([aria-label^=Ẩn],[aria-label^=Hiện]):hover{border-color:var(--action-visibility-border);background:color-mix(in srgb,var(--action-visibility-border) 22%,var(--tint-base))}[data-admin-theme=light] .admin-avatar,[data-admin-theme=light] .admin-brand__mark,[data-admin-theme=light] .admin-row-checkbox,[data-admin-theme=light] .admin-system-toggle__box,[data-admin-theme=light] .admin-detail-tab__brand>span,[data-admin-theme=light] .admin-editor-brand>span,[data-admin-theme=light] .teacher-class-tab__brand>span,[data-admin-theme=light] .comment-node__avatar,[data-admin-theme=light] .comment-reply-submit-btn,[data-admin-theme=light] .admin-rank-avatar{color:var(--on-accent)}[data-admin-theme=light] .admin-confirm-modal,[data-admin-theme=light] .admin-confirm-modal[data-tone]{--confirm-btn-color: var(--on-accent)}[data-admin-theme=light] .admin-brand__mark .clx-icon,[data-admin-theme=light] .admin-btn.admin-btn--primary .clx-icon,[data-admin-theme=light] .admin-btn.admin-btn--toggle.is-active .clx-icon,[data-admin-theme=light] .admin-nav button.is-active .clx-icon,[data-admin-theme=light] .admin-row-checkbox.is-checked .clx-icon,[data-admin-theme=light] .admin-system-toggle__box.is-active .clx-icon,[data-admin-theme=light] .admin-detail-tab__brand>span .clx-icon,[data-admin-theme=light] .admin-editor-brand>span .clx-icon,[data-admin-theme=light] .teacher-class-tab__brand>span .clx-icon{filter:brightness(0) invert(1)}[data-admin-theme=light] .admin-brand__mark,[data-admin-theme=light] .admin-icon-button:hover,[data-admin-theme=light] .admin-icon-button.is-active,[data-admin-theme=light] .admin-nav button.is-active:before,[data-admin-theme=light] .admin-hero:before,[data-admin-theme=light] .admin-btn--primary{box-shadow:none}[data-admin-theme=light] .admin-icon-button .clx-icon,[data-admin-theme=light] .admin-icon-button:hover .clx-icon{filter:none}[data-admin-theme=light] .admin-assignment-link:hover{text-shadow:none}[data-admin-theme=light] .admin-class-assign input[type=datetime-local]{color-scheme:light}@keyframes adminEventFall{0%{transform:translateZ(0)}to{transform:translate3d(0,360px,0)}}@keyframes adminEventGlow{0%,to{opacity:.8}50%{opacity:1}}[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar){isolation:isolate;background:var(--event-page-bg, none),var(--bg)}[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):before,[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):after{content:"";position:fixed;top:-360px;right:0;bottom:0;left:0;z-index:-1;background-repeat:repeat;pointer-events:none}[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):before{background-image:var(--event-page-fall-a, none);background-size:300px 360px;animation:adminEventFall 34s linear infinite var(--event-fall-direction, normal)}[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):after{background-image:var(--event-page-fall-b, none);background-size:220px 360px;animation:adminEventFall 52s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-admin-theme] .admin-sidebar{border-right-color:var(--sidebar-border, var(--border));background:var(--sidebar-bg, var(--surface))}[data-clx-event] [data-admin-theme] .admin-sidebar:before{content:"";position:absolute;top:-360px;right:0;bottom:0;left:0;z-index:-1;background-image:var(--event-sidebar-fall, none);background-repeat:repeat;background-size:220px 360px;pointer-events:none;animation:adminEventFall 40s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-admin-theme] .admin-sidebar:after{content:"";position:absolute;right:0;bottom:72px;left:0;z-index:-1;height:240px;background-image:var(--event-sidebar-motif, none);background-position:center bottom;background-repeat:no-repeat;background-size:100% auto;pointer-events:none}[data-clx-event] [data-admin-theme] .admin-topbar{background:var(--event-topbar-bg, color-mix(in srgb, var(--surface) 84%, transparent))}[data-clx-event] [data-admin-theme] .admin-topbar:before{content:"";position:absolute;right:0;bottom:var(--event-topbar-deco-offset, 0px);left:0;height:var(--event-topbar-deco-height, 0px);background-image:var(--event-topbar-deco, none);background-repeat:repeat-x;background-size:var(--event-topbar-deco-size, auto);pointer-events:none}[data-clx-event] [data-admin-theme] .admin-brand__mark,[data-clx-event] [data-admin-theme] .admin-avatar{background:linear-gradient(135deg,var(--event-mark-from, var(--accent)),var(--event-mark-to, var(--blue)));color:var(--event-mark-text, var(--on-accent, var(--bg)))}[data-clx-event] [data-admin-theme] .admin-brand__mark{position:relative}[data-clx-event] [data-admin-theme] .admin-brand__mark:after{content:"";position:absolute;top:var(--event-badge-y, 0px);left:var(--event-badge-x, 0px);width:var(--event-badge-width, 0px);height:var(--event-badge-height, 0px);background:var(--event-badge, none) center / contain no-repeat;pointer-events:none;animation:adminEventGlow 2.6s ease-in-out infinite}[data-clx-event] [data-admin-theme] .admin-brand__name{background-image:linear-gradient(90deg,var(--event-name-from, var(--accent)),var(--event-name-to, var(--blue)))}[data-clx-event] [data-admin-theme=dark] .admin-brand__mark{box-shadow:0 0 14px -2px var(--event-mark-to, var(--accent))}[data-clx-event] [data-admin-theme] .admin-banner{border-color:transparent;background:linear-gradient(100deg,var(--banner-from, color-mix(in srgb, var(--banner-tone) 16%, var(--surface))) 0%,var(--banner-mid, var(--surface)) 46%,var(--banner-to, var(--surface)) 100%);box-shadow:0 14px 34px -18px var(--banner-to, transparent)}[data-clx-event] [data-admin-theme] .admin-banner__shade{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--banner-shade, var(--surface)) 35%,transparent) 38%,var(--banner-shade, var(--surface)) 80%)}[data-clx-event] [data-admin-theme] .admin-banner>img{filter:var(--event-image-filter, none)}[data-clx-event] [data-admin-theme] .admin-banner__bar{background:var(--event-banner-bar, var(--banner-to, var(--banner-tone)));box-shadow:none}[data-clx-event] [data-admin-theme=dark] .admin-banner__bar{box-shadow:0 0 22px 2px var(--event-banner-bar, var(--banner-tone))}[data-clx-event] [data-admin-theme] .admin-banner__title{color:var(--event-banner-title, var(--banner-title, var(--banner-tone)))}[data-clx-event] [data-admin-theme=dark] .admin-banner__title{text-shadow:0 0 18px color-mix(in srgb,var(--event-tone, var(--banner-tone)) 45%,transparent)}[data-clx-event] [data-admin-theme] .admin-banner__subtitle{color:var(--banner-text, color-mix(in srgb, var(--text) 70%, var(--dim)))}[data-clx-event] [data-admin-theme] .admin-banner:before{content:"";position:absolute;top:-360px;right:0;bottom:0;left:0;background-image:var(--event-banner-fall-a, none),var(--event-banner-fall-b, none);background-repeat:repeat;background-size:300px 360px,220px 360px;pointer-events:none;animation:adminEventFall 22s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-admin-theme] .admin-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;width:512px;max-width:60%;background-image:var(--event-banner-motif, none);background-position:right center;background-repeat:no-repeat;background-size:auto 100%;pointer-events:none;animation:adminEventGlow 3.4s ease-in-out infinite}[data-clx-event] [data-admin-theme=light] :is(.admin-pill--green,.admin-pill--warn,.admin-pill--danger,.admin-pill--blue,.admin-pill--purple,.admin-pill--orange,.admin-pill--pink,.admin-pill--dim){color:color-mix(in srgb,var(--pill-tone) 66%,var(--text))}@media(prefers-reduced-motion:reduce){[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):before,[data-clx-event] .admin-app[data-admin-theme]:has(>.admin-topbar):after,[data-clx-event] [data-admin-theme] .admin-sidebar:before,[data-clx-event] [data-admin-theme] .admin-brand__mark:after,[data-clx-event] [data-admin-theme] .admin-banner:before,[data-clx-event] [data-admin-theme] .admin-banner:after{animation:none}}[data-clx-event=tet-mai] [data-admin-theme]{--event-fall-direction: normal;--event-image-filter: hue-rotate(160deg) saturate(1.5);--event-mark-text: #ffffff;--event-badge: url(/assets/artwork/events/tet-mai/logo-badge.svg);--event-badge-width: 18px;--event-badge-height: 18px;--event-badge-x: -9px;--event-badge-y: -9px;--event-banner-fall-a: url(/assets/artwork/events/tet-mai/banner-fall-a.svg);--event-banner-fall-b: url(/assets/artwork/events/tet-mai/banner-fall-b.svg);--event-banner-motif: url(/assets/artwork/events/tet-mai/banner-motif.svg);--event-topbar-deco: linear-gradient(90deg, #b91c1c, #f5b301 50%, #b91c1c);--event-topbar-deco-height: 3px;--event-topbar-deco-offset: 0px;--event-topbar-deco-size: 100% 100%}[data-clx-event=tet-mai] [data-admin-theme=light]{--bg: #f7eee4;--surface2: #fbf4ec;--border: #e3cfbd;--card-border: #dbc4ae;--shadow: 0 1px 2px rgba(120, 45, 15, .07), 0 12px 28px -14px rgba(120, 45, 15, .26);--text: #23140c;--dim: #6a4a38;--title: #7f1d1d;--accent: #b3261e;--accent2: #b45309;--sidebar-bg: #f0d3bf;--sidebar-border: #dcb093;--sidebar-text: #4f120c;--sidebar-hover: rgba(179, 38, 30, .1);--selected-bg: #b91c1c;--btn-primary-bg: #7f1d1d;--btn-bg: #fffaf5;--btn-text: #8c1d13;--btn-hover: #fbeadd;--field-border: #a8846d;--table-head-bg: #f5dccb;--table-head-text: #7f1d1d;--table-head-hover: #b3261e;--banner-from: #4a0808;--banner-mid: #8f1414;--banner-to: #c2410c;--banner-shade: #7c1d0f;--event-tone: #f5b301;--event-banner-title: #fde68a;--event-banner-bar: #f5b301;--event-mark-from: #c81e1e;--event-mark-to: #e08a00;--event-name-from: #b91c1c;--event-name-to: #c2410c;--event-topbar-bg: rgba(255, 248, 240, .9);--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(245, 179, 1, .18), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(185, 28, 28, .08), transparent 70%);--event-page-fall-a: url(/assets/artwork/events/tet-mai/page-fall-a-light.svg);--event-page-fall-b: url(/assets/artwork/events/tet-mai/page-fall-b-light.svg);--event-sidebar-fall: url(/assets/artwork/events/tet-mai/sidebar-fall-light.svg);--event-sidebar-motif: url(/assets/artwork/events/tet-mai/sidebar-motif-light.svg)}[data-clx-event=tet-mai] [data-admin-theme=dark]{--bg: #1a1718;--surface: #262123;--surface2: #302a2c;--input: #1f1b1d;--border: #463d40;--text: #fdf6f2;--dim: #d6c4bd;--accent: #fca5a5;--accent2: #fcd34d;--on-accent: #2a0a0a;--sidebar-bg: #211c1e;--sidebar-border: #3b3336;--banner-from: #5c0d10;--banner-mid: #9b1c1c;--banner-to: #c2410c;--banner-shade: #7c1d12;--banner-text: #ffffff;--event-tone: #fcd34d;--event-banner-title: #fde68a;--event-banner-bar: #fcd34d;--event-mark-from: #c81e1e;--event-mark-to: #e08a00;--event-name-from: #fca5a5;--event-name-to: #fcd34d;--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(252, 165, 165, .07), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(252, 211, 77, .05), transparent 70%);--event-page-fall-a: url(/assets/artwork/events/tet-mai/page-fall-a-dark.svg);--event-page-fall-b: url(/assets/artwork/events/tet-mai/page-fall-b-dark.svg);--event-sidebar-fall: url(/assets/artwork/events/tet-mai/sidebar-fall-dark.svg);--event-sidebar-motif: url(/assets/artwork/events/tet-mai/sidebar-motif-dark.svg)}[data-clx-event=xmas-frost] [data-admin-theme]{--event-fall-direction: normal;--event-image-filter: saturate(.55) brightness(1.15);--event-mark-text: #ffffff;--event-badge-width: 18px;--event-badge-height: 18px;--event-badge-x: -9px;--event-badge-y: -9px;--event-banner-fall-a: url(/assets/artwork/events/xmas-frost/banner-fall-a.svg);--event-banner-fall-b: url(/assets/artwork/events/xmas-frost/banner-fall-b.svg);--event-banner-motif: url(/assets/artwork/events/xmas-frost/banner-motif.svg);--event-topbar-deco-height: 18px;--event-topbar-deco-offset: -15px;--event-topbar-deco-size: 72px 18px}[data-clx-event=xmas-frost] [data-admin-theme=light]{--bg: #eaf2f8;--surface2: #f2f7fb;--border: #cbd9e7;--card-border: #c0d1e3;--shadow: 0 1px 2px rgba(15, 40, 80, .07), 0 12px 28px -14px rgba(15, 40, 80, .26);--text: #0b1a2c;--dim: #455a72;--title: #0c2a4d;--accent: #0b5394;--accent2: #0e7490;--sidebar-bg: #d4e4f2;--sidebar-border: #aec8e0;--sidebar-text: #0a2846;--sidebar-hover: rgba(11, 83, 148, .1);--selected-bg: #0e7490;--btn-primary-bg: #0c2a4d;--btn-bg: #f7fbfe;--btn-text: #0b4a80;--btn-hover: #e5f0fa;--field-border: #7d97b3;--table-head-bg: #d9e7f4;--table-head-text: #0c2a4d;--table-head-hover: #0b5394;--banner-from: #081530;--banner-mid: #17336a;--banner-to: #2b5c9e;--banner-shade: #13305e;--event-tone: #bae6fd;--event-banner-title: #e0f2fe;--event-banner-bar: #7dd3fc;--event-mark-from: #0c2a4d;--event-mark-to: #0e7490;--event-name-from: #0b5394;--event-name-to: #0e7490;--event-topbar-bg: rgba(248, 252, 255, .9);--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(125, 211, 252, .2), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(11, 83, 148, .07), transparent 70%);--event-badge: url(/assets/artwork/events/xmas-frost/logo-badge-light.svg);--event-topbar-deco: url(/assets/artwork/events/xmas-frost/topbar-deco-light.svg);--event-page-fall-a: url(/assets/artwork/events/xmas-frost/page-fall-a-light.svg);--event-page-fall-b: url(/assets/artwork/events/xmas-frost/page-fall-b-light.svg);--event-sidebar-fall: url(/assets/artwork/events/xmas-frost/sidebar-fall-light.svg);--event-sidebar-motif: url(/assets/artwork/events/xmas-frost/sidebar-motif-light.svg)}[data-clx-event=xmas-frost] [data-admin-theme=dark]{--bg: #060c18;--surface: #0d172c;--surface2: #14213b;--input: #0a1323;--border: #213456;--text: #eaf2fc;--dim: #96abc9;--accent: #a5d8ff;--accent2: #c7d2fe;--on-accent: #071226;--sidebar-bg: #08111f;--sidebar-border: #1c2c4a;--banner-from: #060f26;--banner-mid: #142a57;--banner-to: #23477f;--banner-shade: #10244a;--banner-text: #ffffff;--event-tone: #a5d8ff;--event-banner-title: #e0f2fe;--event-banner-bar: #a5d8ff;--event-mark-from: #1e3a6e;--event-mark-to: #0e7490;--event-name-from: #bae6fd;--event-name-to: #c7d2fe;--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(165, 216, 255, .08), transparent 70%);--event-badge: url(/assets/artwork/events/xmas-frost/logo-badge-dark.svg);--event-topbar-deco: url(/assets/artwork/events/xmas-frost/topbar-deco-dark.svg);--event-page-fall-a: url(/assets/artwork/events/xmas-frost/page-fall-a-dark.svg);--event-page-fall-b: url(/assets/artwork/events/xmas-frost/page-fall-b-dark.svg);--event-sidebar-fall: url(/assets/artwork/events/xmas-frost/sidebar-fall-dark.svg);--event-sidebar-motif: url(/assets/artwork/events/xmas-frost/sidebar-motif-dark.svg)}:root,[data-admin-theme=dark]{--bg: #080d1a;--surface: #0f1a2e;--surface2: #16233c;--input: #0b1524;--border: #1e3050;--text: #e7effc;--dim: #8095b8;--accent: #22d3ee;--accent2: #2dd4bf;--purple: #a78bfa;--green: #34d399;--blue: #3b82f6;--pink: #f472b6;--warn: #fbbf24;--orange: #fb923c;--danger: #fb7185;--shadow: 0 12px 34px -16px rgba(0, 0, 0, .7)}.admin-app{min-height:100vh;background:var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif}.clx-icon{display:block;flex:none;object-fit:contain;-webkit-user-select:none;user-select:none}.admin-topbar{position:fixed;top:0;left:0;right:0;z-index:40;height:64px;display:flex;align-items:center;justify-content:space-between;padding-right:20px;background:color-mix(in srgb,var(--surface) 82%,transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:padding .25s}.admin-brand{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px;font-family:Space Grotesk,sans-serif}.admin-brand__mark,.admin-avatar{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e}.admin-brand__mark{width:30px;height:30px;border-radius:8px;box-shadow:0 0 14px -2px var(--accent)}.admin-brand__name{font-size:21px;font-weight:700;background:linear-gradient(90deg,var(--accent),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}.admin-role-badge{margin-left:6px;padding:3px 11px;border:1px solid color-mix(in srgb,var(--warn) 40%,transparent);border-radius:20px;background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--warn);font-size:11px;font-weight:700;white-space:nowrap}.admin-icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--dim);cursor:pointer;transition:transform .14s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease,filter .18s ease;-webkit-tap-highlight-color:transparent}.admin-icon-button .clx-icon{filter:drop-shadow(0 0 1px rgba(231,239,252,.55)) drop-shadow(0 0 7px color-mix(in srgb,var(--accent) 24%,transparent));transition:transform .14s ease,filter .18s ease,opacity .18s ease}.admin-icon-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface2));color:var(--accent);box-shadow:0 0 16px -10px var(--accent)}.admin-icon-button:hover .clx-icon{filter:drop-shadow(0 0 1px rgba(255,255,255,.75)) drop-shadow(0 0 10px color-mix(in srgb,var(--accent) 42%,transparent));transform:translateY(-1px)}.admin-icon-button:active{transform:scale(.94);filter:brightness(.92);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.admin-icon-button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,transparent);outline-offset:2px}.admin-icon-button.is-active{background:var(--surface2);color:var(--text);border-color:color-mix(in srgb,var(--accent) 26%,var(--border));box-shadow:0 0 18px -12px var(--accent)}.admin-top-actions .admin-icon-button{border-color:transparent;background:transparent}.admin-top-actions .admin-icon-button--theme{border-color:var(--border)}.admin-top-actions .admin-icon-button:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:var(--surface2)}.admin-top-actions .admin-icon-button:active{background:color-mix(in srgb,var(--accent) 10%,var(--surface2))}.admin-top-actions .admin-icon-button.is-active{background:var(--surface2)}.admin-notification-badge{position:absolute;top:6px;left:14px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:2px solid var(--surface);border-radius:8px;background:var(--danger);color:#fff;font-size:9px;font-weight:700;line-height:1}.admin-top-actions{position:relative;display:flex;align-items:center;gap:6px}.admin-dropdown{position:absolute;top:52px;right:0;z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 20px 50px -16px #00000080}.admin-dropdown--notifications{width:360px;max-height:440px;overflow:auto}.admin-dropdown--settings{width:300px;padding:18px}.admin-settings-title{margin-bottom:16px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.admin-settings-label{display:block;margin-bottom:7px;color:var(--dim);font-size:12.5px;font-weight:600}.admin-settings-select{position:relative;margin-bottom:16px}.admin-settings-select+.admin-settings-label+.admin-settings-select{margin-bottom:18px}.admin-settings-select select{width:100%;padding:11px 38px 11px 13px;border:1px solid var(--border);border-radius:10px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--input);color:var(--text);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600}.admin-settings-select select:focus{border-color:var(--accent)}.admin-settings-select .clx-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);pointer-events:none}.admin-settings-divider{height:1px;margin-bottom:16px;background:var(--border)}.admin-settings-role-label{display:block;margin-bottom:9px;color:var(--text);font-size:12.5px;font-weight:700}.admin-settings-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-settings-role{display:flex;align-items:center;justify-content:center;gap:3px;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);cursor:pointer;font:inherit;font-size:12.5px;font-weight:600;text-align:left}.admin-settings-role span{display:flex;color:var(--dim)}.admin-settings-role.is-active{border-color:var(--role-tone);background:color-mix(in srgb,var(--role-tone) 14%,transparent);color:var(--role-tone)}.admin-settings-role.is-active span{color:var(--role-tone)}.admin-settings-role:hover{border-color:var(--role-tone);color:var(--role-tone)}.admin-dropdown__title{padding:15px 18px;border-bottom:1px solid var(--border);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.admin-notification-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--border);background:var(--surface);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.admin-notification-head button{border:0;background:transparent;color:var(--accent);cursor:pointer;font:inherit;font-family:Manrope,system-ui,sans-serif;font-size:12px;font-weight:600}.admin-notification-head button:hover{color:var(--text)}.admin-notification{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);cursor:pointer}.admin-notification:hover{background:var(--surface2)}.admin-notification-icon{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--notification-tone) 15%,transparent);color:var(--notification-tone)}.admin-notification-body{min-width:0}.admin-notification-from{font-size:13px;font-weight:700}.admin-notification-title{margin:2px 0 4px;color:var(--text);font-size:13px;line-height:1.45}.admin-notification-time{color:var(--dim);font-size:11.5px}.admin-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:50;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border-right:1px solid var(--border);transition:width .25s}.admin-profile{display:flex;align-items:center;gap:11px;padding:15px;cursor:pointer}.admin-profile:hover,.admin-nav button:hover{background:var(--surface2)}.admin-avatar{flex:none;width:40px;height:40px;border-radius:50%;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700;box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 22%,transparent)}.admin-nav{display:flex;flex-direction:column;gap:3px;overflow-y:auto;padding:4px 10px}.admin-nav button{position:relative;display:flex;align-items:center;gap:11px;width:100%;padding:10px 11px;border:0;border-radius:10px;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:14px;font-weight:700;text-align:left}.admin-nav button.is-active{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.admin-nav button.is-parent-active{color:var(--text)}.admin-nav__chevron{flex:none;transform:rotate(-90deg);transition:transform .22s ease}.admin-nav__chevron.is-open{transform:rotate(0)}.admin-nav button.is-active:before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--accent);box-shadow:0 0 10px var(--accent)}.admin-main{min-height:100vh;padding-top:64px;transition:margin .25s}.admin-main-inner{max-width:1560px;margin:0 auto;padding:30px 34px}.admin-page h1{margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:27px;font-weight:800}.admin-page p{margin:0 0 18px;color:var(--dim);font-size:14px}.admin-page-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-bottom:18px}.admin-page-head__text{min-width:0}.admin-page .admin-page-head p{margin:0}.admin-page-head__actions{display:flex;flex-wrap:wrap;gap:10px}.admin-page--form{max-width:1000px;margin:0 auto}.admin-subhead{margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:19px;font-weight:800}.admin-hero,.admin-banner,.admin-surface{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.admin-hero{position:relative;margin-bottom:24px;overflow:hidden;border-color:color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:20px;background:linear-gradient(105deg,color-mix(in srgb,var(--accent) 15%,var(--surface)) 0%,var(--surface) 55%,var(--surface) 100%)}.admin-hero:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);border-radius:inherit;box-shadow:0 0 24px -10px color-mix(in srgb,var(--accent) 65%,transparent),inset 0 0 28px -12px color-mix(in srgb,var(--accent) 55%,transparent);pointer-events:none}.admin-hero>img,.admin-banner>img{position:absolute;top:0;right:0;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 40%,#000 80%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.5) 40%,#000 80%)}.admin-hero>img{width:50%;opacity:.85}.admin-hero__body{position:relative;z-index:2;max-width:62%;padding:30px 32px}.admin-hero h1{margin:0 0 8px;font-family:Space Grotesk,sans-serif;font-size:30px;font-weight:800}.admin-hero p{margin:0;color:var(--dim);font-size:15px;line-height:1.6}.admin-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.admin-stat{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface2) 82%,transparent)}.admin-stat__icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:52px;height:52px;border-radius:12px}.admin-stat b{display:block;color:var(--accent);font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:800;line-height:1.1}.admin-stat span:last-child{color:var(--dim);font-size:11.5px}.admin-banner{position:relative;--banner-tone: var(--accent);height:118px;margin-bottom:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--banner-tone) 32%,var(--border));border-radius:18px;background:linear-gradient(100deg,color-mix(in srgb,var(--banner-tone) 16%,var(--surface)) 0%,var(--surface) 52%,var(--surface) 100%);box-shadow:var(--shadow)}.admin-banner__shade{position:absolute;top:0;right:0;bottom:0;width:50%;background:linear-gradient(90deg,transparent 0%,rgba(9,17,32,.35) 38%,#0b1524 78%);pointer-events:none}.admin-banner>img{width:46%;max-width:430px;opacity:.95}.admin-banner__bar{position:absolute;top:0;bottom:0;left:0;width:5px;background:var(--banner-tone);box-shadow:0 0 22px 2px var(--banner-tone)}.admin-banner__body{position:relative;display:flex;height:100%;max-width:62%;flex-direction:column;justify-content:center;gap:8px;padding:0 30px}.admin-banner__title{color:var(--banner-tone);font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:800;line-height:1.2;letter-spacing:.9px;text-transform:uppercase;text-shadow:0 0 18px color-mix(in srgb,var(--banner-tone) 45%,transparent)}.admin-banner__subtitle{color:color-mix(in srgb,var(--text) 70%,var(--dim));font-size:15px;line-height:1.5}.admin-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.admin-toolbar--single-line{flex-wrap:nowrap;overflow-x:auto}.admin-toolbar--single-line .admin-select{flex:1 0 0;min-width:0!important}.admin-toolbar--comments .admin-select{flex:1 1 0;min-width:0!important}.admin-toolbar--fluid .admin-select{flex:1 1 140px;min-width:0!important;max-width:230px}.admin-toolbar--fluid .admin-search{flex:2 1 220px;min-width:0}.admin-toolbar--fluid>.admin-btn{flex:none;margin-left:auto}.admin-system-banners{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.admin-system-banner{--banner-tone: var(--accent);display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--banner-tone) 45%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--banner-tone) 12%,var(--surface));font-size:14px}.admin-system-banner.is-danger{--banner-tone: var(--danger)}.admin-system-banner.is-warn{--banner-tone: var(--warn)}.admin-system-banner__level{color:var(--banner-tone);font-weight:800;white-space:nowrap}.admin-system-banner__text{flex:1;min-width:0;line-height:1.45}.admin-system-banner__until{color:var(--dim);font-size:12.5px;white-space:nowrap}.admin-system-banner button{display:inline-flex;padding:4px;border:0;border-radius:7px;background:transparent;cursor:pointer}.admin-system-banner button:hover{background:var(--surface2)}.class-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:20px;margin-bottom:24px}@media(max-width:1100px){.class-detail-layout{grid-template-columns:1fr}}.class-detail-main{display:flex;flex-direction:column;gap:20px;min-width:0}.class-detail-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.class-detail-card__heading{display:flex;align-items:center;gap:10px;color:var(--accent)}.class-detail-card__heading span,.class-detail-card__heading h3{margin:0;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.class-detail-card__heading h3{font-size:18px}.class-detail-stats{padding:22px}.class-detail-stats__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.class-detail-stats__head h2{margin:0;font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:800}.class-detail-stats__title{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.class-detail-stats__meta{margin-top:4px;color:var(--dim);font-size:13px}.class-detail-stats__meta b{color:var(--accent);font-family:JetBrains Mono,monospace}.class-detail-stats__actions{display:flex;flex-wrap:wrap;gap:10px}.class-detail-warning{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);border-radius:10px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);font-size:13px}.class-detail-progress{margin-bottom:14px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.class-detail-progress__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:var(--dim);font-size:13px;font-weight:600}.class-detail-progress__row b{font-family:JetBrains Mono,monospace;font-size:16px;font-weight:800}.class-detail-progress__row small{color:var(--dim);font-size:13px;font-weight:500}.class-detail-progress__track{overflow:hidden;width:100%;height:8px;border-radius:4px;background:var(--border)}.class-detail-progress__track div{height:100%;border-radius:4px;transition:width .3s}.class-detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.class-detail-metrics div{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.class-detail-metrics span{display:block;color:var(--dim);font-size:11.5px}.class-detail-metrics b{display:block;margin-top:2px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700}.class-detail-members .admin-table-head,.class-detail-members .admin-table-row{min-width:0}.class-detail-members__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border)}.class-detail-radar{display:flex;flex-direction:column;aspect-ratio:1 / 1;padding:22px}.class-detail-radar__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.class-detail-radar__title{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700}.class-detail-radar__sub{margin-top:2px;color:var(--dim);font-size:12px}.class-detail-radar__plot{display:flex;flex:1;align-items:center;justify-content:center;min-height:0}.class-detail-students{padding:22px}.class-detail-students__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.class-detail-students__filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.class-detail-segment{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.class-detail-segment button{padding:5px 12px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--dim);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.class-detail-segment button:disabled{opacity:.45;cursor:not-allowed}.class-detail-segment button.is-active{border-color:color-mix(in srgb,var(--segment-tone) 30%,transparent);background:var(--surface);color:var(--segment-tone)}.admin-stat.is-clickable{color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s}.admin-stat.is-clickable:hover,.admin-stat.is-clickable:focus-visible{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));transform:translateY(-1px)}.admin-server-strip{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin:-6px 0 22px;padding:11px 18px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--dim);font-size:13px}.admin-server-strip b{color:var(--text);font-family:JetBrains Mono,monospace}.admin-server-strip__title{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-weight:700}.admin-state-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:700;white-space:nowrap}.admin-state-chip.is-ok{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.admin-state-chip.is-busy{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.admin-server-strip__state{margin-left:auto}.admin-meter{--meter-tone: var(--accent);display:block;width:100%;height:6px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--dim) 22%,transparent)}.admin-meter>span{display:block;height:100%;border-radius:inherit;background:var(--meter-tone);transition:width .4s ease}.admin-meter--green{--meter-tone: var(--green)}.admin-meter--warn{--meter-tone: var(--warn)}.admin-meter--danger{--meter-tone: var(--danger)}.admin-meter--dim{--meter-tone: var(--dim)}.admin-field,.admin-date-field{display:block;min-width:0;color:var(--dim);font-size:12px;font-weight:600}.admin-field>span:first-child,.admin-date-field>span:first-child{display:block;margin-bottom:7px}.admin-date-field{min-width:190px}.admin-date-field .admin-date-input{display:block}.admin-date-field input{width:100%;height:42px;padding:0 46px 0 12px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--input);color:var(--text);font:inherit;font-size:13.5px;font-weight:600}.admin-date-field input:focus{border-color:var(--accent)}.admin-date-field.is-inline{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.admin-date-field.is-inline>span:first-child{margin:0}.admin-date-field.is-inline .admin-date-input{width:168px}.admin-toolbar--labeled{align-items:flex-end;gap:12px;padding:16px 18px}.admin-toolbar__end{margin-left:auto}.admin-date-range{display:flex;flex:none;align-items:center;gap:14px}.admin-toolbar--labeled,.admin-toolbar--add,.admin-ops-card__form{--ctl-h: 44px}:is(.admin-toolbar--labeled,.admin-toolbar--add,.admin-ops-card__form) :is(.admin-select select,.admin-date-field input,.admin-ops-input){height:var(--ctl-h);padding-top:0;padding-bottom:0}:is(.admin-toolbar--labeled,.admin-toolbar--add,.admin-ops-card__form) .admin-btn{height:var(--ctl-h);padding-top:0;padding-bottom:0}.admin-applied-note{display:flex;align-items:center;gap:7px;margin:0 0 14px;color:var(--dim);font-size:12.5px}.admin-applied-note.is-dirty{color:var(--warn);font-weight:700}.admin-live-line{display:flex;align-items:center;gap:9px}.admin-ops-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:0 0 22px}.admin-stat.admin-stat--meter{align-items:center}.admin-stat__body{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.admin-stat--meter b{color:var(--text);font-size:22px}.admin-stat--meter.is-busy b{color:var(--warn)}.admin-stat.admin-stat--meter .admin-stat__label{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;color:var(--dim);font-size:12px}.admin-stat__label em{display:inline-flex;align-items:center;gap:2px;color:var(--warn);font-style:normal;font-weight:700}.admin-stat--meter .admin-meter{height:5px;margin-top:6px}.admin-usage-cell{display:flex;align-items:center;gap:12px}.admin-usage-cell b{flex:none;min-width:52px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.admin-usage-cell b.is-busy{color:var(--warn)}.admin-usage-cell .admin-meter{flex:1;min-width:0}.admin-trend-grid.admin-trend-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1280px){.admin-trend-grid.admin-trend-grid--three{grid-template-columns:minmax(0,1fr)}}.admin-form-card.admin-ops-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 28px;max-width:none;margin:22px 0 0;padding:22px 24px}.admin-page-head+.admin-form-card.admin-ops-card{margin-top:0}.admin-ops-card__text{flex:1 1 280px;min-width:0}.admin-ops-card__text .admin-subhead{margin-bottom:6px}.admin-ops-card__text .admin-form__hint{margin:0;font-size:13px}.admin-ops-card__form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.admin-ops-input{width:160px;padding:0 14px}.admin-ops-input--time{width:150px}.admin-ops-input--count{width:120px}.admin-ops-section{margin-top:30px}.admin-page-head+.admin-ops-section{margin-top:4px}.admin-ops-section__title{margin-bottom:12px}.admin-ops-sso{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:16px}.admin-form-card.admin-ops-sso__card{display:flex;flex-direction:column;max-width:none;margin:0;padding:20px 22px}.admin-ops-sso__head{display:flex;align-items:center;gap:12px;margin-bottom:20px}.admin-ops-sso__head b{flex:1;min-width:0;font-family:Space Grotesk,sans-serif;font-size:16.5px}.admin-ops-sso__icon{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent)}.admin-form.admin-ops-sso__fields{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.admin-ops-sso__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}.admin-toolbar--add{gap:12px}.admin-toolbar--add>.admin-ops-input{flex:1 1 260px;min-width:0;width:auto}.admin-toolbar--add>.admin-btn{flex:none}.admin-secret-notice{margin-bottom:14px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--warn) 9%,var(--surface))}.admin-secret-notice__head{display:flex;align-items:center;gap:8px;color:var(--warn)}.admin-page .admin-secret-notice p{margin:6px 0 12px;font-size:13px}.admin-secret-notice__key{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.admin-secret-notice__key code{flex:1 1 280px;min-width:0;padding:11px 14px;border:1px dashed color-mix(in srgb,var(--warn) 55%,var(--border));border-radius:10px;background:var(--input);color:var(--text);font-family:JetBrains Mono,monospace;font-size:13.5px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.admin-audit-modal{max-width:640px}.admin-audit-modal__title{display:inline-flex;align-items:center;gap:10px}.admin-audit-modal__body{display:flex;flex-direction:column;gap:16px;max-height:calc(100vh - 140px);padding:20px;overflow-y:auto}.admin-audit-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:0}.admin-audit-meta .is-wide{grid-column:1 / -1}.admin-audit-meta dt{margin-bottom:3px;color:var(--dim);font-size:12px;font-weight:600}.admin-audit-meta dd{margin:0;font-size:13.5px;font-weight:700;overflow-wrap:anywhere}.admin-audit-meta dd.is-mono{font-family:JetBrains Mono,monospace;font-weight:600}.admin-audit-modal .admin-audit-modal__desc{margin:0;padding:12px 14px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--surface2);color:var(--text);font-size:14px;line-height:1.55}.admin-audit-diff{overflow:hidden;border:1px solid var(--border);border-radius:12px}.admin-audit-diff__row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:10px;padding:9px 14px;border-top:1px solid var(--border);font-size:13px;word-break:break-word}.admin-audit-diff__row.is-head{border-top:0;background:var(--surface2);color:var(--dim);font-size:12px;font-weight:700;text-transform:uppercase}.admin-audit-diff__row.is-changed span:last-child{color:var(--accent);font-weight:700}@media(max-width:860px){.admin-audit-meta{grid-template-columns:1fr}.admin-toolbar__end{margin-left:0}}.admin-page--stats .admin-radar-wrap{margin:14px 0 6px}.admin-page--stats .admin-toolbar--fluid .admin-select,.admin-page--stats .admin-toolbar--fluid .admin-search{flex-basis:130px}.admin-page--stats .admin-toolbar--fluid .admin-select:nth-child(3){flex-grow:2;max-width:320px}.admin-page--stats>.admin-pagination{min-width:0}.admin-radar-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-radar-card__title{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700}.admin-radar-card__meta{display:flex;align-items:center;gap:6px;margin-top:3px;color:var(--dim);font-size:12.5px}.admin-radar-card__meta b{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.admin-radar-card--summary{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 9%,var(--surface)),var(--surface))}.admin-progress-cell{display:flex;align-items:center;gap:10px;min-width:0}.admin-progress-cell b{flex:none;min-width:38px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;text-align:right}.admin-progress-cell b.is-green{color:var(--green)}.admin-progress-cell b.is-warn{color:var(--warn)}.admin-progress-cell b.is-dim{color:var(--dim)}.admin-progress-cell .admin-meter{flex:1;min-width:24px}.admin-progress-cell small{flex:none;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:11.5px}.admin-stats-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.admin-stats-kpis>div{display:flex;flex-direction:column;gap:3px;min-width:0;padding:14px 20px}.admin-stats-kpis>div+div{border-left:1px solid var(--border)}.admin-stats-kpis span{color:var(--dim);font-size:12px;font-weight:600}.admin-stats-kpis b{font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:800;line-height:1.15;font-variant-numeric:tabular-nums}.admin-stats-kpis small{color:var(--dim);font-size:12px}.admin-stats-kpis .is-warn b{color:var(--warn)}.admin-stats-kpis .admin-meter{height:5px;margin-top:6px}@media(max-width:980px){.admin-stats-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stats-kpis>div:nth-child(3){border-left:0}.admin-stats-kpis>div:nth-child(n+3){border-top:1px solid var(--border)}}.admin-stats-bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 16px;margin:6px 0 14px;border-bottom:1px solid var(--border)}.admin-stats-tabs{display:flex;gap:4px}.admin-stats-tabs button{position:relative;display:inline-flex;align-items:center;gap:6px;padding:9px 14px 12px;border:0;border-radius:8px 8px 0 0;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:14px;font-weight:700}.admin-stats-tabs button:after{content:"";position:absolute;right:10px;bottom:-1px;left:10px;height:2px;border-radius:2px;background:transparent}.admin-stats-tabs button:hover{color:var(--text)}.admin-stats-tabs button.is-active{color:var(--accent)}.admin-stats-tabs button.is-active:after{background:var(--accent)}.admin-stats-tabs button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:-2px}.admin-stats-bar__tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:8px}.admin-radar-card__foot{display:flex;align-items:center;gap:12px;margin-top:4px;padding-top:14px;border-top:1px solid var(--border)}.admin-radar-card__foot .admin-progress-cell{flex:1}.admin-btn.admin-stats-open{flex:none;gap:4px;padding:5px 10px;font-size:12px}.admin-heat{display:inline-block;min-width:54px;padding:4px 8px;border-radius:8px;background:color-mix(in srgb,var(--accent) calc(var(--heat) * 34%),transparent);font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:600;text-align:center}.admin-stats-kpis__action{display:flex;flex-direction:column;gap:3px;min-width:0;padding:14px 20px;border:0;border-left:1px solid var(--border);border-radius:0 14px 14px 0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.admin-stats-kpis__action:hover:not(:disabled),.admin-stats-kpis__action.is-active{background:color-mix(in srgb,var(--warn) 8%,transparent)}.admin-stats-kpis__action:disabled{cursor:default}.admin-stats-kpis__action.is-warn b,.admin-stats-kpis__action.is-warn small{color:var(--warn)}.admin-stats-kpis__action:focus-visible{outline:2px solid color-mix(in srgb,var(--warn) 60%,transparent);outline-offset:-2px}.admin-overview{display:flex;flex-direction:column;gap:18px}@media(min-width:1720px){.admin-overview{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start}}.admin-overview__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;min-height:34px;margin-bottom:12px}.admin-overview__title{margin:0;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:800}.admin-overview__main .admin-table-card{overflow-x:auto}.admin-overview__main .admin-table-head,.admin-overview__main .admin-table-row{min-width:780px}.admin-overview__main .admin-pagination{min-width:0}.admin-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px}.admin-crumb button{display:inline-flex;align-items:center;gap:4px;padding:4px 8px 4px 4px;border:0;border-radius:8px;background:transparent;color:var(--accent);cursor:pointer;font:inherit;font-weight:700}.admin-crumb button:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.admin-crumb span{color:var(--dim)}.admin-crumb b{font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:800}.admin-cell-stack__code{color:var(--accent);font-family:JetBrains Mono,monospace}.admin-overview__side{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px;align-items:start}@media(min-width:1720px){.admin-overview__side{grid-template-columns:minmax(0,1fr)}}.admin-side-card{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.admin-side-card__title{margin:0 0 12px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:800}.admin-side-card__scope{margin:-8px 0 12px;overflow:hidden;color:var(--dim);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-page .admin-side-card__empty{margin:0;font-size:13px}.admin-side-card .admin-side-card__more{margin-top:10px;font-size:13px;font-weight:700}.admin-attention{display:flex;flex-direction:column}.admin-attention__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 8px;border:0;border-top:1px solid var(--border);background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.admin-attention__item:first-child{border-top:0}.admin-attention__item:hover{border-radius:8px;background:var(--surface2)}.admin-attention__item:disabled{cursor:default}.admin-attention__item:disabled:hover{background:transparent}.admin-attention__name{display:flex;flex-direction:column;min-width:0}.admin-attention__name b{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.admin-attention__name small{overflow:hidden;color:var(--dim);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-attention__pct{flex:none;color:var(--warn);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.admin-skill-bars{display:flex;flex-direction:column;gap:10px}.admin-skill-bars__row{display:grid;grid-template-columns:20px 74px minmax(0,1fr) 38px;align-items:center;gap:8px;font-size:13px}.admin-skill-bars__row .clx-icon{width:20px!important;height:20px!important}.admin-skill-bars__row b{font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:600;text-align:right}.admin-skill-bars__row.is-low span,.admin-skill-bars__row.is-low b{color:var(--warn)}.admin-page--stats .admin-radar-card,.admin-page--stats .admin-table-card,.admin-page--stats .admin-trend-card,.admin-page--stats .admin-toolbar,.admin-page--ops .admin-table-card,.admin-page--ops .admin-trend-card,.admin-page--ops .admin-toolbar,.admin-page--ops .admin-form-card,.admin-page--stats .admin-btn--primary,.admin-page--ops .admin-btn--primary{box-shadow:none}.admin-page--stats .admin-table-row,.admin-page--ops .admin-table-row{font-variant-numeric:tabular-nums}.admin-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:22px}@media(max-width:1100px){.admin-trend-grid{grid-template-columns:minmax(0,1fr)}}.admin-trend-card{display:flex;flex-direction:column;padding:16px 18px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.admin-trend-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.admin-trend-card__title{font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.admin-trend-card__subtitle{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px;margin-top:2px;color:var(--dim);font-size:12px}.admin-trend-card__headline{flex:none;text-align:right}.admin-trend-card__headline b{display:block;color:var(--accent);font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:800;line-height:1.1}.admin-trend-card__headline small{margin-left:3px;color:var(--dim);font-size:12px;font-weight:700}.admin-trend-card__headline span{color:var(--dim);font-size:11.5px}.admin-trend-card__plot{position:relative;min-width:0}.admin-trend-card__plot svg{position:absolute;top:0;left:0;max-width:none;cursor:crosshair}.admin-trend-card__foot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:auto 0 0;padding-top:10px;border-top:1px solid var(--border)}.admin-trend-card__plot{margin-bottom:8px}.admin-trend-card__foot dt{color:var(--dim);font-size:11.5px}.admin-trend-card__foot dd{margin:2px 0 0;color:var(--text);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.admin-trend-card__legend{display:inline-flex;align-items:center;gap:6px}.admin-trend-card__legend i{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--accent)}.admin-trend-axis{fill:var(--dim);font-size:11px}.admin-trend-label{fill:var(--text);font-size:12px;font-weight:700}.admin-trend-tooltip{position:absolute;z-index:2;display:flex;flex-direction:column;gap:2px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--text);font-size:12px;white-space:nowrap;pointer-events:none;transform:translate(-50%,calc(-100% - 12px));box-shadow:var(--shadow)}.admin-trend-tooltip span{color:var(--dim)}.admin-search{position:relative;flex:1;min-width:200px}.admin-search--full{flex-basis:100%}.admin-search img{position:absolute;left:12px;top:50%;transform:translateY(-50%)}.admin-input,.admin-search input,.admin-select select,.admin-form input,.admin-form textarea,.admin-form select{width:100%;outline:none;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);font:inherit;font-size:13.5px}.admin-search input{padding:10px 12px 10px 46px}.admin-select{position:relative}.admin-select select{padding:10px 40px 10px 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--text);cursor:pointer;font-size:13px;font-weight:600}.admin-select span{position:absolute;top:50%;right:11px;display:flex;transform:translateY(-50%);pointer-events:none}.admin-btn{--btn-tone: var(--accent);display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:11px 18px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);cursor:pointer;font:inherit;font-size:13.5px;font-weight:700}.admin-btn:hover{border-color:var(--btn-tone);color:var(--btn-tone)}.admin-btn:has(.clx-icon){border-color:color-mix(in srgb,var(--btn-tone) 52%,var(--border));background:color-mix(in srgb,var(--btn-tone) 15%,transparent);color:var(--btn-tone)}.admin-btn:has(.clx-icon):hover{background:color-mix(in srgb,var(--btn-tone) 22%,transparent)}.admin-btn--primary{--btn-tone: var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);box-shadow:0 8px 20px -12px var(--accent)}.admin-btn--primary:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.admin-btn--danger{--btn-tone: var(--danger);border-color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.admin-btn--danger:hover{background:color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger)}.admin-btn--success{--btn-tone: var(--green);border-color:var(--green);background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}.admin-btn--success:hover{background:color-mix(in srgb,var(--green) 22%,transparent);color:var(--green)}.admin-btn--surface2{--btn-tone: var(--accent);background:var(--surface2);color:var(--text)}.admin-btn--surface2:hover{background:color-mix(in srgb,var(--accent) 16%,var(--surface2))}.admin-btn--warning{--btn-tone: var(--warn);border-color:var(--warn);background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.admin-btn--warning:hover{background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}.admin-btn--filter{--btn-tone: var(--purple);border-color:var(--purple);background:color-mix(in srgb,var(--purple) 16%,transparent);color:var(--purple)}.admin-btn--filter:hover{background:color-mix(in srgb,var(--purple) 22%,transparent);color:var(--purple)}.admin-btn--toggle{padding:10px 15px;border-radius:10px;background:var(--input);color:var(--dim);font-size:13px;font-weight:600}.admin-btn--toggle.is-active{border-color:var(--btn-tone);background:color-mix(in srgb,var(--btn-tone) 14%,transparent);color:var(--btn-tone)}.admin-btn--toggle.is-purple{--btn-tone: var(--purple)}.admin-btn--bulk{--btn-tone: var(--accent);padding:9px 15px;border-radius:9px;background:var(--input);color:var(--dim);font-size:12.5px;font-weight:600}.admin-btn--bulk.is-active{border-color:var(--btn-tone);background:color-mix(in srgb,var(--btn-tone) 16%,transparent);color:var(--btn-tone)}.admin-btn--bulk.is-success.is-active{--btn-tone: var(--green)}.admin-btn--bulk.is-danger.is-active{--btn-tone: var(--danger)}.admin-inline-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding:12px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.admin-inline-panel__label{color:var(--dim);font-size:12.5px;font-weight:700}.admin-inline-panel__hint{color:var(--accent);font-size:12.5px;font-weight:600}.admin-bulk-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.admin-action-button{width:32px;height:32px;border-radius:8px;background:var(--surface2)}.admin-action-button--success{border-color:color-mix(in srgb,var(--green) 35%,var(--border));background:color-mix(in srgb,var(--green) 12%,transparent);color:var(--green)}.admin-action-button--success:hover{border-color:color-mix(in srgb,var(--green) 35%,var(--border));background:color-mix(in srgb,var(--green) 22%,transparent);color:var(--green)}.admin-action-button--danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.admin-action-button--danger:hover{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger)}.admin-action-button--warning{border-color:color-mix(in srgb,var(--warn) 35%,var(--border));background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn)}.admin-action-button--warning:hover{border-color:color-mix(in srgb,var(--warn) 35%,var(--border));background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}.admin-row-checkbox{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1.5px solid var(--border);border-radius:5px;background:transparent;color:#04121e;cursor:pointer}.admin-row-checkbox.is-checked{border-color:var(--accent);background:var(--accent)}.admin-row-checkbox:disabled{cursor:not-allowed;opacity:.4}.admin-row-checkbox.is-indeterminate{border-color:var(--accent)}.admin-row-checkbox.is-indeterminate:after{content:"";width:10px;height:2px;border-radius:2px;background:var(--accent)}.admin-tab-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.admin-tab-row button{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:12px 20px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:14px;font-weight:700}.admin-tab-row button.is-active{border-color:var(--tab-tone, var(--accent));background:color-mix(in srgb,var(--tab-tone, var(--accent)) 13%,transparent);color:var(--tab-tone, var(--accent))}.admin-table-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.admin-table-head,.admin-table-row{display:grid;gap:12px;align-items:center;min-width:920px;padding:14px 20px;border-bottom:1px solid var(--border)}.admin-table-card{overflow-x:auto}.admin-order-cell{display:inline-flex;align-items:center;justify-content:center;gap:8px}.admin-order-cell.is-muted{color:var(--dim);font-family:inherit;font-size:12px;opacity:.75}.admin-order-value{min-width:32px;padding:4px 8px;border:1px dashed transparent;border-radius:7px;background:transparent;color:var(--text);font:inherit;cursor:text}.admin-order-value:hover{border-color:var(--border);background:var(--surface2)}.admin-order-input{width:64px;padding:6px 8px;border:1px solid var(--accent);border-radius:7px;background:var(--surface2);color:var(--text);font:inherit;text-align:center}.admin-drag-handle{color:var(--dim);letter-spacing:-2px;cursor:grab;-webkit-user-select:none;user-select:none}.admin-drag-handle:active{cursor:grabbing}.admin-drag-hint{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--dim);font-size:13px}.admin-subject-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;max-height:260px;overflow-y:auto;padding:12px 14px;border:1px solid var(--border);border-radius:11px}.admin-subject-picker .admin-system-toggle{display:flex;margin:0;color:var(--text);font-size:13.5px;font-weight:600;text-transform:none;letter-spacing:0}.admin-required{color:var(--danger);font-weight:700}.admin-optional{color:var(--dim);font-weight:500;opacity:.8}.admin-account-editor__foot{display:flex;align-items:center;gap:10px;padding:16px 20px;border-top:1px solid var(--border)}.admin-modal.admin-import{max-width:760px}.admin-import__body{display:grid;gap:14px;max-height:min(70vh,640px);padding:20px;overflow-y:auto}.admin-import__file{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.admin-import__file b{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.admin-import__file small,.admin-import__hint{color:var(--dim);font-size:12.5px;line-height:1.55}.admin-import__hint code{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px}.admin-import__hint a{color:var(--accent);font-weight:700}.admin-import__error{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:11px 14px;border:1px solid color-mix(in srgb,var(--danger) 45%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);font-size:13px}.admin-import__head-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.admin-import__head-row b{font-family:JetBrains Mono,monospace;color:var(--accent)}.admin-import__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-import__stat{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:12px}.admin-import__stat b{color:var(--text);font-family:JetBrains Mono,monospace;font-size:18px}.admin-import__stat span{color:var(--dim);font-size:12px}@media(max-width:640px){.admin-import__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-filter-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.admin-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 8px 6px 12px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text);font-size:13px}.admin-filter-chip button{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:999px;background:transparent;color:var(--dim);cursor:pointer}.admin-filter-chip button:hover{background:var(--surface2);color:var(--text)}.admin-cell-stack{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-cell-stack small{color:var(--dim);font-size:12px}.admin-action-button[data-tooltip]{position:relative}.admin-action-button:disabled{cursor:not-allowed;opacity:.4}.admin-table-row span:has(.admin-action-button[data-tooltip]){overflow:visible}.admin-action-button[data-tooltip]:hover:after,.admin-action-button[data-tooltip]:focus-visible:after{content:attr(data-tooltip);position:absolute;right:0;bottom:calc(100% + 6px);z-index:5;padding:5px 9px;border-radius:7px;background:var(--text);color:var(--bg);font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow)}.admin-table-head{color:var(--dim);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.admin-table-row{font-size:13.5px}.admin-table-sort-header{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.admin-table-sort-header:hover{color:var(--text)}.admin-table-row.is-clickable{cursor:pointer}.admin-table-row.is-clickable:hover{background:var(--surface2)}.admin-table-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-empty{padding:40px;color:var(--dim);font-size:14px;text-align:center}.admin-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 11px;border-radius:20px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-size:12px;font-weight:700;white-space:nowrap}.admin-pill--green{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}.admin-pill--warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.admin-pill--danger{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.admin-pill--dim{background:color-mix(in srgb,var(--dim) 16%,transparent);color:var(--dim)}.admin-pill--blue{background:color-mix(in srgb,var(--blue) 16%,transparent);color:var(--blue)}.admin-pill--purple{background:color-mix(in srgb,var(--purple) 16%,transparent);color:var(--purple)}.admin-pill--orange{background:color-mix(in srgb,var(--orange) 16%,transparent);color:var(--orange)}.admin-pill--pink{background:color-mix(in srgb,var(--pink) 16%,transparent);color:var(--pink)}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;min-width:920px;padding:14px 20px;color:var(--dim);font-size:13px}.admin-pagination b{color:var(--text)}.admin-pagination__buttons{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.admin-pagination button{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--dim);cursor:pointer;font-family:JetBrains Mono,monospace;font-weight:700}.admin-pagination button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.admin-page--leaderboard{max-width:1180px;margin:0 auto}.admin-leaderboard-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.admin-leaderboard-head h1{font-size:28px}.admin-leaderboard-head p{margin-bottom:0}.admin-segmented{display:flex;align-items:center;gap:6px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--input)}.admin-segmented button{padding:9px 16px;border:0;border-radius:9px;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:13px;font-weight:700}.admin-segmented button.is-active{background:var(--surface);color:var(--accent)}.admin-toolbar--leaderboard{margin-bottom:22px}.admin-toolbar--leaderboard .admin-select{min-width:170px!important}.admin-leaderboard-notes{margin:-12px 0 18px}.admin-leaderboard-notes .admin-form__hint{margin:0 0 4px}.admin-leaderboard-toolbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.admin-leaderboard-toolbar-actions .admin-select{min-width:174px!important}.admin-leaderboard-export{margin-left:auto}.admin-leaderboard-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end;margin-bottom:26px}.admin-podium-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:22px 18px 20px;border:1px solid color-mix(in srgb,var(--rank-tone) 40%,var(--border));border-radius:16px;background:var(--surface);box-shadow:0 14px 34px -18px var(--rank-tone);text-align:center}.admin-podium-card--rank-1{padding-bottom:30px}.admin-podium-card__bar{position:absolute;top:-1px;left:16px;right:16px;height:4px;border-radius:0 0 4px 4px;background:var(--rank-tone)}.admin-podium-card__crown{margin-bottom:2px}.admin-podium-card__avatar{position:relative}.admin-rank-avatar{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--rank-tone),var(--blue));color:#04121e;font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:700;box-shadow:0 0 0 4px color-mix(in srgb,var(--rank-tone) 22%,transparent)}.admin-podium-card--rank-1 .admin-rank-avatar{width:78px;height:78px}.admin-rank-avatar--small{width:34px;height:34px;font-size:12px;box-shadow:none}.admin-podium-card__avatar>span:last-child{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);padding:1px 9px;border:1px solid color-mix(in srgb,var(--rank-tone) 40%,var(--border));border-radius:20px;background:var(--surface);color:var(--rank-tone);font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:800}.admin-podium-card__name{margin-top:16px;font-size:15px;font-weight:700}.admin-podium-card__code{margin-top:2px;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:12px}.admin-podium-card__metrics{display:flex;gap:22px;margin-top:14px}.admin-podium-card__metrics div{text-align:center}.admin-podium-card__metrics b{display:block;color:var(--green);font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:800}.admin-podium-card__metrics div:last-child b{color:var(--blue)}.admin-podium-card__metrics span{color:var(--dim);font-size:11px}.admin-podium-card__metrics i{display:block;width:1px;background:var(--border)}.admin-page--leaderboard .admin-table-head{gap:10px;padding:14px 18px}.admin-page--leaderboard .admin-table-row{gap:10px;padding:13px 18px}.admin-leaderboard-rank{font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:800}.admin-leaderboard-name{font-weight:600}.admin-leaderboard-metric{font-weight:700}.admin-rank-trend{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:48px;font-family:JetBrains Mono,monospace;font-size:13px;font-variant-numeric:tabular-nums}.admin-rank-trend>span{font-size:18px;font-weight:800;line-height:1}.admin-rank-trend--up{color:var(--green)}.admin-rank-trend--down{color:var(--danger)}.admin-rank-trend--same{color:var(--dim)}.admin-rank-trend--compact{min-width:auto;margin-top:8px;padding:3px 8px;border:1px solid color-mix(in srgb,currentColor 32%,var(--border));border-radius:999px;font-size:11px}.admin-rank-trend--compact>span{font-size:14px}.admin-leaderboard-progress{width:100%;min-width:150px}.admin-leaderboard-progress__label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:10.5px}.admin-leaderboard-progress__label b{color:var(--text);font-size:11px}.admin-leaderboard-progress__track{height:7px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--dim) 16%,transparent)}.admin-leaderboard-progress__track>span{display:block;width:var(--leaderboard-progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--green))}.admin-xp-title{display:inline-flex;align-items:center;margin-left:8px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--warn) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--warn);font-size:10px;font-weight:700;line-height:1.4;vertical-align:middle;white-space:nowrap}.admin-class-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.admin-class-summary__card{display:flex;align-items:center;gap:14px;min-width:0;padding:17px 19px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.admin-class-summary__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.admin-class-summary__card--green .admin-class-summary__icon{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.admin-class-summary__card b,.admin-class-summary__card div>span{display:block}.admin-class-summary__card b{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:800}.admin-class-summary__card div>span{margin-top:2px;color:var(--dim);font-size:12.5px}@media(max-width:680px){.admin-class-summary{grid-template-columns:minmax(0,1fr)}}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:18px}.admin-radar-card{padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.admin-radar-card__badge{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:10px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.admin-radar-wrap{position:relative;width:100%;margin:34px 0 18px}.admin-radar-mark{position:absolute;display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none}.admin-radar-mark img{width:42px;height:42px}.admin-radar-mark span{color:var(--dim);font-size:10.5px;font-weight:700;white-space:nowrap}.admin-form-card{max-width:1000px;margin:0 auto;padding:28px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}.admin-form label{display:block;margin-bottom:7px;color:var(--dim);font-size:12.5px;font-weight:600}.admin-form input,.admin-form textarea,.admin-form select{padding:12px 14px;border-radius:11px;font-size:14px}.admin-form textarea{min-height:90px;resize:vertical;line-height:1.55}.admin-form.admin-form--flow{--flow-cols: 2;--flow-gap: 22px;display:flex;flex-wrap:wrap;gap:18px var(--flow-gap)}.admin-form--flow>*{flex:1 1 calc((100% - (var(--flow-cols) - 1) * var(--flow-gap)) / var(--flow-cols) - 1px);min-width:min(100%,240px)}.admin-form--flow>.is-full{flex-basis:100%}.admin-form input[readonly]{border-style:dashed;background:transparent;color:var(--dim);cursor:default}.admin-date-input{position:relative}.admin-date-input input[type=date]{padding-right:46px}.admin-date-input input[type=date]::-webkit-calendar-picker-indicator{position:absolute;top:0;right:0;width:46px;height:100%;margin:0;opacity:0;cursor:pointer}.admin-date-input .clx-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);pointer-events:none}.admin-form-section+.admin-form-section{margin-top:24px;padding-top:22px;border-top:1px solid var(--border)}.admin-form-section__title{display:flex;align-items:center;gap:9px;margin:0 0 16px;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:800}.admin-form-section__note{margin-left:auto;padding:3px 10px;border:1px solid var(--border);border-radius:20px;color:var(--dim);font-family:Manrope,system-ui,sans-serif;font-size:12px;font-weight:600}.admin-form-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.admin-form-foot--center{justify-content:center}.admin-form-foot__note{display:flex;align-items:center;gap:8px;color:var(--dim);font-size:13px}.admin-form-foot__actions{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto}.admin-form-foot--center .admin-form-foot__actions{margin-left:0}.admin-form .admin-upload-field{display:flex;justify-content:center;width:100%;min-height:46px;margin:0;color:var(--accent);font-size:13.5px}.admin-profile-card{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:22px;padding:26px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:18px;background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface));box-shadow:0 0 30px -18px var(--accent)}.admin-profile-card__avatar{position:relative;flex:none}.admin-profile-card__avatar .admin-avatar{width:96px;height:96px;border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 20%,transparent),0 0 24px -4px var(--accent);font-family:Space Grotesk,sans-serif;font-size:34px;font-weight:700}.admin-profile-card__photo{position:absolute;right:-2px;bottom:-2px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:50%;background:var(--surface2);cursor:pointer}.admin-profile-card__photo:hover,.admin-profile-card__photo:focus-within{border-color:var(--accent)}.admin-profile-card__body{flex:1;min-width:220px}.admin-page .admin-profile-card h1{margin:0;font-size:28px}.admin-profile-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:9px}.admin-profile-card__code{color:var(--dim);font-family:JetBrains Mono,monospace;font-size:13px}.admin-profile-card__role{--role-tone: var(--accent);padding:3px 12px;border:1px solid color-mix(in srgb,var(--role-tone) 40%,transparent);border-radius:20px;background:color-mix(in srgb,var(--role-tone) 14%,transparent);color:var(--role-tone);font-size:12px;font-weight:700}.admin-profile-card__org{margin-top:12px;color:var(--dim);font-size:14px}.admin-form-card.admin-password-card{max-width:520px}.admin-password-card__head{display:flex;align-items:center;gap:12px;margin-bottom:22px}.admin-password-card__icon{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent)}.admin-password-card__title{font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:700}.admin-password-card__subtitle{color:var(--dim);font-size:12.5px}.admin-password-card .admin-btn{width:100%;margin-top:24px;padding:13px 18px}.admin-detail-tab{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.admin-detail-tab__header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-detail-tab__brand{display:flex;align-items:center;gap:12px}.admin-detail-tab__brand>span{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e}.admin-detail-tab__brand div div{font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:800}.admin-detail-tab__brand p{margin:0;color:var(--dim);font-size:12.5px}.admin-detail-tab__close{display:flex;align-items:center;justify-content:center;gap:3px;padding:9px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600}.admin-detail-tab__close:hover{border-color:var(--danger);color:var(--danger)}.admin-detail-tab__body{width:100%;max-width:1400px;flex:1;margin:0 auto;padding:30px 26px}.admin-detail-tab__body--class{max-width:1240px}.admin-detail-title{margin-bottom:18px}.admin-detail-title--row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-detail-title h1{margin:0;font-family:Space Grotesk,sans-serif;font-size:25px;font-weight:800}.admin-detail-title__with-status{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-detail-title__with-status .admin-pill{padding:5px 13px}.admin-detail-title p{margin:5px 0 0;color:var(--dim);font-size:14px}.admin-detail-title__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-detail-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px}.admin-detail-info-grid--six{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-detail-info{padding:15px 17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.admin-detail-info div{margin-bottom:6px;color:var(--dim);font-size:11.5px;letter-spacing:.5px;text-transform:uppercase}.admin-detail-info strong{font-size:14.5px}.admin-detail-stack{display:flex;flex-direction:column;gap:20px}.admin-detail-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.admin-detail-card__title{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border);color:var(--accent)}.admin-detail-card__title span{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.admin-detail-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.admin-detail-tabs button{display:flex;align-items:center;justify-content:center;gap:3px;padding:12px 22px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:14px;font-weight:700}.admin-detail-tabs button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}.admin-detail-tabs--compact{margin-bottom:14px}.admin-detail-tabs--compact button{padding:10px 18px}.admin-detail-status-switch{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.admin-detail-status-switch button{padding:8px 13px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:12.5px;font-weight:800}.admin-detail-status-switch button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.admin-detail-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.admin-detail-toolbar--modal{box-shadow:none}.admin-detail-search{min-width:min(360px,100%);flex:1 1 280px;display:flex;align-items:center;gap:9px;height:44px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--input)}.admin-detail-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13.5px}.admin-detail-search input::placeholder{color:color-mix(in srgb,var(--dim) 76%,transparent)}.admin-detail-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#04081299;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.admin-detail-modal__panel{position:relative;width:66vw;min-width:560px;height:66vh;min-height:440px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.admin-detail-modal__close{position:absolute;top:14px;right:14px;z-index:5;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--dim);cursor:pointer}.admin-detail-modal__close:hover{border-color:var(--danger);color:var(--danger)}.admin-detail-modal__content{padding:18px 20px 0}.admin-detail-modal__content h2{margin:0 0 14px;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:800}.admin-member-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.admin-member-filter-row .admin-select select{padding-top:10px;padding-bottom:10px;border-radius:10px;font-size:13px;font-weight:600}.admin-member-filter-row .admin-detail-search{min-width:180px;height:42px;border-radius:10px}.admin-member-table{flex:1;overflow:auto;border-top:1px solid var(--border)}.admin-detail-modal__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 20px;border-top:1px solid var(--border)}.admin-detail-modal__foot>span{color:var(--dim);font-size:12.5px}.admin-detail-modal__foot b{color:var(--accent)}.admin-system-toggle{display:flex;align-items:center;gap:11px;cursor:pointer;font-size:14px;font-weight:600}.admin-system-toggle__box{display:flex;flex:none;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid var(--border);border-radius:5px;background:transparent;color:#04121e;cursor:pointer}.admin-system-toggle__box.is-active{border-color:var(--accent);background:var(--accent)}.admin-system-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:18px 32px}.admin-system-toggles{display:flex;flex-direction:column;gap:14px}@media(max-width:860px){.admin-system-split{grid-template-columns:minmax(0,1fr)}}.admin-form__hint{margin-top:6px;color:var(--dim);font-size:12px;line-height:1.45}.admin-form__hint.is-error{color:var(--danger);font-weight:600}.admin-editor-shell{min-height:100vh;display:flex;flex-direction:column;color:var(--text);background:radial-gradient(1100px 520px at 88% -12%,color-mix(in srgb,var(--accent) 13%,transparent),transparent),radial-gradient(900px 520px at -8% 108%,color-mix(in srgb,var(--purple) 12%,transparent),transparent),var(--bg);font-family:Manrope,system-ui,sans-serif}.admin-editor-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-editor-brand{display:flex;align-items:center;gap:12px}.admin-editor-brand>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e}.admin-editor-title{font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:800}.admin-editor-subtitle{color:var(--dim);font-size:12.5px}.admin-editor-close{display:flex;align-items:center;justify-content:center;gap:3px;padding:9px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600}.admin-editor-close:hover{border-color:var(--danger);color:var(--danger)}.admin-editor-body{flex:1;width:100%;margin:0 auto;padding:30px 26px}.admin-editor-body--config{max-width:820px}.admin-editor-body--assignment{max-width:1180px;padding-top:18px;padding-bottom:18px}.admin-editor-card{padding:28px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.admin-editor-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}.admin-editor-field label,.admin-editor-status-wrap>label{display:block;margin-bottom:7px;color:var(--dim);font-size:12.5px;font-weight:600}.admin-editor-section-title{grid-column:1 / -1;padding-bottom:8px;border-bottom:1px solid var(--border);color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}.admin-editor-section-title:not(:first-child){margin-top:10px}.admin-editor-field--full{grid-column:1 / -1}.admin-editor-form.admin-editor-form--grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 20px}.admin-editor-form--grid>.is-sixth{grid-column:span 1}.admin-editor-form--grid>.is-third{grid-column:span 2}.admin-editor-form--grid>.is-half{grid-column:span 3}.admin-editor-form--grid>.is-two-thirds{grid-column:span 4}@media(max-width:720px){.admin-editor-form.admin-editor-form--grid>*{grid-column:1 / -1}}.admin-editor-field input,.admin-editor-field textarea,.admin-editor-field select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:11px;outline:none;background:var(--input);color:var(--text);font:inherit;font-size:14px}.admin-editor-field select{padding-right:46px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.admin-editor-field input:focus,.admin-editor-field textarea:focus,.admin-editor-field select:focus{border-color:var(--accent)}.admin-editor-field input:disabled,.admin-editor-field select:disabled{cursor:not-allowed;opacity:.55}.admin-editor-field textarea{min-height:90px;resize:vertical;line-height:1.55}.admin-editor-body--assignment .admin-editor-field textarea{min-height:110px}.admin-editor-select{position:relative}.admin-editor-select .clx-icon{position:absolute;top:50%;right:13px;transform:translateY(-50%);pointer-events:none}.admin-editor-upload{display:inline-flex;align-items:center;gap:3px;margin-top:10px;padding:9px 15px;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:10px;background:var(--input);color:var(--accent);cursor:pointer;font:inherit;font-size:13px;font-weight:600}.admin-editor-upload:hover{border-color:var(--accent)}.admin-editor-card--compact{padding:20px 24px}.admin-editor-form--compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px}.admin-editor-form--compact .is-span-2{grid-column:span 2}.admin-editor-form--compact .is-span-3{grid-column:span 3}.admin-editor-form--compact .admin-editor-field label,.admin-editor-form--compact .admin-editor-status-wrap--field>label{margin-bottom:5px}.admin-editor-form--compact .admin-editor-field input,.admin-editor-form--compact .admin-editor-field select{padding:9px 12px}.admin-editor-form--compact .admin-editor-field select{padding-right:40px}.admin-editor-body--assignment .admin-editor-form--compact .admin-editor-field textarea{min-height:64px;padding:9px 12px}.admin-editor-form--compact .admin-editor-section-title{padding-bottom:6px}.admin-editor-form--compact .admin-editor-section-title:not(:first-child){margin-top:4px}.admin-editor-form--compact .admin-editor-status-wrap--field .admin-editor-status{height:40px}.admin-editor-label-note{color:var(--dim);font-weight:500;opacity:.8}.admin-task-editor{display:grid;gap:12px}.admin-task-card{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.admin-task-card__head{display:flex;align-items:center;gap:6px}.admin-task-card__label{margin-right:auto;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.admin-task-steps{display:grid;gap:8px}.admin-task-steps__label{color:var(--dim);font-size:12.5px;font-weight:600}.admin-task-step{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto auto;align-items:center;gap:6px}.admin-task-step__index{color:var(--dim);font-family:JetBrains Mono,monospace;text-align:center}.admin-task-step__field input{width:100%}.admin-task-add{justify-self:start;padding:8px 14px;font-size:13px}.admin-content-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}.admin-content-grid .is-span-2{grid-column:span 2}.admin-content-choice{display:grid;grid-template-columns:auto minmax(0,1.3fr) minmax(0,1fr) auto;align-items:start;gap:8px}.admin-content-secret{display:flex;gap:6px;align-items:center}.admin-content-secret input{flex:1;min-width:0}.admin-content-toggle{display:inline-flex;align-items:center;gap:8px;color:var(--dim);font-size:13px}@media(max-width:1000px){.admin-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.admin-content-grid,.admin-content-choice{grid-template-columns:minmax(0,1fr)}.admin-content-grid .is-span-2{grid-column:1 / -1}}.admin-chip-picker{display:flex;flex-wrap:wrap;gap:8px}.admin-chip-toggle{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border:1px solid var(--border);border-radius:999px;background:var(--input);color:var(--dim);cursor:pointer;font:inherit;font-size:13px;font-weight:600}.admin-chip-toggle:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));color:var(--text)}.admin-chip-toggle.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.admin-chip-toggle:focus-visible,.admin-file-drop__remove:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-file-drop{display:flex;align-items:center;gap:10px;min-height:40px;padding:4px 6px 4px 12px;border:1px dashed color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:11px;background:var(--input)}.admin-file-drop.is-error{border-color:var(--danger)}.admin-file-drop__name{flex:1;min-width:0;overflow:hidden;color:var(--dim);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.admin-editor-upload--inline{margin-top:0;padding:6px 12px;white-space:nowrap}.admin-file-drop__remove{padding:6px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--danger);cursor:pointer;font:inherit;font-size:12.5px;font-weight:600}.admin-editor-card--compact{margin-bottom:60px;padding-bottom:20px}.admin-editor-body--assignment:has(.admin-editor-card--compact){padding-bottom:0}.admin-editor-actionbar{position:fixed;right:0;bottom:0;left:0;z-index:20;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-editor-actionbar__inner{display:flex;justify-content:flex-end;gap:12px;max-width:1180px;margin:0 auto;padding:12px 26px}.admin-editor-card--compact .admin-chip-toggle{padding:6px 11px;font-size:12.5px}.admin-editor-field .admin-file-drop label.admin-editor-upload--inline{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--accent);font-size:13px}@media(max-width:1000px){.admin-editor-form--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-editor-form--compact .is-span-3{grid-column:1 / -1}}@media(max-width:640px){.admin-editor-form--compact{grid-template-columns:minmax(0,1fr)}.admin-editor-form--compact .is-span-2,.admin-editor-form--compact .is-span-3{grid-column:1 / -1}}.admin-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:22px;border-top:1px solid var(--border)}.admin-editor-footer--center{justify-content:center}.admin-editor-footer__actions{display:flex;gap:12px}.admin-editor-status-wrap{display:flex;align-items:center;gap:8px}.admin-editor-status-wrap>label{margin-bottom:0}.admin-editor-status-wrap--field{display:block}.admin-editor-status-wrap--field>label{margin-bottom:7px}.admin-editor-status{display:flex;gap:8px;padding:4px;border:1px solid var(--border);border-radius:11px;background:var(--input)}.admin-editor-status button{padding:9px 16px;border:none;border-radius:8px;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:13px;font-weight:600}.admin-editor-status button.is-active{background:var(--surface);color:var(--green)}.admin-editor-status button.is-danger{color:var(--danger)}.admin-editor-status-wrap--field .admin-editor-status{display:grid;grid-template-columns:1fr 1fr;gap:0;height:48px;padding:4px;border-radius:11px}.admin-editor-status-wrap--field .admin-editor-status button{min-width:0;padding:0 18px;border-radius:8px;font-size:14px}.admin-editor-status-wrap--field .admin-editor-status button.is-active{background:var(--surface);color:var(--green)}.admin-editor-cancel,.admin-editor-save{display:inline-flex;align-items:center;justify-content:center;gap:3px;border-radius:11px;cursor:pointer;font:inherit;font-size:14px;font-weight:600}.admin-editor-cancel{padding:12px 26px;border:1px solid var(--border);background:var(--surface);color:var(--dim)}.admin-editor-cancel:hover{color:var(--text)}.admin-editor-save{padding:12px 30px;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:700;box-shadow:0 8px 22px -12px var(--accent)}.admin-editor-save:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#04081299;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.admin-modal{width:100%;max-width:620px;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.admin-modal__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);font-family:Space Grotesk,sans-serif;font-weight:800}.admin-confirm-modal{--confirm-tone: var(--accent);--confirm-btn-bg: linear-gradient(135deg, var(--accent), var(--blue));--confirm-btn-color: #04121e;width:100%;max-width:440px;padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.admin-confirm-modal[data-tone=danger]{--confirm-tone: var(--danger);--confirm-btn-bg: var(--danger);--confirm-btn-color: #fff}.admin-confirm-modal[data-tone=success]{--confirm-tone: var(--green);--confirm-btn-bg: var(--green);--confirm-btn-color: #04121e}.admin-confirm-modal[data-tone=warning]{--confirm-tone: var(--warn);--confirm-btn-bg: var(--warn);--confirm-btn-color: #04121e}.admin-confirm-modal__head{display:flex;align-items:center;gap:12px;margin-bottom:12px;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:800}.admin-confirm-modal__icon{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--confirm-tone) 15%,transparent);color:var(--confirm-tone)}.admin-confirm-modal__icon .clx-icon{width:33px!important;height:33px!important}.admin-confirm-modal p{margin:0 0 14px;color:var(--dim);font-size:14px;line-height:1.55}.admin-confirm-modal__list{max-height:160px;overflow:auto;display:flex;flex-direction:column;gap:6px;margin-bottom:16px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--input)}.admin-confirm-modal__list div{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px}.admin-confirm-modal__list code{flex:none;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:11.5px}.admin-confirm-modal__list span{min-width:0;overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.admin-confirm-modal__reason{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.admin-confirm-modal__reason-label{color:var(--dim);font-size:12.5px;font-weight:600}.admin-confirm-modal__reason-label b{color:var(--danger);font-weight:600}.admin-confirm-modal__presets{gap:6px;margin-bottom:2px}.admin-confirm-modal__presets .admin-chip-toggle{padding:4px 10px;font-size:12px}.admin-confirm-modal__count{align-self:flex-end;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:11.5px}.admin-confirm-modal__count.is-short{color:var(--warn)}.admin-confirm-modal__reason textarea{width:100%;min-height:78px;padding:10px 12px;outline:none;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);font:inherit;font-size:13.5px;line-height:1.5;resize:vertical}.admin-confirm-modal__reason textarea:focus{border-color:var(--confirm-tone)}.admin-reject-reason{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.admin-reject-reason__tag{max-width:100%;padding:2px 8px;overflow:hidden;border-radius:6px;background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);font-size:11.5px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.admin-reject-reason__text{display:-webkit-box;max-width:100%;overflow:hidden;color:var(--text);font-size:13px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.admin-confirm-modal__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.admin-confirm-modal__actions .admin-btn{padding:11px 22px;border-radius:11px;font-size:14px;font-weight:600}.admin-confirm-modal__actions .admin-btn:not(.admin-btn--surface2){padding:11px 24px;font-weight:700}.admin-confirm-modal__actions .admin-btn:not(.admin-btn--surface2){border:0;background:var(--confirm-btn-bg);color:var(--confirm-btn-color)}.admin-confirm-modal__actions .admin-btn:not(.admin-btn--surface2):hover{filter:brightness(1.08)}.admin-btn:disabled{cursor:not-allowed;opacity:.45}.admin-btn:disabled:hover{filter:none}.admin-table-row span.admin-comment-table-cell{white-space:normal}.admin-assignment-link{display:inline;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.admin-assignment-link:hover{color:var(--accent);text-shadow:0 0 12px color-mix(in srgb,var(--accent) 35%,transparent)}.admin-assignment-title-cell .admin-assignment-link{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-assign-table .admin-table-head>:last-child,.admin-assign-table .admin-table-row>:last-child{position:sticky;right:0;z-index:1;align-self:stretch;display:flex;align-items:center;justify-content:center;background:var(--surface)}.admin-assign-table .admin-skill-chips .admin-pill{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.admin-assignment-detail-page{padding-top:24px}.admin-assignment-back{display:inline-flex;align-items:center;gap:10px;min-width:174px;height:42px;margin-bottom:20px;padding:0 18px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:13px;font-weight:700}.admin-assignment-back:hover{border-color:var(--accent);color:var(--accent)}.admin-assignment-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:20px;align-items:start;margin-bottom:22px}.admin-assignment-main{display:flex;flex-direction:column;gap:20px;min-width:0}.admin-assignment-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:14px}.admin-assignment-card,.admin-assignment-side-card,.admin-assignment-submissions{border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.admin-assignment-card,.admin-assignment-card--intro{padding:22px}.admin-assignment-heading>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.admin-assignment-code{display:inline-flex;align-items:center;min-height:27px;padding:0 12px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:7px;color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent);font-family:JetBrains Mono,monospace;font-size:13px}.admin-assignment-heading h1{margin:0 0 9px;font-family:Space Grotesk,sans-serif;font-size:25px;font-weight:800;line-height:1.15}.admin-assignment-heading p,.admin-assignment-desc,.admin-assignment-step p,.admin-assignment-result p,.admin-assignment-section-title--stack p,.admin-assignment-table-title p,.admin-assignment-comment p{color:var(--dim)}.admin-assignment-heading p{margin:0;font-size:13px}.admin-assignment-separator{height:1px;margin:20px 0;background:var(--border)}.admin-assignment-card h2,.admin-assignment-side-card h2,.admin-assignment-table-title h2{margin:0;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:800}.admin-assignment-card--intro h2{margin-bottom:11px}.admin-assignment-desc{margin:0;font-size:13.5px;line-height:1.7}.admin-assignment-section-title{display:flex;align-items:center;gap:10px;margin-bottom:20px}.admin-assignment-card>.admin-assignment-section-title:not(.admin-assignment-section-title--stack){padding-left:10px}.admin-assignment-section-title .clx-icon{filter:drop-shadow(0 0 10px color-mix(in srgb,var(--accent) 35%,transparent))}.admin-assignment-section-title--stack{display:block}.admin-assignment-section-title--stack>div{display:flex;align-items:center;gap:10px}.admin-assignment-section-title--stack p,.admin-assignment-table-title p{margin:7px 0 0;font-size:12.5px}.admin-assignment-steps{display:flex;flex-direction:column;gap:19px;margin-left:2px}.admin-assignment-step{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:17px}.admin-assignment-step:not(:last-child):after{content:"";position:absolute;left:20px;top:45px;bottom:-18px;width:2px;background:color-mix(in srgb,var(--accent) 28%,transparent)}.admin-assignment-step>span{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:30px;height:30px;margin-left:5px;border:1px solid var(--accent);border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent);font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:800}.admin-assignment-step h3{margin:0 0 4px;font-size:15px;font-weight:800}.admin-assignment-step p{margin:0;font-size:13.5px;line-height:1.55}.admin-assignment-result{margin-top:22px;padding:17px;border:1px solid color-mix(in srgb,var(--green) 55%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--green) 13%,transparent)}.admin-assignment-result>div{display:flex;align-items:center;gap:10px;margin-bottom:9px;color:var(--green)}.admin-assignment-result h3{margin:0;font-size:15px}.admin-assignment-result p{margin:0;font-size:13.5px;line-height:1.6}.admin-assignment-result b{color:var(--text)}.admin-assignment-comments{display:flex;flex-direction:column;gap:14px}.admin-assignment-comment{display:grid;grid-template-columns:46px minmax(0,1fr) 40px;gap:13px;align-items:center}.admin-assignment-comment>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e;font-weight:900}.admin-assignment-comment strong{display:flex;align-items:baseline;gap:10px;margin-bottom:5px;font-size:14px}.admin-assignment-comment code{color:var(--dim);font-family:JetBrains Mono,monospace;font-size:12px}.admin-assignment-comment p{margin:0;font-size:13.5px;line-height:1.55}.admin-assignment-submissions{overflow:hidden}.admin-assignment-table-title{padding:19px 22px 18px;border-bottom:1px solid var(--border)}.admin-assignment-submissions .admin-table-card{border:0;border-radius:0;background:transparent;box-shadow:none}.admin-assignment-side-card{padding:22px}.admin-assignment-side-card h2{margin-bottom:20px}.admin-assignment-info-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:13px;align-items:center;margin-top:15px;font-size:13.5px}.admin-assignment-info-row span{color:var(--dim)}.admin-assignment-info-row strong{justify-self:end;color:var(--text);text-align:right}.admin-assignment-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.admin-assignment-result-list{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}.admin-assignment-result-list li{display:flex;justify-content:space-between;gap:12px;color:var(--text);font-size:13.5px}.admin-assignment-result-list li span:last-child{color:var(--dim);white-space:nowrap}.admin-assignment-resource{display:grid;gap:6px;margin-top:14px;font-size:13px}.admin-assignment-resource strong{color:var(--text);font-weight:700;overflow-wrap:anywhere}.admin-assignment-resource-meter{display:grid;grid-template-columns:36px minmax(0,1fr) 40px;gap:8px;align-items:center;color:var(--dim)}.admin-assignment-resource-meter span:last-child{text-align:right}.admin-assignment-resource-empty{margin:12px 0 0;color:var(--dim);font-size:13px}.admin-assignment-resource-link{width:100%;margin-top:16px}.admin-version-tabs{margin:16px 22px}.admin-version-compare{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:14px 22px 20px;color:var(--dim);font-size:13px}.admin-submission-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;padding:16px 22px}.admin-submission-toolbar .admin-tab-row{margin-bottom:0}.admin-submission-class{display:inline-flex;align-items:center;gap:10px;color:var(--dim);font-size:13px}.admin-submission-top{margin:0 22px 16px;overflow:hidden;border:1px solid var(--border);border-radius:14px}.admin-submission-top h3{display:flex;align-items:center;gap:8px;margin:0;padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text);font-size:14px}.admin-review-modal{max-width:960px}.admin-review-modal__body{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;max-height:76vh;overflow-y:auto;padding:18px 20px 22px}.admin-review-section h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--text);font-size:14px}.admin-review-section .admin-table-card{overflow-x:auto;box-shadow:none}.admin-review-section .admin-table-row span{overflow:visible;white-space:normal;overflow-wrap:anywhere}.admin-review-hint--block{margin-top:12px}.admin-review-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.admin-review-meta>div{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.admin-review-meta span,.admin-review-grade label span{color:var(--dim);font-size:12px}.admin-review-meta b{color:var(--text);font-size:13.5px}.admin-review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.admin-review-grade{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:12px}.admin-review-grade label{display:grid;gap:6px}.admin-review-grade input{width:140px;padding:10px 12px}.admin-review-error,.admin-review-hint{flex-basis:100%;margin:0;font-size:12.5px}.admin-review-error{color:var(--danger)}.admin-review-hint{color:var(--dim)}.admin-review-item{display:grid;gap:2px;color:var(--text)}.admin-review-item em{color:var(--dim);font-size:11.5px;font-style:normal}.admin-review-thread{display:grid;gap:10px}.admin-review-feedback{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.admin-review-feedback.is-internal{border-color:color-mix(in srgb,var(--warn) 45%,var(--border))}.admin-review-feedback__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px}.admin-review-feedback__head b{color:var(--text)}.admin-review-feedback__head span{color:var(--dim)}.admin-review-feedback p{margin:6px 0 0;color:var(--text);font-size:13.5px;line-height:1.55;white-space:pre-wrap}.admin-review-replies{display:grid;gap:8px;margin:10px 0 0 18px}.admin-review-link{margin-left:auto;padding:0;border:0;background:none;color:var(--accent);cursor:pointer;font:inherit;font-size:12.5px}.admin-review-composer{display:grid;gap:8px;margin-top:12px}.admin-review-composer textarea{min-height:78px;padding:10px 12px;line-height:1.5;resize:vertical}.admin-review-composer__reply,.admin-review-composer__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;color:var(--dim);font-size:12.5px}.admin-review-internal{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-size:13px;cursor:pointer}.admin-review-internal input{accent-color:var(--accent)}.admin-assignment-test-run{margin-left:auto}.admin-test-run{max-width:720px}.admin-test-run__body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;max-height:76vh;overflow-y:auto;padding:18px 20px 22px}.admin-test-run__field{display:grid;gap:6px}.admin-test-run__field span,.admin-test-run__field em{color:var(--dim);font-size:12px;font-style:normal}.admin-test-run__field input{padding:10px 12px}.admin-test-run__field textarea{min-height:120px;padding:10px 12px;line-height:1.5;resize:vertical}.admin-test-run .admin-table-head,.admin-test-run .admin-table-row{min-width:0}.admin-test-run__questions{display:grid;gap:12px}.admin-test-run__questions fieldset{display:grid;gap:8px;margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:12px}.admin-test-run__questions legend{padding:0 6px;color:var(--text);font-size:13.5px;font-weight:700}.admin-class-assign__title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-class-assign{max-width:640px}.admin-class-assign__window{display:grid;gap:2px;color:var(--dim);font-size:12.5px}.admin-class-assign__window .is-deadline{color:var(--text)}.admin-class-assign__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;max-height:76vh;overflow-y:auto;padding:18px 20px 22px}.admin-class-assign__field{display:grid;align-content:start;gap:6px}.admin-class-assign__field>span,.admin-class-assign__field>em{color:var(--dim);font-size:12px;font-style:normal}.admin-class-assign__field input{padding:10px 12px}.admin-class-assign__field--wide{grid-column:1 / -1}.admin-class-assign input[type=datetime-local]{color-scheme:dark}@media(max-width:640px){.admin-class-assign__title{flex-direction:column}.admin-class-assign__body{grid-template-columns:minmax(0,1fr)}}.admin-version-diff{max-width:880px}.admin-version-diff__close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:9px;background:transparent;color:var(--dim);cursor:pointer}.admin-version-diff__close:hover{border-color:var(--danger);color:var(--danger)}.admin-version-diff__body{max-height:70vh;overflow-y:auto;padding:16px 20px 20px}.admin-version-diff__table{display:grid;gap:6px}.admin-version-diff__row{--diff-tone: var(--warn);display:grid;grid-template-columns:190px minmax(0,1fr) minmax(0,1fr);gap:12px;padding:10px 12px;border-left:3px solid var(--diff-tone);border-radius:9px;background:color-mix(in srgb,var(--diff-tone) 8%,transparent);font-size:13px}.admin-version-diff__row--added{--diff-tone: var(--green)}.admin-version-diff__row--removed{--diff-tone: var(--danger)}.admin-version-diff__row--head{--diff-tone: transparent;color:var(--dim);font-size:12px;font-weight:700;text-transform:uppercase}.admin-version-diff__row span{min-width:0;overflow-wrap:anywhere;color:var(--text)}.admin-version-diff__row span:first-child{display:grid;gap:2px}.admin-version-diff__row em{color:var(--diff-tone);font-size:11.5px;font-style:normal;font-weight:700}.admin-assignment-legend{display:flex;flex-direction:column;gap:13px}.admin-assignment-legend div{display:flex;align-items:center;gap:12px;color:var(--dim);font-size:13.5px}.admin-assignment-full-card{margin-top:22px}.admin-assignment-difficulty{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:26px;padding:0 11px;border-radius:999px;font-size:12.5px;font-weight:800}.admin-assignment-difficulty--success{background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}.admin-assignment-difficulty--warning{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.admin-assignment-difficulty--danger{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.admin-assignment-status{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:22px;padding:0 10px;border-radius:999px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:900}.admin-assignment-status--success{background:color-mix(in srgb,var(--green) 22%,transparent);color:var(--green)}.admin-assignment-status--danger{background:color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger)}.admin-assignment-status--warning{background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}.admin-assignment-status--orange{background:color-mix(in srgb,var(--orange) 22%,transparent);color:var(--orange)}.admin-assignment-status--purple{background:color-mix(in srgb,var(--purple) 22%,transparent);color:var(--purple)}.admin-comment-cell{display:-webkit-box;overflow:hidden;color:var(--text);line-height:1.45;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical}.admin-comment-modal__close{font-size:0}.admin-toast{position:fixed;right:22px;bottom:22px;z-index:120;max-width:360px;padding:13px 16px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 20px 50px -20px #0000008c;font-size:13.5px;font-weight:700}.exam-history-page .admin-detail-tab__body{padding-bottom:42px}.exam-history-student-card{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;padding:22px 24px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 11%,var(--surface)),var(--surface))}.exam-history-eyebrow{display:block;margin-bottom:7px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.exam-monitor-live-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--green) 32%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--green) 8%,var(--surface))}.exam-monitor-live-bar>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.exam-monitor-live-bar strong{color:var(--green);font-size:12px;letter-spacing:.08em}.exam-monitor-live-bar small{color:var(--dim);font-size:12px}.exam-monitor-live-indicator{width:9px;height:9px;border-radius:50%;background:var(--dim)}.exam-monitor-live-indicator.is-active{background:var(--green);box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 15%,transparent);animation:exam-monitor-pulse 1.6s infinite}@keyframes exam-monitor-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.exam-monitor-live-indicator.is-active{animation:none}.admin-meter>span,.admin-stat.is-clickable{transition:none}}.exam-monitor-summary-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:14px}.exam-monitor-summary-card{flex:1 1 0;min-width:180px;padding:15px 17px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.exam-monitor-summary-card b,.exam-monitor-summary-card span{display:block}.exam-monitor-summary-card b{font-family:JetBrains Mono,monospace;font-size:22px}.exam-monitor-summary-card span{margin-top:4px;color:var(--dim);font-size:12px}.exam-history-student-card h1{margin:0 0 7px;font-family:Space Grotesk,sans-serif;font-size:clamp(21px,2vw,30px)}.exam-history-student-card p{margin:0;color:var(--dim);font-size:13px}.exam-history-summary{display:flex;gap:12px}.exam-history-summary span{min-width:132px;padding:12px 15px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--surface2) 78%,transparent)}.exam-history-summary b,.exam-history-summary small{display:block}.exam-history-summary b{color:var(--accent);font-family:JetBrains Mono,monospace;font-size:20px}.exam-history-summary small{margin-top:3px;color:var(--dim);font-size:11px}.exam-history-tabs{margin-bottom:14px}.exam-history-log-modal{position:relative;inset:auto;width:min(720px,92vw);min-width:0;height:auto;min-height:0;display:block;padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.exam-history-log-modal .admin-detail-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-right:44px}.exam-history-log-modal h2{margin:0;font-family:Space Grotesk,sans-serif;font-size:21px}.exam-history-log-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.exam-history-log-meta div{display:flex;flex-direction:column;gap:5px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.exam-history-log-meta span{color:var(--dim);font-size:11px}.exam-history-log-meta b{font-family:JetBrains Mono,monospace;font-size:12px}.exam-history-evidence{margin-top:16px;color:var(--dim);font-size:12px}.exam-history-evidence>div{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin-top:8px;border:1px dashed var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface2) 65%,transparent);color:var(--dim)}.exam-history-evidence p{margin:0}@media(max-width:860px){.admin-brand__name,.admin-role-badge{display:none}.admin-main-inner{padding:22px}.admin-hero__body,.admin-banner__body{max-width:100%}.admin-banner{height:auto;min-height:118px}.admin-banner__body{min-height:118px;padding:18px 22px}.admin-hero img,.admin-banner img{opacity:.25}.exam-history-student-card{align-items:stretch;flex-direction:column}.exam-history-summary{width:100%}.exam-history-summary span{flex:1}.exam-monitor-live-bar{align-items:flex-start;flex-direction:column}.exam-history-log-meta,.admin-form,.admin-hero__stats{grid-template-columns:1fr}}.comment-reply-submit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:none;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e;font-size:12.5px;font-weight:700;cursor:pointer;transition:opacity .15s}.admin-comment-content-truncate{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.admin-comment-content-truncate.is-expanded{display:block;-webkit-line-clamp:unset}.admin-comment-expand-btn{display:inline-block;margin-left:6px;border:none;background:none;color:var(--accent);font-size:12px;font-weight:700;cursor:pointer;padding:0}.admin-comment-expand-btn:hover{text-decoration:underline}.exam-log-row-actions{display:inline-flex;align-items:center;justify-content:center;gap:6px}.exam-log-client{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.exam-log-judge-feedback{margin-top:16px;color:var(--dim);font-size:12px}.exam-log-judge-feedback p{margin:8px 0 0;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.6}.exam-log-clipboard{margin-top:16px;color:var(--dim);font-size:12px}.exam-log-clipboard pre{max-height:180px;margin:8px 0 0;padding:12px 14px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface2);color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.exam-log-clipboard small{display:block;margin-top:6px;color:var(--warn);font-size:11px}[data-theme=light]{--bg: #e9eef5;--surface: #ffffff;--surface2: #f1f5f9;--input: #ffffff;--border: #c3cedc;--text: #0f172a;--dim: #475569;--accent: #0a4c9c;--accent2: #334155;--on-accent: #ffffff;--on-green: #ffffff;--purple: #8643a8;--green: #1d6e31;--blue: #0040dd;--pink: #ba0d3d;--warn: #905100;--orange: #b32e00;--danger: #bb0012;--shadow: 0 1px 2px rgba(15, 23, 42, .07), 0 12px 28px -14px rgba(15, 23, 42, .24);--sidebar-bg: #c9d5e6;--sidebar-border: #aebdd2;--sidebar-text: #0f2744;--sidebar-hover: rgba(11, 99, 206, .1);--selected-bg: #027abb;--selected-text: #ffffff;--banner-from: #0f172a;--banner-mid: #0b3b5e;--banner-to: #0284c7;--banner-title: rgba(255, 255, 255, .9);--banner-text: #ffffff}[data-theme=light] .student-sidebar{border-right-color:var(--sidebar-border);background:var(--sidebar-bg)}[data-theme=light] .student-sidebar__profile:hover{background:var(--sidebar-hover)}[data-theme=light] .student-nav__item{color:var(--sidebar-text)}[data-theme=light] .student-nav__item.is-active{background:var(--selected-bg);color:var(--selected-text)}[data-theme=light] .student-pagination__page.is-active{border-color:var(--selected-bg);background:var(--selected-bg);color:var(--selected-text)}[data-theme=light] .student-banner{--text: var(--banner-text);--dim: var(--banner-title);--accent: var(--banner-text);--blue: var(--banner-title);--warn: var(--banner-text);border-color:transparent;background:linear-gradient(100deg,var(--banner-from) 0%,var(--banner-mid) 46%,var(--banner-to) 100%);box-shadow:0 14px 34px -18px var(--banner-to);color:var(--text)}[data-theme=light] .student-topbar__brand-mark,[data-theme=light] .student-nav__bar{box-shadow:none}[data-theme=light] .asset-icon{filter:none}[data-theme=light] :is(.student-on-fill,.student-topbar__brand-mark,.student-nav__item.is-active,.student-fab,.student-chat__send,.student-chat__message--bot .student-chat__avatar,.student-qa__send,.student-banner) .asset-icon{filter:brightness(0) invert(1)}[data-theme=light] .comment-node__avatar{color:var(--on-accent)}@keyframes studentEventFall{0%{transform:translateZ(0)}to{transform:translate3d(0,360px,0)}}@keyframes studentEventGlow{0%,to{opacity:.8}50%{opacity:1}}[data-clx-event] .student-app-root[data-theme]{isolation:isolate;background:var(--event-page-bg, radial-gradient(1100px 520px at 88% -12%, color-mix(in srgb, var(--accent) 13%, transparent), transparent), radial-gradient(900px 520px at -8% 108%, color-mix(in srgb, var(--purple) 12%, transparent), transparent)),var(--bg)}[data-clx-event] .student-app-root[data-theme]:before,[data-clx-event] .student-app-root[data-theme]:after{content:"";position:fixed;top:-360px;right:0;bottom:0;left:0;z-index:-1;background-repeat:repeat;pointer-events:none}[data-clx-event] .student-app-root[data-theme]:before{background-image:var(--event-page-fall-a, none);background-size:300px 360px;animation:studentEventFall 34s linear infinite var(--event-fall-direction, normal)}[data-clx-event] .student-app-root[data-theme]:after{background-image:var(--event-page-fall-b, none);background-size:220px 360px;animation:studentEventFall 52s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-theme] .student-sidebar{border-right-color:var(--sidebar-border, var(--border));background:var(--sidebar-bg, var(--surface))}[data-clx-event] [data-theme] .student-sidebar:before{content:"";position:absolute;top:-360px;right:0;bottom:0;left:0;z-index:-1;background-image:var(--event-sidebar-fall, none);background-repeat:repeat;background-size:220px 360px;pointer-events:none;animation:studentEventFall 40s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-theme] .student-sidebar:after{content:"";position:absolute;right:0;bottom:72px;left:0;z-index:-1;height:240px;background-image:var(--event-sidebar-motif, none);background-position:center bottom;background-repeat:no-repeat;background-size:100% auto;pointer-events:none}[data-clx-event] [data-theme] .student-topbar{background:var(--event-topbar-bg, color-mix(in srgb, var(--surface) 84%, transparent))}[data-clx-event] [data-theme] .student-topbar:before{content:"";position:absolute;right:0;bottom:var(--event-topbar-deco-offset, 0px);left:0;height:var(--event-topbar-deco-height, 0px);background-image:var(--event-topbar-deco, none);background-repeat:repeat-x;background-size:var(--event-topbar-deco-size, auto);pointer-events:none}[data-clx-event] [data-theme] .student-topbar__brand-mark,[data-clx-event] [data-theme] .student-avatar:is(.student-avatar--halo,.student-avatar--halo-lg){--avatar-tone: var(--event-mark-from, var(--accent));background:linear-gradient(135deg,var(--event-mark-from, var(--accent)),var(--event-mark-to, var(--blue)));color:var(--event-mark-text, var(--on-accent))}[data-clx-event] [data-theme] .student-topbar__brand-mark{position:relative}[data-clx-event] [data-theme] .student-topbar__brand-mark:after{content:"";position:absolute;top:var(--event-badge-y, 0px);left:var(--event-badge-x, 0px);width:var(--event-badge-width, 0px);height:var(--event-badge-height, 0px);background:var(--event-badge, none) center / contain no-repeat;pointer-events:none;animation:studentEventGlow 2.6s ease-in-out infinite}[data-clx-event] [data-theme] .student-topbar__brand-name{background-image:linear-gradient(90deg,var(--event-name-from, var(--accent)),var(--event-name-to, var(--blue)))}[data-clx-event] [data-theme=dark] .student-topbar__brand-mark{box-shadow:0 0 14px -2px var(--event-mark-to, var(--accent))}[data-clx-event] [data-theme] .student-banner{--text: var(--banner-text, var(--on-fill));--dim: var(--banner-title, color-mix(in srgb, var(--on-fill) 90%, transparent));--accent: var(--event-banner-title, var(--on-fill));--blue: var(--event-tone, var(--on-fill));--warn: var(--event-banner-title, var(--on-fill));border-color:transparent;background:linear-gradient(100deg,var(--banner-from, var(--surface2)) 0%,var(--banner-mid, var(--surface)) 46%,var(--banner-to, var(--surface)) 100%);box-shadow:0 14px 34px -18px var(--banner-to, transparent);color:var(--text)}[data-clx-event] [data-theme] .student-banner__title{color:var(--event-banner-title, var(--text))}[data-clx-event] [data-theme] .student-banner>.hero-asset{filter:var(--event-image-filter, none)}[data-clx-event] [data-theme] .student-banner:before{content:"";position:absolute;top:-360px;right:0;bottom:0;left:0;background-image:var(--event-banner-fall-a, none),var(--event-banner-fall-b, none);background-repeat:repeat;background-size:300px 360px,220px 360px;pointer-events:none;animation:studentEventFall 22s linear infinite var(--event-fall-direction, normal)}[data-clx-event] [data-theme] .student-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;width:512px;max-width:60%;background-image:var(--event-banner-motif, none);background-position:right center;background-repeat:no-repeat;background-size:auto 100%;pointer-events:none;animation:studentEventGlow 3.4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){[data-clx-event] .student-app-root[data-theme]:before,[data-clx-event] .student-app-root[data-theme]:after,[data-clx-event] [data-theme] .student-sidebar:before,[data-clx-event] [data-theme] .student-topbar__brand-mark:after,[data-clx-event] [data-theme] .student-banner:before,[data-clx-event] [data-theme] .student-banner:after{animation:none}}[data-clx-event=tet-mai] [data-theme]{--event-fall-direction: normal;--event-image-filter: hue-rotate(160deg) saturate(1.5);--event-mark-text: #ffffff;--event-badge: url(/assets/artwork/events/tet-mai/logo-badge.svg);--event-badge-width: 18px;--event-badge-height: 18px;--event-badge-x: -9px;--event-badge-y: -9px;--event-banner-fall-a: url(/assets/artwork/events/tet-mai/banner-fall-a.svg);--event-banner-fall-b: url(/assets/artwork/events/tet-mai/banner-fall-b.svg);--event-banner-motif: url(/assets/artwork/events/tet-mai/banner-motif.svg);--event-topbar-deco: linear-gradient(90deg, #b91c1c, #f5b301 50%, #b91c1c);--event-topbar-deco-height: 3px;--event-topbar-deco-offset: 0px;--event-topbar-deco-size: 100% 100%}[data-clx-event=tet-mai] [data-theme=light]{--bg: #f7eee4;--surface2: #fbf4ec;--border: #e3cfbd;--shadow: 0 1px 2px rgba(120, 45, 15, .07), 0 12px 28px -14px rgba(120, 45, 15, .26);--text: #23140c;--dim: #6a4a38;--accent: #b3261e;--accent2: #b45309;--sidebar-bg: #f0d3bf;--sidebar-border: #dcb093;--sidebar-text: #4f120c;--sidebar-hover: rgba(179, 38, 30, .1);--selected-bg: #b91c1c;--banner-from: #4a0808;--banner-mid: #8f1414;--banner-to: #c2410c;--event-tone: #f5b301;--event-banner-title: #fde68a;--event-mark-from: #c81e1e;--event-mark-to: #e08a00;--event-name-from: #b91c1c;--event-name-to: #c2410c;--event-topbar-bg: rgba(255, 248, 240, .9);--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(245, 179, 1, .18), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(185, 28, 28, .08), transparent 70%);--event-page-fall-a: url(/assets/artwork/events/tet-mai/page-fall-a-light.svg);--event-page-fall-b: url(/assets/artwork/events/tet-mai/page-fall-b-light.svg);--event-sidebar-fall: url(/assets/artwork/events/tet-mai/sidebar-fall-light.svg);--event-sidebar-motif: url(/assets/artwork/events/tet-mai/sidebar-motif-light.svg)}[data-clx-event=tet-mai] [data-theme=dark]{--bg: #1a1718;--surface: #262123;--surface2: #302a2c;--input: #1f1b1d;--border: #463d40;--text: #fdf6f2;--dim: #d6c4bd;--accent: #fca5a5;--accent2: #fcd34d;--on-accent: #2a0a0a;--sidebar-bg: #211c1e;--sidebar-border: #3b3336;--banner-from: #5c0d10;--banner-mid: #9b1c1c;--banner-to: #c2410c;--banner-title: rgba(255, 255, 255, .9);--banner-text: #ffffff;--event-tone: #fcd34d;--event-banner-title: #fde68a;--event-mark-from: #c81e1e;--event-mark-to: #e08a00;--event-name-from: #fca5a5;--event-name-to: #fcd34d;--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(252, 165, 165, .07), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(252, 211, 77, .05), transparent 70%);--event-page-fall-a: url(/assets/artwork/events/tet-mai/page-fall-a-dark.svg);--event-page-fall-b: url(/assets/artwork/events/tet-mai/page-fall-b-dark.svg);--event-sidebar-fall: url(/assets/artwork/events/tet-mai/sidebar-fall-dark.svg);--event-sidebar-motif: url(/assets/artwork/events/tet-mai/sidebar-motif-dark.svg)}[data-clx-event=xmas-frost] [data-theme]{--event-fall-direction: normal;--event-image-filter: saturate(.55) brightness(1.15);--event-mark-text: #ffffff;--event-badge-width: 18px;--event-badge-height: 18px;--event-badge-x: -9px;--event-badge-y: -9px;--event-banner-fall-a: url(/assets/artwork/events/xmas-frost/banner-fall-a.svg);--event-banner-fall-b: url(/assets/artwork/events/xmas-frost/banner-fall-b.svg);--event-banner-motif: url(/assets/artwork/events/xmas-frost/banner-motif.svg);--event-topbar-deco-height: 18px;--event-topbar-deco-offset: -15px;--event-topbar-deco-size: 72px 18px}[data-clx-event=xmas-frost] [data-theme=light]{--bg: #eaf2f8;--surface2: #f2f7fb;--border: #cbd9e7;--shadow: 0 1px 2px rgba(15, 40, 80, .07), 0 12px 28px -14px rgba(15, 40, 80, .26);--text: #0b1a2c;--dim: #455a72;--accent: #0b5394;--accent2: #0e7490;--sidebar-bg: #d4e4f2;--sidebar-border: #aec8e0;--sidebar-text: #0a2846;--sidebar-hover: rgba(11, 83, 148, .1);--selected-bg: #0e7490;--banner-from: #081530;--banner-mid: #17336a;--banner-to: #2b5c9e;--event-tone: #bae6fd;--event-banner-title: #e0f2fe;--event-mark-from: #0c2a4d;--event-mark-to: #0e7490;--event-name-from: #0b5394;--event-name-to: #0e7490;--event-topbar-bg: rgba(248, 252, 255, .9);--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(125, 211, 252, .2), transparent 70%), radial-gradient(800px 500px at 0% 100%, rgba(11, 83, 148, .07), transparent 70%);--event-badge: url(/assets/artwork/events/xmas-frost/logo-badge-light.svg);--event-topbar-deco: url(/assets/artwork/events/xmas-frost/topbar-deco-light.svg);--event-page-fall-a: url(/assets/artwork/events/xmas-frost/page-fall-a-light.svg);--event-page-fall-b: url(/assets/artwork/events/xmas-frost/page-fall-b-light.svg);--event-sidebar-fall: url(/assets/artwork/events/xmas-frost/sidebar-fall-light.svg);--event-sidebar-motif: url(/assets/artwork/events/xmas-frost/sidebar-motif-light.svg)}[data-clx-event=xmas-frost] [data-theme=dark]{--bg: #060c18;--surface: #0d172c;--surface2: #14213b;--input: #0a1323;--border: #213456;--text: #eaf2fc;--dim: #96abc9;--accent: #a5d8ff;--accent2: #c7d2fe;--on-accent: #071226;--sidebar-bg: #08111f;--sidebar-border: #1c2c4a;--banner-from: #060f26;--banner-mid: #142a57;--banner-to: #23477f;--banner-title: rgba(255, 255, 255, .9);--banner-text: #ffffff;--event-tone: #a5d8ff;--event-banner-title: #e0f2fe;--event-mark-from: #1e3a6e;--event-mark-to: #0e7490;--event-name-from: #bae6fd;--event-name-to: #c7d2fe;--event-page-bg: radial-gradient(900px 460px at 100% 0%, rgba(165, 216, 255, .08), transparent 70%);--event-badge: url(/assets/artwork/events/xmas-frost/logo-badge-dark.svg);--event-topbar-deco: url(/assets/artwork/events/xmas-frost/topbar-deco-dark.svg);--event-page-fall-a: url(/assets/artwork/events/xmas-frost/page-fall-a-dark.svg);--event-page-fall-b: url(/assets/artwork/events/xmas-frost/page-fall-b-dark.svg);--event-sidebar-fall: url(/assets/artwork/events/xmas-frost/sidebar-fall-dark.svg);--event-sidebar-motif: url(/assets/artwork/events/xmas-frost/sidebar-motif-dark.svg)}.student-app-root{width:100%;min-width:0;min-height:100vh;overflow-x:hidden;color:var(--text);transition:color .3s;background:radial-gradient(1100px 520px at 88% -12%,color-mix(in srgb,var(--accent) 13%,transparent),transparent),radial-gradient(900px 520px at -8% 108%,color-mix(in srgb,var(--purple) 12%,transparent),transparent),var(--bg)}.student-shell{display:contents}.student-shell__dismiss{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39}.student-main{min-width:0;min-height:100vh;padding-top:64px;overflow-x:hidden;transition:margin .25s}.student-main-inner{width:100%;min-width:0;max-width:none;margin:0 auto;padding:clamp(26px,2.4vw,38px) clamp(34px,3vw,52px)}.student-topbar{position:fixed;top:0;right:0;left:0;z-index:40;display:flex;align-items:center;justify-content:space-between;height:64px;padding-right:20px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:padding .25s}.student-topbar__brand{position:absolute;left:50%;display:flex;align-items:center;gap:9px;transform:translate(-50%);font-family:Space Grotesk,sans-serif}.student-topbar__brand-mark{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--blue));color:var(--on-accent);box-shadow:0 0 14px -2px var(--accent)}.student-topbar__brand-name{font-size:21px;font-weight:700;letter-spacing:-.5px;background:linear-gradient(90deg,var(--accent),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}.student-topbar__actions{position:relative;display:flex;align-items:center;gap:6px}.student-icon-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--dim);cursor:pointer}.student-icon-button--outline{border-color:var(--border)}.student-icon-button--filled{border-color:var(--border);background:var(--surface2);color:var(--text)}.student-icon-button.is-open{background:var(--surface2);color:var(--text)}.student-icon-button--badged{position:relative}.student-icon-button__badge{position:absolute;top:6px;left:14px;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;border:2px solid var(--surface);border-radius:8px;background:var(--danger);color:var(--on-fill);font-size:9px;font-weight:700}.student-topbar__exam{margin-left:6px;padding:3px 10px;font-size:11px}.student-topbar__warning{padding:3px 10px;font-family:Space Grotesk,sans-serif;font-size:11px;white-space:nowrap;cursor:pointer}.student-dropdown{position:absolute;top:52px;right:0;z-index:60;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-pop)}.student-dropdown--notifications{width:360px;max-height:440px;overflow:auto}.student-dropdown--settings{width:300px;padding:18px}.student-notifications__head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--border);background:var(--surface);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.student-notifications__count{color:var(--dim);font-weight:600}.student-notifications__read-all{font-size:12px;cursor:pointer}.student-notifications__filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 18px;border-bottom:1px solid var(--border)}.student-notifications__empty{padding:18px;color:var(--dim);font-size:12.5px;text-align:center}.student-notifications__error{padding:10px 18px;border-bottom:1px solid var(--border);color:var(--danger);font-size:12.5px}.student-notification{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);background:transparent;cursor:pointer}.student-notification.is-unread{background:color-mix(in srgb,var(--accent) 5%,transparent)}.student-notification__icon{display:flex;flex:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--tone) 15%,transparent);color:var(--tone)}.student-notification__body{min-width:0}.student-notification__from{display:flex;align-items:center;gap:7px}.student-notification__sender{font-size:13px;font-weight:700}.student-notification__dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.student-notification__title{margin:2px 0 4px;color:var(--text);font-size:13px;line-height:1.45}.student-notification__meta{display:flex;align-items:center;gap:8px}.student-notification__level{padding:2px 9px;border-radius:20px;background:color-mix(in srgb,var(--tone) 16%,transparent);color:var(--tone);font-size:10.5px;font-weight:700;white-space:nowrap}.student-notification__time{color:var(--dim);font-size:11.5px}.student-filter-chip{padding:4px 11px;border:1px solid var(--border);border-radius:20px;background:transparent;color:var(--dim);font-size:11.5px;font-weight:700;cursor:pointer}.student-filter-chip.is-active{border-color:var(--tone);background:color-mix(in srgb,var(--tone) 16%,transparent);color:var(--tone)}.student-settings__title{margin-bottom:16px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.student-settings__divider{height:1px;margin-bottom:16px;background:var(--border)}.student-settings__row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.student-settings__label{font-size:13px;font-weight:700}.student-settings__hint{color:var(--dim);font-size:11.5px}.student-settings__subtitle{margin-bottom:9px;color:var(--text);font-size:12.5px;font-weight:700}.student-settings__roles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.student-segmented{display:flex;gap:6px;margin-bottom:18px;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--input)}.student-segmented__option{display:flex;flex:1;align-items:center;justify-content:center;gap:7px;padding:9px;border:none;border-radius:7px;background:transparent;color:var(--dim);font-size:13px;font-weight:600;cursor:pointer}.student-segmented__option.is-active{background:var(--surface);color:var(--accent)}.student-switch{position:relative;width:46px;height:26px;border:none;border-radius:20px;background:var(--border);cursor:pointer;transition:background .2s}.student-switch.is-on{background:var(--green)}.student-switch__knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--on-fill);transition:left .2s}.student-switch.is-on .student-switch__knob{left:23px}.student-role-button{display:flex;align-items:center;justify-content:center;gap:3px;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);font-family:Manrope,system-ui,sans-serif;font-size:12.5px;font-weight:600;cursor:pointer}.student-role-button.is-active{border-color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent);color:var(--tone)}.student-role-button__icon{display:flex;color:var(--dim)}.student-role-button.is-active .student-role-button__icon{color:var(--tone)}.student-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border);background:var(--surface);transition:width .25s}.student-sidebar__profile{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:16px;cursor:pointer}.student-sidebar__profile:hover{background:var(--surface2)}.student-sidebar__profile.is-collapsed{justify-content:center}.student-sidebar__profile.is-static{cursor:default}.student-sidebar__identity{min-width:0}.student-sidebar__name{font-size:14.5px;font-weight:700;white-space:nowrap}.student-sidebar__role{color:var(--dim);font-size:12px;white-space:nowrap}.student-sidebar__divider{height:1px;margin:0 14px 8px;background:var(--border)}.student-nav{display:flex;flex-direction:column;gap:4px;padding:4px 12px}.student-nav__item{position:relative;display:flex;align-items:center;gap:14px;width:100%;padding:11px 13px;border:none;border-radius:11px;background:transparent;color:var(--dim);font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:background .15s,color .15s}.student-nav__item.is-active{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.student-nav__bar{position:absolute;top:8px;bottom:8px;left:-12px;width:3px;border-radius:3px;background:var(--accent);box-shadow:0 0 10px var(--accent)}.student-nav__icon{display:flex;flex:none}.student-nav__label{white-space:nowrap}.student-sidebar__footer{margin-top:auto;padding:14px}.student-sidebar__progress{padding:13px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:12px;background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 10%,var(--surface2)),var(--surface2))}.student-sidebar__progress-label{margin-bottom:8px;color:var(--dim);font-size:11px;letter-spacing:.6px;text-transform:uppercase}.student-sidebar__progress-track{height:7px;overflow:hidden;border-radius:5px;background:var(--input)}.student-sidebar__progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--blue))}.student-sidebar__progress-caption{margin-top:7px;color:var(--dim);font-size:12px}.student-fab-stack{position:fixed;right:26px;bottom:26px;z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:14px}.student-fab{--fab-tone: var(--accent);display:flex;align-items:center;justify-content:center;width:58px;height:58px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--fab-tone),var(--blue));color:var(--on-accent);box-shadow:0 10px 30px -6px color-mix(in srgb,var(--fab-tone) 70%,transparent),0 0 0 6px color-mix(in srgb,var(--fab-tone) 12%,transparent);cursor:pointer}.student-fab--qa{--fab-tone: var(--purple);position:relative;color:var(--on-fill)}.student-fab__badge{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border:2px solid var(--surface);border-radius:12px;background:var(--danger);color:var(--on-fill);font-size:11px;font-weight:700}.student-topbar__alert{position:absolute;top:calc(100% + 8px);right:0;z-index:60;max-width:280px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:10px;background:var(--surface);color:var(--danger);font-size:13px;font-weight:600}.student-chip{--tone: var(--accent);border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);border-radius:20px;background:color-mix(in srgb,var(--tone) 14%,transparent);color:var(--tone);font-weight:700}.student-chip--danger{--tone: var(--danger)}.student-chip--warn{--tone: var(--warn)}.student-exam-timer{display:inline-flex;align-items:center;padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:13px;letter-spacing:.5px;white-space:nowrap}.student-avatar{--avatar-tone: var(--accent);display:flex;flex:none;align-items:center;justify-content:center;width:var(--avatar-size);height:var(--avatar-size);border-radius:50%;background:linear-gradient(135deg,var(--avatar-tone),var(--blue));color:var(--on-accent);font-family:Space Grotesk,sans-serif;font-size:var(--avatar-font);font-weight:700}.student-avatar--halo{box-shadow:0 0 0 3px color-mix(in srgb,var(--avatar-tone) 22%,transparent),0 0 16px -2px var(--avatar-tone)}.student-avatar--halo-lg{box-shadow:0 0 0 4px color-mix(in srgb,var(--avatar-tone) 20%,transparent),0 0 24px -4px var(--avatar-tone)}.student-avatar--ring{box-shadow:0 0 0 4px color-mix(in srgb,var(--avatar-tone) 22%,transparent)}.student-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.student-pagination__info{color:var(--dim);font-size:13px}.student-pagination__info b{color:var(--text)}.student-pagination__buttons{display:flex;align-items:center;gap:6px}.student-pagination__nav{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--dim);cursor:pointer}.student-pagination__nav:disabled{color:var(--border);cursor:default}.student-pagination__page{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--dim);font-size:13.5px;font-weight:700;cursor:pointer}.student-pagination__page.is-active{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.student-pagination--lg .student-pagination__info{font-size:14px}.student-pagination--lg .student-pagination__nav{width:38px;height:38px}.student-pagination--lg .student-pagination__page{min-width:38px;height:38px;padding:0 11px;font-size:14px}.student-select-label{display:block;margin-bottom:7px;color:var(--dim);font-size:12.5px;font-weight:600}.student-select{position:relative;margin-bottom:16px}.student-select__control{width:100%;padding:11px 38px 11px 13px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--input);color:var(--text);font-size:13.5px;font-weight:600;cursor:pointer}.student-select__chevron{position:absolute;top:50%;right:12px;display:flex;color:var(--dim);transform:translateY(-50%);pointer-events:none}.student-system-banners{display:flex;flex-direction:column;gap:10px;padding:18px 28px 0}.student-system-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--tone) 45%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--tone) 12%,var(--surface));font-size:14px}.student-system-banner__level{color:var(--tone);white-space:nowrap}.student-system-banner__content{flex:1;min-width:0;line-height:1.45}.student-system-banner__until{color:var(--dim);font-size:12.5px;white-space:nowrap}.student-system-banner__close{padding:4px;border:none;background:transparent;color:var(--dim);cursor:pointer}.student-panel-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--dim);cursor:pointer}.student-chat{display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:var(--surface)}.student-chat--compact{width:340px;height:min(440px,72vh);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));box-shadow:var(--shadow-float)}.student-chat--full{height:clamp(620px,calc(100vh - 210px),820px);min-height:560px;border:1px solid var(--border);box-shadow:var(--shadow)}.student-chat__head{display:flex;align-items:center;gap:11px;padding:11px 16px;border-bottom:1px solid var(--border);background:radial-gradient(220px 90px at 10% 50%,color-mix(in srgb,var(--accent) 14%,transparent),transparent),var(--surface2)}.student-chat--full .student-chat__head{gap:14px;padding:14px 20px}.student-chat__mentor{flex:none;width:44px;height:44px}.student-chat--full .student-chat__mentor{width:66px;height:66px}.student-chat__heading{flex:1}.student-chat__title{font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:700}.student-chat--full .student-chat__title{font-size:19px}.student-chat__status{display:flex;align-items:center;gap:6px;margin-top:3px;color:var(--green);font-size:11.5px}.student-chat--full .student-chat__status{font-size:12px}.student-chat__status-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.student-chat--full .student-chat__status-dot{width:7px;height:7px}.student-chat__messages{display:flex;flex:1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.student-chat--full .student-chat__messages{gap:16px;padding:22px}.student-chat__message{display:flex;justify-content:flex-start;gap:8px}.student-chat--full .student-chat__message{gap:10px}.student-chat__message--user{flex-direction:row-reverse}.student-chat__avatar{display:flex;flex:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--surface2);color:var(--dim)}.student-chat--full .student-chat__avatar{width:32px;height:32px;border-radius:9px}.student-chat__message--bot .student-chat__avatar{background:linear-gradient(135deg,var(--accent),var(--blue));color:var(--on-accent)}.student-chat__bubble{max-width:74%;padding:9px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:14px 4px 14px 14px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text);font-size:12.5px;line-height:1.5}.student-chat--full .student-chat__bubble{max-width:82%;padding:15px 18px;font-size:16px;line-height:1.7}.student-chat__message--bot .student-chat__bubble{border-color:var(--border);border-radius:4px 14px 14px;background:var(--surface2)}.student-chat__composer{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--border)}.student-chat--full .student-chat__composer{gap:10px;padding:16px 18px}.student-chat__input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--input);color:var(--text);font-size:13px}.student-chat--full .student-chat__input{padding:14px 17px;border-radius:11px;font-size:16px}.student-chat__send{display:flex;align-items:center;justify-content:center;width:40px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--blue));color:var(--on-accent);font-size:14px;font-weight:700;cursor:pointer}.student-chat--full .student-chat__send{gap:7px;width:auto;padding:0 20px;border-radius:11px}.student-qa{position:relative;display:flex;flex-direction:column;width:350px;height:min(480px,74vh);overflow:hidden;border:1px solid color-mix(in srgb,var(--purple) 35%,var(--border));border-radius:18px;background:var(--surface);box-shadow:var(--shadow-float)}.student-qa__head{display:flex;align-items:center;gap:11px;padding:12px 16px;border-bottom:1px solid var(--border);background:radial-gradient(220px 90px at 10% 50%,color-mix(in srgb,var(--purple) 16%,transparent),transparent),var(--surface2)}.student-qa__avatar{display:flex;flex:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--purple),var(--blue));color:var(--on-fill);font-size:13px;font-weight:700}.student-qa__info{flex:1;min-width:0}.student-qa__teacher-row{display:flex;align-items:center;gap:6px}.student-qa__teacher-select{min-width:0;max-width:100%;overflow:hidden;border:none;background:transparent;color:var(--text);font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.student-qa__teacher-select option{background:var(--surface);color:var(--text)}.student-qa__role{padding:1px 5px;border-radius:4px;background:color-mix(in srgb,var(--purple) 18%,transparent);color:var(--purple);font-size:10px;font-weight:600}.student-qa__subtitle{margin-top:2px;overflow:hidden;color:var(--dim);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.student-qa__messages{display:flex;flex:1;flex-direction:column;gap:11px;overflow-y:auto;padding:14px 16px;background:var(--surface)}.student-qa__empty{max-width:240px;margin:auto;color:var(--dim);font-size:12.5px;line-height:1.5;text-align:center}.student-qa__message{display:flex;flex-direction:column;align-items:flex-start}.student-qa__message--mine{align-items:flex-end}.student-qa__meta{display:flex;align-items:center;gap:5px;margin-bottom:3px;color:var(--dim);font-size:10.5px}.student-qa__bubble{max-width:80%;padding:9px 12px;border:1px solid var(--border);border-radius:14px 14px 14px 2px;background:var(--surface2);color:var(--text);font-size:12.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.student-qa__message--mine .student-qa__bubble{border-color:transparent;border-radius:14px 14px 2px;background:linear-gradient(135deg,var(--purple),color-mix(in srgb,var(--purple) 80%,var(--blue)));color:var(--on-fill)}.student-qa__bubble.is-revoked{border:1px dashed var(--border);background:transparent;color:var(--dim);font-style:italic}.student-qa__error{padding:4px 12px;background:var(--surface2);color:var(--danger);font-size:12px}.student-qa__composer{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface2)}.student-qa__input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--input);color:var(--text);font-size:13px}.student-qa__send{display:flex;flex:none;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--purple),var(--blue));color:var(--on-fill);cursor:pointer}.student-qa__send:disabled{opacity:.5;cursor:not-allowed}.student-qa__confirm{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:16px;background:color-mix(in srgb,var(--surface) 80%,transparent)}.student-qa__confirm-card{width:100%;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface2);box-shadow:var(--shadow)}.student-qa__confirm-title{color:var(--text);font-size:14px;font-weight:700}.student-qa__confirm-text{color:var(--dim);font-size:12px;line-height:1.5}.student-qa__confirm-error{margin-bottom:8px;color:var(--danger);font-size:12px}.student-qa__confirm-actions{display:flex;justify-content:flex-end;gap:8px}.student-qa__confirm-cancel{padding:7px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.student-qa__confirm-submit{padding:7px 12px;border:0;border-radius:8px;background:var(--danger);color:var(--surface);cursor:pointer}.student-practice{display:flex;flex-direction:column;gap:16px}.student-practice__card{display:flex;flex-direction:column;gap:11px;padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);font-size:13px}.student-practice__card--submit{border-color:color-mix(in srgb,var(--accent) 28%,var(--border));box-shadow:0 0 24px -16px var(--accent)}.student-practice__title{display:flex;align-items:center;gap:8px;margin:0 0 3px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700}.student-practice__info{display:flex;align-items:center;justify-content:space-between;gap:10px}.student-practice__info>span:first-child{color:var(--dim)}.student-practice__info b{color:var(--text);font-weight:600;text-align:right}.student-practice__info b.is-accent{color:var(--accent);font-weight:700}.student-practice__diff{padding:3px 11px;font-size:12px}.student-practice__questions{display:grid;gap:10px;font-size:13px}.student-practice__questions fieldset{display:grid;gap:7px;margin:0;padding:10px 12px;border:1px solid var(--border);border-radius:10px}.student-practice__questions legend{padding:0 4px;color:var(--text);font-weight:700}.student-practice__option{display:flex;align-items:flex-start;gap:8px;color:var(--text);line-height:1.45;cursor:pointer}.student-practice__option input{margin-top:2px;accent-color:var(--accent)}.student-practice__drop{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 14px;border:1.5px dashed color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:12px;background:var(--input);color:var(--dim);text-align:center;cursor:pointer}.student-practice__drop b{color:var(--accent)}.student-practice__file{color:var(--text);font-family:JetBrains Mono,monospace;font-size:12px;word-break:break-all}.student-practice__submit{width:100%;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:11px;background:color-mix(in srgb,var(--accent) 16%,transparent);box-shadow:0 4px 12px -4px var(--accent);color:var(--accent);cursor:pointer;font-size:14px;font-weight:700}.student-practice__submit:disabled{border-color:var(--border);background:var(--surface2);box-shadow:none;color:var(--dim);cursor:not-allowed}.student-practice__hint,.student-practice__notice{margin:0;font-size:12px;line-height:1.5}.student-practice__hint{color:var(--dim)}.student-practice__hint code{color:var(--accent);font-family:JetBrains Mono,monospace}.student-practice__hint--warn{display:flex;align-items:flex-start;gap:6px}.student-practice__hint--warn b{color:var(--text)}.student-practice__notice{--tone: var(--warn);padding:9px 11px;border:1px solid color-mix(in srgb,var(--tone) 35%,transparent);border-radius:10px;background:color-mix(in srgb,var(--tone) 12%,transparent);color:var(--text)}.student-practice__notice--danger{--tone: var(--danger)}.student-practice__result{--tone: var(--dim);display:grid;gap:8px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--tone) 35%,transparent);border-radius:12px;background:color-mix(in srgb,var(--tone) 13%,transparent)}.student-practice__result--success{--tone: var(--green)}.student-practice__result--danger{--tone: var(--danger)}.student-practice__result--warning{--tone: var(--warn)}.student-practice__result--orange{--tone: var(--orange)}.student-practice__result--purple{--tone: var(--purple)}.student-practice__result-head{display:flex;align-items:center;gap:8px;color:var(--tone);font-size:13.5px;font-weight:700}.student-practice__result-meta{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--dim);font-size:12px}.student-practice__result-meta b{color:var(--text);font-family:JetBrains Mono,monospace}.student-practice__items{display:grid;gap:6px;margin:0;padding:0;list-style:none}.student-practice__items li{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text);font-size:12.5px}.student-practice__items .student-status-badge{min-width:44px;height:22px;padding:0 9px;font-size:11.5px}.student-practice__link{justify-self:start;padding:0;border:0;background:none;color:var(--accent);cursor:pointer;font-size:12px;font-weight:600}.student-practice-state{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--dim);font-size:14px}.student-practice-state--danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));color:var(--text)}.student-practice__hint--steps{padding-bottom:14px}.student-practice__items--expected{margin-top:8px}.student-date-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:18px;font-size:14px;color:var(--dim)}.student-date-filter label{display:inline-flex;align-items:center;gap:8px;font-weight:600}.student-date-filter input{padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--input);color:var(--text);font-family:inherit;font-size:14px}[data-theme=dark] .student-date-filter input{color-scheme:dark}[data-theme=light] .student-date-filter input{color-scheme:light}.student-date-filter__note{font-size:13px}.student-date-filter__note--error{color:var(--danger)}.student-date-filter__retry{padding:0;border:none;background:none;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.student-history-empty,.student-leaderboard-empty{padding:28px 26px;text-align:center;color:var(--dim);font-size:15px}.student-data-note{display:flex;align-items:center;gap:12px;color:var(--dim);font-size:12.5px}.student-data-note--danger{padding:10px 14px;border:1px solid color-mix(in srgb,var(--danger) 40%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger);font-size:13.5px}.student-data-note--danger>span{flex:1}.student-data-note__reload{flex:none;padding:6px 12px;border:1px solid var(--danger);border-radius:8px;background:transparent;color:var(--danger);font-weight:600;font-size:13px;cursor:pointer}.student-data-note+.student-course-grid{margin-top:12px}.student-heatmap .student-data-note{margin-bottom:12px}.student-leaderboard-note{margin-bottom:20px}.student-heatmap__scroll{direction:rtl}.student-heatmap__grid{direction:ltr}.student-radar-mark{width:max-content}.student-radar-mark__label{max-width:64px;line-height:1.25;text-align:center}*{box-sizing:border-box}body{margin:0;font-family:Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased}html[data-theme],body[data-theme]{background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent2)}input,select,textarea,button{font-family:inherit}[data-theme=dark]{--bg: #080d1a;--surface: #0f1a2e;--surface2: #16233c;--input: #0b1524;--border: #1e3050;--text: #e7effc;--dim: #8095b8;--accent: #22d3ee;--accent2: #2dd4bf;--purple: #a78bfa;--green: #34d399;--blue: #3b82f6;--pink: #f472b6;--warn: #fbbf24;--orange: #fb923c;--danger: #fb7185;--shadow: 0 12px 34px -16px rgba(0, 0, 0, .7);--on-accent: #04121e;--on-green: #04231c}[data-theme]{--on-fill: #ffffff;--shadow-pop: 0 20px 50px -16px rgba(0, 0, 0, .5);--shadow-float: 0 24px 60px -18px rgba(0, 0, 0, .55)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}::-webkit-scrollbar-track{background:var(--bg)}html,body{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none}@keyframes pulseRing{0%{box-shadow:0 0 #0891b266}70%{box-shadow:0 0 0 16px #0891b200}to{box-shadow:0 0 #0891b200}}@keyframes floatAsset{0%,to{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-9px) rotate(.5deg)}}@keyframes dashboardFloatAsset{0%,to{transform:translateY(-50%) translateY(0) rotate(-.5deg)}50%{transform:translateY(-50%) translateY(-9px) rotate(.5deg)}}.asset-icon{display:block;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,184,230,.22));-webkit-user-select:none;user-select:none;pointer-events:none}.hero-asset{display:block;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 22px 34px rgba(0,8,24,.54)) drop-shadow(0 0 22px rgba(34,211,238,.18));animation:floatAsset 7s ease-in-out infinite}.login-cyber-art{position:absolute;width:min(34vw,560px);right:34px;top:18%;opacity:.7;z-index:0;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.52) 35%,#000 70%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.52) 35%,#000 70%)}.exam-sentinel-art{position:absolute;width:min(31vw,370px);right:3.5vw;top:50%;transform:translateY(-48%);opacity:.28;filter:drop-shadow(0 0 34px rgba(251,113,133,.2));pointer-events:none}.dashboard-welcome{position:relative;min-height:220px;display:flex;align-items:center;padding:34px 380px 34px 34px;overflow:hidden;border-radius:18px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));background:radial-gradient(500px 230px at 88% 35%,color-mix(in srgb,var(--blue) 18%,transparent),transparent 72%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface));box-shadow:0 18px 44px -30px var(--accent)}.dashboard-cyber-art{position:absolute;width:min(34vw,340px);max-height:calc(100% - 8px);right:0;top:50%;transform:translateY(-50%);object-fit:contain;animation:dashboardFloatAsset 7s ease-in-out infinite}.leaderboard-hero{position:relative;min-height:170px;margin-bottom:24px;padding:28px 205px 28px 28px;overflow:hidden;border:1px solid color-mix(in srgb,var(--warn) 32%,var(--border));border-radius:18px;background:radial-gradient(430px 220px at 88% 46%,color-mix(in srgb,var(--warn) 15%,transparent),transparent 70%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface));box-shadow:0 18px 48px -32px var(--warn)}.leaderboard-art{position:absolute;width:154px;max-height:calc(100% - 22px);right:22px;top:auto;bottom:10px;transform:none;object-fit:contain}.student-banner__content{position:relative;z-index:1}.student-banner__title{font-family:Space Grotesk,sans-serif;font-size:34px;font-weight:800}.student-banner__text b{color:var(--text)}.dashboard-welcome .student-banner__title{margin:0;line-height:1.15;letter-spacing:-1px}.dashboard-welcome__greeting{color:var(--dim)}.dashboard-welcome__name{background:linear-gradient(90deg,var(--accent),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}.student-dashboard-stats{display:flex;flex-direction:column;gap:10px;min-width:0}.dashboard-welcome .student-banner__text{max-width:570px;margin:10px 0 0;color:var(--dim);font-size:15px}.leaderboard-hero__badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:12px;padding:6px 15px;border-radius:20px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);font-size:13px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.leaderboard-hero .student-banner__title{margin:0 0 7px}.leaderboard-hero .student-banner__text{max-width:760px;margin:0;color:var(--dim);font-size:16px}.student-rank-trend{display:inline-flex;align-items:center;justify-content:center;gap:4px;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:13px;font-variant-numeric:tabular-nums}.student-rank-trend>span{font-size:18px;font-weight:800;line-height:1}.student-rank-trend--up{color:var(--green)}.student-rank-trend--down{color:var(--danger)}.student-rank-trend--compact{margin-top:8px;padding:3px 8px;border:1px solid color-mix(in srgb,currentColor 32%,var(--border));border-radius:999px;font-size:11px}.student-rank-trend--compact>span{font-size:14px}.ai-mentor-art{display:block;object-fit:contain;filter:drop-shadow(0 7px 16px rgba(34,211,238,.28));-webkit-user-select:none;user-select:none;pointer-events:none}.student-page{width:100%;min-width:0}.student-surface-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.student-scroll-area{width:100%;overflow-x:auto}.student-icon-box{overflow:visible}.cx-clickable{transition:background .15s,border-color .15s,color .15s,transform .15s,filter .15s,box-shadow .15s}.cx-clickable:hover{filter:brightness(1.04)}.cx-row:hover{background:var(--surface2)!important}.cx-lift:hover{transform:translateY(-2px);border-color:var(--accent)!important}.cx-focus:focus{border-color:var(--accent)!important}.student-field-flow{--flow-cols: 2;--flow-gap: 22px;display:flex;flex-wrap:wrap;gap:18px var(--flow-gap)}.student-field-flow>*{flex:1 1 calc((100% - (var(--flow-cols) - 1) * var(--flow-gap)) / var(--flow-cols) - 1px);min-width:min(100%,240px)}.student-field-flow>.is-full{flex-basis:100%}.student-date-input{position:relative}.student-date-input input::-webkit-calendar-picker-indicator{position:absolute;top:0;right:0;width:46px;height:100%;margin:0;opacity:0;cursor:pointer}.student-date-input .asset-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%);pointer-events:none}.student-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media(max-width:900px){.student-course-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:980px){.auth-login-shell{grid-template-columns:1fr!important;min-height:auto!important}.student-dashboard-grid{grid-template-columns:1fr!important}.student-stat-grid,.student-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.leaderboard-podium-grid{grid-template-columns:1fr!important;align-items:stretch!important}.login-cyber-art{width:min(66vw,430px);right:24px;top:18%;opacity:.36}.dashboard-welcome{min-height:205px;padding-right:260px}.dashboard-cyber-art{width:250px;right:0;opacity:.76}.exam-sentinel-art{opacity:.15}.leaderboard-hero{padding-right:155px}.leaderboard-art{width:124px;max-height:calc(100% - 20px);right:10px;bottom:10px}}@media(max-width:720px){.auth-login-shell{border-radius:18px!important}.student-main{margin-left:76px!important}.student-main-inner{padding:22px}.student-stat-grid,.student-course-grid{grid-template-columns:1fr!important}.leaderboard-podium-grid>*{order:initial!important}.login-cyber-art,.exam-sentinel-art{display:none}.dashboard-welcome,.leaderboard-hero{padding:22px}.dashboard-cyber-art,.leaderboard-art{opacity:.14;right:-35px}.asset-icon{filter:drop-shadow(0 1px 3px rgba(0,184,230,.18))}}.student-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:27px;padding:0 13px;border-radius:20px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:900}.student-status-badge--success{background:color-mix(in srgb,var(--green) 22%,transparent);color:var(--green)}.student-status-badge--danger{background:color-mix(in srgb,var(--danger) 22%,transparent);color:var(--danger)}.student-status-badge--warning{background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}.student-status-badge--orange{background:color-mix(in srgb,var(--orange) 22%,transparent);color:var(--orange)}.student-status-badge--purple{background:color-mix(in srgb,var(--purple) 22%,transparent);color:var(--purple)}.student-status-badge--dim{background:color-mix(in srgb,var(--dim) 18%,transparent);color:var(--dim)}.student-assignment-link{padding:0;border:none;background:none;color:var(--text);font:inherit;font-weight:600;text-align:left;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.student-assignment-link:hover{color:var(--accent);text-decoration:underline}.comment-tree{display:flex;flex-direction:column;gap:14px;width:100%}.comment-tree-empty{padding:24px 0;color:var(--dim);font-size:14px;text-align:center}.comment-node{position:relative;display:flex;gap:14px;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,var(--surface2) 45%,transparent);border:1px solid color-mix(in srgb,var(--border) 60%,transparent);transition:background-color .25s,border-color .25s,opacity .2s}.comment-node:hover{background:color-mix(in srgb,var(--surface2) 75%,transparent)}.comment-node--depth-2{margin-left:36px;background:color-mix(in srgb,var(--surface2) 35%,transparent);border-left:3px solid color-mix(in srgb,var(--accent) 50%,transparent)}.comment-node--depth-3{margin-left:36px;background:color-mix(in srgb,var(--surface2) 25%,transparent);border-left:3px solid color-mix(in srgb,var(--purple) 50%,transparent)}.comment-node--highlighted{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important;box-shadow:0 0 20px -8px var(--accent);animation:commentHighlightPulse 2.4s ease-out forwards}@keyframes commentHighlightPulse{0%{background:color-mix(in srgb,var(--accent) 26%,var(--surface));border-color:var(--accent)}50%{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}to{background:color-mix(in srgb,var(--surface2) 45%,transparent);border-color:color-mix(in srgb,var(--border) 60%,transparent)}}.comment-node--hidden{opacity:.55}.comment-node__avatar-wrap{position:relative;display:flex;flex-direction:column;align-items:center;flex:none}.comment-node__avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e;font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:800;-webkit-user-select:none;user-select:none}.comment-node__avatar--teacher{background:linear-gradient(135deg,var(--warn),#d97706);color:#04121e}.comment-node__avatar--ta{background:linear-gradient(135deg,var(--purple),#8b5cf6);color:#fff}.comment-node__thread-line{position:absolute;top:40px;bottom:0;left:50%;width:2px;transform:translate(-50%);background:color-mix(in srgb,var(--border) 80%,transparent)}.comment-node__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.comment-node__header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px}.comment-node__author{font-weight:700;color:var(--text)}.comment-node__student-id{padding:1px 6px;border-radius:4px;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--dim);font-family:JetBrains Mono,monospace;font-size:11.5px}.comment-node__badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:700}.comment-node__badge--teacher{background:color-mix(in srgb,var(--warn) 15%,transparent);color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent)}.comment-node__badge--ta{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}.comment-node__badge--admin{background:color-mix(in srgb,var(--purple) 15%,transparent);color:var(--purple);border:1px solid color-mix(in srgb,var(--purple) 30%,transparent)}.comment-node__time{font-size:12px;color:var(--dim);margin-left:auto}.comment-node__content{font-size:13.5px;line-height:1.6;color:var(--text);word-break:break-word}.comment-node__actions{display:flex;align-items:center;gap:12px;margin-top:4px}.comment-action-btn{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:none;background:transparent;color:var(--dim);font-size:12px;font-weight:600;cursor:pointer;border-radius:6px;transition:color .15s,background-color .15s}.comment-action-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.comment-action-btn--hide:hover{color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent)}.comment-action-btn--hide.is-hidden-state{color:var(--dim)}.comment-replies-toggle{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:3px 8px;border:none;background:transparent;color:var(--accent);font-size:12px;font-weight:700;cursor:pointer;border-radius:6px;transition:opacity .15s}.comment-replies-toggle:hover{opacity:.8}.comment-reply-form{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:12px;border-radius:12px;background:var(--input);border:1px solid var(--border)}.comment-reply-input{width:100%;border:none;background:transparent;color:var(--text);font-size:13.5px;line-height:1.5;resize:vertical;outline:none}.comment-reply-actions{display:flex;justify-content:flex-end;gap:8px}.comment-reply-cancel-btn{padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--dim);font-size:12.5px;font-weight:600;cursor:pointer}.comment-reply-cancel-btn:hover{color:var(--text);border-color:var(--dim)}.comment-reply-submit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:8px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-size:12.5px;font-weight:700;cursor:pointer;transition:all .18s ease}.comment-reply-submit-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,transparent);border-color:var(--accent)}.comment-reply-submit-btn:disabled{opacity:.5;cursor:not-allowed}.student-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:11px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:700;font-size:13.5px;cursor:pointer;transition:all .18s ease}.student-btn:hover{background:var(--surface2);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.student-btn--primary{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);box-shadow:0 4px 14px -6px var(--accent)}.student-btn--primary:hover{background:color-mix(in srgb,var(--accent) 24%,transparent);border-color:var(--accent);color:var(--accent)}.student-btn--success{border-color:color-mix(in srgb,var(--green) 45%,transparent);background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}.student-btn--success:hover{background:color-mix(in srgb,var(--green) 22%,transparent)}.student-btn--warn{border-color:color-mix(in srgb,var(--warn) 45%,transparent);background:color-mix(in srgb,var(--warn) 14%,transparent);color:var(--warn)}.student-btn--warn:hover{background:color-mix(in srgb,var(--warn) 22%,transparent)}.comment-node__children{display:flex;flex-direction:column;gap:12px;margin-top:10px}.teacher-hero .admin-hero__body{max-width:58%}.teacher-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-hero__stats .admin-stat:last-child{grid-column:1 / 2}.teacher-class-tab{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.teacher-class-tab__header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.teacher-class-tab__brand{display:flex;align-items:center;gap:12px}.teacher-class-tab__brand>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--blue));color:#04121e}.teacher-class-tab__brand div div{font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:800}.teacher-class-tab__brand p{margin:0;color:var(--dim);font-size:12.5px}.teacher-class-tab__close{display:flex;align-items:center;justify-content:center;gap:3px;padding:9px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600}.teacher-class-tab__close:hover{border-color:var(--danger);color:var(--danger)}.teacher-class-tab__body{width:100%;max-width:1240px;flex:1;margin:0 auto;padding:30px 26px}.teacher-class-tab__title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.teacher-class-tab__title-row h1{margin:0;font-family:Space Grotesk,sans-serif;font-size:25px;font-weight:800}.teacher-class-tab__title-row p{margin:5px 0 0;color:var(--dim);font-size:14px}.teacher-class-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px}.teacher-class-info-grid--six{grid-template-columns:repeat(6,minmax(0,1fr))}.teacher-class-info{padding:15px 17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.teacher-class-info div{margin-bottom:6px;color:var(--dim);font-size:11.5px;letter-spacing:.5px;text-transform:uppercase}.teacher-class-info strong{font-size:14.5px}.teacher-class-group-list{display:flex;flex-direction:column;gap:20px}.teacher-member-card{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.teacher-member-card__title{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--border);color:var(--accent)}.teacher-member-card__title span{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.teacher-ta-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#04081299;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.teacher-ta-modal__panel{display:flex;width:34vw;min-width:380px;height:52vh;min-height:380px;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.teacher-ta-modal__head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border)}.teacher-ta-modal__head>div{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:800}.teacher-ta-modal__head button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--dim);cursor:pointer}.teacher-ta-modal__head button:hover{border-color:var(--danger);color:var(--danger)}.teacher-ta-modal__filters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--border)}.teacher-ta-modal__search{flex:1;min-width:180px}.teacher-ta-modal__list{flex:1;overflow:auto}.teacher-ta-modal__head-row,.teacher-ta-modal__data-row{display:grid;gap:10px;align-items:center;border-bottom:1px solid var(--border)}.teacher-ta-modal__head-row{padding:12px 18px;color:var(--dim);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.teacher-ta-modal__head-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-ta-modal__data-row{padding:12px 18px;font-size:13px}.teacher-ta-modal__name{overflow:hidden;color:var(--text);font-weight:600;text-align:left;text-overflow:ellipsis;white-space:nowrap}.teacher-ta-modal__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-top:1px solid var(--border)}.teacher-ta-modal__foot>span{color:var(--dim);font-size:12.5px}.teacher-ta-modal__foot b{color:var(--accent)}.teacher-ta-modal__foot>div{display:flex;gap:10px}.teacher-exam-create{max-width:1000px;margin:0 auto}.teacher-exam-form-card{padding:28px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.teacher-exam-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px}.teacher-exam-field{display:flex;min-width:0;flex-direction:column;gap:7px}.teacher-exam-field--wide{grid-column:1 / -1}.teacher-exam-field>span{color:var(--field-tone);font-size:12.5px;font-weight:600}.teacher-exam-field input,.teacher-exam-field select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:11px;outline:none;background:var(--input);color:var(--text);font:inherit;font-size:14px}.teacher-exam-field input:focus,.teacher-exam-field select:focus{border-color:var(--accent)}.teacher-exam-date-row{display:flex;gap:10px}.teacher-exam-date-row input:last-child{width:130px;flex:none;font-family:JetBrains Mono,monospace}.teacher-exam-divider{height:1px;margin:24px 0 20px;background:var(--border)}.teacher-exam-student-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.teacher-exam-student-head strong,.teacher-exam-student-head span{display:block}.teacher-exam-student-head strong{font-size:14.5px}.teacher-exam-student-head span{margin-top:3px;color:var(--dim);font-size:12.5px}.teacher-exam-student-head b,.teacher-exam-modal__foot b{color:var(--accent)}.teacher-exam-student-head>div:last-child{display:flex;gap:10px}.teacher-exam-submit-row{display:flex;justify-content:center;margin-top:26px;padding-top:22px;border-top:1px solid var(--border)}.teacher-exam-main-submit{padding:13px 28px;font-size:14px}.teacher-exam-picker-inline{overflow:hidden;margin-top:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface2)}.teacher-exam-picker-inline__foot{display:flex;justify-content:center;padding:14px 16px}.teacher-exam-tab__body{max-width:1400px}.teacher-exam-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.teacher-exam-title-row>div:first-child{display:flex;align-items:center;gap:12px}.teacher-exam-title-row h1{margin:0;font-family:Space Grotesk,sans-serif;font-size:25px;font-weight:800}.teacher-exam-title-row span{padding:5px 13px;border-radius:20px;font-size:12px;font-weight:700}.teacher-exam-status-switch,.teacher-build-mode{display:flex;align-items:center;gap:8px;padding:4px;border:1px solid var(--border);border-radius:11px;background:var(--input)}.teacher-exam-status-switch button,.teacher-build-mode button{padding:8px 14px;border:0;border-radius:8px;background:transparent;color:var(--dim);cursor:pointer;font:inherit;font-size:12.5px;font-weight:600}.teacher-exam-status-switch button.is-active{background:var(--surface);color:var(--status-tone)}.teacher-exam-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.teacher-exam-tabs button{display:flex;align-items:center;justify-content:center;gap:3px;padding:12px 22px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--dim);cursor:pointer;font:inherit;font-size:14px;font-weight:700}.teacher-exam-tabs button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}.teacher-exam-detail-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.teacher-exam-search{flex:1;min-width:200px}.teacher-exam-rank{display:inline-flex;min-width:34px;height:28px;align-items:center;justify-content:center;border-radius:8px;background:var(--surface2);color:var(--dim);font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:800}.teacher-exam-violation-block{margin-top:26px}.teacher-exam-violation-title{margin-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:700;color:var(--danger)}.teacher-exam-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#04081299;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.teacher-exam-modal__panel{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 70px -20px #0009}.teacher-exam-modal__panel--assign{width:56vw;min-width:520px;height:62vh;min-height:420px}.teacher-exam-modal__panel--student{width:42vw;min-width:420px;height:58vh;min-height:400px}.teacher-exam-modal__panel--info{width:min(560px,92vw)}.teacher-exam-modal__panel--info .teacher-exam-form-grid{grid-template-columns:1fr}.teacher-exam-modal__scroll{overflow-y:auto;max-height:min(62vh,560px)}.teacher-exam-modal__panel--info .teacher-exam-settings__row{grid-template-columns:1fr}.teacher-exam-modal__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.teacher-exam-modal__head>div{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:800}.teacher-exam-modal__head button{display:flex;width:32px;height:32px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--dim);cursor:pointer}.teacher-exam-modal__head button:hover{border-color:var(--danger);color:var(--danger)}.teacher-exam-modal__filters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--border)}.teacher-exam-modal__list{flex:1;overflow:auto}.teacher-exam-picker-pagination .admin-pagination{min-width:0}.teacher-exam-picker-head,.teacher-exam-picker-row{display:grid;gap:10px;align-items:center;border-bottom:1px solid var(--border)}.teacher-exam-picker-head{padding:12px 20px;color:var(--dim);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.teacher-exam-picker-row{padding:12px 20px;font-size:13px}.teacher-exam-picker-row__main{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.teacher-exam-modal__foot{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--border)}.teacher-exam-modal__foot>span{color:var(--dim);font-size:12.5px}.teacher-build-mode{display:inline-flex;margin-bottom:22px;border-radius:12px}.teacher-build-mode button{padding:10px 18px;font-size:13.5px;font-weight:700}.teacher-build-mode button.is-active{background:var(--surface);color:var(--accent)}.teacher-build-card{overflow:hidden;margin-bottom:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.teacher-build-card--pad{padding:24px}.teacher-build-card__title{padding:16px 20px;border-bottom:1px solid var(--border);font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:700}.teacher-build-card--pad .teacher-build-card__title{padding:0;margin-bottom:16px;border-bottom:0}.teacher-build-topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:18px 20px}.teacher-build-topic-check{display:flex;align-items:center;gap:11px;border:0;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600;text-align:left}.teacher-build-count-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.teacher-build-manual{display:flex;flex-direction:column;gap:20px}.teacher-build-topic-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 20px;border-bottom:1px solid var(--border)}.teacher-build-topic-row>div{display:flex;align-items:center;gap:12px}.teacher-build-topic-row strong{font-size:14px}.teacher-build-topic-row span{padding:3px 10px;border-radius:20px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-size:11.5px;font-weight:700}.teacher-build-summary-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px}.teacher-build-summary-foot span{color:var(--dim);font-size:13.5px}.teacher-build-summary-foot b{color:var(--accent);font-family:JetBrains Mono,monospace}.teacher-exam-settings{display:flex;flex-direction:column;gap:18px}.teacher-exam-settings__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 26px}.teacher-exam-switch{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);border-radius:11px;background:var(--input);color:var(--dim);cursor:pointer;font:inherit;font-size:13.5px;font-weight:700}.teacher-exam-switch>span{position:relative;width:38px;height:20px;border-radius:999px;background:var(--surface2);transition:background .2s}.teacher-exam-switch>span:after{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--dim);content:"";transition:transform .2s,background .2s}.teacher-exam-switch.is-on{color:var(--accent)}.teacher-exam-switch.is-on>span{background:color-mix(in srgb,var(--accent) 32%,transparent)}.teacher-exam-switch.is-on>span:after{transform:translate(18px);background:var(--accent)}.teacher-exam-format{position:relative}.teacher-exam-format__toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:11px;background:var(--input);color:var(--text);cursor:pointer;font:inherit;font-size:13.5px;font-weight:600}.teacher-exam-format__panel{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:flex;width:100%;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.teacher-exam-reset-row{display:flex;align-items:center;gap:10px}.teacher-exam-reset-row>span{color:var(--dim);font-weight:700}.teacher-exam-ip-row{display:flex;gap:10px}.teacher-exam-ip-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.teacher-exam-ip-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--input);font-family:JetBrains Mono,monospace;font-size:13px;color:var(--accent)}.teacher-exam-ip-item__actions{display:inline-flex;gap:4px}html,body,#root{min-height:100%;width:100%;max-width:100%;background:#080d1a;overflow-x:hidden}body{margin:0;min-height:100vh}
