/* Selected concept 1: white conversation, stacked reference and requirements. */
:root{--chat-text:#202b30;--reference-surface:#f3f5f7}
main{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
.conversation{background:#fff;border-right:1px solid #dfe4e8;box-shadow:none;color:var(--chat-text);position:relative;min-width:0}
.conversation-head{background:#fff;border:0;min-height:100px;padding:24px 30px;grid-template-columns:42px minmax(0,1fr) 48px;gap:14px}
.conversation-head .agent-icon{width:42px;height:42px;border-radius:50%}
.conversation-head h1{font-size:22px;color:#202b30;letter-spacing:0}
.conversation-head p{font-size:13px;color:#6a747d}.conversation-head p i{display:none}
.message-history>.messages{padding:22px 32px 28px;scrollbar-gutter:stable}
.messages .date{font-size:12px;color:#879198;margin-bottom:28px}
.message{margin-bottom:32px;max-width:92%;color:var(--chat-text)}
.message.agent{border:1px solid #e5e9ed;border-radius:14px;padding:16px 20px;background:#fff;width:fit-content}
.message.agent+.message.agent{margin-top:0}
.message.agent:has(.chat-activity){width:100%}
.message.user{margin-left:auto;background:#f1f3f5;border:0;border-radius:16px;padding:15px 20px;max-width:85%;color:#202b30}
.message p,.message .muted{font-size:16px;line-height:1.65;margin:0;max-width:65ch}
.message p+p{margin-top:10px}.message .muted{color:#68757e}
.byline{font-size:12px;letter-spacing:.3px;color:#496b5e;margin-bottom:7px}
.composer-wrap{background:#fff;border:0;padding:18px 28px 12px}
.composer{background:#fff;border:1px solid #b2c1ba;border-radius:13px;padding:16px;box-shadow:0 3px 12px #1d363908}
.composer:focus-within{border-color:#235c48;box-shadow:0 0 0 2px #235c4812}
.composer textarea{color:#202b30;font-size:16px;min-height:64px;line-height:1.65}
.composer textarea::placeholder{color:#818a90}
.composer .send:not(:disabled){background:#235c48;color:#fff}
.composer-note{color:#78838b;font-size:12px}
#agentGuide{background:transparent;border:0;padding:0;margin-bottom:9px}
#agentGuide>.guide-quote{background:transparent}
.workspace{background:var(--reference-surface);min-width:0}
.workspace .workflow{display:none}
.summary-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:27px 26px 18px;flex-shrink:0}
.summary-workspace-head>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.summary-workspace-head h2{margin:0;font-size:20px;font-weight:650;letter-spacing:0;color:#202b30}
.summary-workspace-head span{font-size:12px;color:#7a848d}
.summary-workspace-head button{color:#4d6860;font-size:14px;min-height:40px;padding:8px 12px;border-radius:7px}
.summary-workspace-head button:hover{background:#e8eeeb}
.workspace:not([data-step="1"]) .summary-workspace-head{display:none}
.workspace .workspace-scroll,.workspace[data-step="1"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll{display:block;padding:0 26px 16px;scroll-padding-top:16px}
.workspace[data-step="0"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll{padding-top:24px}
.workspace[data-step="1"] .stage-head{display:none}
.workspace[data-step="1"] .model-panel,.workspace[data-step="2"] .model-panel{position:static;grid-column:auto;grid-row:auto;margin-bottom:16px}
.model-panel .stage,.model-panel .stage:has(.vision-toolbar:not([hidden])){height:clamp(230px,29vh,360px);border-radius:12px;border:1px solid #dfe4e8;background:#eef0f2}
.model-panel .stage.vision-scanning{height:380px}
.model-panel .model-actions{margin-top:4px;font-size:12px;color:#7a858b}
.model-panel .vision-toolbar{background:#f7f8f9;border-color:#e2e6e9}
.model-panel .vision-toolbar .vision-modes{background:#eef0f2}
.model-panel .reference-curtain{background:#f5f6f7}
#specSection,#quoteSection{min-width:0;grid-column:auto;grid-row:auto}
#specSection>.section-heading,#specSection>.field-note{display:none}
#specSection>.match-card{display:none}
#specSection:has(.is-editing)>.match-card{display:flex;background:#fff;border:1px solid #dfe4e8;padding:12px;border-radius:10px;margin-bottom:12px}
#fields.guided-fields{background:#fff;border:1px solid #e5e9ed;border-radius:12px;padding:4px 22px;overflow:hidden}
#fields>.intake-progress,#fields>.intake-help{display:none}
#fields>.intake-card{border:0;border-bottom:1px solid #e7ebee;border-radius:0;margin:0;padding:0;box-shadow:none;background:#fff;overflow:visible}
#fields>.intake-card:last-of-type{border-bottom:0}
#fields .requirement-heading,#fields .requirement-editor{display:none}
#fields.is-editing .requirement-heading{display:flex;background:#f8faf9;padding:16px 0 10px}
#fields.is-editing .requirement-heading small{font-size:12px;color:#78867e}
#fields.is-editing .requirement-editor{display:block;border-color:#e7ebee}
#fields .requirement-editor>summary{padding:12px 0!important}
#fields .requirement-editor .intake-card-body{padding:8px 0 18px}
#fields .requirement-summary{padding:0;margin:0}
#fields .requirement-summary>div{grid-template-columns:100px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid #e7ebee;align-items:start}
#fields .requirement-summary>div:last-child{border-bottom:0}
#fields .requirement-summary dt{font-size:14px;color:#6f7a81;line-height:1.6}
#fields .requirement-summary dd{font-size:15px;line-height:1.6;color:#233039;font-variant-numeric:tabular-nums}
#fields .fact-status.known{display:none}
#fields .fact-status.missing,#fields .fact-status.unknown{color:#94641e;background:transparent;padding:0}
#fields .requirement-summary dd:has(.fact-status.missing)>span:first-child{color:#94641e}
#fields .requirement-summary dd>span:last-child:has(.fact-status.known){display:none}
#fields .intake-ready{margin:16px 0;padding:16px;background:#f6f8f7;border-color:#dfe7e2}
#fields #intakeError:empty{margin:0}
.summary-reference-note{font-size:12px;color:#78838a;line-height:1.7;margin:18px 0}
.workspace-foot{border:0;margin-top:8px;color:#8a9499}
.composer>.composer-image{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:8px;background:#f5f6f7;border:1px solid #e0e5e8;border-radius:9px;min-width:0}
.composer>.composer-image[hidden]{display:none}
.composer-image img{width:58px;height:58px;object-fit:contain;border-radius:5px;background:#fff;flex-shrink:0}
.composer-image>div{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.composer-image strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.composer-image small{font-size:12px;color:#68777e}
.composer-image button{flex-shrink:0;color:#496d59;font-size:23px}
.conversation.image-dragging::after{content:'松开图片，添加到消息';position:absolute;inset:8px;display:grid;place-items:center;border:2px dashed #287354;border-radius:12px;background:#f4f8f6ed;z-index:20;pointer-events:none;color:#205b40;font-size:20px;font-weight:600}
@media(min-width:1700px){.conversation-head{padding:28px 40px}.message-history>.messages{padding:24px 40px 32px}.composer-wrap{padding:20px 32px 14px}.message{margin-bottom:40px}.message p,.message .muted{font-size:18px}.composer textarea{font-size:18px}.summary-workspace-head{padding:28px 30px 18px}.workspace[data-step="1"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll,.workspace .workspace-scroll{padding-inline:30px}#fields .requirement-summary>div{padding:16px 0}}
@media(min-width:761px) and (max-width:1100px){main{grid-template-columns:minmax(0,52fr) minmax(0,48fr)}.conversation-head{padding:18px;gap:10px}.conversation-head h1{font-size:20px}.message-history>.messages{padding:16px 18px}.composer-wrap{padding:14px 16px 8px}.summary-workspace-head{padding:20px 16px 14px}.summary-workspace-head h2{font-size:18px}.summary-workspace-head span{font-size:12px}.workspace .workspace-scroll,.workspace[data-step="1"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll{padding-inline:16px}#fields.guided-fields{padding-inline:15px}#fields .requirement-summary>div{grid-template-columns:76px minmax(0,1fr);gap:10px}#fields .requirement-summary dd{font-size:15px}.message.agent{padding:12px 14px}.message.user{max-width:95%}}
@media(max-width:760px){main{display:block}.conversation{border:0}.conversation-head{min-height:76px;padding:16px 18px;gap:10px;grid-template-columns:36px minmax(0,1fr) 42px}.conversation-head .agent-icon{width:36px;height:36px}.conversation-head h1{font-size:20px}.conversation-head p{font-size:12px}.message-history>.messages{padding:18px 18px 24px}.message{max-width:96%;margin-bottom:24px}.message.agent{padding:12px 14px}.message.user{max-width:91%;padding:12px 14px}.composer-wrap{padding:12px 14px max(8px,env(safe-area-inset-bottom))}.composer{padding:12px}.composer textarea{min-height:50px}.composer-note{font-size:12px}.summary-workspace-head{padding:16px 16px 12px}.summary-workspace-head h2{font-size:18px}.summary-workspace-head span{font-size:12px}.workspace .workspace-scroll,.workspace[data-step="1"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll{padding:0 14px 14px}.workspace[data-step="0"] .workspace-scroll,.workspace[data-step="2"] .workspace-scroll{padding-top:16px}.model-panel .stage,.model-panel .stage:has(.vision-toolbar:not([hidden])){height:240px}#fields.guided-fields{padding-inline:16px}#fields .requirement-summary>div{grid-template-columns:78px minmax(0,1fr);gap:12px;padding:12px 0}#fields .requirement-summary dt{font-size:13px}#fields .requirement-summary dd{font-size:15px}.summary-reference-note{font-size:12px}}

#fields .requirement-summary dd>span:last-child:has(.fact-status.missing){display:none}
@media(min-width:1200px){.message p,.message .muted{font-size:18px}.composer textarea{font-size:18px}#fields .requirement-summary dt{font-size:14px}#fields .requirement-summary dd{font-size:16px}}

/* Keep auxiliary controls legible alongside the conversation text. */
.composer .chat-keyboard-hint{font-size:12px}
.composer #attach{font-size:14px}
.composer-wrap>.guided-question .quick-action{font-size:14px}

/* Compact receipts, with the follow-up kept at the normal conversation size. */
.chat-activity-heading{font-size:12px}
.message .chat-message-text{font-size:16px;line-height:1.65}
@media(min-width:1200px){.message .chat-message-text{font-size:18px}}
/* A persistent photo entry, even before a reference image has been uploaded. */
.reference-photo-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#fff;border-bottom:1px solid #e2e6e9;border-radius:10px;margin-bottom:8px;min-height:44px}
.reference-photo-actions button{border:0;background:transparent;border-radius:6px;color:#345d4c;font-size:13px;min-height:30px;padding:4px 6px;cursor:pointer}
.reference-photo-actions button:last-child{margin-left:auto}

/* Compact conversation rhythm: preserve the full transcript, reduce its footprint. */
.conversation-head{min-height:76px;padding:14px 24px;gap:12px}
.conversation-head .agent-icon{width:36px;height:36px}
.conversation-head h1{font-size:20px;margin-bottom:4px}
.conversation-head p{font-size:12px}
.message-history>.messages{padding:12px 24px 16px}
.messages .date{margin-bottom:16px}
.message{margin-bottom:14px}
.message.agent{padding:10px 14px;border-radius:10px}
.message.user{padding:10px 14px;border-radius:12px}
.message p,.message .muted,.message .chat-message-text{font-size:16px;line-height:1.55}
.message p+p{margin-top:6px}
.byline{margin-bottom:4px}
.chat-message-copy{margin-top:7px}
.chat-activity{margin:0;padding:0 0 0 10px}
.chat-activity:not(:has(.chat-quote-receipt)){display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px}
.chat-activity-heading{margin-bottom:3px;line-height:1.5}
.chat-event-row{padding:1px 0;gap:4px;line-height:1.5}
.chat-event-value{font-size:13px}
.chat-event-history{flex-basis:100%;margin:0}
.composer-wrap{padding:10px 24px 8px}
.composer{padding:10px 12px}
.composer textarea{font-size:16px;min-height:44px;line-height:1.55}
.composer-note{margin-top:4px}
#agentGuide{margin-bottom:6px}
.summary-workspace-head{padding:19px 26px 14px}
.summary-workspace-head h2{font-size:18px}
#fields .requirement-summary dt{font-size:13px}
#fields .requirement-summary dd{font-size:15px}
#fields .requirement-summary>div{padding:11px 0}
@media(max-width:760px){
 .conversation-head{min-height:66px;padding:10px 16px;grid-template-columns:32px minmax(0,1fr) 42px;gap:10px}
 .conversation-head .agent-icon{width:32px;height:32px}
 .conversation-head h1{font-size:18px}
 .message-history>.messages{padding:10px 14px 14px}
 .message{margin-bottom:12px}
 .message.agent,.message.user{padding:9px 12px}
 .message p,.message .muted,.message .chat-message-text{font-size:15px}
 .composer-wrap{padding:8px 14px max(8px,env(safe-area-inset-bottom))}
 .summary-workspace-head{padding:12px 14px}
 .summary-workspace-head h2{font-size:17px}
 #fields .requirement-summary dd{font-size:14px}
 #fields .requirement-summary>div{padding:10px 0}
}
