/*
 * [INPUT]: index.html 与 views/run-views/guest-demo/tutor 生成的语义结构
 * [OUTPUT]: 品牌、响应式工作台、只读示例提示、有界题目与模型/导师窗口
 * [POS]: public 的统一视觉规则，不依赖在线字体、图标或外部样式库
 * [PROTOCOL]: 变更时更新此头部，然后检查 CLAUDE.md
 */

:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#24334b;background:#f6f8fc;font-synthesis:none;--blue:#3166df;--muted:#7b879a;--border:#e4e9f1}
*{box-sizing:border-box}
body{margin:0}
button,input,textarea{font:inherit}
button,a,input,textarea{outline-offset:4px}
button{cursor:pointer}
button:disabled{cursor:wait;opacity:.55}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
h1{font-size:28px;font-weight:650;letter-spacing:-.8px;line-height:1.45}
h2{font-size:17px;line-height:1.6;font-weight:600}
p{line-height:1.8}
button{border:0}
textarea{resize:vertical;line-height:1.8}
input,textarea{border:1px solid #dce3ee;border-radius:9px;padding:12px 14px;width:100%;background:#fcfdff;color:#26344b;transition:border-color .15s,box-shadow .15s}
input:focus,textarea:focus{border-color:#7ca1ed;outline:none;box-shadow:0 0 0 3px #3166df12}
input::placeholder,textarea::placeholder{color:#a1aabd}
label{font-size:14px;font-weight:600}
label .optional{font-weight:400;color:#98a1b1;margin-left:8px;font-size:12px}
[hidden]{display:none!important}
.muted{color:var(--muted)}
.small{font-size:12px}
.topbar{height:76px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1040px)/2));gap:16px}
.brand{display:flex;align-items:center;gap:12px;min-width:0;font-size:18px;font-weight:700;letter-spacing:-.4px;white-space:nowrap}
.brand-copy{display:flex;flex-direction:column;gap:2px;line-height:1.25}
.brand-light{font-size:11px;font-weight:450;letter-spacing:2px;color:#68748b}
.brand-mark{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;color:white;background:var(--blue);border-radius:10px;font-family:Georgia,serif;font-size:20px;font-style:italic;letter-spacing:-1px}
.container{max-width:1040px;margin:0 auto;padding:42px 24px 54px;min-height:calc(100vh - 204px)}
.connection{font-size:12px;text-align:center;padding:11px 20px;color:#5c6b84;background:#edf3ff;border-bottom:1px solid #e0eaff}
.connection button{font:inherit;color:var(--blue);background:transparent;padding:0 3px;font-weight:600}
.connection.ready{background:#f0f8f5;color:#3c7561;border-color:#e1eee7}
.connection.warning{color:#986b2c;background:#fff8ed;border-color:#f6ead7}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:8px;padding:11px 18px;font-size:13px;font-weight:550;line-height:1.5;white-space:nowrap;transition:background .15s,transform .15s}
.primary{background:var(--blue);color:white;box-shadow:0 3px 7px #3166df13}
.primary:hover{background:#2456c7}
.secondary{background:white;color:#53647d;border-color:#dce3ee}
.secondary:hover{background:#f7f9fd}
.quiet{background:#f5f7fb;color:#5e6d83;border:1px solid #e8edf4}
.text-button{padding:0;background:transparent;color:#6f7e95;font-size:13px}
.text-button:hover{color:var(--blue)}
.icon-button{width:30px;height:30px;border-radius:6px;background:transparent;color:#9aa4b5;font-size:23px;line-height:1}
.icon-button:hover{background:#f0f3f8;color:#64748b}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px}
.page-heading p.muted{font-size:13px;margin-top:8px}
.eyebrow{font-size:10px;letter-spacing:2.4px;color:#8c9bb4;font-weight:650;margin-bottom:10px}
.compact{margin-bottom:24px}
.section-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.segmented{display:inline-flex;padding:4px;background:#eaf0f8;border-radius:9px;gap:3px}
.segmented button{padding:7px 19px;border-radius:6px;font-size:12px;color:#7c899d;background:transparent}
.segmented button.active{background:white;color:#3868cd;box-shadow:0 2px 4px #273c6310;font-weight:600}
.empty-state{background:white;border:1px solid var(--border);border-radius:14px;padding:58px 24px 42px;text-align:center;min-height:410px;box-shadow:0 4px 18px #25385802}
.empty-icon{width:78px;height:78px;display:grid;place-items:center;margin:0 auto 22px;color:#7196e0;background:#f1f5ff;border-radius:22px}
.empty-state h2{font-size:19px;margin-bottom:10px}
.empty-state p{font-size:13px;color:#8a96a8;margin-bottom:24px}
.feature-line{display:flex;align-items:center;justify-content:center;gap:16px;color:#9ba7b7;font-size:11px;margin-top:28px}
.feature-line i{font-style:normal;color:#c4cddb}
.record-list{display:grid;grid-template-columns:minmax(0,1fr);gap:13px}
.record{position:relative;min-width:0;background:white;border:1px solid var(--border);border-radius:12px;transition:border .15s}
.record:hover{border-color:#bccdf0}
.record-open{display:flex;gap:28px;width:100%;min-width:0;max-width:100%;text-align:left;padding:24px 52px 24px 24px;background:none;color:inherit}
.record-text{flex:1;min-width:0}
.record-meta{display:flex;align-items:center;gap:12px;font-size:11px;color:#93a0b3;margin-bottom:10px}
.tag{display:inline-block;background:#edf3ff;color:#5679c2;border:1px solid #e1eaff;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:550}
.tag.neutral{background:#f5f7fa;color:#8390a3;border-color:#e8edf3}
.record h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;max-height:3.2em;font-size:14px;white-space:normal;overflow:hidden;overflow-wrap:anywhere;text-overflow:ellipsis;font-weight:550}
.record p{font-size:12px;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.record-score{display:flex;flex-shrink:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:64px}
.record-score strong{color:#3f73d5;font-weight:550;font-size:30px;letter-spacing:-1px}
.record-score span{font-size:8px;letter-spacing:1.2px;color:#97a6bd}
.delete{position:absolute;top:9px;right:9px}
.backline{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px}
.paper{border:1px solid var(--border);border-radius:12px;background:white}
.input-paper{padding:30px}
.field{margin-bottom:24px}
.field label{display:block;margin-bottom:10px}
.field p{margin-top:7px}
.label-row{display:flex;justify-content:space-between;gap:12px}
.essay-input{font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.85;min-height:310px}
.image-field{padding:18px 0 25px;border-top:1px solid #edf0f6;border-bottom:1px solid #edf0f6;display:flex;align-items:center;justify-content:space-between;gap:16px}
.image-field p{margin-top:4px}
.image-preview{display:flex;gap:14px;align-items:center;margin-top:15px}
.image-preview img{height:86px;max-width:210px;object-fit:contain;border:1px solid var(--border);border-radius:6px}
.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}
.loading-text{font-size:13px;color:var(--blue);padding-top:18px}
.loading-text:before{content:"";display:inline-block;width:12px;height:12px;border:2px solid #d5e3ff;border-top-color:#3166df;border-radius:100%;animation:spin 1s linear infinite;margin-right:10px;vertical-align:-2px}
.error-box{padding:13px 15px;color:#b34848;background:#fff5f5;border:1px solid #f5dada;border-radius:8px;font-size:13px;line-height:1.8;white-space:pre-wrap;margin-top:16px}
.report-heading{display:flex;justify-content:space-between;gap:28px;margin:8px 0 28px}
.report-heading h1{margin:12px 0}
.question-text{font-size:13px;max-width:730px;color:#7c899e;line-height:1.9;white-space:pre-wrap}
.overall{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edf3ff;border:1px solid #dce6fc;border-radius:12px;min-width:134px;padding:18px;align-self:flex-start;gap:3px}
.overall span:first-child{font-size:9px;letter-spacing:1.4px;color:#6f8bc0}
.overall strong{font-weight:550;font-size:48px;line-height:1.3;color:#3868cd;letter-spacing:-2px}
.overall span:last-child{color:#8194b7;font-size:11px}
.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}
.score-card{border:1px solid var(--border);border-radius:10px;background:white;padding:20px}
.score-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.score-card-top>span{font-size:11px;letter-spacing:.6px;color:#8b9bb5;font-weight:600}
.score-card-top strong{color:#4978d3;font-size:23px;font-weight:550}
.score-card h2{font-size:12px}
.criterion-en{font-size:9px;color:#a0aabd;display:block;margin-top:3px;line-height:1.6}
.score-card p{font-size:11px;color:#7b889d;margin-top:13px;line-height:1.95}
.overall-comment{padding:22px 25px;margin-bottom:26px}
.section-kicker{font-size:11px;font-weight:600;color:#6a7f9d}
.overall-comment p{font-size:13px;color:#687991;margin-top:8px}
.report-tabs{display:flex;border-bottom:1px solid var(--border);padding:0 24px;gap:25px;overflow-x:auto}
.report-tabs button{padding:19px 3px 16px;color:#8995a7;background:none;font-size:13px;white-space:nowrap;border-bottom:2px solid transparent}
.report-tabs button.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}
.report-content{padding:28px}
.essay-prose{font-family:Georgia,"Times New Roman",serif;line-height:2;font-size:16px;white-space:pre-wrap;color:#465873;margin-bottom:20px}
.essay-error{color:#be4c4c;background:#fff6f6;text-decoration:underline;text-decoration-color:#df9999;text-underline-offset:4px;cursor:help}
.analysis-prose{font-size:14px;color:#64758e;line-height:2.1;white-space:pre-wrap}
.logic-verdict{display:inline-block;padding:8px 12px;border-radius:6px;font-size:12px;margin-bottom:20px}
.logic-verdict.correct{color:#3e8a70;background:#edf8f3}
.logic-verdict.flawed{color:#b67d31;background:#fff8eb}
.gap-heading{margin:28px 0 12px}
.table-scroll{overflow-x:auto}
.errors-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.9;min-width:580px;table-layout:fixed}
.errors-table th{font-weight:500;color:#8796ad;text-align:left;padding:12px 16px;background:#f7f9fc;font-size:11px;border-bottom:1px solid var(--border)}
.errors-table td{padding:20px 16px;vertical-align:top;border-bottom:1px solid #edf0f6;word-break:break-word;color:#697a91}
.errors-table tr:last-child td{border-bottom:0}
.error-tag{font-size:10px;background:#eef2f8;border-radius:4px;padding:3px 7px;color:#7a8da9}
.original-error{font-family:Georgia,serif;margin-top:9px;font-size:14px}
.original-error del{color:#bb5555}
.answer-inline{font-weight:500;color:#507daf}
.cloze{display:block;color:#4e8a73;background:#f2f9f5;padding:8px;font-family:ui-monospace,monospace;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}
.small-button{font-size:11px;padding:7px 11px}
.report-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.footer{text-align:center;color:#a4afbe;font-size:10px;padding:24px;line-height:1.8;border-top:1px solid #edf0f5;letter-spacing:.2px}
.settings-dialog{width:min(470px,calc(100% - 32px));border:1px solid #e0e6ef;border-radius:14px;padding:28px;box-shadow:0 30px 120px #152c5726;color:inherit}
.settings-dialog::backdrop{background:#26354a55;backdrop-filter:blur(3px)}
.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px}
.dialog-heading h2{font-size:20px;margin-bottom:5px}
.dialog-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.duplicate-dialog{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto}
.duplicate-dialog>p{font-size:13px;overflow-wrap:anywhere}
.duplicate-dialog .eyebrow{letter-spacing:1px}
.duplicate-existing{display:grid;gap:6px;padding:15px 17px;margin:18px 0;border:1px solid #e4ebf7;background:#f6f9ff;border-radius:9px;font-size:12px;overflow-wrap:anywhere;color:#8291a9}
.duplicate-existing strong{color:#566e94;font-weight:550}
.duplicate-actions{align-items:center;flex-wrap:wrap}
.duplicate-actions .text-button{padding:9px 0;margin-left:auto}
.check-label{display:flex;gap:12px;align-items:flex-start;font-weight:500;font-size:13px;margin:8px 0 20px}
.check-label input{width:17px;height:17px;margin:2px 0;accent-color:var(--blue)}
.check-label small{display:block;font-weight:400;font-size:11px;margin-top:5px;line-height:1.7}
#settings-message{white-space:pre-wrap;line-height:1.8;color:#657b98}
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#24334bee;color:white;border-radius:9px;font-size:13px;box-shadow:0 6px 30px #17294022;z-index:50;max-width:calc(100% - 32px);white-space:pre-wrap}
.tutor-window{position:fixed;right:24px;bottom:24px;width:410px;height:570px;min-width:320px;min-height:320px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);background:white;border:1px solid #dce4f2;border-radius:13px;box-shadow:0 12px 80px #1e39682c;z-index:20;resize:both;overflow:hidden;display:flex;flex-direction:column}
.tutor-title{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#f5f8ff;border-bottom:1px solid #e2eafa;cursor:move;touch-action:none;user-select:none}
.tutor-title strong{font-size:13px;color:#45699d}
.tutor-tools{display:flex;align-items:center;gap:6px}
.tutor-tools .text-button{font-size:10px}
.chat-messages{flex:1;overflow:auto;padding:17px;display:flex;flex-direction:column;gap:16px}
.chat-bubble{padding:11px 13px;background:#f6f8fc;border-radius:9px;font-size:12px;line-height:1.95;color:#5e718e;overflow-wrap:anywhere}
.chat-bubble.user{background:#edf3ff;align-self:flex-end;color:#496caa;max-width:90%}
.chat-bubble code{background:#e6ecf5;border-radius:3px;padding:1px 4px;font-size:11px}
.chat-bubble h3,.chat-bubble h4{font-size:13px;margin:6px 0}
.patch-card{border:1px solid #dce8f9;background:#f5f9ff;padding:12px;border-radius:8px;margin-top:10px;font-size:11px}
.patch-card strong{color:#4778bb}
.patch-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;line-height:1.8;margin:8px 0}
.patch-buttons{display:flex;gap:8px}
.patch-buttons button{font-size:11px;padding:6px 10px}
.patch-state{font-size:10px;color:#6b907d;margin-top:8px}
.tutor-input{border-top:1px solid #edf0f6;padding:12px}
.tutor-input textarea{font-size:12px;resize:none;min-height:62px;padding:10px;line-height:1.7}
.tutor-send-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px;gap:8px}
.tutor-send-row span{font-size:9px;color:#a0adbf}
.tutor-send-row .button{padding:7px 15px;font-size:11px}
.chat-wait{font-size:11px;color:#8ea0bb;padding:0 17px 10px}
.tutor-error{font-size:11px;color:#b65b5b;white-space:pre-wrap;padding:0 16px 10px}
.model-essay{margin-bottom:0}
@keyframes spin {
  to{transform:rotate(360deg)}
}
@media(max-width:760px) {
  .topbar{height:auto;min-height:65px;padding:12px 20px;gap:12px;flex-wrap:wrap}
  .brand{font-size:15px;gap:9px}
  .brand-mark{width:31px;height:31px;font-size:18px}
  .brand-light{font-size:10px;letter-spacing:1.5px}
  .topbar .button{padding:8px 12px;font-size:11px}
  .container{padding:30px 18px 40px}
  .page-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:27px}
  h1{font-size:24px}
  .eyebrow{font-size:8px;letter-spacing:1.8px}
  .page-heading .button{align-self:flex-start}
  .empty-state{padding:45px 20px 35px}
  .section-bar{gap:10px;flex-wrap:wrap}
  .segmented button{padding:7px 13px}
  .section-bar>.small{font-size:10px}
  .input-paper{padding:21px}
  .form-bottom{flex-wrap:wrap}
  .form-bottom>.muted{flex-basis:100%;font-size:11px;margin-bottom:6px}
  .image-field{align-items:flex-start}
  .image-field p{font-size:10px}
  .image-field .button{padding:7px 10px;font-size:11px}
  .score-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .score-card{padding:16px}
  .report-heading{gap:16px}
  .overall{min-width:100px;padding:15px 10px}
  .overall strong{font-size:40px}
  .overall span:first-child{font-size:7px;letter-spacing:1px}
  .report-heading h1{font-size:22px}
  .question-text{font-size:12px}
  .report-tabs{gap:19px;padding:0 16px}
  .report-tabs button{font-size:12px}
  .report-content{padding:21px 17px}
  .overall-comment{padding:19px}
  .report-content h2{font-size:15px}
  .essay-prose{font-size:15px}
  .record-open{padding:20px 40px 20px 18px;gap:12px}
  .record-score{min-width:48px}
  .record-score strong{font-size:27px}
  .tutor-window{right:10px;bottom:10px;width:min(400px,calc(100vw - 20px));height:min(570px,calc(100dvh - 20px))}
  .footer{font-size:9px}
  .connection{font-size:11px;line-height:1.7}
  .settings-dialog{padding:23px}
}
@media(prefers-reduced-motion:reduce) {
  *{transition:none!important}
  .loading-text:before{animation:none}
}
.chat-bubble .markdown-table{overflow-x:auto;margin:10px 0}
.markdown-table table{border-collapse:collapse;min-width:100%;font-size:11px}
.markdown-table th,.markdown-table td{border:1px solid #dce4ef;padding:7px 9px;text-align:left;white-space:normal}
.markdown-table th{background:#edf2fa}
.chat-bubble .markdown-code{background:#eaf0f8;white-space:pre-wrap;padding:10px;border-radius:5px;overflow:auto;font-size:11px;line-height:1.7}
.chat-bubble .markdown-code code{padding:0;background:none}
.chat-bubble blockquote{margin:10px 0;border-left:3px solid #b6c9e8;padding-left:11px;color:#8597af}
.chat-bubble ul,.chat-bubble ol{padding-left:20px;margin:8px 0}
.chat-bubble hr{border:0;border-top:1px solid #dce4ef;margin:14px 0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.workspace-intro{display:flex;align-items:center;gap:24px;border-top:1px solid var(--border);padding:21px 0 27px;font-size:12px;color:#8390a6}
.workspace-intro strong{font-size:18px;font-weight:550;color:#4a648b;margin-right:4px}
.workspace-intro p{margin-left:auto;font-size:11px}
.workbench-heading{margin-bottom:25px}
.guest-demo-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;margin-bottom:30px;background:#f1f5ff;border-color:#dce6ff}
.guest-demo-entry h2{margin:6px 0;font-size:17px}
.guest-demo-notice{padding:22px 26px;margin-bottom:28px;border-left:4px solid var(--blue)}
.guest-demo-notice h2{margin-bottom:8px}
.guest-demo-notice p+p{margin-top:8px}
@media(max-width:640px){.guest-demo-entry{align-items:flex-start;flex-direction:column;padding:20px}.guest-demo-notice{padding:20px}.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.topbar-actions{gap:6px}.topbar-actions>.button{padding:8px 10px}}
.empty-icon{font-family:Georgia,serif;font-style:italic;font-size:42px}
.status-badge{display:inline-flex;align-items:center;gap:7px;border-radius:5px;padding:4px 8px;font-size:10px;line-height:1.5;font-weight:550;white-space:nowrap}
.status-badge.working{color:#5277ba;background:#edf3ff}
.status-badge.success{color:#3d8669;background:#eef8f2}
.status-badge.attention{color:#a37a36;background:#fff6e7}
.status-badge.failure{color:#b15c5c;background:#fff0f0}
.status-badge.neutral{color:#8c98aa;background:#f0f3f7}
.status-badge i{height:5px;width:5px;border-radius:50%;background:currentColor}
.run-open{align-items:center}
.run-source{display:block;margin-top:11px;font-size:10px;color:#9aa6b8;overflow-wrap:anywhere}
.record-arrow{flex-shrink:0;color:#a5b5cd;font-size:21px;margin-right:4px}
.legacy-section{margin-top:42px;padding-top:28px;border-top:1px solid var(--border)}
.legacy-section h2{font-size:14px;margin-bottom:4px}
.pending-placeholder{padding:42px;text-align:center;color:#8a98ae;font-size:13px;line-height:2}
.pending-placeholder h1{font-size:22px;color:#4b6284}
.pending-placeholder .button{margin-top:20px}
.history-error{margin-bottom:20px}
.run-panel{padding:29px 30px;margin-bottom:30px}
.run-panel-top{display:flex;justify-content:space-between;gap:24px;align-items:center}
.run-panel-top h1{margin-top:12px;font-size:24px}
.run-panel-top p{font-size:12px;margin-top:8px;max-width:740px}
.run-spinner{width:36px;height:36px;border:2px solid #e4ecfa;border-top-color:#648bdd;border-radius:50%;animation:spin 1.5s linear infinite;flex:none;margin-right:12px}
.run-emblem{width:46px;height:46px;background:#f0f5fe;color:#6e91d6;border-radius:14px;display:grid;place-items:center;font-size:23px;flex:none}
.run-metadata{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:#8d9bb0;border-top:1px solid #edf1f7;padding-top:17px;margin-top:23px;line-height:1.8}
.run-metadata strong{font-weight:500;color:#72849e;font-variant-numeric:tabular-nums}
.run-panel-actions{display:flex;align-items:center;gap:20px;margin-top:20px}
.run-panel-actions .button{font-size:11px;padding:8px 13px}
.writing-version{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px;padding:13px 15px;border-radius:8px;background:#f5f8ff;color:#6683b3;font-size:12px}
.writing-version p{flex-basis:100%;font-size:11px}
.execution-record{border-top:1px solid #edf1f7;margin-top:24px;padding-top:15px}
summary{cursor:pointer;color:#7486a0;font-size:12px;line-height:1.8}
.execution-record summary span{color:#a0adbf;font-size:10px;margin-left:5px}
.execution-record>p{margin-top:13px;font-size:10px}
.event-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:12px}
.event-list li{display:flex;gap:18px;font-size:11px;color:#6f819c;line-height:1.8;overflow-wrap:anywhere}
.event-list time{font-variant-numeric:tabular-nums;white-space:nowrap;color:#9cabc0;font-size:10px}
.event-list li>span{min-width:0}
.attempt-summary{display:flex;gap:12px;flex-wrap:wrap;color:#94a3b8;font-size:10px;margin-top:18px}
.submitted-essay{padding:25px 30px}
.submitted-essay h2{font-size:14px;margin-bottom:12px}
.submitted-essay details{margin-top:16px}
.submitted-essay .essay-prose{margin-top:18px;font-size:14px}
.submission-source{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 19px;background:#edf3ff;border:1px solid #e2eafd;border-radius:9px;margin-bottom:20px;font-size:11px}
.submission-source>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.submission-source strong{font-weight:550;color:#5976aa}
.submission-source .text-button{font-size:11px;white-space:nowrap}
.source-dot{height:5px;width:5px;display:inline-block;border-radius:50%;background:#6a91db}
.model-options,.byok-fields{margin:0;padding:0;border:0;min-width:0}
.model-options{display:grid;gap:9px;margin-bottom:22px}
.model-option{display:flex;align-items:center;gap:11px;border:1px solid var(--border);border-radius:8px;padding:14px;cursor:pointer}
.model-option:has(input:checked){border-color:#a6bfef;background:#f7faff}
.model-option input{width:15px;height:15px;margin:0;accent-color:var(--blue);flex:none}
.model-option strong{font-size:12px;font-weight:550}
.model-option small{display:block;color:#96a3b6;font-weight:400;font-size:10px;line-height:1.8;margin-top:4px}
.platform-note{font-size:12px;line-height:1.9;color:#8c99ad;background:#f6f8fc;padding:16px;border-radius:8px;margin-bottom:20px}
.chat-boundary{padding:8px 16px;font-size:9px;line-height:1.6;color:#9ba9be;background:#fafbfd;border-bottom:1px solid #edf1f8}
@media(max-width:760px){
  .workspace-intro{gap:18px;flex-wrap:wrap;padding:17px 0 23px}
  .workspace-intro p{flex-basis:100%;margin-left:0;margin-top:-8px;font-size:10px}
  .run-panel{padding:22px 20px}
  .run-panel-top h1{font-size:21px}
  .run-panel-top p{font-size:11px}
  .run-panel-top{gap:14px;align-items:flex-start}
  .run-spinner{width:25px;height:25px;margin:7px 0 0}
  .run-emblem{width:34px;height:34px;font-size:19px;border-radius:10px}
  .run-metadata{gap:8px 14px;font-size:9px}
  .run-panel-actions{gap:15px;flex-wrap:wrap}
  .run-panel-actions .text-button{font-size:11px}
  .event-list li{gap:10px;font-size:10px}
  .event-list time{font-size:9px}
  .submitted-essay{padding:22px 20px}
  .submission-source{padding:13px 15px;font-size:10px;align-items:flex-start}
  .submission-source .muted{flex-basis:100%;padding-left:15px}
  .submission-source .text-button{font-size:10px}
  .status-badge{font-size:9px}
  .record-meta{gap:7px;flex-wrap:wrap}
  .pending-placeholder{padding:30px 20px}
}
@media(prefers-reduced-motion:reduce){.run-spinner{animation:none}}
