*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{background:#0d1117;color:#e6edf3;font-family:Segoe UI,system-ui,sans-serif;height:100vh;overflow:hidden}#root,.app{display:flex;flex-direction:column;height:100vh}.app{gap:0}.app-header{align-items:center;background:#161b22;border-bottom:1px solid #30363d;display:flex;flex-shrink:0;justify-content:space-between;padding:10px 24px}.app-header-left{display:flex;flex-direction:column}.app-title{color:#f0f6fc;font-size:18px;font-weight:700;letter-spacing:-.3px}.app-subtitle{color:#8b949e;font-size:12px;margin-top:2px}.app-nav{display:flex;gap:4px}.nav-btn{background:#0000;border:1px solid #30363d;border-radius:6px;color:#8b949e;cursor:pointer;font-size:12px;font-weight:500;padding:5px 16px;transition:background .1s,color .1s}.nav-btn:hover{background:#21262d;color:#c9d1d9}.nav-btn--active{background:#21262d;border-color:#58a6ff;color:#f0f6fc}.error-banner{background:#3d1a1a;border-bottom:1px solid #6e2e2e;color:#f85149;flex-shrink:0;font-size:13px;padding:8px 24px}.legend{background:#161b22;border-bottom:1px solid #30363d;flex-shrink:0;gap:24px;padding:7px 24px}.legend,.legend-item{align-items:center;display:flex}.legend-item{color:#8b949e;font-size:12px;gap:6px}.legend-swatch{border-radius:3px;font-family:monospace;font-size:12px;padding:1px 5px}.workspace{background:#30363d;display:flex;flex:1 1;gap:1px;min-height:0}.panel{background:#0d1117;display:flex;flex:1 1;flex-direction:column;min-width:0}.panel-header{align-items:center;background:#161b22;border-bottom:1px solid #30363d;display:flex;flex-shrink:0;gap:8px;height:44px;padding:0 16px}.panel-title{color:#c9d1d9;font-size:13px;font-weight:600}.panel-badge{border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 6px}.student-badge{background:#1f3d2a;border:1px solid #2ea043;color:#3fb950}.answer-badge{background:#2d1c1c;border:1px solid #6e3030;color:#f85149}.editor-wrap{flex:1 1;min-height:0}.header-select{background:#0d1117;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;font-size:12px;margin-left:auto;max-width:240px;min-width:140px;outline:none;overflow:hidden;padding:4px 8px;text-overflow:ellipsis}.header-select:focus{border-color:#58a6ff}.header-select option{background:#161b22}.answer-display{cursor:default;flex:1 1;outline:none;overflow:auto;padding:0}.placeholder-text{color:#484f58;display:block;font-size:13px;font-style:italic;padding:16px}.code-with-lines{display:flex;font-family:Consolas,Fira Code,Courier New,monospace;font-size:14px;line-height:21px;min-height:100%}.line-gutter{background:#0d1117;border-right:1px solid #21262d;color:#484f58;flex-shrink:0;min-width:44px;padding:0 8px 0 12px;text-align:right;-webkit-user-select:none;user-select:none}.line-number{font-size:12px;height:21px;line-height:21px}.code-body{color:#c9d1d9;flex:1 1;margin:0;overflow-x:auto;padding:0 16px;white-space:pre}.code-line{height:21px;line-height:21px;white-space:pre}.diff-missing{background:#f8514940;border-bottom:2px solid #f85149;color:#ff7b72}.diff-added,.diff-missing{border-radius:2px;padding:0 1px}.diff-added{background:#3fb95033;border-bottom:2px solid #3fb950;color:#3fb950}.diff-extra{background:#22c55e80;border-radius:2px;color:#22c55ee6;padding:0 1px}.admin-layout{background:#0d1117;display:flex;flex:1 1;min-height:0}.admin-list{border-right:1px solid #30363d;display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:300px}.admin-list-header{align-items:center;background:#161b22;border-bottom:1px solid #30363d;display:flex;flex-shrink:0;justify-content:space-between;padding:10px 16px}.admin-list-scroll{flex:1 1;overflow-y:auto}.admin-section-title{color:#c9d1d9;font-size:13px;font-weight:600}.admin-list-item{align-items:center;border-bottom:1px solid #21262d;display:flex;gap:8px;justify-content:space-between;padding:10px 16px}.admin-list-item:hover{background:#161b22}.admin-list-item--active{background:#1c2128;border-left:3px solid #58a6ff;padding-left:13px}.admin-item-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.admin-item-title{color:#c9d1d9;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-item-lang{color:#8b949e;font-size:11px}.admin-item-actions{display:flex;flex-shrink:0;gap:6px}.admin-form-panel{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.admin-form-empty{align-items:center;color:#484f58;display:flex;flex:1 1;font-size:13px;justify-content:center}.admin-form-header{align-items:center;background:#161b22;border-bottom:1px solid #30363d;display:flex;flex-shrink:0;justify-content:space-between;padding:10px 16px}.admin-form-actions{display:flex;gap:8px}.admin-fields{border-bottom:1px solid #30363d;flex-shrink:0}.field-row{align-items:center;border-bottom:1px solid #21262d;display:flex;gap:12px;padding:9px 16px}.field-row:last-child{border-bottom:none}.field-label{color:#8b949e;flex-shrink:0;font-size:12px;width:80px}.field-input{background:#161b22;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;flex:1 1;font-size:13px;outline:none;padding:5px 10px}.field-input:focus{border-color:#58a6ff}.field-select{background:#161b22;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;font-size:13px;outline:none;padding:5px 10px}.admin-editor-label,.field-hint{color:#484f58;font-size:11px}.admin-editor-label{background:#161b22;border-bottom:1px solid #30363d;flex-shrink:0;padding:6px 16px}.admin-editor-wrap{flex:1 1;min-height:0}.admin-empty{color:#484f58;font-size:13px;padding:16px}.btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:5px 14px;transition:opacity .15s,background .1s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#238636;color:#fff}.btn-primary:hover:not(:disabled){background:#2ea043}.btn-secondary{background:#21262d;border:1px solid #30363d;color:#c9d1d9}.btn-secondary:hover:not(:disabled){background:#30363d}.btn-sm{font-size:11px;padding:3px 8px}.btn-edit{background:#1f3d5c;border:1px solid #1f4073;color:#58a6ff}.btn-edit:hover{background:#1a3a5a}.btn-delete{background:#3d1a1a;border:1px solid #6e2e2e;color:#f85149}.btn-delete:hover{opacity:.8}.btn-file{align-items:center;cursor:pointer;display:inline-flex}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0d1117}::-webkit-scrollbar-thumb{background:#30363d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#484f58}
/*# sourceMappingURL=main.00d75854.css.map*/