/* Shared sidebar layout; overrides older page-local menu styling. */
.app>aside{width:240px;flex:0 0 240px;background:#fff;border-right:1px solid #e2e8f0;padding:24px 12px;box-sizing:border-box}
.app>aside nav a{display:block;padding:11px 14px;margin:3px 0;border-radius:9px;font-size:14px;line-height:1.4;color:#52617a;text-decoration:none}
.app>aside nav a:hover{background:#f4f7fb}.app>aside nav a.on{background:#eaf2ff;color:#2456aa;font-weight:600}
.app>aside nav .grp{margin:23px 14px 8px;color:#8a9bb4;font-size:11px;letter-spacing:.09em;text-transform:uppercase}
.app>aside nav a.sub{margin-left:14px;padding-left:14px;border-left:1px solid #e2e8f0;border-radius:0 8px 8px 0}
.app>aside nav small{display:block;font-size:11px;color:#8a9bb4;margin-top:3px}.nav-empty{display:block;margin:6px 28px;color:#8a9bb4;font-size:12px}
@media(max-width:760px){.app>aside{width:100%;flex-basis:auto}}

#company-context{margin:10px 0 18px;padding:12px;background:#edf3fb;border-radius:10px}#company-context[hidden]{display:none}#company-context label{display:block;font-weight:600;font-size:13px;margin-bottom:8px}#company-context select{width:100%;padding:9px;border:1px solid #cdd8e7;border-radius:7px;background:white}#company-context small{display:block;font-size:11px;color:#526982;margin-top:8px}#nav-exit-company{border:0;background:transparent;color:#245ca7;padding:8px 0 0;cursor:pointer;font-size:12px}

#nav-company-search{margin-top:12px}#nav-company-search input{box-sizing:border-box;width:100%;padding:8px;border:1px solid #cdd8e7;border-radius:6px}#company-context button{font-size:12px;padding:6px 8px;margin-top:6px}#company-context .actions{display:flex;gap:6px;justify-content:space-between}

/* Hidden tenant content must stay hidden despite page grid/flex rules. */
[hidden]{display:none!important}

#nav-settings summary{padding:11px 14px;margin:3px 0;border-radius:9px;font-size:14px;color:#52617a;cursor:pointer}#nav-settings summary:hover{background:#f4f7fb}#nav-settings summary.on{color:#2456aa;background:#eaf2ff;font-weight:600}#nav-settings a{margin-left:14px;border-left:1px solid #e2e8f0;border-radius:0 8px 8px 0}
main .settings-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0 0 14px;border-bottom:1px solid #e2e8f0}main .settings-tabs a{display:inline-block;padding:9px 13px;border-radius:8px;text-decoration:none;color:#52617a;font-size:14px}main .settings-tabs a:hover{background:#f4f7fb}main .settings-tabs a[aria-current=page]{color:#2456aa;background:#eaf2ff;font-weight:600}.rms-device-link{display:inline-block;margin:8px 12px 8px 0;color:#24549d;text-decoration:none}.rms-device-link:hover{text-decoration:underline}

#nav-help{margin:28px 0 0;border-top:1px solid #e2e8f0;padding-top:10px}#nav-help summary{padding:10px 14px;color:#52617a;font-size:13px;cursor:pointer}#nav-help a{font-size:13px!important;margin-left:12px!important}#nav-help summary:hover{background:#f4f7fb;border-radius:8px}

/* Machines belong to their line, rather than a separate sidebar group. */
.app>aside #factory-tree .nav-line{margin:0;border:0;padding:0}
.app>aside #factory-tree .nav-line>summary{list-style:none;display:flex;align-items:center;cursor:pointer;border-radius:8px;padding:0;margin:0;color:#52617a}
.app>aside #factory-tree .nav-line>summary::-webkit-details-marker{display:none}
.app>aside #factory-tree .nav-line>summary:hover{background:#f4f7fb}
.app>aside #factory-tree .nav-line>summary:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.app>aside #factory-tree .nav-line>summary>a{flex:1;min-width:0;margin-right:0;padding-right:2px}
.app>aside #factory-tree .nav-line-chevron{width:32px;text-align:center;font-size:18px;transform:rotate(-90deg);transition:transform .12s}
.app>aside #factory-tree .nav-line[open]>.nav-line-machines{display:block}
.app>aside #factory-tree .nav-line[open]>summary .nav-line-chevron{transform:rotate(0)}
.app>aside #factory-tree .nav-line-machines{border-left:1px solid #e4e9ef;margin-left:32px;padding:2px 0 6px 10px}
.app>aside #factory-tree a.nav-machine{padding:8px 10px;margin:2px 0;font-size:13px;border-radius:7px;overflow-wrap:anywhere}
.app>aside #factory-tree a.nav-machine small{font-size:10px}
.app>aside #factory-tree .nav-line-machines .nav-empty{margin:7px 10px}
