/* A full-height composer replaces the narrow, stacked legacy panels. */
body.dock-open .workspace{grid-template-columns:52px 368px minmax(0,1fr)}
@media(min-width:1600px){body.dock-open .workspace{grid-template-columns:52px 400px minmax(0,1fr)}}
@media(max-width:1050px){body.dock-open .workspace{grid-template-columns:44px 330px minmax(0,1fr)}}
@media(max-width:700px){body.dock-open .workspace{grid-template-columns:40px minmax(260px,46vw) minmax(0,1fr)}}
#panelDock{min-width:0;min-height:0}#panelDock[hidden]{display:none!important}
.generation-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:10px 12px;flex:none;border-bottom:1px solid var(--line)}
.generation-mode-switch button{padding:9px 6px;font-size:12px;line-height:1.4;white-space:normal}
.generation-mode-switch button[aria-pressed=true]{border-color:var(--accent);background:var(--ui-hover,#393327);color:var(--accent)}
.six-step-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:10px 12px;flex:none;border-bottom:1px solid var(--line)}
.six-step-tabs[hidden],.direct-agent[hidden],#dockBody[hidden],#sixBenchNote[hidden]{display:none!important}
.six-step-tabs button{font-size:11px;padding:7px 5px;line-height:1.45;white-space:normal;min-width:0}
.six-step-tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent);background:var(--ui-hover,#393327)}
#panelDock #dockBody{overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-gutter:stable;overscroll-behavior:contain;padding-bottom:30px}
#panelDock[data-generation-mode=six] #dockBody>article.docked:not(.six-active){display:none!important}
#panelDock .node.docked{min-width:0;width:100%!important;max-width:100%;height:auto!important;overflow:visible}
#panelDock .node.docked .node-head{position:static;cursor:default;padding:12px 16px 8px}
#panelDock .node.docked .node-head:before{display:none}
#panelDock .node.docked .node-head h3{font-size:13px;line-height:1.5;white-space:normal}
#panelDock .node.docked .node-body,#panelDock .node.docked.collapsed.six-active .node-body{display:block;max-height:none;height:auto;min-height:0;overflow:visible;padding:4px 16px 20px;font-size:12px;line-height:1.65}
#panelDock :is(label,.hint,.note,.muted,p,.ph-note,.tpl-hint){white-space:normal;overflow-wrap:anywhere;text-overflow:clip;line-height:1.65}
#panelDock label{font-size:12px}#panelDock :is(button,input,select){font-size:12px}
#panelDock textarea{width:100%;font-size:12px;line-height:1.7;min-height:128px;max-height:none;resize:vertical;overflow-y:auto}
#panelDock :is(select,input){max-width:100%;min-width:0}
#panelDock .node-actions,#panelDock .two-fields,#panelDock .tpl-foot{flex-wrap:wrap}
#panelDock article[data-node=size] .node-body{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:6px}
#panelDock article[data-node=size] .node-body>*{grid-column:1/-1;margin:0;min-width:0}
#panelDock article[data-node=size] label[for=qualityInput]{grid-column:1;grid-row:5}
#panelDock article[data-node=size] #qualityInput{grid-column:1;grid-row:6}
#panelDock article[data-node=size] label[for=tierInput]{grid-column:2;grid-row:5}
#panelDock article[data-node=size] #tierInput{grid-column:2;grid-row:6}
#panelDock .tpl-grid{display:flex;flex-direction:column;height:auto!important;min-height:0;max-height:none;gap:14px}
#panelDock .tpl-col{display:block;flex:none;min-width:0;width:100%;height:auto;overflow:visible}
#panelDock .tpl-list{display:grid;grid-template-columns:1fr 1fr;max-height:none;height:auto;overflow:visible;gap:6px}
#panelDock .tpl-list button{white-space:normal;line-height:1.5;min-height:42px;font-size:11px;padding:6px}
#panelDock .tpl-vars{display:flex;flex-direction:column;max-height:none;height:auto;overflow:visible}
#panelDock .tpl-preview{display:block;height:auto;min-height:140px;max-height:none;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.7}
#panelDock .tpl-foot{display:flex;gap:8px;padding-top:12px;position:static}
#panelDock .tpl-foot .tpl-hint{flex:0 0 100%;width:100%;min-width:0;white-space:normal;font-size:11px;line-height:1.7}
#panelDock .tpl-foot button{white-space:normal;line-height:1.5;max-width:100%}
.direct-agent{flex:1;min-height:0;overflow:auto;padding:20px 18px 28px;scrollbar-gutter:stable}
.direct-intro>span{font-size:10px;letter-spacing:2px;color:var(--accent)}.direct-intro h2{font-size:19px;line-height:1.4;margin:8px 0;font-weight:600}.direct-intro p{font-size:12px;color:var(--muted);margin:0 0 20px}
.direct-parameters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.direct-parameters label{margin:0;min-width:0}.direct-parameters select{margin-top:7px;width:100%;padding:9px 8px}
.direct-price{white-space:pre-line!important;font-size:11px;color:var(--muted);padding:12px;border:1px solid var(--line);border-radius:7px;line-height:1.8;margin:18px 0}
.direct-actions{display:flex;gap:8px;flex-wrap:wrap}.direct-actions button:first-child{flex:1;min-height:38px}.direct-actions button{white-space:normal}
.direct-status{font-size:12px;line-height:1.7;color:var(--accent);margin:16px 0}.direct-status.error{color:var(--error)}.direct-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:20px}
.six-bench-note{padding:18px 16px;font-size:12px;line-height:1.7;color:var(--muted)}.six-bench-note strong{color:var(--text);font-size:13px}

.direct-model{grid-column:1/-1}.direct-provider{font-size:11px;color:var(--accent);margin:12px 0 0}.direct-model select{font-size:11px!important}#officialConnection[hidden],#mee3Connection[hidden]{display:none!important}.settings{max-height:88vh;overflow:auto}#officialStatus{font-size:12px;line-height:1.6;overflow-wrap:anywhere}

/* Keep the normal Agent prompt and every parameter visible at laptop height. Long input still scrolls. */
.direct-agent{padding:12px 18px 18px}.direct-intro>span{display:none}.direct-intro h2{font-size:16px;margin:0 0 5px}.direct-intro p{font-size:11px;margin:0 0 10px}
#panelDock #directAgent>label{margin:0 0 5px}#panelDock #agentInput{min-height:76px;font-size:12px;line-height:1.5;padding:9px 10px}
.direct-provider{font-size:10px;margin:7px 0 0}.direct-parameters{margin-top:10px;gap:8px 12px}#panelDock .direct-parameters label{font-size:11px;line-height:1.4}
.direct-parameters select{margin-top:4px;padding:6px 8px;min-height:32px}.direct-price{margin:10px 0;padding:8px 10px;font-size:10px;line-height:1.6}.direct-status{margin:10px 0}.direct-note{margin-top:12px;padding-top:10px}
