/* TSG Trip CRM - collapsible left menu (visual only). Load after tsg-theme.css. */

.tsg-nav-toggle { display: none; }

@media (min-width: 861px) {
  .app-shell { transition: grid-template-columns .2s ease; }

  .tsg-nav-toggle {
    align-items: center;
    align-self: flex-end;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .16);
    color: #bdff00;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 auto;
    height: 30px;
    justify-content: center;
    margin: 0 4px 10px;
    padding: 0;
    width: 36px;
  }
  .tsg-nav-toggle:hover { background: rgba(189, 255, 0, .14); border-color: #bdff00; }
  .tsg-nav-toggle:focus-visible { outline: 2px solid #bdff00; outline-offset: 2px; }
  .tsg-nav-toggle svg { transition: transform .2s ease; }

  /* ---- collapsed: a thin icon strip ---- */
  html.tsg-nav-collapsed { --shell-nav-w: 64px; }
  html.tsg-nav-collapsed .nav-bar { overflow-x: hidden; padding: 20px 8px; }
  html.tsg-nav-collapsed .nav-bar::before { display: none; }
  html.tsg-nav-collapsed .tsg-nav-toggle { align-self: center; margin: 0 0 12px; }
  html.tsg-nav-collapsed .tsg-nav-toggle svg { transform: rotate(180deg); }
  html.tsg-nav-collapsed .nav-button {
    font-size: 0;
    gap: 0;
    justify-content: center;
    padding: 12px 0;
  }
  html.tsg-nav-collapsed .nav-button::before { height: 20px !important; width: 20px !important; }
}
