/* Gemeinsame Hauptnavigation auf freihafen.live und netz.freihafen.live. */
.fh-global{background:#060B33;color:#F4F6FF;border-bottom:2px solid #1FE9FF;padding:10px 20px;font-family:"DM Sans",sans-serif}
.fh-global .fh-inner{max-width:1180px;margin:auto;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.fh-global a{text-decoration:none;color:inherit}
.fh-global .fh-logo{display:flex;align-items:center;gap:9px;flex:none;font-family:"Smooch Sans",sans-serif;font-size:32px;font-weight:700;line-height:1}
.fh-global .fh-logo svg{width:20px;height:24px;color:#1FE9FF}
.fh-global nav{display:flex;gap:8px;flex-wrap:wrap}
.fh-global nav a{display:flex;align-items:center;min-height:44px;padding:8px;box-sizing:border-box;border-bottom:2px solid transparent;font-size:16px}
.fh-global nav a:hover,.fh-global nav a[aria-current]{color:#1FE9FF;border-color:#1FE9FF}
.fh-global .fh-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.fh-global .fh-actions a,.fh-global .fh-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;box-sizing:border-box;border:1px solid #1FE9FF;border-radius:6px;background:transparent;color:#F4F6FF;font:600 14px "DM Sans",sans-serif;white-space:nowrap;cursor:pointer}
.fh-global .fh-actions .fh-ticket{background:#1FE9FF;color:#060B33}
.fh-global .fh-actions a:hover,.fh-global .fh-actions button:hover{background:#F4F6FF;color:#060B33;border-color:#F4F6FF}
.fh-global .fh-actions form{margin:0}
.fh-global :focus-visible{outline:3px solid #FF6B6B;outline-offset:3px}
@media(max-width:720px){
 .fh-global{padding:10px 16px}
 .fh-global .fh-inner{gap:8px}
 .fh-global .fh-logo{font-size:28px}
 .fh-global .fh-actions{gap:6px}
 .fh-global .fh-actions a,.fh-global .fh-actions button{padding:8px 10px}
 .fh-global nav{order:3;flex:1 1 100%;justify-content:center;gap:16px}
}
@media(max-width:370px){.fh-global .fh-logo{font-size:24px}.fh-global .fh-logo svg{width:16px}.fh-global .fh-actions a,.fh-global .fh-actions button{padding:8px;font-size:13px}}
/* Bereichsnavigation bleibt unter der Hauptnavigation erreichbar. */
.mh.fh-bereiche .inner{max-width:1180px}
.mh.fh-bereiche{position:static}

@media(max-width:720px){
 .mh.fh-bereiche .inner{gap:8px}
 .mh.fh-bereiche .sp,.mh.fh-bereiche .sp.solo{order:0;width:auto;flex:1 1 auto;margin-left:0}
 .mh.fh-bereiche .mh-menue{order:1}
 .mh.fh-bereiche nav{order:2}
}

/* Nutzer-Audit: eine wischbare Bereichsleiste, auch ohne JavaScript. */
@media(max-width:640px){
  .mh.fh-bereiche{padding:6px 12px}
  .mh.fh-bereiche .inner{position:relative;flex-wrap:nowrap;overflow-x:auto;gap:8px;-webkit-overflow-scrolling:touch}
  .mh.fh-bereiche .mh-menue{display:none}
  .mh.fh-bereiche nav,.mh.fh-bereiche.klappbar.offen nav{display:flex;flex:0 0 auto;flex-direction:row;flex-wrap:nowrap;order:0;gap:8px;margin:0;padding:0;border-top:0}
  .mh.fh-bereiche nav a{flex:none;white-space:nowrap;min-height:44px;padding:8px 12px}
  .mh.fh-bereiche .sp,.mh.fh-bereiche .sp.solo{flex:0 0 auto;flex-wrap:nowrap;width:auto;white-space:nowrap;margin-left:0;order:1}
}

/* Sprungziele bleiben auch unter einer zweizeiligen Hauptleiste sichtbar. */
html:has(nav.admin-hauptmenue){scroll-padding-top:128px}

/* Admin-Menühierarchie: große Hauptpunkte, kompakte Unterpunkte. */
nav.admin-hauptmenue,nav.admin-untermenue{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0 10px;margin:0 0 14px;border:0;border-bottom:1px solid rgba(244,246,255,.25);border-radius:0;background:var(--field)}
nav.admin-hauptmenue a,nav.admin-untermenue a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(244,246,255,.4);border-radius:99px;color:var(--foam);text-decoration:none;line-height:1.3;box-shadow:none;white-space:normal;text-align:center;flex:none}
nav.admin-hauptmenue a{padding:8px 14px;min-height:44px;font-family:var(--body),sans-serif;font-size:.875rem;font-weight:600;text-transform:none;letter-spacing:normal;background:none}
nav.admin-untermenue{position:static;background:none}
nav.admin-untermenue a{max-width:100%;overflow-wrap:anywhere;padding:6px 14px;min-height:34px;font-family:var(--disp),sans-serif;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;background:#111ba3;border-color:rgba(244,246,255,.25)}
nav.admin-hauptmenue a:hover,nav.admin-hauptmenue a:focus-visible,nav.admin-untermenue a:hover,nav.admin-untermenue a:focus-visible{border-color:var(--cyan);color:var(--cyan)}
nav.admin-hauptmenue a:focus-visible,nav.admin-untermenue a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
nav.admin-hauptmenue a[aria-current]{background:var(--cyan);border-color:var(--cyan);color:var(--night)}
nav.admin-hauptmenue a[aria-current]:hover,nav.admin-hauptmenue a[aria-current]:focus-visible{background:var(--foam);color:var(--night)}
nav.admin-untermenue a[aria-current]{background:var(--night);border-color:var(--cyan);color:var(--cyan);font-weight:700}
nav.admin-hauptmenue .n,nav.admin-hauptmenue .navzahl,nav.admin-untermenue .tab-badge{font-family:var(--body),sans-serif;font-size:.75rem;font-weight:700;line-height:1.5;background:var(--cyan);color:var(--night);padding:1px 6px;border-radius:99px;letter-spacing:normal}
nav.admin-hauptmenue a[aria-current] .n,nav.admin-hauptmenue a[aria-current] .navzahl{background:var(--night);color:var(--foam)}
nav.admin-hauptmenue .n.warn,nav.admin-hauptmenue a[aria-current] .n.warn{background:var(--bad);color:var(--foam)}
nav.admin-hauptmenue a.leer:not([aria-current]){opacity:.8}
nav.admin-hauptmenue a.leer .navzahl{border:0;background:rgba(244,246,255,.15);color:inherit}
nav.admin-untermenue .tab-badge{background:rgba(244,246,255,.15);color:inherit}
@media(max-width:760px){nav.admin-hauptmenue{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:12px}nav.admin-hauptmenue a{white-space:nowrap}}
