/* QGIS-like docked instrument: fixed shell; only the chosen tool scrolls. */
body.is-console{height:100dvh;overflow:hidden}
body.is-console main{height:calc(100dvh - var(--shell-header,40px));max-width:none;padding:0 12px;overflow:hidden}
body.is-console #studio.on{height:100%;display:flex;flex-direction:column;min-height:0}
body.is-console header{height:40px;flex-wrap:nowrap;gap:12px}
body.is-console .masthead{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0)}
body.is-console .mastnote{display:none}
body:not(.is-console) .console-site,body:not(.is-console) header .mastnote{display:none}
.console-site{display:flex;align-items:center;flex:0 1 auto;min-width:0;max-width:100%;flex-wrap:nowrap;gap:8px 12px;margin:0;padding:0 0 0 12px;border:0;border-left:1px solid var(--line);overflow:hidden}
.console-field{display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap}
.console-field input{width:72px;padding:3px 5px;background:var(--panel);color:var(--ink);border:1px solid var(--line);font:12px var(--mono)}
.console-field select{margin:0;width:124px;min-height:28px}
.console-site-note{display:none;font-size:11px;color:var(--muted);max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.console-site-note.console-flag{display:inline}
.console-nav{display:flex;gap:18px;border-bottom:1px solid var(--ink);padding:0;flex:0 0 auto;overflow-x:auto}
.console-nav button{padding:7px 0;border:0;border-bottom:3px solid transparent;min-height:32px;white-space:nowrap;font-size:12px;background:none}
.console-nav [aria-selected="true"]{border-bottom-color:var(--accent);font-weight:600}
.console-rail-nav{display:none}
body.is-console .studio{flex:1;min-height:0;height:auto;grid-template-columns:220px minmax(0,1fr) 300px;overflow:hidden;border:0}
body.is-console .studio>.viewport{height:100%;min-height:0!important;order:0;overflow:hidden}
body.is-console .controls,body.is-console .results{min-height:0;max-height:none;height:100%;overflow:auto;padding:10px 12px;overscroll-behavior:contain}
body.is-console .viewport canvas{height:100%;width:100%}
body.is-console .studio:not([data-task="form"]){grid-template-columns:minmax(0,1.2fr) minmax(360px,1fr)}
body.is-console .studio:not([data-task="form"])>.controls,body.is-console .studio:not([data-task="form"])>.results{display:none}
body.is-console .studio:not([data-task="form"])>.viewport{grid-column:1}
.console-dock{height:100%;min-height:0;min-width:0;overflow:auto;padding:10px 14px;border-left:2px solid var(--ink);overscroll-behavior:contain}
.console-dock[hidden],.console-workspace[hidden]{display:none!important}
.console-workspace{min-width:0}
.console-workspace>details{border:0;margin:0;padding:0}
.console-workspace>details>summary{display:none}
.console-subnav,.brief-tabs{display:flex;gap:14px;border-bottom:1px solid var(--line);margin-bottom:10px;overflow:auto}
.console-subnav button,.brief-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:5px 0;font-size:12px;white-space:nowrap}
.console-subnav button[aria-pressed="true"],.brief-tabs button[aria-selected="true"]{background:none;color:var(--ink);border-bottom-color:var(--accent)}
.console-atlas{margin:0 0 12px;border:0;padding:0}
.console-atlas>summary{display:none}
body.is-console .form-atlas{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
body.is-console .form-atlas button{padding:4px 3px;min-height:44px;font-size:11px;line-height:1.2;min-width:0}
body.is-console .form-atlas svg{height:28px;width:100%;margin:0}
body.is-console .form-atlas span{display:block;margin-top:3px}
.console-dock .br-cards{grid-template-columns:1fr!important}
.console-dock .br-fields{gap:6px 10px!important}
.console-dock .br-fields label{flex-basis:45%}
.console-dock .br-fields input{max-width:45%}
.console-dock .br-sec{padding:8px 0!important}
.console-dock .br-desk{border:0!important;padding-top:0!important}
.console-dock .br-lede,.console-dock .br-disclaimer{font-size:11px!important}
.console-dock .location-desk{margin:0;border:0;padding:0}
.console-dock .cx-grid{grid-template-columns:1fr!important}
.console-dock .cx-grid>*{min-width:0}
.console-dock .wk-grid{grid-template-columns:1fr!important}
.console-dock .explore,.console-dock .studies{margin:0;padding:0;border:0}
.console-dock .explorehead{display:block}.console-dock .searchcontrols{margin:10px 0}
.console-dock .tablewrap{overflow:auto}
.console-dock .saved{flex-wrap:wrap}
body.is-console .mobileonly{display:none}
@media(max-width:1180px){
 body.is-console header{height:auto;flex-wrap:wrap;overflow:visible}
 body.is-console .console-site{flex:1 0 100%;order:3;border-left:0;padding:4px 0 6px}
 body.is-console .mastnote{display:none}
}
@media(max-width:900px){
 body.is-console main{padding:0 8px}
 body.is-console .console-site{flex-wrap:wrap;overflow:visible;row-gap:4px}
 .console-site-note{display:none}
 .console-field{font-size:11px;gap:5px}.console-field input{width:76px;min-height:32px}.console-field select{width:122px;min-height:32px}
 .console-nav{gap:18px}.console-nav button{min-height:44px}
 .console-rail-nav{display:flex;gap:14px;flex:0 0 auto}
 .console-rail-nav button{border:0;border-bottom:2px solid transparent;background:none;padding:8px 10px;font-size:11px;min-height:44px;min-width:44px}
 .console-rail-nav [aria-pressed="true"]{color:var(--ink);border-color:var(--accent);background:none}
 body.is-console .studio{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(160px,1fr) minmax(130px,.8fr)}
 body.is-console .studio>.viewport{grid-column:1;grid-row:1;min-height:0!important}
 body.is-console .studio>.controls,body.is-console .studio>.results{grid-column:1;grid-row:2;border-top:2px solid var(--ink);padding:8px 10px}
 body.is-console .studio[data-rail="0"]>.results,body.is-console .studio[data-rail="1"]>.controls{display:none}
 body.is-console .controls #geometryControls{display:block}
 body.is-console .studio:not([data-task="form"]){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(140px,.55fr) minmax(170px,1fr)}
 .console-dock{grid-column:1;grid-row:2;border-left:0;border-top:2px solid var(--ink);padding:10px}
 body.is-console .form-atlas{grid-template-columns:repeat(4,minmax(0,1fr))}
 .console-dock .wk-figwrap svg{min-width:0}
}
@media(max-width:600px){body.is-console .console-site{grid-column:1 / -1;grid-row:3;padding-top:4px}}
@media(max-width:430px){.console-field select{width:112px}.console-field input{width:70px}.console-site{gap:4px 10px}.console-nav{gap:16px}}
.console-rail-nav[hidden]{display:none}
.facade-desk h2{font-size:16px;margin:0 0 8px}.facade-desk>p{font-size:12px;line-height:1.65;max-width:78ch}
.facade-fields{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:6px 10px;align-items:center;font-size:11px}
.facade-fields input{width:80px;background:var(--panel);border:1px solid var(--line);padding:4px;font:12px var(--mono);color:var(--ink)}
.facade-metrics{display:grid;grid-template-columns:1fr auto;gap:3px 12px;margin:14px 0;font-size:11px}.facade-metrics dd{margin:0}
.facade-desk figure{margin:10px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:8px 0}
.facade-desk svg{display:block;width:100%;max-height:360px;font:12px var(--mono);color:var(--ink)}
.facade-desk figcaption{font-size:11px;color:var(--muted);line-height:1.5}
.facade-flow{border-left:3px solid var(--accent);padding-left:10px}
.facade-keys{padding-left:23px;font-size:12px;line-height:1.65}.facade-keys li{padding:3px 0}
.facade-desk .note.source{color:var(--muted)}
#briefDesk .br-sec[hidden]{display:none!important}
body.is-console [hidden]{display:none!important}
.console-workspace>details>summary{display:none!important}
.console-field>label{margin:0;font-size:12px}
.facade-fields{grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr) 74px}
.facade-fields input{width:74px}
.facade-desk details img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain;background:white;margin:8px 0}
.console-capacity{font-size:11px;white-space:nowrap;color:var(--muted)}
.console-flag{border-left:3px solid var(--accent);padding-left:6px;color:var(--ink);font-weight:600}
.facade-desk details img{width:min(100%,489px);height:auto;max-height:none}
@media(pointer:coarse){.console-nav button,.console-subnav button,.brief-tabs button,.console-rail-nav button,.console-field input,.console-field select{min-height:44px}}
