/* Professional workspace polish. Scoped overrides for existing 2-row header. */
:root{--ui-control-height:38px;--ui-space:8px}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body,button,input,select,textarea{font-family:Inter,Sarabun,"Noto Sans Thai",system-ui,sans-serif}
.app{width:100%;max-width:100%;min-width:0;overflow:hidden}
.top{padding:8px 10px!important;gap:7px!important;min-width:0!important}
.top-row{width:100%;min-width:0;max-width:100%;padding:7px 10px;gap:10px;border-radius:11px}
.top-row .row-inner{flex:1 1 auto;min-width:0;gap:9px;align-items:center;flex-wrap:wrap}
.top-row .row-label{min-width:74px;padding:7px 8px;letter-spacing:.045em;font-size:10px}
.menu-row .menu-primary{flex:1 1 520px;min-width:0;gap:7px}
.menu-row .menu-meta{flex:0 1 380px;min-width:225px;display:grid;grid-template-columns:minmax(110px,1fr) minmax(145px,1fr);gap:7px}
.menu-row #filename,.menu-row #diagramType{min-width:0!important;width:100%;max-width:100%!important;height:38px;margin:0;font-size:12px}
.menu-row .brand{min-width:0!important;max-width:190px;margin:0}
.menu-row .site-wordmark{font-size:15px!important}
.menu-row .workshop-menus{min-width:0;gap:5px}
.menu-drop summary{white-space:nowrap}
.tool-row .toolbar-primary{flex:1 1 360px;gap:6px}
.tool-row .toolbar-status{margin-left:0;gap:6px}
.tool-row .toolbar-secondary{flex:0 1 auto;gap:6px}
.top-row button,.top-row .menu-drop summary{min-height:36px;font-size:12px;line-height:1.2}
.top-row button{padding:7px 10px!important}
.top-row #zoomLabel{padding:0 6px;font-variant-numeric:tabular-nums}
.top-row .autosave-state{padding:6px 10px;min-height:36px}
.layout{min-width:0;min-height:0;overflow:hidden}
.layout>.panel,.layout>.work{min-width:0;min-height:0}
.panel.left,.panel.right{overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}
.left-tab-bar{min-width:0;gap:4px}
.left-tab-bar button{min-width:0!important;flex:1 1 0!important;padding:9px 5px!important;font-size:12px}
.network-profile-library,.network-profile-panel{max-width:100%;margin:10px 0;padding:10px;overflow-wrap:anywhere}
.network-device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.network-device-btn{min-width:0;min-height:100px;padding:10px 5px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;line-height:1.3;font-size:12px!important}
.network-device-btn svg{width:48px;height:48px;display:block;flex-shrink:0;max-width:100%}
.network-device-btn span{min-height:30px;max-width:100%;font-weight:600;overflow-wrap:anywhere;text-align:center}
.network-view-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.network-view-switch button{font-size:11px!important;min-width:0;overflow-wrap:break-word}
.network-profile-panel .np-field input,.network-profile-panel .np-field select{min-width:0;max-width:100%}
.panel.right .field,.panel.right label{min-width:0;max-width:100%;overflow-wrap:anywhere}
.panel.right input,.panel.right select,.panel.right textarea{max-width:100%;min-width:0}
.work{isolation:isolate;overflow:auto}
.work svg text{paint-order:stroke;stroke:none}
.bottom{min-width:0;flex-wrap:wrap;gap:5px;align-items:center}
.sheets-bar,.sheets-strip{min-width:0}
@media(max-width:1450px){.menu-row .menu-primary{flex-basis:440px}.menu-row .menu-meta{flex-basis:340px}}
@media(max-width:1150px){.menu-row .menu-primary{flex-basis:100%}.menu-row .menu-meta{flex:1 1 100%;max-width:100%}.tool-row .toolbar-primary{flex-basis:100%}.tool-row .toolbar-secondary{flex:1 1 auto}.top-row{align-items:flex-start}}
@media(max-width:760px){.top{padding:6px!important}.top-row{padding:7px;gap:6px}.top-row .row-label{font-size:10px;width:100%}.menu-row .menu-meta{grid-template-columns:minmax(0,1fr)}.tool-row .toolbar-status{margin:0}.top-row .row-inner{gap:6px}.top-row button{min-height:34px;font-size:11px!important;padding:7px 8px!important}.network-device-btn{min-height:90px}.network-device-btn svg{width:42px;height:42px}}
@media(max-width:420px){.network-device-grid{gap:5px}.network-device-btn{font-size:11px!important}.menu-row .brand{max-width:150px}}
