/* ═══════════════════════════════════════════════════════════════════
   MANAGR-TOPBAR (2026-07-16) — fælles topbar-ANATOMI for alle produkter,
   i RUDE-designstil. Samme pladser i alle fem: [1 sidetitel] [2 kontekst-
   kontroller] [3 global søgning m. genvejs-kapsel] [4 produkt-widget]
   [5 notifikationer] [6 bruger].

   VIGTIGT: selve bar-ELEMENTET styles af rude-skin.css §4 (flydende glas-
   dock: .topbar/.pln-topbar/.hrm-topbar/…). Denne fil styler KUN indholdet
   (.mtb-*-komponenterne) så det matcher /app-topbarens kontroller 1:1
   (pille-radier, chrome-fill, --bh-edge, spec-højlys). Accentfarven
   (produktets --accent via <html data-product=…>) bruges KUN til aktive
   chips, primærhandling og badges.

   Brug: tilføj klassen .mtb på produktets topbar-element (behold den
   eksisterende produktklasse, fx .pln-topbar, så skin §4 stadig gælder)
   og byg indholdet af .mtb-*-komponenter. Link filen EFTER rude-skin.css.
   Mørk tilstand følger automatisk (--bh-*-tokens er tema-styrede).
   ═══════════════════════════════════════════════════════════════════ */

.mtb { display: flex; align-items: center; gap: 10px; font-variant-numeric: tabular-nums; }

.mtb .mtb-title { font-family: var(--bh-display, inherit); font-size: .95rem; font-weight: 750; letter-spacing: -.01em; white-space: nowrap; color: var(--bh-ink, #1C2540); }
.mtb .mtb-sub { font-size: .72rem; color: var(--bh-ink-3, #6E7689); white-space: nowrap; }
.mtb .mtb-sep { width: 1px; height: 22px; background: var(--bh-line, #E2E8F2); margin: 0 2px; flex: none; }
.mtb .mtb-spacer { flex: 1; min-width: 8px; }

/* kontekst-chips (lokation/konto/segment) — spejler /app-lokationsfilterets pille */
.mtb .mtb-chips { display: flex; gap: 2px; background: var(--bh-chrome-fill, rgba(255,255,255,.55)); border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); border-radius: var(--bh-r-pill, 999px); padding: 3px; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); flex: none; }
.mtb .mtb-chip { border: 0; background: transparent; color: var(--bh-ink-2, #5B6678); font: 600 .76rem/1 var(--bh-body, inherit); padding: 7px 12px; border-radius: var(--bh-r-pill, 999px); cursor: pointer; white-space: nowrap; }
.mtb .mtb-chip.on, .mtb .mtb-chip[aria-pressed="true"] { background: var(--bh-pill-active, rgba(255,255,255,.95)); color: var(--accent-ink, var(--accent, #0A6FE0)); box-shadow: var(--bh-shadow-flat-sm, 0 1px 2px rgba(16,24,48,.05)); }

/* knapper — glas-piller; primær = accent-pille */
.mtb .mtb-btn { display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); background: var(--bh-chrome-fill, rgba(255,255,255,.55)); border-radius: var(--bh-r-pill, 999px); padding: 8px 14px; font: 600 .76rem/1 var(--bh-body, inherit); color: var(--bh-ink, #1C2540); cursor: pointer; white-space: nowrap; flex: none; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); transition: .16s; }
.mtb .mtb-btn:hover { background: var(--bh-chrome-fill-hover, rgba(255,255,255,.8)); }
.mtb .mtb-btn svg { width: 14px; height: 14px; display: block; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.mtb .mtb-btn--primary { background: var(--accent, #0A6FE0); border-color: transparent; color: #fff; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.4)), 0 6px 16px -10px var(--accent, #0A6FE0); }
.mtb .mtb-btn--primary:hover { filter: brightness(1.06); background: var(--accent, #0A6FE0); }

/* global søgning — 1:1 med /app-topbarens .global-search-wrap (pille + kbd-kapsel) */
.mtb .mtb-search { display: flex; align-items: center; gap: 8px; border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); background: var(--bh-chrome-fill, rgba(255,255,255,.55)); border-radius: var(--bh-r-pill, 999px); padding: 8px 13px; min-width: 170px; max-width: 320px; flex: 0 1 300px; color: var(--bh-ink-3, #6E7689); font: 500 .8rem/1.2 var(--bh-body, inherit); text-align: left; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); cursor: text; transition: .16s; }
button.mtb-search { cursor: pointer; }
.mtb .mtb-search:focus-within, .mtb .mtb-search:hover { border-color: var(--accent, #0A6FE0); }
.mtb .mtb-search input { border: 0; background: transparent; outline: none; color: var(--bh-ink, #1C2540); font: inherit; width: 100%; min-width: 0; padding: 0; box-shadow: none; }
.mtb .mtb-search input::placeholder { color: var(--bh-ink-3, #6E7689); }
.mtb .mtb-search .mtb-kbd { margin-left: auto; border: 1px solid var(--bh-line, #E2E8F2); border-radius: var(--bh-r-chip, 8px); background: var(--bh-track, rgba(16,24,48,.06)); color: var(--bh-ink-3, #6E7689); font-family: var(--bh-mono, ui-monospace, monospace); font-size: .62rem; padding: 2px 6px; flex: none; }

/* produkt-widget (status-chip: synk/TV/XP/ulæste) — glas-pille m. accent-prik */
.mtb .mtb-widget { display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); background: var(--bh-chrome-fill, rgba(255,255,255,.55)); border-radius: var(--bh-r-pill, 999px); padding: 7px 12px; font: 600 .72rem/1.2 var(--bh-body, inherit); color: var(--bh-ink-2, #5B6678); white-space: nowrap; flex: none; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); }
.mtb .mtb-widget .mtb-wdot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent, #0A6FE0); flex: none; }

/* ikon-knapper (notifikationer m.m.) — 38px glas-pille som /app-topbarens .icon-btn */
.mtb .mtb-ic { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); border-radius: var(--bh-r-pill, 999px); background: var(--bh-chrome-fill, rgba(255,255,255,.55)); color: var(--bh-ink-2, #5B6678); cursor: pointer; position: relative; flex: none; padding: 0; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); transition: .16s; }
.mtb .mtb-ic:hover { background: var(--bh-chrome-fill-hover, rgba(255,255,255,.8)); color: var(--bh-ink, #1C2540); }
.mtb .mtb-ic svg { width: 15px; height: 15px; display: block; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.mtb .mtb-ic .mtb-nbadge { position: absolute; top: -4px; right: -4px; background: var(--accent, #0A6FE0); color: #fff; font-size: .58rem; font-weight: 700; border-radius: var(--bh-r-pill, 999px); padding: 1px 5px; line-height: 1.3; }

/* bruger-avatar — rund accent-soft pille */
.mtb .mtb-ava { width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--bh-edge, rgba(255,255,255,.75)); background: color-mix(in srgb, var(--accent, #0A6FE0) 16%, #fff); color: var(--accent-ink, var(--accent, #0A6FE0)); display: inline-flex; align-items: center; justify-content: center; font: 750 .72rem/1 var(--bh-body, inherit); flex: none; cursor: pointer; box-shadow: var(--bh-spec, inset 0 1px 0 rgba(255,255,255,.95)); }
[data-theme="dark"] .mtb .mtb-ava { background: color-mix(in srgb, var(--accent, #0A6FE0) 28%, transparent); }

.mtb :focus-visible { outline: 2px solid var(--accent, #0A6FE0); outline-offset: 1px; }

/* smalle viewports: søgningen viger først, resten kan wrappe */
@media (max-width: 860px) {
    .mtb { flex-wrap: wrap; row-gap: 8px; }
    .mtb .mtb-search { flex: 1 1 100%; max-width: none; order: 9; }
}
