:root{--green:#246957;--line:#dfe4e6;color:#29353a;background:#edf0f1}
body{background:#edf0f1}
header{background:#242727;border-top:0;border-bottom:3px solid #f5c664;padding:12px 32px;min-height:96px;gap:26px;box-shadow:none}
.brand{display:flex;align-items:center;flex-shrink:0}
.brand img{display:block;width:127px;height:60px;object-fit:contain}
header>span:nth-child(2){font-size:14px;line-height:1.6;color:#ecedeb;border-left:1px solid #555a58;max-width:168px;padding-left:24px;font-weight:500}
#headerNav{align-self:center;gap:8px}
#headerNav button{box-shadow:none;color:#c7cecb;background:transparent;border-radius:4px;min-height:42px;padding:11px 14px;font-size:13px}
#headerNav button:hover{color:#fff;background:#343a37;border-color:transparent}
#headerNav button.active{background:#3d4137;color:#ffda88;box-shadow:inset 0 -2px #f5c664}
#identity{background:#343936;color:#dce4df;border:1px solid #4b534d;border-radius:4px;padding:7px 11px;font-size:12px}
#logout{color:#c6ceca;background:transparent;box-shadow:none;font-size:12px}
#logout:hover:not(:disabled){background:#343a37;color:#fff;border-color:transparent}
.button-icon{display:inline-block;flex-shrink:0;width:16px;height:16px;vertical-align:-3px;margin-right:7px;opacity:.7}
header .button-icon,button.primary .button-icon{filter:invert(1);opacity:.85}
main{max-width:1840px;padding:28px 32px 64px}
#devices>.toolbar{margin:0 0 26px;padding:0 0 24px;border-bottom:1px solid #cfd9db;gap:14px}
#devices>.toolbar label{color:#5b6a6d;font-weight:600}
#devices>.toolbar button{background:#fff;min-width:102px}
.device-layout{grid-template-columns:234px minmax(0,1fr);gap:0;align-items:start}
aside{padding:8px 22px 0 0;border-right:0;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto;scrollbar-width:thin}
aside h2{padding:0 12px 14px;margin:0;color:#74827f;font-size:11px}
#deviceList button{font-size:12px;min-height:43px;border:1px solid transparent;padding:11px 12px;margin:3px 0;color:#64716e}
#deviceList .selected{background:#fff;border-color:#cad8d0;color:#215944;box-shadow:inset 3px 0 #27745a,0 2px 5px #263e3110}
.device-layout>div{background:#fff;min-width:0;border-left:1px solid #d8e0e1;padding:26px 30px 36px}
.device-heading{padding:0 0 22px;border-bottom:2px solid #e4e9e6}
.device-heading h1{font-size:25px;font-weight:650;color:#273b34}
#deviceInfo{margin-bottom:0;column-gap:40px}
#deviceInfo div{min-height:44px;font-size:12px;border-bottom:1px solid #edf0f0;padding:12px 0;color:#7b8787}
#deviceInfo strong{font-weight:550;color:#42534c}
#editActions{background:#fff;border-top:0;border-bottom:1px solid #dde5e0;padding:20px 0;box-shadow:none;gap:10px}
#editActions button{min-height:38px}
#apply{background:#286c55;border-color:#286c55}
#apply:hover{background:#1a533e;border-color:#1a533e}
#reset{border-color:transparent;background:#f1f4f2;box-shadow:none;color:#617168}
#export{box-shadow:none;border-color:#ccd9d1;color:#365c48}
#filterLabel{max-width:350px;margin:23px 0 28px;font-size:11px}
#filter{background:#f8faf9;border-color:#e0e7e3;min-height:38px}
.module{margin-top:24px;border:0}
.module h2{background:#eff3ef;color:#365c47;border-left:3px solid #caa04a;border-bottom:1px solid #dce5dc;padding:12px 16px;font-size:13px;font-weight:650}
.parameter{min-height:59px;grid-template-columns:minmax(0,1fr) 172px 86px;padding:10px 16px;gap:22px;font-size:13px;border-color:#edf0ee}
.parameter:nth-child(odd){background:#fafbf9}
.parameter:hover{background:#f4f7f2}
.parameter label{font-size:13px;font-weight:450;color:#45564e;line-height:1.5}
.parameter input:not([type=checkbox]),.parameter select{background:#fff;border-color:#d7dfda;min-height:35px}
.parameter.edited{background:#fff9e9;box-shadow:inset 3px 0 #d5a542}
.unit{color:#7e8d84;font-size:12px}
.empty{line-height:1.7;color:#819087}
#auth{margin:76px auto;max-width:432px}
#auth h1{color:#2b4437;border-color:#d6dfd8}
#users,#profile,#audit{background:#fff;padding:28px 30px;min-height:320px;border-top:3px solid #d1ad59}
#users h1,#profile h1,#audit h1{font-size:25px;margin:0 0 26px;color:#2c4437}
.account-row{border-color:#e4eae6;background:#fff}
.account-row:nth-child(even){background:#f8faf7}
dialog{border-top:4px solid #d6b15e}
dialog h2{color:#35503d}
@media(max-width:1180px){header{gap:16px;padding:12px 24px}#headerNav button{padding:10px}.device-layout{grid-template-columns:195px minmax(0,1fr)}.device-layout>div{padding:22px}main{padding:24px}#deviceInfo{grid-template-columns:1fr}}
@media(max-width:1000px){header #headerNav{margin-top:10px}header{gap:12px}.brand img{width:110px;height:52px}header>span:nth-child(2){max-width:none}}
@media(max-width:760px){
 header{padding:14px 16px;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.brand{grid-column:1;grid-row:1}.brand img{width:110px;height:52px}
 header>span:nth-child(2){font-size:11px;padding:0;border:0;grid-column:1;grid-row:2;color:#bec9c1}
 #identity{max-width:135px}header #headerNav{margin-top:15px;gap:4px}#headerNav button{padding:10px 8px;min-height:38px;font-size:11px}
 .button-icon{width:14px;height:14px;margin-right:5px}main{padding:20px 12px 40px}
 #devices>.toolbar{gap:8px;margin-bottom:18px;padding:0 4px 18px}#devices>.toolbar button{min-width:76px;padding:9px}
 .device-layout{grid-template-columns:minmax(0,1fr);gap:16px}aside{position:static;max-height:180px;padding:0 4px 12px;border-bottom:1px solid #d8e0da}aside h2{padding:0 0 10px}
 #deviceList{gap:6px}#deviceList button{margin:0;padding:10px;font-size:11px;min-height:36px}
 .device-layout>div{padding:18px 12px 24px;border-left:0}.device-heading h1{font-size:20px}.device-heading{padding-bottom:15px}
 #deviceInfo div{gap:12px;font-size:11px}#editActions{padding:16px 0;gap:5px;position:static}#editActions button{font-size:11px;padding:8px 6px}#editActions .button-icon{width:13px;margin-right:4px}
 #filterLabel{margin:20px 0;max-width:none}.module h2{font-size:12px;padding:11px 10px}.parameter{grid-template-columns:minmax(0,1fr) 87px 38px;gap:8px;padding:10px 8px}.parameter label{font-size:12px}.unit{font-size:10px}
 #users,#profile,#audit{padding:20px 14px}#users h1,#profile h1,#audit h1{font-size:23px}
}
