/* NORTHERN SUITE — the suite bar shown on top of every back-office screen.
   Visual language: Fleet Scheduler Pro (classic window title bar + menu drops).
   Everything is scoped to #suitebar so module stylesheets cannot reach it and
   it cannot reach them. */
#suitebar, #suitebar * { box-sizing: border-box; margin: 0; padding: 0; font-family: Tahoma, Verdana, Arial, sans-serif; font-size: 11px; line-height: normal; letter-spacing: normal; text-transform: none; text-shadow: none; }
#suitebar {
  position: relative; z-index: 99990; display: flex; align-items: stretch; height: 24px; flex: 0 0 auto;
  background: linear-gradient(90deg, #000080 0%, #1084d0 100%); color: #fff;
  border: 2px solid; border-color: #ffffff #404040 #404040 #ffffff; user-select: none; width: 100%;
}
#suitebar .sb-brand { display: flex; align-items: center; gap: 6px; padding: 0 10px 0 6px; font-weight: bold; color: #fff; white-space: nowrap; text-decoration: none; font-size: 12px; }
#suitebar .sb-brand .sb-tenant { background: #ece9d8; color: #000080; padding: 0 5px; border: 1px solid; border-color: #808080 #fff #fff #808080; font-size: 10px; }
#suitebar .sb-brand .sb-env { background: #c05800; color: #fff; padding: 0 5px; font-size: 10px; }
#suitebar .sb-menu { position: relative; display: flex; align-items: stretch; }
#suitebar .sb-title { display: flex; align-items: center; gap: 4px; padding: 0 9px; cursor: pointer; color: #fff; white-space: nowrap; border: 1px solid transparent; background: none; }
#suitebar .sb-menu:hover > .sb-title, #suitebar .sb-menu:focus-within > .sb-title, #suitebar .sb-menu.sb-open > .sb-title { background: #ece9d8; color: #000; border-color: #808080 #fff #fff #808080; }
#suitebar .sb-menu.sb-active > .sb-title { font-weight: bold; text-decoration: underline; }
#suitebar .sb-drop {
  display: none; position: absolute; top: 100%; left: 0; min-width: 240px; max-height: calc(100vh - 40px); overflow-y: auto;
  background: #fff; color: #000; border: 1px solid #808080; box-shadow: 2px 2px 5px rgba(0,0,0,.35); z-index: 99991;
}
#suitebar .sb-menu:hover > .sb-drop, #suitebar .sb-menu:focus-within > .sb-drop, #suitebar .sb-menu.sb-open > .sb-drop { display: block; }
#suitebar .sb-drop a { display: block; padding: 5px 12px; color: #000; text-decoration: none; border-bottom: 1px solid #e4e4e4; white-space: nowrap; font-size: 12px; }
#suitebar .sb-drop a:last-child { border-bottom: none; }
#suitebar .sb-drop a:hover, #suitebar .sb-drop a:focus { background: #000080; color: #fff; outline: none; }
#suitebar .sb-drop a.sb-current { font-weight: bold; }
#suitebar .sb-drop .sb-head { padding: 4px 12px 2px; color: #808080; font-size: 10px; font-weight: bold; background: #f4f3ee; border-bottom: 1px solid #e4e4e4; }
#suitebar .sb-drop .sb-sep { height: 0; border-top: 2px solid #d4d0c8; }
#suitebar .sb-right { margin-left: auto; display: flex; align-items: stretch; }
#suitebar .sb-user { display: flex; align-items: center; padding: 0 8px; color: #fff; white-space: nowrap; }
#suitebar .sb-btn { display: flex; align-items: center; padding: 0 9px; margin: 1px; color: #000; background: #ece9d8; text-decoration: none; border: 2px solid; border-color: #ffffff #808080 #808080 #ffffff; font-weight: bold; white-space: nowrap; }
#suitebar .sb-btn:active { border-color: #808080 #ffffff #ffffff #808080; }
#suitebar .sb-support { background: #ffff80; color: #000; padding: 0 6px; margin: 3px 4px; display: flex; align-items: center; font-weight: bold; border: 1px solid #808080; }
@media (max-width: 900px) { #suitebar .sb-title .sb-label { display: none; } #suitebar .sb-user { display: none; } }
@media print { #suitebar { display: none !important; } }
