/* The collapsed menu overlays the page on hover; the content does not jump. */
.layout{--menu-width:235px;grid-template-columns:var(--menu-width) minmax(0,1fr)}
.sidebar{width:var(--menu-width);padding:20px 12px;gap:26px;z-index:1100;overflow-x:hidden;overflow-y:auto}
.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sidebar .brand{gap:9px;font-size:17px;min-width:0}
.sidebar .brand i{width:34px;height:36px;border-radius:10px;flex-shrink:0}
.sidebar .brand small{font-size:8px;letter-spacing:1px}
.sidebar .panel-toggle{display:grid;place-items:center;flex:0 0 36px;width:36px;height:40px;padding:8px;color:#b5c8da}
.panel-toggle svg,.route-layout-tools svg{width:20px;height:20px;flex-shrink:0}
.sidebar button:hover,.sidebar a:hover{background:#1b344a;color:white}
.sidebar nav button,.sidebar .bottom a,.sidebar .bottom button{display:flex;align-items:center;gap:12px;min-height:44px;width:100%;padding:12px;white-space:nowrap}
.nav-icon{display:inline-grid;place-items:center;width:20px;flex:0 0 20px;font-size:19px;line-height:20px}
.sidebar .bottom{min-width:0}.sidebar-info{padding:0 12px 12px}
.sidebar .bottom .nav-label{overflow:hidden;text-overflow:ellipsis}
.layout.menu-collapsed{grid-template-columns:68px minmax(0,1fr)}
.menu-collapsed .sidebar{width:68px}
.menu-collapsed .sidebar:not(.is-peeking) .sidebar-header{justify-content:center}
.menu-collapsed .sidebar:not(.is-peeking) .brand,.menu-collapsed .sidebar:not(.is-peeking) .nav-label,.menu-collapsed .sidebar:not(.is-peeking) .sidebar-info{display:none}
.menu-collapsed .sidebar.is-peeking{width:var(--menu-width);box-shadow:12px 0 30px #0c1b2e26}
.route-workspace{row-gap:14px}.route-browser{min-width:0}
.route-layout-tools{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.route-layout-tools .button{display:inline-flex;align-items:center;gap:9px}
.route-layout-tools [aria-pressed="true"]{border-color:#087e76;color:#087e76;background:#eaf8f5}
.route-workspace.routes-collapsed{grid-template-columns:minmax(0,1fr)}
@media(max-width:1200px){.layout{--menu-width:220px}}
@media(max-width:760px){
    .layout,.layout.menu-collapsed{display:block}
    .layout .sidebar,.menu-collapsed .sidebar.is-peeking{position:relative;width:100%;height:auto;padding:12px 16px;gap:12px;overflow:visible;box-shadow:none}
    .menu-collapsed .sidebar:not(.is-peeking) .brand{display:flex}
    .menu-collapsed .sidebar:not(.is-peeking) .sidebar-header{justify-content:space-between}
    .menu-collapsed .sidebar nav,.menu-collapsed .sidebar .bottom{display:none}
    .sidebar nav{display:flex;overflow:auto}.sidebar nav button{width:auto;flex-shrink:0}
    .sidebar .bottom{display:flex;gap:8px;margin:0}.sidebar .bottom a,.sidebar .bottom button{width:auto;font-size:12px}
    .sidebar-info{display:none}.route-layout-tools .button{font-size:12px;padding:10px}
}
