.dialogue-page{--ink:#102637;--steel:#526874;--mint:#08796d;--mist:#edf2f1;--paper:#fff;--alert:#a53535;--reply-blue:#205a82;--reply-blue-surface:#edf5fc;--reply-teal:#12665f;--reply-teal-surface:#eaf6f3;--reply-violet:#514574;--reply-violet-surface:#f2f0f8;--reply-warning:#85501c;--reply-warning-surface:#fff5e6;--reply-keyword:#e0edf2;--reply-option-line:#9ebfbc;--reply-option-selected:#dceee9;background:var(--mist)}
.repair-desk{max-width:1440px;margin:0 auto;padding:28px 3vw 44px}
.desk-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}
.desk-label,.case-label,.speaker{font:700 12px/1.6 Consolas,monospace;color:var(--steel);letter-spacing:.06em}
.desk-label{margin:0 0 5px;color:var(--mint)}.desk-heading h1{font-family:Bahnschrift,"Microsoft YaHei",sans-serif;font-size:30px;line-height:1.3;margin:0;letter-spacing:.02em}
.desk-heading>p{font-size:13px;line-height:1.8;color:var(--steel);margin:0}
.model-warning{padding:12px 16px;border-left:3px solid var(--alert);background:var(--paper);color:var(--alert);font-size:13px;line-height:1.7}
.desk-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start}
.check-rack{padding:22px;background:var(--paper);border-top:4px solid var(--ink);position:sticky;top:94px}
.case-label{display:flex;justify-content:space-between;gap:8px;font-size:11px}.check-rack h2{font-size:21px;margin:10px 0 22px}
.case-details>summary{cursor:pointer;font-size:12px;color:var(--steel);line-height:1.7;margin-bottom:14px}.case-details[open]>summary{color:var(--mint)}.case-details .session-note{margin-top:14px}
.phase-track{list-style:none;padding:0;margin:0 0 24px;counter-reset:phase;display:grid;gap:0}
.phase-track li{counter-increment:phase;position:relative;padding:8px 0 8px 30px;color:var(--steel);font-size:13px}
.phase-track li:before{content:counter(phase);position:absolute;left:0;border:1px solid var(--steel);border-radius:50%;width:18px;height:18px;display:grid;place-items:center;font:11px Consolas,monospace}
.phase-track .current{color:var(--mint);font-weight:700}.phase-track .current:before{background:var(--mint);color:var(--paper);border-color:var(--mint)}
.pending-note{margin:0 -22px;padding:18px 22px;border-left:4px solid var(--mint);background:var(--mist)}
.pending-note h3{font-size:14px;margin:0 0 12px}.pending-note ol{padding-left:19px;margin:0;line-height:1.8;font-size:13px;overflow-wrap:anywhere}
.pending-note li+li{margin-top:10px}.pending-note p{font-size:12px;line-height:1.8;color:var(--steel);margin:12px 0 0}
.case-actions{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 12px}
.case-actions button,.feedback-actions button{background:var(--paper);border:1px solid #cbd5d8;border-radius:4px;padding:8px 10px;color:var(--ink);font-size:12px}
.session-note{font-size:11px;line-height:1.8;color:var(--steel);margin:0}
.chat-bench{min-width:0;background:var(--paper);border:1px solid #cbd5d8;border-radius:8px;overflow:hidden}
.bench-head{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #cbd5d8}
.bench-head h2{font-size:16px;margin:0}.bench-head>span{font-size:12px;color:var(--steel)}
.thread{height:clamp(280px,47vh,600px);min-height:280px;overflow-y:auto;overscroll-behavior:contain;padding:24px;scrollbar-gutter:stable}
.empty-dialogue{padding:30px 12px;max-width:600px}.empty-dialogue h3{font-size:22px;line-height:1.5;margin:0 0 18px}.empty-dialogue p{font-size:14px;line-height:1.9;color:var(--steel)}
.message{max-width:94%;margin-bottom:24px;overflow-wrap:anywhere}.message p{font-size:14px;line-height:1.9;white-space:pre-wrap;margin:7px 0 0}
.user-message{margin-left:12%;background:var(--mist);padding:12px 16px;border-radius:10px 10px 2px 10px}.assistant-message{border-left:3px solid var(--mint);padding:0 0 0 16px}
.assistant-message .message-body{max-width:42em;margin-top:10px;text-align:left;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:16px;line-height:1.75;color:var(--ink)}
.assistant-message .message-body p{font:inherit;margin:0;white-space:pre-wrap}
.assistant-message .message-body p+p{margin-top:12px}
.assistant-message .reply-section{margin:12px 0 0;padding:0}
.assistant-message .reply-section:first-child{margin-top:0}
.assistant-message .message-body .reply-focus,.assistant-message .message-body .reply-safety{padding:14px 16px;border-radius:0 10px 10px 0;border-left:3px solid var(--reply-blue);background:var(--reply-blue-surface);color:var(--ink)}
.assistant-message .message-body .reply-focus-question{border-color:var(--reply-blue);background:var(--reply-blue-surface)}
.assistant-message .message-body .reply-focus-action{border-color:var(--reply-teal);background:var(--reply-teal-surface)}
.assistant-message .message-body .reply-focus-conclusion{border-color:var(--reply-violet);background:var(--reply-violet-surface)}
.assistant-message .message-body .reply-safety{border-color:var(--reply-warning);background:var(--reply-warning-surface);color:var(--reply-warning)}
.assistant-message .message-body .reply-helper{font-size:14px;line-height:1.75;color:var(--steel)}
.assistant-message .message-body .reply-context{color:var(--steel)}
.assistant-message .message-body ul,.assistant-message .message-body ol{margin:10px 0;padding-left:1.5em}
.assistant-message .message-body li{padding:2px 0;font:inherit;white-space:pre-wrap}
.assistant-message .message-body strong{font-weight:700;color:var(--ink)}
.assistant-message .message-body strong.reply-keyword{padding:1px 3px;border-radius:3px;background:var(--reply-keyword);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.assistant-message .reply-focus-question strong{color:var(--reply-blue)}
.assistant-message .reply-focus-action strong{color:var(--reply-teal)}
.assistant-message .reply-focus-conclusion strong{color:var(--reply-violet)}
.assistant-message .message-body .reply-safety strong{color:inherit;background:transparent;padding:0}
.reply-choices{margin-top:16px;max-width:42em;min-width:0}
.assistant-message .reply-choices-hint{margin:0 0 10px;font-size:13px;line-height:1.7;color:var(--steel)}
.reply-choice-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.reply-choice{display:flex;align-items:center;gap:10px;min-height:52px;min-width:0;width:100%;padding:12px;border:1px solid var(--reply-option-line);border-radius:10px;background:var(--paper);color:var(--ink);text-align:left;font:15px/1.6 "Microsoft YaHei","PingFang SC",sans-serif;cursor:pointer;touch-action:manipulation;transition:background-color 120ms ease,border-color 120ms ease}
.reply-choice:hover:not(:disabled),.reply-choice:active:not(:disabled){background:var(--reply-teal-surface);border-color:var(--mint)}
.reply-choice-number{display:grid;place-items:center;flex-shrink:0;width:1.5em;height:1.5em;min-width:24px;min-height:24px;border-radius:6px;background:var(--mint);color:var(--paper);font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}
.reply-choice-label{min-width:0;flex:1;overflow-wrap:anywhere}
.reply-choice-state{flex-shrink:0;font-size:12px;font-weight:700;color:var(--reply-teal)}
.dialogue-page .reply-choice:disabled{cursor:default;opacity:1;background:var(--mist);color:var(--steel)}
.dialogue-page .reply-choice-selected,.dialogue-page .reply-choice-selected:disabled{border-color:var(--mint);background:var(--reply-option-selected);color:var(--ink);box-shadow:inset 0 0 0 1px var(--mint)}
.reply-table-wrap{max-width:100%;margin:14px 0;overflow-x:auto;border:1px solid #cbd5d8;border-radius:6px}
.assistant-message .reply-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:14px;line-height:1.7}
.assistant-message .reply-table th,.assistant-message .reply-table td{padding:9px 10px;text-align:left;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere;border-bottom:1px solid #cbd5d8;border-right:1px solid #cbd5d8}
.assistant-message .reply-table th{background:var(--mist);font-weight:700}
.assistant-message .reply-table tr:last-child td{border-bottom:0}.assistant-message .reply-table :is(th,td):last-child{border-right:0}
@media(max-width:480px){.reply-choice-options{grid-template-columns:minmax(0,1fr)}.reply-choice{font-size:16px}.assistant-message .message-body .reply-focus,.assistant-message .message-body .reply-safety{padding:12px}.assistant-message .reply-table{font-size:13px}.assistant-message .reply-table th,.assistant-message .reply-table td{padding:8px 6px}}
.assistant-message .speaker{color:var(--mint)}.composer-zone{padding:0 24px 16px;border-top:1px solid #cbd5d8}
.message-status{display:block;margin-top:6px;font-size:11px;color:var(--steel)}
.reply-placeholder{border-left:3px solid var(--mint);padding-left:16px}
.reply-placeholder .reply-status{font-size:13px;color:var(--steel)}
.reply-placeholder[data-state="uncertain"],.reply-placeholder[data-state="rejected"]{border-color:var(--alert)}
.retry-message{margin-top:10px;padding:7px 12px;border:1px solid var(--mint);border-radius:4px;background:var(--paper);color:var(--mint);font-size:12px;cursor:pointer}
.send-status{font-size:12px;color:var(--steel);min-height:18px;margin:10px 0;line-height:1.7}
.feedback-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.feedback-actions button{color:var(--mint);border-color:var(--mint)}
.composer-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px;font-size:12px;font-weight:700}
.role-select{display:flex;align-items:center;gap:8px;font-weight:400;color:var(--steel)}.role-select select{padding:4px;background:var(--paper);border:1px solid #cbd5d8;color:var(--ink);font-size:12px}
#message{display:block;width:100%;resize:vertical;min-height:88px;max-height:300px;line-height:1.8;font-size:14px;border:1px solid #9aafb5;border-radius:4px;padding:10px 12px;background:var(--paper);color:var(--ink)}
.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px}
.composer-tools{position:relative;display:flex;align-items:center;gap:10px;min-width:0}
.attachment-toggle{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border:1px solid #9aafb5;border-radius:8px;background:var(--paper);color:var(--mint);font-size:25px;line-height:1}
.attachment-toggle:hover,.attachment-toggle[aria-expanded="true"]{border-color:var(--mint);background:var(--mist)}
.tooltray-label{font-size:12px;color:var(--steel)}
.attachment-menu{position:absolute;bottom:calc(100% + 10px);left:0;z-index:5;width:270px;max-width:calc(100vw - 64px);padding:8px;border:1px solid #cbd5d8;border-top:3px solid var(--mint);border-radius:8px;background:var(--paper);box-shadow:0 10px 32px rgba(16,38,55,.16)}
.attachment-menu>p{font:700 11px/1.5 Consolas,"Microsoft YaHei",sans-serif;color:var(--steel);margin:4px 10px 8px}
.attachment-menu>button{display:flex;align-items:center;gap:12px;text-align:left;width:100%;border:0;border-radius:4px;background:var(--paper);color:var(--ink);padding:11px 10px;font-size:13px}
.attachment-menu>button:hover{background:var(--mist)}.attachment-menu small{display:block;color:var(--steel);font-size:10px;line-height:1.6;margin-top:3px}
.attachment-menu .menu-footnote{margin:6px 10px 3px;padding-top:9px;border-top:1px solid #cbd5d8}
.menu-icon{display:grid;place-items:center;width:30px;flex-shrink:0;color:var(--mint);font:24px/1 Consolas,monospace}.menu-code{font-size:11px;font-weight:700;letter-spacing:.02em}
.draft-attachments{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;min-width:0}
.draft-image,.draft-document{display:flex;align-items:center;gap:9px;max-width:100%;min-width:0;padding:7px 8px;background:var(--mist);border:1px solid #cbd5d8;border-radius:6px;font-size:12px}
.draft-image>div,.draft-document>div{min-width:0;max-width:210px}.draft-image>div>span:first-child,.draft-document>div>span:first-child{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.draft-thumbnail{border:0;padding:0;background:var(--paper);width:48px;height:48px;flex-shrink:0;border-radius:3px;overflow:hidden}.draft-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.attachment-kind{display:block;font-size:10px;color:var(--steel);margin-top:5px}
.remove-attachment{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border:0;border-radius:4px;background:transparent;color:var(--steel);font-size:19px;padding:0}.remove-attachment:hover{color:var(--alert);background:var(--paper)}
.vehicle-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.vehicle-chip{display:flex;align-items:center;max-width:100%;border:1px solid #cbd5d8;border-radius:5px;background:var(--paper)}
.edit-vehicle{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:290px;border:0;background:transparent;color:var(--mint);padding:8px 9px;font:12px/1.5 Consolas,"Microsoft YaHei",sans-serif}
.message-attachments{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px;margin-top:10px;max-width:100%}
.message-image{display:block;width:200px;max-width:100%;padding:4px;border:1px solid #cbd5d8;background:var(--paper);border-radius:6px;text-align:left;overflow:hidden}
.message-image img{display:block;width:100%;height:150px;object-fit:contain;background:var(--mist)}.message-image>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;padding:7px 5px;color:var(--steel)}
.message-document{display:flex;align-items:center;gap:10px;max-width:100%;min-width:0;border:1px solid #cbd5d8;border-radius:6px;padding:12px;background:var(--paper);color:var(--ink);text-decoration:none}
a.message-document:hover{border-color:var(--mint)}.file-stamp{display:grid;place-items:center;flex-shrink:0;width:38px;height:42px;border-left:3px solid var(--mint);background:var(--mist);font:700 10px/1 Consolas,monospace;color:var(--mint)}
.file-details{display:block;min-width:0}.file-details>span{display:block;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.file-details small{display:block;margin-top:4px;color:var(--steel);font-size:10px}.attachment-note{flex-basis:100%;font-size:11px;line-height:1.7;color:var(--steel)}
.attachment-dialog{padding:22px;border:1px solid #9aafb5;border-top:4px solid var(--mint);border-radius:8px;color:var(--ink);background:var(--paper);max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);box-shadow:0 20px 60px rgba(16,38,55,.2)}
.attachment-dialog::backdrop{background:rgba(16,38,55,.6)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-heading h2{margin:0;font:700 18px/1.5 Bahnschrift,"Microsoft YaHei",sans-serif}.dialog-close{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;padding:0;border:0;border-radius:4px;background:var(--mist);color:var(--steel);font-size:24px}
.vehicle-dialog{width:460px}.vehicle-dialog>p{font-size:12px;line-height:1.8;color:var(--steel);margin:10px 0 20px}.vehicle-inputs{display:grid;gap:18px}.vehicle-inputs label{font-size:12px;font-weight:700}.vehicle-inputs input{display:block;width:100%;min-width:0;margin-top:7px;padding:10px;border:1px solid #9aafb5;border-radius:4px;color:var(--ink);background:var(--paper);font:13px/1.6 Consolas,"Microsoft YaHei",sans-serif}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-actions button{border:1px solid #cbd5d8;border-radius:4px;background:var(--paper);color:var(--ink);padding:9px 20px;font-size:13px}.dialog-actions .confirm-attachment{border-color:var(--mint);background:var(--mint);color:var(--paper)}
.image-viewer{width:fit-content;max-width:min(1000px,calc(100vw - 32px));padding:16px}.image-viewer>img{display:block;max-width:100%;max-height:calc(100dvh - 170px);object-fit:contain;margin:14px auto 0}.image-viewer>p{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--steel);overflow-wrap:anywhere}
.send-button{background:var(--ink);color:var(--paper);border:0;border-radius:4px;padding:12px 18px;font-size:14px;white-space:nowrap}
.safety-foot{font-size:11px;line-height:1.7;color:var(--steel);margin:12px 0 0}
.dialogue-sources{padding:14px 24px;border-top:1px solid #cbd5d8;font-size:12px;color:var(--steel)}.dialogue-sources summary{cursor:pointer;color:var(--mint)}.dialogue-sources p{line-height:1.8}.dialogue-sources a{color:var(--mint)}
.reference-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reference-images figure{margin:0}.reference-images img{max-width:100%;height:110px;object-fit:contain}.reference-images figcaption{line-height:1.7;font-size:11px}
.dialogue-page :is(button,input,textarea,select,summary,a):focus-visible{outline:3px solid var(--mint);outline-offset:3px}
.dialogue-page button:disabled{opacity:.5;cursor:wait}.dialogue-page .toast{max-width:min(520px,90vw);line-height:1.7}
@media(max-width:900px){.desk-grid{grid-template-columns:220px minmax(0,1fr);gap:14px}.check-rack{padding:18px}.pending-note{margin:0 -18px;padding:16px 18px}.desk-heading>p{display:none}.bench-head{padding:16px}.bench-head>span{display:none}.thread{padding:18px}.composer-zone{padding:0 16px 16px}.composer-bottom{flex-wrap:wrap}.send-button{margin-left:auto}}
@media(max-width:680px){.repair-desk{padding:20px 12px 30px}.desk-heading h1{font-size:25px}.desk-grid{grid-template-columns:1fr}.check-rack{position:static;padding:16px}.check-rack h2{margin:6px 0 12px;font-size:18px}.phase-track{display:flex;justify-content:space-between;gap:6px;margin:0 0 12px}.phase-track li{padding:0;font-size:11px}.phase-track li:before{display:none}.pending-note{margin:0 -16px;padding:12px 16px}.case-actions{margin:12px 0 8px}.session-note{font-size:10px}.thread{height:370px}.empty-dialogue{padding:12px 0}.empty-dialogue h3{font-size:19px}.message{max-width:100%}.composer-top{align-items:flex-start}.role-select{font-size:11px}.composer-bottom{gap:12px;flex-wrap:nowrap}.composer-bottom .send-button{width:auto}.topbar{height:60px}.reference-images{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-image>div,.draft-document>div{max-width:190px}.edit-vehicle{max-width:246px}.attachment-dialog{padding:16px}.image-viewer{padding:12px}}
@media(prefers-reduced-motion:reduce){.dialogue-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
