/* Shared admin masthead; login and ancestor navigation retain their own layout. */
.school-admin-ui:not(.login) #header {
  --header-bg: #031630;
  --header-color: #ccdae4;
  --header-link-color: #f5f9fc;
  background: var(--header-bg);
  color: var(--header-color);
  box-sizing: border-box;
  padding: 16px 30px;
  min-height: 90px;
  display: flex;
  flex-direction: row;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  border-bottom: 2px solid #009f94;
}
.school-admin-ui #header #branding {float:none; min-width:0;}
.school-admin-ui #header #site-name {margin:0; padding:0; line-height:1.3;}
.school-admin-ui #header .tw-header-brand {display:flex; align-items:center; gap:12px; text-decoration:none; color:#fff; font-size:26px; font-weight:650;}
.tw-header-brand img {display:block; border-radius:10px; flex-shrink:0;}
.tw-header-brand small {display:block; font-size:13px; font-weight:400; color:#b2cbd5; margin-top:5px;}
.school-admin-ui #header #user-tools {display:flex; align-items:center; justify-content:flex-end; gap:12px; flex-wrap:wrap; margin:0; padding:0; float:none; text-transform:none; letter-spacing:normal; font-size:14px; line-height:1.5; min-width:0;}
.tw-header-user {display:flex; flex-direction:column; gap:3px; font-size:12px; color:#b2cbd5; max-width:240px; text-align:start;}
.tw-header-user strong {font-size:14px; font-weight:600; color:white; overflow-wrap:anywhere;}
.tw-header-actions {display:flex; align-items:center; gap:6px; flex-wrap:wrap; font-size:0;}
.school-admin-ui #header .tw-header-actions>a,
.school-admin-ui #header #logout-form button {font-size:14px; padding:8px 10px; margin:0; border:1px solid #ffffff24; border-radius:7px; text-decoration:none; background:transparent; color:#edf5f8; line-height:1.5; white-space:normal;}
.school-admin-ui #header #logout-form {display:inline-flex; margin:0; padding:0;}
.school-admin-ui #header .tw-header-actions>a:hover,
.school-admin-ui #header #logout-form button:hover {background:#ffffff12; border-color:#37beaf;}
.school-admin-ui #header .theme-toggle {padding:8px; border:1px solid #ffffff24; border-radius:7px; color:#fff; margin:0;}
.school-admin-ui #header .language-switcher {display:flex; align-items:center; gap:7px; margin:0; padding:0; font-size:14px;}
.school-admin-ui #header .language-switcher label {color:#c5d7e1; font-size:13px;}
.school-admin-ui #header .language-switcher select {color:#f5f9fc; background:#102a41; border:1px solid #61768a; border-radius:7px; min-height:36px; padding:6px 10px; font-size:14px; max-width:135px; color-scheme:dark;}
.school-admin-ui #header .language-switcher option {background:#102a41; color:#f5f9fc;}
.school-admin-ui #header .language-switcher option:checked {background:#006e65; color:#fff;}
.school-admin-ui #header .language-switcher button {background:#102a41; color:#f5f9fc; border:1px solid #61768a; border-radius:7px; padding:7px 10px; font-size:13px; cursor:pointer;}
.school-admin-ui #header :is(a,button,select):focus-visible {outline:2px solid #ffbc32; outline-offset:3px;}
@media(max-width:1100px) {
  .school-admin-ui:not(.login) #header {padding:16px 22px;}
  .school-admin-ui #header #user-tools {flex:1 1 100%; justify-content:flex-start; gap:12px 18px;}
  .tw-header-user {margin-inline-end:auto;}
}
@media(max-width:600px) {
  .school-admin-ui:not(.login) #header {padding:14px 16px; gap:14px;}
  .school-admin-ui #header .tw-header-brand {font-size:23px;}
  .tw-header-brand img {width:46px; height:46px;}
  .tw-header-user {flex:1 1 100%; max-width:none; flex-direction:row; flex-wrap:wrap; gap:8px;}
  .school-admin-ui #header #user-tools {gap:12px;}
  .tw-header-actions {flex:1 1 100%; gap:6px;}
  .school-admin-ui #header .tw-header-actions>a,
  .school-admin-ui #header #logout-form button {font-size:13px; padding:8px;}
}
