/* Shared visual language: AV engineering workspace. */
:root{--ink:#142b3a;--muted:#6a7d8d;--line:#e1e8ed;--brand:#087f71;--surface:#fff;--page:#f2f5f8;--rail:224px;--panel:320px;--radius:12px;font-family:Inter,'Segoe UI','Noto Sans SC',system-ui,sans-serif;color:var(--ink);font-size:13px;background:var(--page);color-scheme:light}*{box-sizing:border-box}button,input,select,textarea{font:inherit}button,a,input,select{outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #59b9e1}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:var(--brand)}.language-control{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:5px 9px;flex:none;color:#58717f}.language-control select{padding:4px;border:0;outline:none;background:transparent;color:var(--ink);font-size:11px;width:auto;max-width:110px;cursor:pointer;margin:0}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.6px;color:#7d929f}.identity-pill{display:inline-flex;align-items:center;padding:9px 12px;border:1px solid var(--line);border-radius:30px;font-size:11px;color:#48616f;background:#f7fafb;max-width:170px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
/* Workspace skin: preserve canvas geometry and physical port hit targets. */
body:not(.admin-page):not(.auth-page){background:var(--page)}body:not(.admin-page):not(.auth-page)>aside{padding:24px 14px 14px;background:linear-gradient(160deg,#102a39,#0a1c2a);border-right:1px solid #233d4d}.brand{padding:0 10px;font-size:22px;letter-spacing:-.7px}.brand small{color:#729ba4;font-size:8px;letter-spacing:1.5px}.workspace{color:#7395a8;font-size:9px;letter-spacing:1.5px}nav button{border-radius:9px;padding:12px 13px;margin-bottom:4px;color:#a3bac7;font-size:12px}nav button.active{background:#16483f;box-shadow:inset 3px 0 #49c6a1;color:#e2fff3}nav button:hover{background:#1a3849}.config-launch{margin:12px 4px 0;border:1px solid #365361;background:#172f3e;border-radius:10px;padding:13px;text-align:left;font-size:12px;color:#d2e8eb}.config-launch small{font-size:9px;font-weight:400;color:#809fae}.config-launch:hover{background:#21454e;border-color:#4f8d89}#configurator{border-color:#246b61;background:#16483f}.device-list-label{margin-top:22px;padding-top:18px}.project-devices button{border-radius:8px}.project-devices b{font-size:11px;max-width:135px}.aside-bottom{padding:12px 4px 0}.aside-bottom .language-control{margin:4px 0 10px;background:#172f3e;border-color:#34505f;color:#9ebac7;width:100%}.aside-bottom .language-control select{color:#deedf3;width:100%;max-width:none}.aside-bottom .language-control option{color:#142b3a}.aside-bottom button{font-size:10px;border-color:#2d4656;border-radius:7px}header{padding:22px 28px 18px;border-bottom:1px solid var(--line);background:#fff;align-items:flex-start}.crumb{font-size:10px;color:#7d929f;letter-spacing:.25px}#projectName{font-size:23px;letter-spacing:-.7px;font-weight:680}header p{font-size:11px;color:#78909c}.header-actions button{border-radius:8px;padding:9px 12px;font-size:11px}.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 3px 7px #087f7118}.primary:hover{background:#06695e}.header-actions{max-width:430px}.account-toolbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.account-toolbar button,.account-toolbar a{border-radius:8px;padding:8px 11px;font-size:10px;color:#4b6574;border:1px solid var(--line);background:#fff;text-decoration:none}.account-toolbar a.admin-link{color:#087f71;border-color:#badfd6;background:#f0f9f5}.stats{background:#fafcfd;padding:0 28px;min-height:58px}.stat{padding:15px 18px 15px 0;gap:11px}.stat span{font-size:11px}.stat strong{font-size:19px;color:#1a3a49}.section-head{padding:20px 28px 16px}.section-head h2{font-size:18px;font-weight:650;letter-spacing:-.5px}.section-head p{font-size:11px}.tools input{width:190px;border-radius:8px}.tools button{border-radius:7px}.canvas-toolbar{padding:11px 22px;background:#fff;border-bottom:1px solid var(--line)}#canvas{background-color:#f3f6f9;background-image:radial-gradient(#c4d1da .7px,transparent .7px);background-size:20px 20px}.node{border-radius:11px;box-shadow:0 2px 4px #173d4a08,0 9px 25px #173d4a08;border-color:#ccd9e1}.node-top{border-radius:10px 10px 0 0}.node.selected{outline-color:#138d79;box-shadow:0 0 0 5px #138d790d,0 8px 24px #138d7917}.node-foot{font-size:9px}.canvas-note{border-radius:7px}.panel-label{font-size:9px;color:#8196a3;letter-spacing:1.4px}#inspector{padding:25px 22px;border-left:1px solid var(--line)}#detail h2{font-size:21px;letter-spacing:-.5px}.port-card{border-radius:9px;padding:12px;border-color:#e0e8ed;background:#fbfcfd}.detail-section h3{font-size:10px}.tag{font-size:10px;border-radius:5px}.detail-actions button{border-radius:7px}dialog{border:1px solid #d6e2e8;border-radius:17px;padding:28px;width:620px;max-width:calc(100vw - 32px);box-shadow:0 25px 100px #102e4933}dialog::backdrop{background:#11293970;backdrop-filter:blur(5px)}.modal-head{border-bottom:1px solid #e7edf1;padding-bottom:17px;margin-bottom:10px}.modal-head h2{font-size:19px;font-weight:650;letter-spacing:-.5px}.modal-actions{border-top:1px solid #e7edf1;padding-top:17px}.modal-actions button{border-radius:8px;padding:10px 15px}form label{font-size:11px;color:#526e7d;font-weight:550}form input,form select,form textarea{border:1px solid #d7e1e8;border-radius:8px;min-height:38px;padding:9px 11px;background:#fff;color:#173749}form input[type=checkbox]{min-height:initial}.help{font-size:11px;line-height:1.65;color:#768b98}.error{font-size:12px;line-height:1.6}.catalog-modal{width:980px}.catalog-top{gap:8px}.catalog-top select{width:180px}.model-card{border-color:#dde7ed;border-radius:11px;background:#fff;padding:18px}.model-card h3{font-size:14px;letter-spacing:-.2px}.model-card .help{font-size:11px;height:56px}.model-card>div{gap:6px;flex-wrap:wrap}.model-card button{border-radius:7px;font-size:10px;padding:8px}.catalog-actions{gap:8px}.catalog-actions button{font-size:10px;border-radius:8px;padding:9px}.catalog-actions label{margin:0;font-size:10px}.catalog-pagination{padding-top:15px}.config-progress{background:#f3f8f7;padding:12px 14px;border-radius:8px;border:1px solid #ddece7}.config-choices{gap:10px}.config-choices button{border-radius:12px;background:#f7fbfa;padding:20px}.config-model-choice{border-top:1px solid #e5ecef;margin-top:22px;padding-top:4px}.config-advice{border-radius:10px;padding:16px}.config-summary{padding-left:20px;line-height:1.65}#toast{max-width:calc(100vw - 40px);border-radius:10px;background:#133d3a;box-shadow:0 8px 30px #0d27382b;z-index:50;font-size:12px;line-height:1.5}footer{padding:10px 28px;background:#fff;font-size:10px}.admin-link{white-space:nowrap}
@media(min-width:1500px){header{align-items:center}.header-actions{max-width:none}header .account-toolbar{margin-left:auto}.tools input{width:230px}}
@media(max-width:1250px){:root{--rail:192px;--panel:280px}.brand{font-size:20px}header{padding:17px 20px}.header-actions{max-width:360px}.account-toolbar{width:100%;justify-content:flex-end}.config-launch{padding:11px;font-size:11px}.project-devices b{max-width:110px}.section-head{padding:16px 20px}.stats{padding:0 20px}.stat span{font-size:10px}}
@media(max-width:900px){:root{--rail:76px}body:not(.admin-page):not(.auth-page)>aside{padding:20px 7px 12px}.brand{padding:0 8px;font-size:0}.brand:first-letter{font-size:28px}.brand small,.workspace,.project-devices,.aside-bottom>p,.aside-bottom>button,.aside-bottom>span{display:none}nav button{font-size:0;padding:15px 6px}nav button:first-letter{font-size:21px}.config-launch{font-size:0;padding:12px 6px;margin:9px 0 0;text-align:center}.config-launch:first-letter{font-size:22px}.config-launch small{display:none}.aside-bottom{display:block;padding:9px 0 0;border:0}.aside-bottom .language-control{display:flex;width:60px;padding:4px 2px}.aside-bottom .language-control>span{display:none}.aside-bottom .language-control select{font-size:9px;max-width:58px;padding:4px 0}.header-actions{max-width:none}.section-head{padding:15px 18px}.stats{padding:0 18px}.tools input{width:160px}#inspector{width:300px}.language-control{font-size:10px}dialog{padding:22px}.catalog-modal{width:calc(100vw - 30px)}}
@media(max-width:600px){header{padding:16px;gap:12px}#projectName{font-size:21px}header p{display:none}.header-actions{gap:5px}.header-actions button{font-size:10px;padding:8px}.account-toolbar{justify-content:flex-start}.account-toolbar button,.account-toolbar a{padding:7px 9px;font-size:10px}.stats{padding:0 12px;min-height:55px}.stat{padding:10px 6px;flex-direction:column;gap:3px;align-items:flex-start}.stat strong{font-size:17px}.stat span{font-size:9px}.section-head{padding:13px}.section-head h2{font-size:16px}.section-head p{display:none}.tools{margin-left:0;width:100%}.tools input{width:100%;flex:1}.tools button{padding:7px}.canvas-toolbar{padding:8px 10px}.signal-filters button{font-size:9px;padding:5px}.canvas-note{font-size:9px}footer{padding:8px 12px}footer>span:last-child{display:none}.catalog-top{flex-wrap:wrap}.catalog-top input,.catalog-top select{width:100%;flex:auto}.catalog-actions{display:grid;grid-template-columns:1fr 1fr}#modelCards{grid-template-columns:1fr}.modal-head h2{font-size:16px}.modal-actions{gap:7px}.modal-actions button{font-size:11px;padding:9px 11px}.config-choices{grid-template-columns:1fr}.config-choices button{min-height:100px}.config-progress{font-size:10px}}
@media(min-width:901px){body:not(.admin-page):not(.auth-page) header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}body:not(.admin-page):not(.auth-page) header>div:first-child{grid-column:1;grid-row:1 / span 2;min-width:0;align-self:center}body:not(.admin-page):not(.auth-page) .header-actions{grid-column:2;grid-row:1;max-width:350px}body:not(.admin-page):not(.auth-page) .account-toolbar{grid-column:2;grid-row:2;width:auto;justify-content:flex-end;margin:0}}
@media(min-width:901px) and (max-height:850px){.brand small{margin-bottom:18px}nav button{padding-top:9px;padding-bottom:9px}.workspace{margin-bottom:9px}.config-launch{padding:10px;margin-top:9px}.config-launch small{margin-top:4px;font-size:8px}.device-list-label{margin-top:15px;padding-top:13px}.project-devices{min-height:40px}.aside-bottom{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-top:10px;margin-top:9px}.aside-bottom .language-control{grid-column:1 / -1;margin:0 0 2px}.aside-bottom>.dot,.aside-bottom>p{display:none}#storageMode{grid-column:1 / -1;font-size:9px;margin:3px 0}#roadmap{grid-column:1 / -1}.aside-bottom button{font-size:9px;padding:7px 4px;margin:0}#languageNotice:empty{display:none}}
@media(max-width:900px){body:not(.admin-page):not(.auth-page) header{display:flex;flex-direction:column;align-items:stretch;gap:9px}body:not(.admin-page):not(.auth-page) header>div:first-child{width:100%;min-width:0}body:not(.admin-page):not(.auth-page) #projectName{width:100%;max-width:100%}body:not(.admin-page):not(.auth-page) .header-actions{width:100%;justify-content:flex-start;max-width:none}body:not(.admin-page):not(.auth-page) .account-toolbar{width:100%;justify-content:flex-start;gap:6px}body:not(.admin-page):not(.auth-page) .account-toolbar button,body:not(.admin-page):not(.auth-page) .account-toolbar a{font-size:9px;padding:6px 8px}}
