body { -webkit-font-smoothing: antialiased; font-size: clamp(11px, .75vw, 12.5px); }
.vms-header { height: 3rem; min-height: 3rem; }
.sidebar-expanded { width: 13.5rem; }
.sidebar-collapsed { width: 3.25rem; }
.sidebar-collapsed .nav-label,.sidebar-collapsed .chevron-icon,.sidebar-collapsed .submenu-container,.sidebar-collapsed .search-container { display: none !important; }
.sidebar-collapsed .nav-item { justify-content: center; padding-left: 0; padding-right: 0; }
.sidebar-collapsed .nav-icon { margin-right: 0; }
.nav-icon { width: .9rem; height: .9rem; margin-right: .5rem; flex-shrink: 0; color: #94a3b8; }
.chevron-icon { width: .75rem; height: .75rem; transition: transform .2s ease; }
.submenu-container { transition: max-height .2s cubic-bezier(.4,0,.2,1); }
.submenu-container.submenu-open { max-height: 30rem; }
.chevron-icon.chevron-open { transform: rotate(90deg); }
.submenu-inner { margin: .25rem .25rem .25rem .75rem; padding: .25rem .25rem .25rem .75rem; }
.nav-subitem { padding: .3rem .4rem; }
.sidebar-search-icon { position: absolute; width: .75rem; height: .75rem; left: .5rem; top: .55rem; color: #94a3b8; }
.brand-anchor { width: 1.75rem; height: 1.75rem; border-radius: .5rem; display: flex; align-items: center; justify-content: center; color: #172033; background: linear-gradient(#fbbf24,#f59e0b); }
.brand-anchor svg { width: 1rem; height: 1rem; }
.brand-subtitle { font-size: 8px; }
.header-tool { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 2.35rem; height: 2.5rem; color: #64748b; border-radius: .25rem; flex-shrink: 0; }
.header-tool:hover { color: #a16207; background: #fffbeb; }
.header-tool svg { width: .9rem; height: .9rem; }
.header-tool span { font-size: 8px; margin-top: 2px; max-width: 3.8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.header-tool.user-tool { width: auto; min-width: 2.5rem; max-width: 5rem; padding-inline: .35rem; color: #334155; }
.nav-active { background: #ecfeff !important; color: #155e75 !important; font-weight: 600; box-shadow: inset 0 0 0 1px #a5f3fc; }
.content-loading { opacity: .55; pointer-events: none; }
::-webkit-scrollbar { width: 4px; height: 4px; } ::-webkit-scrollbar-track { background:#f1f5f9; } ::-webkit-scrollbar-thumb { background:#cbd5e1; border-radius:2px; }
@media (max-width: 480px) { .header-tools { max-width: 58vw; } .header-tool { width: 2rem; } .header-tool:nth-child(n+6):not(.user-tool) { display:none; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; } }
