pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}.progress[data-v-2fb024f1]{display:flex;align-items:center;position:relative}.progress .onehundred-icon[data-v-2fb024f1]{position:absolute;width:24px;height:24px;border-radius:50%;background:#ffbf00;display:flex;align-items:center;justify-content:center}.progress .onehundred-icon svg[data-v-2fb024f1]{font-size:16px;color:#43266d}.progress .outside[data-v-2fb024f1]{flex:1;padding:3px;border-radius:15px;height:30px}.progress .bar[data-v-2fb024f1]{flex:1;width:100%;height:100%;display:flex;align-items:center;margin-right:10px;border-radius:15px;overflow:hidden}.progress .bar>div[data-v-2fb024f1]{height:100%}.progress .bar .left[data-v-2fb024f1]{border-radius:15px 0 0 15px}.progress .bar .right[data-v-2fb024f1]{background-color:#fff;border-radius:0 15px 15px 0}.progress .text[data-v-2fb024f1]{width:100px}.tooltip[data-v-2fb024f1]{display:flex;gap:5px;min-width:320px}.tooltip>div[data-v-2fb024f1]{flex:1;white-space:nowrap}.problem-editor[data-v-2fb024f1]{padding:80px 24px 40px;max-width:1600px;margin:0 auto;background:#f8fafc;min-height:100vh}.header[data-v-2fb024f1]{display:flex;align-items:center;gap:20px;margin-bottom:16px;flex-wrap:wrap}.back-btn[data-v-2fb024f1]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;color:#475569}.back-btn[data-v-2fb024f1]:hover{border-color:#2563eb;color:#2563eb}.title-block[data-v-2fb024f1]{flex:1}.title-block h2[data-v-2fb024f1]{margin:0;font-size:26px;color:#0f172a;font-weight:800}.title-block .subtitle[data-v-2fb024f1]{margin:6px 0 0;color:#64748b;font-size:15px}.action-row[data-v-2fb024f1]{display:flex;gap:10px}.action-row .btn[data-v-2fb024f1]{font-size:15px;padding:8px 14px;font-weight:600}.filter-row[data-v-2fb024f1]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}@media (max-width:480px){.filter-row[data-v-2fb024f1]{align-items:stretch;padding:8px;gap:6px}}.filter-row .filter-label[data-v-2fb024f1]{font-size:14px;font-weight:700;color:#1e293b;min-width:36px;margin-right:4px}@media (max-width:480px){.filter-row .filter-label[data-v-2fb024f1]{flex-basis:100%;margin-right:0;margin-bottom:2px}}.filter-row .cat-btn[data-v-2fb024f1]{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:7px 14px;cursor:pointer;font-size:14px;font-weight:600;color:#475569;transition:all .15s;display:inline-flex;align-items:center;gap:8px}.filter-row .cat-btn .cnt[data-v-2fb024f1]{font-family:JetBrains Mono,Consolas,monospace;font-size:12px;font-weight:700;color:#1e293b;background:#fff;border:1px solid #e2e8f0;padding:2px 8px;border-radius:10px}.filter-row .cat-btn .cnt .pct[data-v-2fb024f1]{color:#94a3b8;font-weight:500;margin-left:4px}.filter-row .cat-btn[data-v-2fb024f1]:hover{background:#fff;border-color:#2563eb;color:#2563eb}.filter-row .cat-btn.active[data-v-2fb024f1]{background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;border-color:#4f46e5;box-shadow:0 2px 6px rgba(79,70,229,.25)}.filter-row .cat-btn.active .cnt[data-v-2fb024f1]{background:hsla(0,0%,100%,.2);color:#fff;border-color:hsla(0,0%,100%,.25)}.filter-row .cat-btn.active .cnt .pct[data-v-2fb024f1]{color:hsla(0,0%,100%,.85)}.btn[data-v-2fb024f1]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px;color:#475569;transition:all .15s}.btn[data-v-2fb024f1]:hover{border-color:#2563eb;color:#2563eb}.btn[data-v-2fb024f1]:disabled{opacity:.4;cursor:not-allowed}.btn.primary[data-v-2fb024f1]{background:#2563eb;color:#fff;border-color:#2563eb}.btn.primary[data-v-2fb024f1]:hover{background:#1d4ed8}.btn.danger[data-v-2fb024f1]{background:#fff;color:#dc2626;border-color:#fca5a5}.btn.danger[data-v-2fb024f1]:hover{background:#fee2e2}.btn.small[data-v-2fb024f1]{padding:3px 8px;font-size:11px}.btn.active[data-v-2fb024f1]{background:#f59e0b;color:#fff;border-color:#f59e0b}.filter-bar[data-v-2fb024f1]{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.filter-bar .search-box[data-v-2fb024f1]{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:4px 10px;flex:1;min-width:220px}.filter-bar .search-box svg[data-v-2fb024f1]{color:#94a3b8}.filter-bar .search-box input[data-v-2fb024f1]{flex:1;border:none;outline:none;font-size:14px;padding:4px 0;background:transparent}.filter-bar select[data-v-2fb024f1]{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 10px;font-size:13px;color:#475569;cursor:pointer}.main-grid[data-v-2fb024f1]{display:grid;grid-template-columns:380px 1fr;gap:12px;height:calc(100vh - 230px);min-height:500px}@media (max-width:1024px){.main-grid[data-v-2fb024f1]{grid-template-columns:1fr;height:auto}}.list-pane[data-v-2fb024f1]{display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.list-header[data-v-2fb024f1]{padding:8px 12px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;font-size:12px;color:#64748b}.list-header .loading-tag[data-v-2fb024f1]{color:#2563eb}.list-body[data-v-2fb024f1]{flex:1;overflow-y:auto}.list-row[data-v-2fb024f1]{padding:8px 12px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background .1s}.list-row[data-v-2fb024f1]:hover{background:#f8fafc}.list-row.active[data-v-2fb024f1]{background:#dbeafe;border-left:3px solid #2563eb}.list-row .row-id[data-v-2fb024f1]{font-family:JetBrains Mono,Consolas,monospace;font-size:11px;color:#94a3b8;display:flex;align-items:center;gap:6px}.list-row .row-id .badge[data-v-2fb024f1]{display:inline-block;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.3px;line-height:1.4}.list-row .row-id .ref-on[data-v-2fb024f1]{background:#dcfce7;color:#15803d;border:1px solid #86efac}.list-row .row-id .ref-off[data-v-2fb024f1]{background:#fef2f2;color:#b91c1c;border:1px dashed #fca5a5}.list-row .row-id .demo-on[data-v-2fb024f1]{background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.list-row .row-id .demo-off[data-v-2fb024f1]{background:#f1f5f9;color:#64748b;border:1px dashed #cbd5e1}.list-row .row-desc[data-v-2fb024f1]{font-size:14px;color:#1e293b;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row .row-tags[data-v-2fb024f1]{display:flex;gap:4px;margin-top:3px}.list-row .tag[data-v-2fb024f1]{font-size:10px;padding:1px 6px;border-radius:3px;background:#e2e8f0;color:#475569}.paging[data-v-2fb024f1]{padding:8px 12px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;align-items:center;gap:8px;justify-content:center}.paging .page-info[data-v-2fb024f1]{font-size:12px;color:#64748b}.empty[data-v-2fb024f1]{padding:30px;text-align:center;color:#94a3b8;font-size:13px;font-style:italic}.detail-pane[data-v-2fb024f1]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-y:auto;padding:16px}.placeholder[data-v-2fb024f1]{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-style:italic}.detail-header[data-v-2fb024f1]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.detail-header h3[data-v-2fb024f1]{margin:0;font-size:16px;color:#1e293b}.detail-header>div[data-v-2fb024f1]{display:flex;gap:8px}.form-grid[data-v-2fb024f1]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.form-grid label[data-v-2fb024f1]{display:flex;flex-direction:column;gap:4px}.form-grid label span[data-v-2fb024f1]{font-size:11px;color:#64748b;font-weight:600}.form-grid label input[data-v-2fb024f1],.form-grid label textarea[data-v-2fb024f1]{padding:6px 8px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px;font-family:inherit}.form-grid label input[data-v-2fb024f1]:focus,.form-grid label textarea[data-v-2fb024f1]:focus{border-color:#2563eb;outline:none}.form-grid label input[data-v-2fb024f1]:disabled,.form-grid label textarea[data-v-2fb024f1]:disabled{background:#f1f5f9;color:#94a3b8}.form-grid label.full[data-v-2fb024f1]{grid-column:1/-1}.form-grid label .code-textarea[data-v-2fb024f1]{font-family:JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;background:#1e1e1e;color:#d4d4d4;border-color:#475569}.form-grid label .code-textarea[data-v-2fb024f1]:focus{border-color:#2563eb}.form-grid label .monaco-container[data-v-2fb024f1]{height:420px;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden}.form-grid label .lang-select[data-v-2fb024f1]{margin-left:10px;font-size:11px;padding:2px 6px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#475569;cursor:pointer}.form-grid label .ok-tag[data-v-2fb024f1]{display:inline-block;margin-left:6px;font-size:10px;padding:1px 6px;border-radius:8px;background:#d1fae5;color:#059669}.form-grid label .miss-tag[data-v-2fb024f1]{display:inline-block;margin-left:6px;font-size:10px;padding:1px 6px;border-radius:8px;background:#fee2e2;color:#dc2626}.form-grid label .code-preview[data-v-2fb024f1]{background:#1e1e1e;color:#d4d4d4;font-family:JetBrains Mono,Consolas,monospace;font-size:14px;line-height:1.5;padding:12px;border-radius:6px;margin-top:6px;max-height:420px;overflow:auto;white-space:pre;border:1px solid #cbd5e1}.form-grid label .code-preview.hljs[data-v-2fb024f1]{background:#1e1e1e}.form-grid label .code-preview code.hljs[data-v-2fb024f1]{background:transparent;padding:0}.form-grid label .demo-list[data-v-2fb024f1]{display:flex;flex-direction:column;gap:6px;margin-top:6px}.form-grid label .demo-item[data-v-2fb024f1]{border:1px solid #cbd5e1;border-radius:6px;padding:6px 10px;background:#f8fafc}.form-grid label .demo-item summary[data-v-2fb024f1]{cursor:pointer;font-size:13px;color:#1e293b}.form-grid label .demo-item summary strong[data-v-2fb024f1]{color:#2563eb;margin-right:6px}.form-grid label .demo-item summary .demo-time[data-v-2fb024f1]{float:right;font-size:11px;color:#64748b}.assignments-section[data-v-2fb024f1]{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.assignments-section .section-title[data-v-2fb024f1]{font-size:14px;font-weight:600;color:#1e293b;margin-bottom:10px}.assignments-section .section-title .dim[data-v-2fb024f1]{color:#94a3b8;font-weight:400;margin-left:6px;font-size:12px}.assign-table[data-v-2fb024f1]{width:100%;border-collapse:collapse;margin-bottom:10px}.assign-table td[data-v-2fb024f1],.assign-table th[data-v-2fb024f1]{padding:6px 10px;text-align:left;border-bottom:1px solid #f1f5f9;font-size:13px}.assign-table th[data-v-2fb024f1]{background:#f8fafc;color:#64748b;font-size:11px;font-weight:600}.assign-table .empty-cell[data-v-2fb024f1]{color:#94a3b8;font-style:italic;text-align:center}.assign-form[data-v-2fb024f1]{display:flex;gap:6px}.assign-form input[data-v-2fb024f1]{padding:6px 8px;border:1px solid #cbd5e1;border-radius:4px;font-size:13px}.assign-form input[data-v-2fb024f1]:focus{border-color:#2563eb;outline:none}.assign-form input[data-v-2fb024f1]:first-child{flex:2}.assign-form input[data-v-2fb024f1]:nth-child(2),.assign-form input[data-v-2fb024f1]:nth-child(3){flex:1}