/*
 * Header-Actions + Window-Controls (FlowDesk-Pattern, zentral — keine lokalen
 * SVG-Kopien je Dialog). Referenz: docs/FlowDesk-HeaderActions-Icon-System-Referenz.md.
 * Nur var(--fn-*)-Tokens.
 */

.fn-header-actions {
    display: flex;
    gap: 6px;
    align-items: center;
}

/* Trenner rechts neben den HeaderActions, vor den WindowControls. */
.fn-header-actions::after {
    content: "";
    width: 1px;
    height: 18px;
    background: var(--fn-border-strong);
    margin-left: 6px;
}

/* Chrome-Ecke (Seiten: Breadcrumb-Zeile rechts außen) — kein Trenner nötig,
   da keine WindowControls folgen (Niko-Abnahme 05.06.2026). */
.fn-header-actions.fn-corner { margin-left: auto; }
.fn-header-actions.fn-corner::after { display: none; }

.fn-window-controls {
    display: flex;
    gap: 6px;
    align-items: center;
}

.fn-window-control {
    /* Bezugspunkt fuer die Zaehl-Blase (.fn-wc-badge). Ohne Positionierung wuerde sie am naechsten
       positionierten Vorfahren haengen - im Chartkopf waere das die halbe Kopfzeile. Ohne Blase
       aendert die Zeile nichts an der Darstellung. */
    position: relative;
    width: 28px;
    height: 28px;
    padding: 0;
    background: var(--fn-surface);
    border: var(--fn-border-width) solid var(--fn-border);
    border-radius: 6px;
    color: var(--fn-text-secondary);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.fn-window-control:hover {
    background: var(--fn-bg-muted);
    color: var(--fn-text);
    border-color: var(--fn-primary);
}

.fn-window-control:focus-visible {
    outline: 2px solid var(--fn-primary);
    outline-offset: 2px;
}

/* Farbliche Bedeutung (FnHeaderActionTone). Nur die Schriftfarbe wechselt - das SVG erbt sie ueber
   currentColor. Flaeche und Rahmen bleiben gleich, damit der Knopf in der Reihe nicht herausspringt.
   Der Ton ueberlebt den Hover bewusst nicht: dort gilt die gewohnte Rueckmeldung aller Kopf-Knoepfe. */
.fn-window-control-tone-positive { color: var(--fn-success); }
.fn-window-control-tone-caution { color: var(--fn-warning); }

/* Zaehl-Blase: sie erscheint nur, wenn es etwas zu zaehlen gibt (der Wirt gibt dann erst einen Wert mit).
   aria-hidden im Markup - die Zahl steht bereits im aria-label des Knopfes, sonst laese ein Screenreader
   sie doppelt und ohne Zusammenhang vor. */
/* Masse, Farbe und Position 1:1 aus der abgenommenen Vorschau (.fn-hab .badge, Szene 1): INNERHALB
   des Knopfes (top 1px / right 0), nicht ueberstehend, und in --fn-warning. Ein Ueberstand von 5px
   waere zusaetzlich anfaellig, sobald ein Vorfahr overflow: hidden traegt. */
/* Roter Punkt: eine Regel hat ausgeloest und wurde noch nicht gesehen.
   Masse 1:1 aus der abgenommenen Vorschau (VORSCHAU-Chart-Studio-Positions-Waechter.html, .fn-hab .fired):
   bottom 2px, right 3px, 6x6, --fn-danger, 2px Ring in der Flaechenfarbe. Der Ring haelt den Punkt
   auch dann lesbar, wenn er die Zaehl-Blase oder das Icon beruehrt. */
.fn-wc-unseen {
    position: absolute;
    bottom: 2px;
    right: 3px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--fn-danger);
    box-shadow: 0 0 0 2px var(--fn-bg-alt);
}

.fn-wc-badge {
    position: absolute;
    top: 1px;
    right: 0;
    min-width: 14px;
    height: 14px;
    padding: 0 3px;
    box-sizing: border-box;
    background: var(--fn-warning);
    color: var(--fn-on-primary);
    border-radius: var(--fn-radius-pill);
    font-family: var(--fn-font-mono);
    font-size: 9.5px;
    font-weight: 700;
    line-height: 14px;
    text-align: center;
    pointer-events: none;
}

.fn-window-control:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.fn-window-control.fn-window-control-active {
    color: var(--fn-primary);
    border-color: var(--fn-primary);
}
