/* The budget comes from #chat, including changes to quotes and the composer. */
.chat [data-chat-card-layout]{box-sizing:border-box;min-width:0;flex-shrink:0}
.chat [data-chat-card-folded]{display:none!important}
.chat [data-chat-card-layout]>.chat-card-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:30px;margin:8px 0 0;padding:4px 8px;border:0;border-top:1px solid var(--line,#e4e9e6);border-radius:0;background:transparent;color:var(--accent,#18765b);font:inherit;font-size:11px;line-height:20px;cursor:pointer}
.chat [data-chat-card-layout]>.chat-card-toggle:hover{background:var(--file-surface,#f3f7f4)}
.chat [data-chat-card-layout]>.chat-card-toggle:focus-visible{outline:2px solid var(--focus-ring,var(--accent,#18765b));outline-offset:2px;border-radius:4px}
.chat [data-chat-card-layout]:not(.chat-card-expanded) :is(.delivery-video,.delivery-image img,.group-result-video,.group-result-image img,.group-work-video,.group-work-image img,.hh-message-image img){max-height:var(--chat-card-media-height,260px)!important;width:auto;max-width:100%;height:auto;object-fit:contain}
.chat [data-chat-card-layout]:not(.chat-card-expanded) .group-result-video{width:100%;height:min(144px,var(--chat-card-media-height,144px))}
.chat [data-chat-card-layout]:not(.chat-card-expanded) .group-result-image img{width:100%;height:min(104px,var(--chat-card-media-height,104px))}
.chat [data-chat-card-layout]:not(.chat-card-expanded) .inline-html-frame{max-height:var(--chat-card-media-height,260px)}
.chat [data-chat-card-layout]:not(.chat-card-expanded) :is(.ask-title,.group-work-head>b,.group-work-item-title,.delivery-missing){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3.4em}
.chat [data-chat-card-layout]:not(.chat-card-expanded) :is(.task-card>p,.intro>p,.run-failure>p){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;max-height:6.8em}
.chat [data-chat-card-layout]:not(.chat-card-expanded) :is(.ask-option small,.group-work-option small){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3.4em}
.chat .delivery-package .delivery-layout.has-feature{grid-template-columns:minmax(0,min(38%,240px)) minmax(0,1fr);gap:18px}
.chat .delivery-package.delivery-portrait .delivery-layout.has-feature{grid-template-columns:minmax(0,210px) minmax(0,1fr)}
.chat .delivery-package.chat-card-narrow.delivery-portrait .delivery-layout.has-feature{grid-template-columns:minmax(88px,34%) minmax(0,1fr);gap:12px}
.chat .delivery-package.chat-card-narrow .delivery-layout.has-feature{grid-template-columns:minmax(88px,34%) minmax(0,1fr);gap:12px}
.chat .delivery-package.chat-card-stacked.delivery-portrait .delivery-layout.has-feature{grid-template-columns:minmax(0,1fr);gap:10px}
.chat .delivery-package.chat-card-stacked .delivery-layout.has-feature{grid-template-columns:minmax(0,1fr);gap:10px}
.chat .delivery-package.chat-card-narrow .file-name{flex-basis:70px}
.chat .delivery-package.chat-card-narrow .file-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat .delivery-package.chat-card-narrow .file-actions{gap:8px}
.chat .delivery-package.chat-card-narrow .delivery-media-stage{padding:0}
.chat [data-chat-card-layout].chat-card-tight:not(.chat-card-expanded){padding:10px}
.chat .delivery-package.chat-card-tight .chat-round-head{margin-bottom:8px}
.chat .delivery-package.chat-card-tight .delivery-layout{gap:10px}
.chat .delivery-package.chat-card-tight .artifact{padding-block:6px}
.chat .delivery-package.chat-card-tight .round-footer.actions{padding-top:8px}
.chat .delivery-package.chat-card-tight .artifact-card-preview{padding:4px 6px}
.chat .chat-card-tight:not(.chat-card-expanded) .artifact-card-text pre{-webkit-line-clamp:2;max-height:34px}
.chat .chat-card-tight:not(.chat-card-expanded) .artifact-card-page canvas{max-height:64px;width:auto!important;height:auto!important;object-fit:contain}
.chat .chat-card-tight:not(.chat-card-expanded) :is(.ask-option small,.group-work-option small){-webkit-line-clamp:1;max-height:1.7em}
.chat .chat-card-tight:not(.chat-card-expanded) :is(.ask-option,.group-work-option){margin-block:3px;padding-block:4px}
.chat .chat-card-tight:not(.chat-card-expanded) :is(.ask-text-input,.group-work-ask textarea){max-height:60px!important;min-height:34px;resize:none}
.chat .chat-card-summary:not(.chat-card-expanded) .artifact-card-preview{display:none}
.chat .chat-card-summary:not(.chat-card-expanded) .delivery-execution{gap:2px 10px;margin-top:5px;padding-top:4px}
.chat .chat-card-summary:not(.chat-card-expanded) .delivery-execution :is(.delivery-execution-tools,.delivery-execution-models){flex:1 1 35%}
.chat .chat-card-minimal:not(.chat-card-expanded) :is(.delivery-media-stage,.group-result-video,.group-result-image,.group-result-audio,.inline-html-surface,.hh-message-image img){display:none}
.chat .delivery-package.chat-card-minimal:not(.chat-card-expanded) :is(.delivery-execution,.delivery-related-label){display:none}
.chat .delivery-package.chat-card-minimal:not(.chat-card-expanded){padding:8px}
.chat .delivery-package.chat-card-minimal:not(.chat-card-expanded) .chat-round-head{margin-bottom:4px}
.chat .delivery-package.chat-card-minimal:not(.chat-card-expanded) .round-footer.actions{padding-top:0;margin-top:0;gap:4px}
.chat .delivery-package.chat-card-minimal:not(.chat-card-expanded) .round-footer button{min-height:28px;padding:3px 6px}
.chat .chat-card-minimal:not(.chat-card-expanded) :is(.ask-option small,.group-work-option small){display:none}
.chat .chat-card-minimal:not(.chat-card-expanded) :is(.ask-title,.group-work-head>b,.run-failure>p){-webkit-line-clamp:1;max-height:1.7em}
/* Preserve uncommon long content without allowing it to push the composer away. */
.chat .chat-card-scroll:not(.chat-card-expanded):not(.ask-card):not(.group-work-ask){max-height:var(--chat-card-budget);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.chat .chat-card-scroll:not(.chat-card-expanded)>.chat-card-toggle{position:sticky;bottom:0;z-index:2;background:var(--panel-surface,var(--surface,#fff))}
.chat .chat-card-scroll:not(.chat-card-expanded) .round-footer.actions{position:sticky;bottom:38px;z-index:1;background:var(--panel-surface,var(--surface,#fff))}
/* Preserve the complete file list before collapsing media or individual files. */
.chat .delivery-package.chat-card-brief:not(.chat-card-expanded) :is(.delivery-related-label,.delivery-execution){display:none}
.chat .delivery-package.chat-card-brief:not(.chat-card-expanded) .artifact{padding-block:3px}
.chat .delivery-package.chat-card-brief:not(.chat-card-expanded) .file-actions a{min-height:22px}
.chat .delivery-package.chat-card-brief:not(.chat-card-expanded) .round-footer.actions{padding-top:4px}
.chat .delivery-package.chat-card-brief:not(.chat-card-expanded) .round-footer button{min-height:28px;padding:4px 6px}
/* Extremely short viewports keep confirmation controls outside the answer scroll. */
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded){display:flex;flex-direction:column;max-height:var(--chat-card-budget);overflow:hidden}
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded) .ask-header{flex:none}
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded) .ask-form{display:flex;flex-direction:column;flex:1;min-height:0}
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded) :is(.ask-form fieldset,.ask-review){flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded) :is(.ask-actions,.ask-progress,.ask-error,.chat-card-toggle){flex:none}
.chat .ask-card.chat-card-scroll:not(.chat-card-expanded) .ask-error{max-height:54px;overflow:auto}
.chat .group-work-ask.chat-card-scroll:not(.chat-card-expanded){display:flex;flex-direction:column;max-height:var(--chat-card-budget);overflow:hidden}
.chat .group-work-ask.chat-card-scroll:not(.chat-card-expanded) fieldset{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.chat .group-work-ask.chat-card-scroll:not(.chat-card-expanded) :is(h4,.group-work-ask-actions,.group-work-ask-error,.chat-card-toggle){flex:none}
.chat .group-work-ask.chat-card-scroll:not(.chat-card-expanded) .group-work-ask-error{max-height:54px;overflow:auto}
.chat .chat-card-expanded [data-chat-card-folded]{display:revert!important}
.chat .chat-card-expanded :is(.artifact-card-content pre,.ask-title,.ask-option small,.group-work-option small,.group-work-head>b,.group-work-item-title,.task-card>p,.intro>p,.run-failure>p,.delivery-missing){-webkit-line-clamp:unset;max-height:none;overflow:visible}
.chat .chat-card-expanded .artifact-card-content pre{display:block}
.chat .chat-card-expanded .inline-html-frame{max-height:none}
@media(hover:none){.chat [data-chat-card-layout]>.chat-card-toggle{min-height:36px;font-size:12px}}
@media(min-height:501px) and (max-height:650px){
 body:not(.delivery-viewer) .frame.chat-focused .composer{--wechat-input-min:64px;--wechat-input-max:120px;--wechat-tools-height:30px;padding-block:6px}
 body:not(.delivery-viewer) .frame.chat-focused .composer .composer-footer{min-height:24px;padding-top:3px}
 .frame.chat-focused .header{height:56px;min-height:56px;padding-block:6px}
 .frame.chat-focused .conversation-progress{min-height:32px;padding-block:3px}
}
@media(max-height:500px){
 body:not(.delivery-viewer) .frame.chat-focused .composer{--wechat-input-min:34px;--wechat-input-max:58px;--wechat-tools-height:28px;padding-block:4px max(4px,env(safe-area-inset-bottom))}
 body:not(.delivery-viewer) .frame.chat-focused .composer .composer-box{row-gap:2px;min-height:64px}
 body:not(.delivery-viewer) .frame.chat-focused .composer .composer-box #chat-input{min-height:34px;max-height:58px;padding-block:3px;line-height:22px}
 body:not(.delivery-viewer) .frame.chat-focused .composer .composer-footer{min-height:22px;padding-top:2px}
 .frame.chat-focused .header{height:42px;min-height:42px;padding-block:4px}
 .frame.chat-focused .header h1{font-size:15px;line-height:21px}
 .frame.chat-focused .header p{display:none}
 .frame.chat-focused .context{min-height:30px;padding-block:3px}
 .frame.chat-focused .context :is(button,a){min-height:24px;padding-block:2px}
 .frame.chat-focused .conversation-progress{min-height:28px;padding-block:2px}
 .frame.chat-focused .conversation-progress #work-toggle{min-height:24px;padding-block:2px}
 .frame.chat-focused .chat{padding-block:6px;scroll-padding-block:6px;gap:12px}
 .frame.chat-focused .composer-reply{margin-bottom:4px;padding-block:4px}
 .frame.chat-focused.group-frame #group-controls{min-height:28px;padding-block:2px}
}
@media(prefers-reduced-motion:reduce){.chat [data-chat-card-layout]{scroll-behavior:auto}}
