/* Промышленные интерфейсы — адаптивные SVG, управление масштабом */
html,body{max-width:100%;overflow-x:hidden}
.layout{min-width:0;display:grid;grid-template-columns:225px minmax(0,1fr) 225px;gap:12px;align-items:start}
.left-panel,.right-panel{position:sticky;top:12px;left:auto;right:auto;width:100%;max-height:calc(100vh - 24px)}
.center-panel{margin:0;min-width:0}
.mode-section,.interface-panel,.trainer-svg-host,.wiring-card,.settings-card{min-width:0}
.trainer-svg-host{width:100%;max-width:100%;overflow:hidden;position:relative}
.trainer-svg-host>svg{display:block;max-width:none!important;width:auto!important;height:auto!important}
.interface-svg-controls{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 10px}
.interface-svg-controls button{min-height:33px;padding:5px 12px;border:1px solid #acc6dc;border-radius:8px;background:#f4faff;color:#15476f;cursor:pointer;font:700 13px system-ui}
.interface-svg-controls button:hover{background:#d9edff}
.interface-svg-controls output{min-width:52px;text-align:center;font:700 13px system-ui}
.interface-svg-viewport{width:100%;max-width:100%;height:auto;min-height:110px;max-height:70vh;overflow:auto;border:1px solid #cad9e5;border-radius:12px;background:white}
.interface-svg-viewport.fit-viewport{overflow:hidden}
.interface-svg-viewport svg{display:block;max-width:none!important}
.interface-svg-viewport:fullscreen{max-height:none;background:white;padding:12px;overflow:auto}
@media(max-width:1550px){.layout{grid-template-columns:205px minmax(0,1fr)}.right-panel{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;max-height:none}.right-panel .ref-btn{width:auto;flex:1 1 150px;margin:0}.right-panel .memory-card{width:100%}}
@media(max-width:1060px){.layout{grid-template-columns:minmax(0,1fr)}.left-panel,.right-panel{position:static;max-height:none}.left-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.left-panel .separator{display:none}.left-panel .side-note{grid-column:1/-1}.right-panel{grid-column:auto}.hero,.panel-title-row{flex-wrap:wrap}}
@media(max-width:620px){.left-panel{grid-template-columns:1fr}.interface-svg-viewport{max-height:58vh}.tab-row{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:24px}}
