/* Shared navigation preferences: presentation only; i18n.js owns selection. */
[data-ib-preferences]{flex:0 0 auto;min-width:96px;min-height:44px;}
[data-ib-preferences][data-language-only]{min-width:44px;}
#ib-switcher-bar{display:flex;align-items:center;gap:8px;position:relative;isolation:isolate;font-family:inherit;}
#ib-switcher-bar .ib-sw-dropdown{position:relative;}
#ib-switcher-bar .ib-sw-btn,
#ib-switcher-bar .ib-sw-option{appearance:none;font-family:inherit;cursor:pointer;box-shadow:none;transform:none;text-decoration:none;}
#ib-switcher-bar .ib-sw-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text,#242620);font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;transition:none;}
#ib-switcher-bar .ib-sw-btn:disabled{cursor:default;opacity:.65;}
#ib-switcher-bar .ib-sw-icon{display:inline-flex;align-items:center;justify-content:center;min-width:14px;font-size:19px;line-height:1;}
#ib-switcher-bar .ib-sw-icon img,#ib-switcher-bar .ib-sw-opt-icon img{display:block;width:26px;height:19px;object-fit:cover;border-radius:3px;filter:none;}
#ib-switcher-bar .ib-sw-label{display:none;}
#ib-switcher-bar .ib-sw-panel{position:absolute;top:calc(100% + 6px);right:0;transform:translateX(var(--ib-panel-shift,0px));display:flex;flex-direction:column;width:max-content;max-width:calc(100vw - 24px);max-height:calc(100dvh - 120px);overflow:auto;padding:4px;background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);border-radius:8px;box-shadow:none;z-index:10001;}
#ib-switcher-bar .ib-sw-panel[hidden]{display:none;}
#ib-switcher-bar .ib-sw-option{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--text,#242620);font-size:19px;font-weight:600;line-height:1;white-space:nowrap;transition:none;}
#ib-switcher-bar .ib-sw-opt-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;flex:0 0 30px;}
#ib-switcher-bar .ib-sw-btn:focus-visible,#ib-switcher-bar .ib-sw-option:focus-visible{outline:2px solid var(--primary,#2d5bda);outline-offset:3px;}
[data-theme='dark'] #ib-switcher-bar .ib-sw-btn{background:transparent;color:#f4f5fa;}
[data-theme='dark'] #ib-switcher-bar .ib-sw-panel{background:#141829;border-color:#ffffff24;box-shadow:none;}
[data-theme='dark'] #ib-switcher-bar .ib-sw-option{color:#f4f5fa;}
.top-bar:has([data-ib-preferences]),.topbar:has([data-ib-preferences]){top:0;z-index:10000;}
.landing-nav .top-bar-inner{gap:16px;}
.landing-nav .right-section{gap:10px;}
.topbar-inner>[data-ib-preferences]{margin-left:16px;}
.ib-preferences-header{position:sticky;top:0;z-index:10000;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;width:100%;min-height:64px;padding:10px 24px;background:var(--surface,#fff);border-bottom:1px solid var(--border,#e2e8f0);font-family:inherit;}
.ib-preferences-brand{display:flex;align-items:center;gap:10px;color:var(--text,#1a1a2e)!important;font-size:20px;font-weight:700;text-decoration:none!important;white-space:nowrap;}
.ib-preferences-brand img{display:block;flex:none;width:36px;height:36px;object-fit:contain;}
body.ib-pending-preferences,body.ib-signup-preferences{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;}
body.ib-pending-preferences>.container{margin:32px auto;padding:0 16px;}
[data-theme='dark'] .ib-preferences-header{background:#141829;border-color:#343b50;}
[data-theme='dark'] .ib-preferences-brand{color:#f4f5fa!important;}
.coordinator-shell .layout{grid-template-rows:64px minmax(0,1fr);}
.coordinator-shell .ib-preferences-header{grid-column:1/-1;grid-row:1;}
.coordinator-shell .layout>.sidebar,.coordinator-shell .layout>.main{height:calc(100vh - 64px);}
.coordinator-shell .layout>.main{padding-top:24px;}
@media(max-width:1100px){
  .landing-nav .nav-links{display:none;}
  .landing-nav .hamburger-btn{display:flex;}
  .landing-nav .right-section>.login-btn{display:none;}
  .mobile-nav-overlay{display:block;}
  #mobileNavDrawer{padding-top:var(--mobile-menu-top,88px);}
}
@media(min-width:901px) and (max-width:1024px){
  .coordinator-shell .layout>.sidebar,.coordinator-shell .layout>.main{height:calc(100vh - 64px)!important;}
}
@media(max-width:900px){
  .topbar .nav-links{display:none!important;}
  .topbar .student-hamburger{display:flex!important;}
  .coordinator-shell .layout{display:block;}
  .coordinator-shell .ib-preferences-header{padding-left:68px;}
  body.coordinator-shell .sidebar-toggle{height:64px!important;z-index:10001!important;}
  .coordinator-shell .sidebar-toggle-label{display:none;}
  .coordinator-shell .layout>.sidebar{top:64px!important;height:calc(100dvh - 64px)!important;}
  .coordinator-shell .layout>.main{height:auto;min-height:calc(100vh - 64px)!important;padding-top:24px!important;}
}
@media(max-width:768px){
  .topbar-inner>[data-ib-preferences]{margin-left:auto;}
  .landing-nav .container{padding-left:16px;padding-right:16px;}
  .landing-nav .top-bar-inner{padding:12px 0;gap:10px;}
  .landing-nav .right-section{gap:8px;}
  .top-bar:has(>.nav-spacer){height:auto;min-height:64px;flex-wrap:wrap;padding:10px 16px;gap:8px;}
  .top-bar:has(>.nav-spacer)>.back{margin-left:auto;font-size:12px;padding:6px 10px;}
  .ib-preferences-header{padding:10px 16px;gap:10px;}
}
/* Icon-only controls fit in the navigation row on most phones. */
@media(max-width:600px){
  .landing-nav .top-bar-inner,.topbar .topbar-inner{gap:6px!important;}
  .landing-nav .right-section{gap:4px;}
  .topbar-inner>[data-ib-preferences]{margin-left:auto;}
  .topbar .student-hamburger{order:3;margin-left:0;}
  .landing-nav .logo,.topbar .brand-text{font-size:18px!important;}
  .landing-nav .logo,.topbar .brand{gap:6px;}
  .landing-nav .logo img,.topbar .brand-logo{height:30px!important;}
  .ib-preferences-header .ib-preferences-brand{font-size:17px;}
  .coordinator-shell .ib-preferences-brand span{font-size:16px;}
  .coordinator-shell .ib-preferences-brand{gap:6px;}
  .coordinator-shell .ib-preferences-brand img{width:28px;height:28px;}
}
/* Smallest phones keep the full brand rather than clipping any controls. */
@media(max-width:359px){
  .landing-nav .top-bar-inner,.topbar .topbar-inner{flex-wrap:wrap;}
  .landing-nav .logo,.topbar .brand{flex-basis:100%;}
  .landing-nav .right-section{width:100%;justify-content:space-between;}
  .topbar-inner>[data-ib-preferences]{margin-left:0;margin-right:auto;}
  .coordinator-shell .ib-preferences-brand span{font-size:14px;}
}
@media(prefers-reduced-motion:reduce){#ib-switcher-bar *{transition:none!important;}}
