/* Header, Tools menu and mobile drawer (07 §0.1). */
.logo--dark { display: none; }
[data-theme="dark"] .logo--light { display: none; }
[data-theme="dark"] .logo--dark { display: block; }

.site-header { border-bottom: 1px solid var(--color-border); background: var(--color-bg); }
.site-header__inner { display: flex; align-items: center; gap: var(--space-4); min-height: var(--header-h); }
.site-header__logo { display: inline-flex; flex: none; }
.site-header__actions { display: flex; align-items: center; gap: var(--space-1); margin-left: auto; }
.site-nav { display: none; align-items: center; gap: var(--space-1); }
.site-nav__link {
  display: inline-flex; align-items: center; gap: var(--space-1); min-height: var(--tap-min); padding: 0 var(--space-3);
  border: 0; border-radius: var(--radius-md); background: none; color: var(--color-text); font-weight: 600; text-decoration: none;
}
.site-nav__link:hover { background: var(--color-surface); }
.tools-menu { position: relative; }
.tools-menu__chev { width: var(--icon-sm); height: var(--icon-sm); transform: rotate(90deg); transition: transform var(--dur-fast) var(--ease); }
.tools-menu__toggle[aria-expanded="true"] .tools-menu__chev { transform: rotate(-90deg); }
.tools-menu__panel {
  position: absolute; z-index: 30; top: calc(100% + var(--space-1)); left: 0; padding: var(--space-4) var(--space-5);
  background: var(--color-surface-raised); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-2);
}
.tools-menu__cols { display: grid; gap: var(--space-5); }
.tools-menu__heading { font-size: var(--text-tiny); font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--color-text-muted); margin-bottom: var(--space-2); }
.tools-menu__cols ul { list-style: none; margin: 0; padding: 0; }
.tools-menu__cols a { display: flex; align-items: center; min-height: var(--control-h-sm); color: var(--color-text); text-decoration: none; white-space: nowrap; }
.tools-menu__cols a:hover { color: var(--color-primary); }
@media (min-width: 768px) {
  .site-nav { display: flex; }
  .site-header .site-header__menu { display: none; }
  .tools-menu__cols { grid-template-columns: repeat(2, auto); }
}

.drawer { position: fixed; inset: 0; z-index: 40; background: var(--color-overlay); }
.drawer__panel {
  position: absolute; top: 0; right: 0; bottom: 0; width: min(320px, 88vw); padding: var(--space-4) var(--space-5);
  background: var(--color-surface-raised); overflow-y: auto; display: grid; align-content: start; gap: var(--space-4);
}
.drawer__head { display: flex; justify-content: space-between; align-items: center; }
.drawer__title { font-weight: 700; }
.drawer__links { list-style: none; margin: 0; padding: var(--space-4) 0 0; border-top: 1px solid var(--color-border); }
.drawer__links a { display: flex; align-items: center; min-height: var(--tap-min); color: var(--color-text); font-weight: 600; text-decoration: none; }
