:root {
  --admin-purple:#635bff;
  --admin-purple-dark:#5148e7;
  --admin-purple-soft:#f0efff;
  --admin-ink:#17192a;
  --admin-muted:#777b8f;
  --admin-line:#e7e8f0;
  --admin-bg:#fbfbfd;
  --admin-success:#29a967;
  --admin-warning:#ee8a2d;
}

.admin-app[hidden],.admin-view[hidden],.admin-review-card[hidden],.admin-attention[hidden],.admin-chart-empty[hidden] { display:none !important; }
.admin-app { height:100vh; height:100dvh; min-height:0; display:grid; grid-template:72px minmax(0,1fr)/250px minmax(0,1fr); overflow:hidden; color:var(--admin-ink); background:var(--admin-bg); }
.admin-topbar { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 30px; border-bottom:1px solid var(--admin-line); background:#fff; z-index:3; }
.admin-brand { display:flex; align-items:center; gap:7px; font-size:19px; }
.admin-brand > span { width:38px; height:38px; display:grid; place-items:center; margin-right:4px; border-radius:50%; color:#fff; background:var(--admin-purple); box-shadow:0 8px 24px rgba(99,91,255,.23); }
.admin-brand b { color:#767a8c; font-size:14px; font-weight:500; }
.admin-sync-status { display:flex; align-items:center; gap:9px; margin-left:auto; border:1px solid #e5e7ef; border-radius:10px; padding:7px 11px; color:#5f6374; background:#fafbfc; }
.admin-sync-status > span:last-child { display:grid; gap:2px; }
.admin-sync-status strong { font-size:11px; line-height:1.2; }
.admin-sync-status time { color:#8b8f9f; font-size:10px; line-height:1.2; }
.admin-sync-dot { width:8px; height:8px; flex:none; border-radius:50%; background:var(--admin-success); box-shadow:0 0 0 4px rgba(41,169,103,.11); }
.admin-sync-status.syncing .admin-sync-dot { background:var(--admin-purple); box-shadow:0 0 0 4px rgba(99,91,255,.11); animation:admin-sync-pulse 1s ease-in-out infinite; }
.admin-sync-status.error .admin-sync-dot { background:#d94c4c; box-shadow:0 0 0 4px rgba(217,76,76,.1); }
@keyframes admin-sync-pulse { 50% { opacity:.42; transform:scale(.78); } }
.admin-account { display:flex; align-items:center; gap:12px; }
.admin-account > span { border-radius:999px; padding:6px 11px; color:var(--admin-purple-dark); background:var(--admin-purple-soft); font-size:12px; font-weight:700; }
.admin-account-copy { display:grid; gap:2px; min-width:72px; }
.admin-account-copy strong { font-size:13px; }.admin-account-copy small { color:#9295a5; font-size:10px; }
.admin-account button { border:0; background:transparent; color:#777b8f; cursor:pointer; padding:8px; }
.admin-account button:hover { color:var(--admin-purple-dark); }

.admin-nav { grid-row:2; min-height:0; display:flex; flex-direction:column; justify-content:space-between; overflow-y:auto; padding:18px 15px 24px; border-right:1px solid var(--admin-line); background:#fff; }
.admin-nav nav { display:grid; gap:8px; }
.admin-nav button { min-height:54px; display:flex; align-items:center; gap:13px; border:0; border-left:3px solid transparent; border-radius:12px; padding:0 18px; color:#4c5062; background:transparent; text-align:left; font:600 14px/1 inherit; cursor:pointer; }
.admin-nav button i { width:22px; font-size:19px; color:#85899a; }
.admin-nav button:hover { background:#f7f7fb; }
.admin-nav button.active { border-left-color:var(--admin-purple); color:var(--admin-purple-dark); background:var(--admin-purple-soft); }
.admin-nav button.active i { color:var(--admin-purple); }
.admin-nav > p { margin:0; padding:13px 14px; border:1px solid #eeeef5; border-radius:12px; color:#898c9c; font-size:11px; }
.admin-nav > p i { margin-right:6px; color:var(--admin-success); }

.admin-main { grid-row:2; min-width:0; min-height:0; max-height:100%; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:27px 28px 34px; }
.admin-main,.admin-nav,.admin-table-scroll,.admin-record-content {
  scrollbar-width:thin;
  scrollbar-color:#aaa6e8 #f1f1f7;
}
.admin-main::-webkit-scrollbar,.admin-nav::-webkit-scrollbar,.admin-table-scroll::-webkit-scrollbar,.admin-record-content::-webkit-scrollbar { width:10px; height:10px; }
.admin-main::-webkit-scrollbar-track,.admin-nav::-webkit-scrollbar-track,.admin-table-scroll::-webkit-scrollbar-track,.admin-record-content::-webkit-scrollbar-track { background:#f1f1f7; }
.admin-main::-webkit-scrollbar-thumb,.admin-nav::-webkit-scrollbar-thumb,.admin-table-scroll::-webkit-scrollbar-thumb,.admin-record-content::-webkit-scrollbar-thumb { min-height:44px; border:2px solid #f1f1f7; border-radius:999px; background:#aaa6e8; }
.admin-main::-webkit-scrollbar-thumb:hover,.admin-nav::-webkit-scrollbar-thumb:hover,.admin-table-scroll::-webkit-scrollbar-thumb:hover,.admin-record-content::-webkit-scrollbar-thumb:hover { background:#837ee0; }
.admin-view { width:min(1220px,100%); margin:0 auto; }
.admin-page-head { min-height:68px; display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:18px; }
.admin-page-head > div > span { display:block; margin-bottom:5px; color:var(--admin-purple); font-size:11px; font-weight:800; letter-spacing:.08em; }
.admin-page-head h1 { margin:0; font-size:27px; line-height:1.25; letter-spacing:-.02em; }
.admin-page-head p { margin:7px 0 0; color:var(--admin-muted); font-size:13px; }
.admin-outline-btn,.admin-primary-btn,.admin-quiet-btn { min-height:42px; border-radius:10px; padding:0 18px; font:700 13px/1 inherit; cursor:pointer; }
.admin-outline-btn { border:1px solid #9c97ff; color:var(--admin-purple-dark); background:#fff; }
.admin-outline-btn:hover:not(:disabled) { background:var(--admin-purple-soft); }.admin-outline-btn:disabled { opacity:.45; cursor:not-allowed; }
.admin-primary-btn { border:1px solid var(--admin-purple); color:#fff; background:var(--admin-purple); box-shadow:0 8px 20px rgba(99,91,255,.16); }
.admin-primary-btn:hover:not(:disabled) { background:var(--admin-purple-dark); }.admin-primary-btn:disabled { opacity:.55; cursor:wait; }
.admin-quiet-btn { border:1px solid var(--admin-line); color:#626678; background:#fff; }

.admin-filter-bar { display:grid; grid-template-columns:190px minmax(190px,1fr) auto 142px 142px 44px; align-items:end; gap:12px; padding:18px 20px; border:1px solid var(--admin-line); border-radius:14px; background:#fff; }
.admin-filter-bar label,.admin-filter-bar fieldset,.admin-inline-filter { min-width:0; margin:0; border:0; padding:0; color:#75798c; font-size:11px; }
.admin-filter-bar label > select,.admin-filter-bar label > input,.admin-inline-filter select { width:100%; height:42px; margin-top:7px; border:1px solid #dfe1ea; border-radius:9px; padding:0 12px; color:#343747; background:#fff; outline:none; }
.admin-filter-bar label > select:focus,.admin-filter-bar label > input:focus,.admin-inline-filter select:focus,.admin-search span:focus-within { border-color:#9892ff; box-shadow:0 0 0 3px rgba(99,91,255,.09); }
.admin-search > span { height:42px; display:flex; align-items:center; gap:8px; margin-top:7px; border:1px solid #dfe1ea; border-radius:9px; padding:0 12px; }
.admin-search > span i { color:#9a9dad; }.admin-search > span input { width:100%; border:0; outline:0; font:inherit; }
.admin-filter-bar legend { margin-bottom:7px; }
.admin-segmented { height:42px; display:flex; border:1px solid #dfe1ea; border-radius:9px; padding:3px; background:#fafafd; }
.admin-segmented button { min-width:64px; border:0; border-radius:7px; color:#686c7e; background:transparent; font-size:12px; cursor:pointer; }
.admin-segmented button.active { color:var(--admin-purple-dark); background:#fff; box-shadow:0 1px 5px rgba(55,52,110,.12); font-weight:700; }
.admin-refresh-btn { width:42px; height:42px; display:grid; place-items:center; border:1px solid #dfe1ea; border-radius:9px; color:#565a6c; background:#fff; cursor:pointer; font-size:16px; }
.admin-refresh-btn.is-syncing i { animation:admin-refresh-spin .85s linear infinite; }
@keyframes admin-refresh-spin { to { transform:rotate(360deg); } }

.admin-summary-strip { display:grid; grid-template-columns:repeat(5,1fr); margin:16px 0; border:1px solid var(--admin-line); border-radius:14px; background:#fff; }
.admin-summary-strip article { min-height:92px; display:flex; align-items:center; justify-content:center; gap:14px; position:relative; }
.admin-summary-strip article:not(:last-child)::after { content:""; position:absolute; right:0; width:1px; height:46px; background:var(--admin-line); }
.admin-summary-strip article > i { font-size:24px; color:var(--admin-purple); }
.admin-summary-strip article > span { color:#777b8e; font-size:11px; }.admin-summary-strip strong { display:inline-block; margin:5px 5px 0 0; color:var(--admin-ink); font-size:25px; }.admin-summary-strip small { color:#85899a; font-size:11px; }

.admin-attention { min-height:44px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:0; border:1px solid #f4dec7; border-bottom:0; border-radius:12px 12px 0 0; padding:0 16px; color:#bd671d; background:#fffaf5; font-size:12px; }
.admin-attention i { margin-right:7px; }.admin-attention label { display:flex; align-items:center; gap:8px; color:#55596a; }
.admin-table-card { overflow:hidden; border:1px solid var(--admin-line); border-radius:14px; background:#fff; }
.admin-view[data-admin-panel="classes"] #classDetailPanel { margin-top:18px; overflow:hidden; }
#classDetailPanel > .admin-page-head { min-height:0; margin:0; padding:22px 20px 14px; border-bottom:1px solid var(--admin-line); align-items:center; }
#classDetailPanel > .admin-page-head h2 { margin:4px 0 0; font-size:24px; }
#classDetailPanel > .admin-page-head > div > span { margin:0; font-size:12px; letter-spacing:.04em; }
#classDetailPanel > .admin-filter-bar { margin:18px 20px; }
#classDetailPanel > .admin-table-scroll { margin:0 0 4px; }
.admin-attention:not([hidden]) + .admin-table-card { border-radius:0 0 14px 14px; }
.admin-table-scroll { overflow:auto; }
.admin-progress-table { width:100%; min-width:980px; border-collapse:collapse; font-size:12px; }
.admin-progress-table th { height:48px; padding:0 12px; border-bottom:1px solid var(--admin-line); color:#575b6c; background:#fbfbfd; text-align:left; white-space:nowrap; }
.admin-progress-table td { height:62px; padding:8px 12px; border-bottom:1px solid #eeeeF4; color:#353849; vertical-align:middle; }
.admin-progress-table tbody tr:last-child td { border-bottom:0; }.admin-progress-table tbody tr:hover { background:#fbfbff; }.admin-progress-table tbody tr.needs-attention { background:#fffaf5; }
.admin-check { width:34px; text-align:center !important; }.admin-check input { accent-color:var(--admin-purple); }
.admin-student { display:flex; align-items:center; gap:9px; font-weight:700; white-space:nowrap; }
.admin-student-avatar { width:30px; height:30px; display:grid; place-items:center; flex:none; border-radius:50%; color:var(--admin-purple-dark); background:var(--admin-purple-soft); }
.admin-article-cell { max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.admin-stage { display:inline-flex; align-items:center; border-radius:7px; padding:5px 9px; color:var(--admin-purple-dark); background:var(--admin-purple-soft); font-weight:700; white-space:nowrap; }
.admin-stage.completed { color:#228451; background:#e9f8f0; }.admin-stage.preparing { color:#b96822; background:#fff0df; }
.admin-progress-cell { min-width:160px; }.admin-progress-meta { display:flex; align-items:center; gap:10px; }
.admin-progress-track { width:102px; height:6px; overflow:hidden; border-radius:99px; background:#ececf4; }.admin-progress-track i { display:block; height:100%; border-radius:inherit; background:var(--admin-purple); }.completed-row .admin-progress-track i { background:var(--admin-success); }
.admin-table-action { border:0; color:var(--admin-purple-dark); background:transparent; font-weight:700; cursor:pointer; white-space:nowrap; }
.admin-empty-row { height:180px !important; color:#8b8e9d !important; text-align:center; }
.admin-table-footer { min-height:58px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; border-top:1px solid var(--admin-line); color:#777b8e; font-size:12px; }
.admin-pagination { display:flex; gap:6px; }.admin-pagination button { min-width:34px; height:34px; border:1px solid var(--admin-line); border-radius:7px; color:#55596a; background:#fff; cursor:pointer; }.admin-pagination button.active { border-color:var(--admin-purple); color:#fff; background:var(--admin-purple); }

.admin-article-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:18px; align-items:start; }
.admin-upload-card,.admin-publish-flow,.admin-review-card,.admin-chart-card,.admin-chart-overview { border:1px solid var(--admin-line); border-radius:16px; background:#fff; }
.admin-upload-card { display:grid; gap:17px; padding:24px; }.admin-card-title { display:flex; gap:13px; align-items:flex-start; }.admin-card-title > i { width:42px; height:42px; display:grid; place-items:center; border-radius:11px; color:var(--admin-purple); background:var(--admin-purple-soft); font-size:20px; }
.admin-card-title h2,.admin-publish-flow h2,.admin-review-card h2,.admin-chart-card h2 { margin:0; font-size:17px; }.admin-card-title p,.admin-publish-flow p,.admin-review-card p,.admin-chart-card p { margin:5px 0 0; color:var(--admin-muted); font-size:12px; line-height:1.6; }
.admin-upload-card > label { display:grid; gap:7px; color:#55596b; font-size:12px; font-weight:700; }.admin-upload-card label small { color:#989baa; font-weight:400; }.admin-upload-card label > input { height:44px; border:1px solid #dfe1ea; border-radius:9px; padding:0 13px; outline:0; }
.admin-file-drop { min-height:180px; place-content:center; justify-items:center; border:1px dashed #b9b5fa !important; border-radius:12px; color:#777b8c !important; background:#fbfaff; cursor:pointer; }.admin-file-drop input { position:absolute; width:1px; height:1px; opacity:0; }.admin-file-drop i { color:var(--admin-purple); font-size:30px; }.admin-file-drop strong { color:#3f4254; font-size:14px; }.admin-file-drop span { font-weight:400; }
.admin-form-status { min-height:18px; color:#696d7f; font-size:12px; }.admin-form-status.error { color:#ba4545; }.admin-form-status.success { color:#258353; }
.admin-publish-flow { padding:22px; }.admin-publish-flow ol { display:grid; gap:0; margin:18px 0 0; padding:0; list-style:none; }.admin-publish-flow li { min-height:86px; display:flex; gap:13px; position:relative; }.admin-publish-flow li:not(:last-child)::after { content:""; position:absolute; top:29px; bottom:-2px; left:14px; width:1px; background:#dedfea; }.admin-publish-flow li > span { width:29px; height:29px; display:grid; place-items:center; flex:none; z-index:1; border:1px solid #dcdde8; border-radius:50%; color:#8a8d9d; background:#fff; font-size:11px; }.admin-publish-flow li.active > span { border-color:var(--admin-purple); color:#fff; background:var(--admin-purple); }.admin-publish-flow strong { font-size:13px; }
.admin-review-card { margin-top:18px; padding:24px; }.admin-review-card > header { display:flex; justify-content:space-between; gap:24px; }.admin-review-card > header > div > span { color:var(--admin-warning); font-size:11px; font-weight:800; }.admin-review-card header label { width:min(360px,42%); color:#696d7f; font-size:11px; }.admin-review-card header input { width:100%; height:42px; margin-top:6px; border:1px solid #dfe1ea; border-radius:9px; padding:0 12px; }.admin-question-review { margin:20px 0; border:1px solid var(--admin-line); border-radius:10px; padding:13px 16px; }.admin-question-review summary { cursor:pointer; color:var(--admin-purple-dark); font-size:12px; font-weight:700; }.admin-question-review ol { display:grid; gap:10px; padding-left:24px; color:#55596a; font-size:12px; line-height:1.6; }
.admin-standard-head { margin:22px 0 12px; }.admin-standard-head h3 { margin:0; font-size:15px; }.admin-standard-head p { margin:5px 0 0; color:var(--admin-muted); font-size:11px; }
.admin-standard-editor { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.admin-standard-item { display:grid; gap:7px; padding:13px; border:1px solid #eeeeF4; border-radius:10px; }.admin-standard-item header { display:flex; justify-content:space-between; gap:10px; }.admin-standard-item strong { font-size:12px; }.admin-standard-item small { color:#8a8e9f; font-size:10px; }.admin-standard-item textarea { min-height:64px; resize:vertical; border:1px solid #dfe1ea; border-radius:8px; padding:9px; font:11px/1.5 inherit; }.admin-review-card > footer { display:flex; justify-content:flex-end; gap:10px; margin-top:20px; }

.admin-inline-filter { display:block; width:220px; }.admin-inline-filter select { display:block; }
.admin-chart-overview { min-height:86px; display:grid; grid-template-columns:180px 180px minmax(260px,1fr); align-items:center; margin-bottom:16px; padding:12px 20px; }.admin-chart-overview article { border-right:1px solid var(--admin-line); }.admin-chart-overview article span { display:block; color:var(--admin-muted); font-size:11px; }.admin-chart-overview article strong { font-size:26px; }.admin-chart-overview article small { margin-left:5px; color:#878a9a; }.admin-chart-overview label { color:#65697a; font-size:11px; }.admin-chart-overview select { width:100%; height:40px; margin-top:6px; border:1px solid #dfe1ea; border-radius:8px; padding:0 10px; background:#fff; }
.admin-chart-card { margin-bottom:16px; padding:20px; }.admin-chart-card > header { margin-bottom:14px; }.admin-canvas-wrap { position:relative; height:430px; }.admin-bar-wrap { position:relative; height:420px; }.admin-chart-empty { position:absolute; inset:0; display:grid; place-items:center; color:#8c8f9f; background:rgba(255,255,255,.86); }
.admin-donut-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }.admin-donut-item { min-width:0; border:1px solid #eeeeF4; border-radius:12px; padding:13px; text-align:center; }.admin-donut-chart-wrap { height:110px; position:relative; }.admin-donut-chart-wrap canvas { width:100% !important; height:110px !important; }.admin-donut-chart-wrap > span { position:absolute; inset:0; display:grid; place-items:center; color:#3d4052; font-size:15px; font-weight:800; pointer-events:none; }.admin-donut-item strong { display:block; margin-top:5px; overflow:hidden; color:#3c4051; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }.admin-donut-item small { color:#8b8e9e; font-size:10px; }

  .admin-record-dialog { box-sizing:border-box; width:min(860px,calc(100% - 30px)); height:min(860px,calc(100vh - 30px)); max-height:calc(100vh - 30px); margin:auto; display:flex; flex-direction:column; overflow:hidden; border:0; border-radius:18px; padding:28px; box-shadow:0 24px 80px rgba(23,25,42,.25); }.admin-record-dialog::backdrop { background:rgba(23,25,42,.42); backdrop-filter:blur(3px); }.admin-record-close { position:absolute; top:16px; right:16px; z-index:3; width:36px; height:36px; border:1px solid var(--admin-line); border-radius:50%; background:#fff; cursor:pointer; }.admin-record-content { min-height:0; flex:1 1 auto; overflow:auto; padding-right:5px; }.admin-record-content h2 { margin:0 44px 5px 0; }.admin-record-meta { color:var(--admin-muted); font-size:12px; }.admin-record-transcript { display:grid; gap:10px; margin-top:20px; }.admin-record-turn { padding:11px 13px; border-radius:10px; background:#f6f6fa; font-size:12px; line-height:1.65; white-space:pre-wrap; }.admin-record-turn.user { margin-left:80px; color:#fff; background:var(--admin-purple); }.admin-record-turn strong { display:block; margin-bottom:3px; font-size:10px; opacity:.72; }.admin-record-actions { flex:0 0 auto; display:flex; justify-content:flex-end; margin-top:12px; padding-top:12px; border-top:1px solid var(--admin-line); background:#fff; }
.report-dialog-title { margin:0 48px 8px 0; font-size:25px; line-height:1.25; letter-spacing:-.02em; }
.class-paper-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; align-items:center; }
.class-indicator-export-status { margin:8px 20px 4px; }
.class-paper-hint { display:block; margin-top:5px; color:#8b8e9d; font-size:11px; font-weight:500; }
.class-paper-actions .paper-question-upload { padding-inline:12px; }
.class-paper-ocr-results { margin:0 20px 14px; border:1px solid #deddf6; border-radius:12px; padding:12px; background:#fbfaff; }
.class-paper-ocr-results[hidden] { display:none !important; }
.class-paper-ocr-results-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; color:var(--admin-purple-dark); font-size:13px; }
.class-paper-ocr-results-head > div { display:grid; gap:3px; }.class-paper-ocr-results-head small { color:var(--admin-muted); font-size:11px; font-weight:500; }
.class-paper-ocr-results-head button { width:28px; height:28px; border:0; border-radius:50%; color:#777b8f; background:transparent; cursor:pointer; font-size:20px; line-height:1; }
.class-paper-ocr-results-head button:hover { color:var(--admin-purple-dark); background:#eeecff; }
.class-paper-ocr-results-body { display:grid; gap:8px; max-height:260px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#aaa6e8 #f1f1f7; }
.class-paper-ocr-result { border:1px solid #e8e7f4; border-radius:10px; padding:9px 11px; background:#fff; }
.class-paper-ocr-result.is-error { border-color:#f0d3d3; background:#fffafa; }
.class-paper-ocr-result strong,.class-paper-ocr-result span { display:block; }
.class-paper-ocr-result strong { color:#343747; font-size:12px; }
.class-paper-ocr-result span { margin-top:3px; color:#777b8c; font-size:11px; }
.class-paper-ocr-result.is-error span { color:#ba4545; }
.class-paper-ocr-result p { margin:5px 0 0; color:#353747; font-size:12px; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.class-paper-ocr-answer { display:grid; gap:4px; margin-top:8px; color:#595d70; font-size:11px; font-weight:700; }
.class-paper-ocr-answer textarea { min-height:58px; width:100%; box-sizing:border-box; resize:vertical; border:1px solid #dfe1ea; border-radius:8px; padding:8px 9px; color:#353747; background:#fff; font:12px/1.6 inherit; outline:none; }
.class-paper-ocr-answer textarea:focus { border-color:#9892ff; box-shadow:0 0 0 3px rgba(99,91,255,.09); }
.class-paper-ocr-answer textarea:disabled { color:#777b8c; background:#f7f7fb; }
.class-paper-ocr-results-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; padding-top:10px; border-top:1px solid #e8e7f4; }
.class-paper-ocr-results-foot span { color:#6f7385; font-size:11px; }
.report-dialog-meta { margin:0 0 18px; color:var(--admin-muted); font-size:12px; }
.report-dialog-section-title { margin:22px 0 10px; color:#34374a; font-size:14px; }
.report-indicator-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.report-indicator-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; padding:12px 14px; border:1px solid #ececf4; border-radius:12px; background:linear-gradient(135deg,#fbfaff,#fff); }
.report-indicator-row span { color:#55596c; font-size:12px; }.report-indicator-row strong { color:var(--admin-purple-dark); font-size:17px; }.report-indicator-row small { grid-column:1/-1; color:#9a9dab; font-size:10px; }
.report-answer-list { display:grid; gap:9px; padding-bottom:6px; }.report-answer-card { border:1px solid #ececf4; border-radius:12px; padding:0 13px; background:#fff; }.report-answer-card summary { padding:12px 0; color:#4d5062; cursor:pointer; font-size:12px; font-weight:700; }.report-answer-card p { margin:0 0 12px; border-top:1px solid #f0f0f5; padding-top:10px; color:#666a7b; font-size:12px; line-height:1.7; white-space:pre-wrap; }

@media (max-width:1120px) {
  .admin-app { grid-template-columns:205px minmax(0,1fr); }.admin-main { padding:24px 18px; }.admin-filter-bar { grid-template-columns:1fr 1fr; }.admin-filter-bar fieldset { grid-column:1/-1; }.admin-summary-strip { grid-template-columns:repeat(3,1fr); }.admin-summary-strip article:nth-child(3)::after { display:none; }.admin-article-grid { grid-template-columns:1fr; }.admin-publish-flow ol { grid-template-columns:repeat(3,1fr); gap:14px; }.admin-publish-flow li::after { display:none; }.admin-donut-grid { grid-template-columns:repeat(4,1fr); }
}
@media (max-width:760px) {
  .admin-app { grid-template:64px auto minmax(0,1fr)/1fr; }.admin-topbar { gap:10px; padding:0 16px; }.admin-brand b,.admin-account > span,.admin-account-copy small { display:none; }.admin-sync-status { margin-left:auto; border:0; padding:5px 0; background:transparent; }.admin-sync-status strong { display:none; }.admin-sync-status time { font-size:9px; }.admin-nav { grid-row:2; grid-column:1; padding:8px 12px; border-right:0; border-bottom:1px solid var(--admin-line); }.admin-nav nav { grid-template-columns:repeat(3,1fr); }.admin-nav button { min-height:45px; justify-content:center; padding:0 8px; border-left:0; border-bottom:3px solid transparent; font-size:11px; }.admin-nav button i { width:auto; }.admin-nav button.active { border-bottom-color:var(--admin-purple); }.admin-nav > p { display:none; }.admin-main { grid-row:3; padding:18px 12px; }.admin-page-head { align-items:flex-start; }.admin-page-head h1 { font-size:23px; }.admin-filter-bar { grid-template-columns:1fr; }.admin-filter-bar fieldset { grid-column:auto; }.admin-summary-strip { grid-template-columns:repeat(2,1fr); }.admin-summary-strip article::after { display:none; }.admin-standard-editor { grid-template-columns:1fr; }.admin-review-card > header { flex-direction:column; }.admin-review-card header label { width:100%; }.admin-chart-overview { grid-template-columns:1fr 1fr; gap:12px; }.admin-chart-overview label { grid-column:1/-1; }.admin-donut-grid { grid-template-columns:repeat(2,1fr); }.admin-publish-flow ol { grid-template-columns:1fr; }.admin-account-copy { min-width:0; }.admin-account button { padding-right:0; }
}

.student-selected { background:#eeebff; outline:2px solid #7566ed; outline-offset:-2px; }
@media (max-width:760px) {
  #classDetailPanel > .admin-page-head { padding:18px 14px 12px; align-items:flex-start; flex-direction:column; }
  #classDetailPanel > .admin-filter-bar { margin:14px; }
  .report-indicator-grid { grid-template-columns:1fr; }
}
.student-task-result {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #ececf5;max-width:580px;white-space:normal;}
.student-task-result span {overflow-wrap:anywhere;}
#classArticleFilter {max-width:440px;margin:12px;}
