/* /Components/AboutDialog.razor.rz.scp.css */
.about-modal[b-5kfg0lo8ws] {
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
    position: relative;
}

.about-close[b-5kfg0lo8ws] {
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    z-index: 2;
    filter: invert(1) grayscale(1) brightness(1.6);
    opacity: 0.85;
}

/* Kopfbereich mit Logo auf schwarzem Grund (wie der Sidebar-Kopf) → weiße Logo-Variante. */
.about-hero[b-5kfg0lo8ws] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2.75rem 2rem;
    background-color: var(--tri-ink);
}

.about-logo[b-5kfg0lo8ws] {
    height: 160px;   /* 76px → +75 % → 133px → +20 % */
    width: auto;
    display: block;
}

.about-body[b-5kfg0lo8ws] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.7rem;
    padding: 1.6rem 2rem 1.9rem;
    text-align: center;
    background: #fff;
}

.about-version[b-5kfg0lo8ws] {
    display: inline-flex;
    align-items: center;
    font-family: inherit;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--tri-green);
    background: var(--tri-green-bg);
    border: 1px solid var(--tri-green-soft);
    border-radius: 999px;
    padding: 0.3rem 0.9rem;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}

.about-version:hover[b-5kfg0lo8ws] {
    background: var(--tri-green-soft);
    border-color: var(--tri-green);
}

.about-link[b-5kfg0lo8ws] {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--tri-green);
    text-decoration: none;
}

.about-link:hover[b-5kfg0lo8ws] {
    color: var(--tri-green-dark);
    text-decoration: underline;
}

.about-copy[b-5kfg0lo8ws] {
    font-size: 0.82rem;
    color: var(--tri-muted);
}
/* /Components/UserProfileDialog.razor.rz.scp.css */
.profile-modal[b-mdfez3kx92] {
    border-radius: 1rem;
    overflow: hidden;
    position: relative;
}

/* Schließen-Kreuz fest in der oberen rechten Ecke */
.profile-close[b-mdfez3kx92] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 3;
}

.profile-head[b-mdfez3kx92] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem 1.5rem 1.25rem;
    background: linear-gradient(180deg, #f6f8f7 0%, #ffffff 100%);
    border-bottom: 1px solid #eef0ef;
}

.profile-body[b-mdfez3kx92] {
    padding: 0.75rem 1.5rem 0.5rem;
}

.profile-section[b-mdfez3kx92] {
    padding: 1.25rem 0;
}

.profile-section + .profile-section[b-mdfez3kx92] {
    border-top: 1px solid #eef0ef;
}

.profile-section-title[b-mdfez3kx92] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    margin-bottom: 0.85rem;
}

.profile-foot[b-mdfez3kx92] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    background: #f8f9fa;
    border-top: 1px solid #eef0ef;
}

.min-w-0[b-mdfez3kx92] {
    min-width: 0;
}
/* /Layout/MainLayout.razor.rz.scp.css */
/* Seite: Sidebar (mit schwarzem Kopf) links, Inhalt rechts über die volle Höhe. */
.page[b-ur26oegsde] {
    display: flex;
    flex-direction: row;
    min-height: 100vh;
}

/* ---------- Sidebar (240px) mit schwarzem Kopfbereich ---------- */
.sidebar[b-ur26oegsde] {
    flex: 0 0 240px;
    width: 240px;
    height: 100vh;
    position: sticky;
    top: 0;
    align-self: flex-start;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border-right: 1px solid var(--tri-border);
}

/* Schwarzer Kopf – nur über der Sidebar (Hamburger + Logo) */
.sidebar-header[b-ur26oegsde] {
    flex: 0 0 80px;
    display: flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0 0.75rem;   /* linker Abstand = .sidebar-nav, damit der Hamburger zu den Menü-Icons fluchtet */
    background-color: var(--tri-ink);
    color: #fff;
    /* Whitelabel: Trennlinie unter dem Kopf in der Signature-Farbe (sonst unsichtbar). */
    border-bottom: 3px solid var(--wl-signature, transparent);
}

/* Scrollbarer Menübereich unter dem Kopf */
.sidebar-body[b-ur26oegsde] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

.topbar-toggle[b-ur26oegsde] {
    background: none;
    border: none;
    color: #cfd2d6;
    font-size: 1.35rem;
    line-height: 1;
    padding: 0.25rem 0.75rem;   /* = .nav-link, damit das Icon-Kästchen zu den Menü-Icons fluchtet */
    border-radius: 6px;
    flex-shrink: 0;
}

/* Hamburger-Glyph wie ein Menü-Icon zentrieren (gleiche 1.25rem-Box wie .nav-icon). */
.topbar-toggle .bi[b-ur26oegsde] {
    display: inline-block;
    width: 1.25rem;
    text-align: center;
}

.topbar-toggle:hover[b-ur26oegsde] {
    background-color: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.topbar-brand[b-ur26oegsde] {
    display: flex;
    align-items: center;
    min-width: 0;
    color: #fff;
    text-decoration: none;
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
}

/* ---------- Inhaltsbereich: volle Höhe, beginnt ganz oben ---------- */
.content-area[b-ur26oegsde] {
    flex: 1;
    min-width: 0;
    min-height: 100vh;
    background-color: var(--tri-surface);
}

/* Schwebender Menü-Knopf nur auf schmalen Bildschirmen */
.mobile-menu-toggle[b-ur26oegsde] {
    display: none;
}

/* Collapsed (Desktop): schmale Leiste – nur Icons; Logo im Kopf ausblenden */
@media (min-width: 769px) {
    .sidebar-collapsed .sidebar[b-ur26oegsde] {
        flex-basis: 64px;
        width: 64px;
    }

    .sidebar-collapsed .sidebar-header[b-ur26oegsde] {
        justify-content: center;
        padding: 0;
    }

    .sidebar-collapsed .sidebar-header .topbar-brand[b-ur26oegsde] {
        display: none;
    }

    /* Beschriftungen/Abschnittstitel ausblenden; Icon-Wrapper (mit Zähler) bleibt sichtbar */
    .sidebar-collapsed .sidebar[b-ur26oegsde]  .nav-link span:not(.nav-badge):not(.nav-icon-wrap),
    .sidebar-collapsed .sidebar[b-ur26oegsde]  .nav-section,
    .sidebar-collapsed .sidebar[b-ur26oegsde]  .user-card-text,
    .sidebar-collapsed .sidebar[b-ur26oegsde]  .user-card-caret {
        display: none;
    }

    .sidebar-collapsed .sidebar[b-ur26oegsde]  .user-card {
        justify-content: center;
        padding-left: 0;
        padding-right: 0;
        gap: 0;
    }

    .sidebar-collapsed .sidebar[b-ur26oegsde]  .sidebar-nav {
        padding-left: 0.4rem;
        padding-right: 0.4rem;
    }

    .sidebar-collapsed .sidebar[b-ur26oegsde]  .nav-link {
        justify-content: center;
        gap: 0;
        padding-left: 0;
        padding-right: 0;
    }
}

/* Mobil: Sidebar als Overlay, schwebender Menü-Knopf zum Ein-/Ausblenden */
@media (max-width: 768px) {
    .sidebar[b-ur26oegsde] {
        position: fixed;
        z-index: 1020;
        margin-left: -240px;
        transition: margin-left 0.2s ease-in-out;
    }

    .page:not(.sidebar-collapsed) .sidebar[b-ur26oegsde] {
        margin-left: 0;
        box-shadow: 0 0 25px rgba(0, 0, 0, 0.25);
    }

    .mobile-menu-toggle[b-ur26oegsde] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: fixed;
        top: 0.6rem;
        left: 0.6rem;
        z-index: 1019;
        width: 42px;
        height: 42px;
        border: none;
        border-radius: 8px;
        background-color: var(--tri-ink);
        color: #fff;
        font-size: 1.3rem;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.sidebar-inner[b-m1wdn3vahv] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.sidebar-nav[b-m1wdn3vahv] {
    flex: 1;
    padding: 0.5rem 0.75rem;
}

.nav-section[b-m1wdn3vahv] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--tri-faint);
    padding: 0.4rem 0.75rem 0.15rem;
}
.nav-section-toggle[b-m1wdn3vahv] {
    display: flex; align-items: center; justify-content: space-between;
    width: 100%; border: none; background: transparent; cursor: pointer; text-align: left;
}
.nav-section-toggle:hover[b-m1wdn3vahv] { color: var(--tri-muted-2); }
.nav-section-toggle > i[b-m1wdn3vahv] { font-size: 0.7rem; }

/* Shared link look (NavLink, button, a) – gilt für Navigation UND Fußbereich */
.sidebar-inner[b-m1wdn3vahv]  .nav-link,
.sidebar-inner .nav-link[b-m1wdn3vahv] {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0.65rem;
    padding: 0.28rem 0.75rem;
    margin-bottom: 0.01rem;
    border: none;
    background: none;
    text-align: left;
    color: var(--tri-muted-2);
    font-size: 0.92rem;
    font-weight: 400;
    border-radius: 8px;
    text-decoration: none;
    transition: background-color 0.12s ease-in-out, color 0.12s ease-in-out;
}

.sidebar-inner[b-m1wdn3vahv]  .nav-link:hover,
.sidebar-inner .nav-link:hover[b-m1wdn3vahv] {
    background-color: var(--tri-green-bg);
    color: var(--tri-green);
}

.sidebar-inner[b-m1wdn3vahv]  .nav-link.active {
    background-color: var(--tri-green-bg-active);
    color: var(--tri-green);
    font-weight: 600;
}

.nav-icon[b-m1wdn3vahv] {
    font-size: 1.05rem;
    width: 1.25rem;
    text-align: center;
}

/* Roter Zähler direkt am Glocken-Icon (oben rechts) */
.nav-icon-wrap[b-m1wdn3vahv] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.nav-badge[b-m1wdn3vahv] {
    position: absolute;
    top: -7px;
    right: -9px;
    background-color: #dc3545;
    color: #fff;
    font-size: 0.62rem;
    font-weight: 600;
    line-height: 1.05rem;
    height: 1.05rem;
    min-width: 1.05rem;
    padding: 0 0.25rem;
    border-radius: 999px;
    text-align: center;
}

.nav-chevron[b-m1wdn3vahv] {
    margin-left: auto;
    font-size: 0.8rem;
    transition: transform 0.18s ease-in-out;
}

.nav-group-toggle.collapsed .nav-chevron[b-m1wdn3vahv] {
    transform: rotate(-90deg);
}

.nav-group[b-m1wdn3vahv] {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.2s ease-in-out;
}

    .nav-group.show[b-m1wdn3vahv] {
        max-height: 500px;
    }

.sidebar-nav[b-m1wdn3vahv]  .nav-sub {
    padding-left: 2.6rem;
    font-size: 0.88rem;
}

/* Fußbereich: Einstellungen/Abmelden + Benutzerkarte */
.sidebar-foot[b-m1wdn3vahv] {
    margin-top: auto;
    padding: 0.5rem 0.75rem 0.75rem;
    border-top: 1px solid var(--tri-border);
}

.user-card[b-m1wdn3vahv] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    margin-top: 0.35rem;
    padding: 0.5rem 0.75rem;
    border: none;
    background: none;
    border-radius: 8px;
    text-align: left;
    cursor: pointer;
}

.user-card-role[b-m1wdn3vahv] {
    font-size: 0.6rem;
    font-weight: 600;
    padding: 0.1rem 0.35rem;
    flex-shrink: 0;
}

.user-card-caret[b-m1wdn3vahv] {
    margin-left: auto;
    color: var(--tri-faint);
    font-size: 0.95rem;
    flex-shrink: 0;
}

/* Benutzer-Menü (Popup über der Benutzerkarte) */
.user-menu-wrap[b-m1wdn3vahv] {
    position: relative;
}

.user-menu-backdrop[b-m1wdn3vahv] {
    position: fixed;
    inset: 0;
    z-index: 1040;
}

.user-menu[b-m1wdn3vahv] {
    position: absolute;
    bottom: calc(100% + 0.4rem);
    left: 0;
    right: 0;
    z-index: 1050;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.6rem;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.14);
    padding: 0.35rem;
}

.user-menu-item[b-m1wdn3vahv] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    padding: 0.5rem 0.65rem;
    border: none;
    background: none;
    text-align: left;
    border-radius: 0.45rem;
    font-size: 0.9rem;
    color: #2b2f36;
}

.user-menu-item:hover[b-m1wdn3vahv] {
    background-color: #f1f3f5;
}

.user-menu-item.text-danger:hover[b-m1wdn3vahv] {
    background-color: #fdecee;
}

.user-menu-item .bi[b-m1wdn3vahv] {
    width: 1.15rem;
    text-align: center;
    color: #6b7280;
}

.user-menu-item.text-danger .bi[b-m1wdn3vahv] {
    color: inherit;
}

.user-menu-divider[b-m1wdn3vahv] {
    height: 1px;
    background: #eceef0;
    margin: 0.3rem 0.25rem;
}

.user-card:hover[b-m1wdn3vahv] {
    background-color: #f1f3f5;
}

.user-card-text[b-m1wdn3vahv] {
    min-width: 0;
    line-height: 1.15;
}

.user-card-name[b-m1wdn3vahv] {
    display: flex;
    align-items: flex-start;
    gap: 0.3rem;
}

.user-card-name-text[b-m1wdn3vahv] {
    /* Identisch zu den Menüpunkten (.nav-link): Größe, Gewicht und Farbe. */
    font-weight: 400;
    font-size: 0.92rem;
    color: var(--tri-muted-2);
    line-height: 1.2;
    /* Bis zu zwei Zeilen (z. B. Vor- und Nachname) statt Abschneiden */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.user-card-mail[b-m1wdn3vahv] {
    display: block;
    font-size: 0.72rem;
    color: #8a9099;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Footer (alt) */
.sidebar-footer[b-m1wdn3vahv] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.85rem 1rem;
    border-top: 1px solid var(--tri-border);
    background-color: #fbfbfc;
}

    .sidebar-footer .bi-person-circle[b-m1wdn3vahv] {
        font-size: 1.75rem;
        color: var(--tri-faint);
    }

.sidebar-footer-text small[b-m1wdn3vahv] {
    display: block;
    line-height: 1;
    font-size: 0.7rem;
}

.sidebar-footer-text .fw-semibold[b-m1wdn3vahv] {
    font-size: 0.9rem;
}
/* /Pages/WorkflowDesigner.razor.rz.scp.css */
.wfd[b-dssmgoa64y] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    background: #fff;
    /* Die globale Seiten-Kopfband-Regel (.page-content > :first-child) greift hier,
       weil .wfd das erste Kind ist – sie zentriert und verschmälert den Inhalt.
       Diese Eigenschaften neutralisieren das, damit der Designer die volle Breite nutzt. */
    align-items: stretch !important;
    position: static !important;
    min-height: 0 !important;
    overflow: hidden;          /* nur der Canvas scrollt – Kopf/Fuß bleiben fix */
    border-bottom: none !important;
    margin: 0 -1rem -1.5rem -1rem !important;   /* unterer Negativrand absorbiert das pb-4 des Inhaltsbereichs */
    padding: 0 !important;
}
@media (min-width: 992px) {
    .wfd[b-dssmgoa64y] { margin: 0 -1.5rem -1.5rem -1.5rem !important; }
}

/* Kopfleiste */
.wfd-head[b-dssmgoa64y] {
    /* Exakt wie das Standard-Kopfband (.page-content > :first-child): 80px Mindesthöhe
       und die grüne 2px-Linie unten – damit Höhe und Trennlinie bündig mit dem Logo-Bereich liegen. */
    flex: 0 0 auto;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0 1.5rem;
    border-bottom: 2px solid var(--tri-green);
}
.wfd-brand[b-dssmgoa64y] { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.wfd-brand > i[b-dssmgoa64y] { font-size: 1.7rem; color: var(--tri-green); }
.wfd-brand-kicker[b-dssmgoa64y] { font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--tri-faint); }
.wfd-brand-title[b-dssmgoa64y] { font-size: 1.6rem; font-weight: 700; color: var(--tri-green); line-height: 1.2; }
.wfd-brand-id[b-dssmgoa64y] { color: var(--tri-text); }
.wfd-badge[b-dssmgoa64y] { font-size: .72rem; font-weight: 600; color: var(--tri-muted); background: var(--tri-surface); border-radius: 1rem; padding: .15rem .6rem; }
.wfd-head-right[b-dssmgoa64y] { display: flex; flex-direction: column; align-items: flex-end; gap: .4rem; }
.wfd-head-actions[b-dssmgoa64y] { display: flex; align-items: center; gap: .6rem; flex-wrap: nowrap; }
.wfd-head-actions > *[b-dssmgoa64y] { flex: 0 0 auto; }
.wfd-head-actions .btn[b-dssmgoa64y] { white-space: nowrap; }
.wfd-head-row2[b-dssmgoa64y] { display: flex; justify-content: flex-end; }
.wfd-runchip[b-dssmgoa64y] {
    display: inline-flex; align-items: center; font-size: .8rem; font-weight: 700; color: var(--tri-green);
    background: var(--tri-surface); border: 1px solid var(--tri-border); border-radius: 1rem; padding: .25rem .7rem;
}
.wfd-run-status[b-dssmgoa64y] { margin-left: auto; flex: 0 0 auto; font-size: .72rem; font-weight: 700; border-radius: 1rem; padding: .15rem .6rem; }
.wfd-run-status.run[b-dssmgoa64y] { color: var(--tri-green); background: rgba(46,139,61,.12); }
.wfd-run-status.wait[b-dssmgoa64y] { color: #c98a1a; background: rgba(201,138,26,.14); }
.wfd-run-status.err[b-dssmgoa64y] { color: var(--tri-red); background: rgba(192,57,43,.12); }
.wfd-run-status.done[b-dssmgoa64y] { color: var(--tri-muted); background: var(--tri-surface); }
.wfd-chat[b-dssmgoa64y] { margin-bottom: .6rem; border-radius: .6rem; padding: .55rem .7rem; border: 1px solid var(--tri-border); }
.wfd-chat.to[b-dssmgoa64y] { background: rgba(46,139,61,.07); border-color: rgba(46,139,61,.25); }
.wfd-chat.from[b-dssmgoa64y] { background: var(--tri-surface); }
.wfd-chat-role[b-dssmgoa64y] { font-size: .72rem; font-weight: 700; color: var(--tri-faint); margin-bottom: .25rem; }
.wfd-chat-text[b-dssmgoa64y] { font-size: .9rem; color: var(--tri-text); word-break: break-word; }
.wfd-chat-text :last-child[b-dssmgoa64y] { margin-bottom: 0; }
.wfd-root-select[b-dssmgoa64y] { max-width: 18rem; }

.wfd-body[b-dssmgoa64y] { display: flex; flex: 1 1 auto; min-height: 0; position: relative; }

/* Hinzufügen-Leiste unten (horizontal) */
.wfd-toolbar[b-dssmgoa64y] { flex: 0 0 auto; display: flex; align-items: center; gap: .6rem; padding: .5rem .9rem; border-top: 1px solid var(--tri-border); background: #fff; overflow-x: auto; }
.wfd-toolbar-label[b-dssmgoa64y] { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--tri-faint); flex: 0 0 auto; }
.wfd-tool-block[b-dssmgoa64y] { display: flex; align-items: center; gap: .5rem; border: 1px solid var(--tri-border); border-radius: .6rem; background: #fff; padding: .35rem .6rem; cursor: pointer; flex: 0 0 auto; }
.wfd-tool-block:hover[b-dssmgoa64y] { border-color: var(--tri-green); box-shadow: 0 2px 8px rgba(0,0,0,.06); }
.wfd-tool-block-text[b-dssmgoa64y] { display: flex; flex-direction: column; line-height: 1.15; text-align: left; }
.wfd-toolbar-stats[b-dssmgoa64y] { margin-left: auto; display: flex; gap: 1.1rem; font-size: .78rem; color: var(--tri-muted); white-space: nowrap; }
.wfd-toolbar-stats b[b-dssmgoa64y] { color: var(--tri-green); }

/* Palette */
.wfd-palette[b-dssmgoa64y] {
    width: 250px; flex: 0 0 250px;
    border-right: 1px solid var(--tri-border);
    padding: 1rem; overflow-y: auto;
    display: flex; flex-direction: column; gap: .6rem;
}
.wfd-palette-kicker[b-dssmgoa64y] { font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--tri-faint); }
.wfd-palette-title[b-dssmgoa64y] { font-size: 1.3rem; font-weight: 700; margin-bottom: .4rem; }
.wfd-block[b-dssmgoa64y] {
    display: flex; align-items: center; gap: .6rem;
    border: 1px solid var(--tri-border); border-radius: .7rem; padding: .6rem .7rem; background: #fff;
}
.wfd-block-icon[b-dssmgoa64y] { width: 2rem; height: 2rem; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; border-radius: .5rem; background: var(--tri-surface); }
.wfd-block-icon.trg[b-dssmgoa64y] { color: #2f7dd6; } .wfd-block-icon.agt[b-dssmgoa64y] { color: var(--tri-green); }
.wfd-block-icon.dec[b-dssmgoa64y] { color: #c98a1a; } .wfd-block-icon.res[b-dssmgoa64y] { color: #2e8b3d; }
.wfd-block-name[b-dssmgoa64y] { font-weight: 700; font-size: .9rem; }
.wfd-block-desc[b-dssmgoa64y] { font-size: .76rem; color: var(--tri-muted); line-height: 1.25; }
.wfd-block-add[b-dssmgoa64y] { color: var(--tri-faint); }
.wfd-stats[b-dssmgoa64y] { margin-top: auto; display: grid; grid-template-columns: 1fr 1fr; gap: .5rem .75rem; padding-top: 1rem; }
.wfd-stat-num[b-dssmgoa64y] { font-size: 1.4rem; font-weight: 700; color: var(--tri-green); display: block; line-height: 1; }
.wfd-stat-lbl[b-dssmgoa64y] { font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; color: var(--tri-faint); }

/* Canvas */
.wfd-canvas-wrap[b-dssmgoa64y] { flex: 1 1 auto; min-width: 0; overflow: auto; position: relative;
    background-color: #fafbfc;
    background-image: radial-gradient(#dfe3e8 1px, transparent 1px);
    background-size: 22px 22px; }
.wfd-canvas[b-dssmgoa64y] { position: relative; }
/* overflow:visible → beim Ziehen eines Knotens über die berechnete Canvas-Höhe hinaus
   werden die Kanten/Ports nicht an der Unterkante abgeschnitten ("Pfeile reißen ab"). */
.wfd-lines[b-dssmgoa64y] { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: visible; }
.wfd-ports[b-dssmgoa64y] { position: absolute; inset: 0; z-index: 6; pointer-events: none; overflow: visible; }
/* Hinweis unten links über dem Canvas-Bereich fixiert (scrollt nicht mit). */
.wfd-node[b-dssmgoa64y] {
    position: absolute; z-index: 1;
    background: #fff; border: 1px solid var(--tri-border); border-radius: .7rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.12), 0 1px 3px rgba(0,0,0,.10); padding: .55rem .7rem;
    border-top: 3px solid var(--tri-faint); cursor: pointer; transition: box-shadow .12s, transform .12s;
}
.wfd-node:hover[b-dssmgoa64y] { box-shadow: 0 10px 26px rgba(0,0,0,.18), 0 2px 5px rgba(0,0,0,.12); }
.wfd-node.sel[b-dssmgoa64y] {
    border-color: var(--wfd-accent, var(--tri-green));
    box-shadow: 0 0 0 3px var(--wfd-glow, rgba(46,139,61,.2)), 0 0 16px 3px var(--wfd-glow, rgba(46,139,61,.2)), 0 6px 18px rgba(0,0,0,.08);
}
.wfd-node-edit[b-dssmgoa64y] {
    position: absolute; top: .35rem; right: .35rem; z-index: 2;
    width: 1.6rem; height: 1.6rem; padding: 0; line-height: 1;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--tri-border); border-radius: .4rem; background: #fff;
    color: var(--tri-muted); font-size: .8rem; cursor: pointer; opacity: 0; transition: opacity .12s;
}
.wfd-node:hover .wfd-node-edit[b-dssmgoa64y] { opacity: 1; }
.wfd-node-edit:hover[b-dssmgoa64y] { color: var(--tri-green); border-color: var(--tri-green); }
.wfd-node-add[b-dssmgoa64y] { right: 2rem; }
.wfd-node-edit-2[b-dssmgoa64y] { right: 3.7rem; }

/* Popover-Menüs (Hinzufügen am Agenten / Satelliten-Aktionen) – auf Canvas-Ebene */
.wfd-backdrop[b-dssmgoa64y] { position: fixed; inset: 0; z-index: 15; background: transparent; }
.wfd-popmenu[b-dssmgoa64y] {
    position: absolute; z-index: 20;
    background: #fff; border: 1px solid var(--tri-border); border-radius: .55rem;
    box-shadow: 0 10px 26px rgba(0,0,0,.18); padding: .3rem; min-width: 10rem;
}
.wfd-popmenu-title[b-dssmgoa64y] { font-size: .68rem; font-weight: 700; color: var(--tri-faint); padding: .15rem .55rem .3rem; max-width: 12rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wfd-popmenu-item[b-dssmgoa64y] {
    display: flex; align-items: center; gap: .55rem; width: 100%;
    border: none; background: none; text-align: left; cursor: pointer;
    padding: .4rem .55rem; border-radius: .4rem; font-size: .86rem; color: var(--tri-text);
}
.wfd-popmenu-item:hover[b-dssmgoa64y] { background: var(--tri-surface); }
.wfd-popmenu-item i[b-dssmgoa64y] { width: 1.1rem; text-align: center; color: var(--tri-muted); }
.wfd-popmenu-item.text-danger i[b-dssmgoa64y] { color: var(--tri-red); }
.wfd-popmenu-sep[b-dssmgoa64y] { height: 1px; background: var(--tri-border); margin: .3rem .2rem; }
.wfd-popmenu-note[b-dssmgoa64y] { font-size: .74rem; color: var(--tri-muted); padding: .2rem .55rem; max-width: 12rem; }
.wfd-node-kind[b-dssmgoa64y] { font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--tri-faint); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wfd-node-title[b-dssmgoa64y] { font-weight: 700; font-size: .92rem; line-height: 1.2; color: var(--tri-text); margin-top: .05rem; }
.wfd-node-model[b-dssmgoa64y] { font-size: .76rem; color: var(--tri-muted); margin-top: .2rem; }
.wfd-node-chips-kicker[b-dssmgoa64y] { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--tri-faint); margin: .4rem 0 .2rem; }
.wfd-chip[b-dssmgoa64y] { display: flex; align-items: center; font-size: .76rem; color: var(--tri-text); background: var(--tri-surface); border-radius: .4rem; padding: .15rem .4rem; margin-top: .2rem; }
.wfd-mcp[b-dssmgoa64y] { font-size: .6rem; font-weight: 700; color: #c98a1a; background: #fbf2dd; border-radius: .3rem; padding: 0 .25rem; margin-left: .3rem; }

/* Tools / MCP / Skills als verschiebbare Kreise außerhalb des Agenten (mit Verbindungslinie). */
.wfd-sat[b-dssmgoa64y] {
    position: absolute; z-index: 1;
    width: 40px; height: 40px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: #fff; border: 1.5px solid var(--tri-border); box-shadow: 0 2px 6px rgba(0,0,0,.14);
    font-size: 1.1rem; color: var(--tri-muted); cursor: grab; touch-action: none;
}
.wfd-sat:hover[b-dssmgoa64y] { box-shadow: 0 4px 12px rgba(0,0,0,.2); }
.wfd-sat.sel[b-dssmgoa64y] { box-shadow: 0 0 0 2px var(--wfd-accent, var(--tri-green)); }
.wfd-sat-tool[b-dssmgoa64y] { background: #e9f5ec; }
.wfd-sat-mcp[b-dssmgoa64y] { background: #fbf2dd; }
.wfd-sat-skill[b-dssmgoa64y] { background: #e7f0fb; }
/* Name unter dem Kreis – absolut positioniert, beeinflusst die Kreisgröße (Linienmitte) nicht. */
.wfd-sat-name[b-dssmgoa64y] {
    position: absolute; top: calc(100% + 6px); left: 50%; transform: translateX(-50%);
    font-size: .62rem; line-height: 1.15; max-width: 150px; text-align: center; color: var(--tri-text);
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    background: rgba(255,255,255,.85); border-radius: .25rem; padding: 1px 3px; pointer-events: none;
}
.wfd-sat-tool[b-dssmgoa64y] { color: var(--tri-green); border-color: var(--tri-green); --wfd-accent: var(--tri-green); --wfd-glow: rgba(46,139,61,.22); }
.wfd-sat-mcp[b-dssmgoa64y] { color: #c98a1a; border-color: #c98a1a; --wfd-accent: #c98a1a; --wfd-glow: rgba(201,138,26,.26); }
.wfd-sat-skill[b-dssmgoa64y] { color: #2f7dd6; border-color: #2f7dd6; --wfd-accent: #2f7dd6; --wfd-glow: rgba(47,125,214,.22); }

/* Aktiv genutztes Tool/MCP bzw. laufender Skill: pulsierender Glow – einheitlich orange (wie der laufende Knoten). */
.wfd-sat-glow[b-dssmgoa64y] {
    z-index: 3;
    border-color: #e08e0b;
    animation: wfd-sat-pulse-b-dssmgoa64y 1.25s ease-in-out infinite;
}
@keyframes wfd-sat-pulse-b-dssmgoa64y {
    0%   { box-shadow: 0 0 0 0 rgba(224,142,11,.5),    0 2px 6px rgba(0,0,0,.14); }
    70%  { box-shadow: 0 0 0 10px rgba(224,142,11,0),  0 2px 6px rgba(0,0,0,.14); }
    100% { box-shadow: 0 0 0 0 rgba(224,142,11,0),     0 2px 6px rgba(0,0,0,.14); }
}

.wfd-agent-worker[b-dssmgoa64y] { border-top-color: var(--tri-green); --wfd-accent: var(--tri-green); --wfd-glow: rgba(46,139,61,.22); --wfd-tint: #e9f5ec; }
.wfd-agent-critic[b-dssmgoa64y] { border-top-color: var(--tri-secondary); --wfd-accent: #7a869a; --wfd-glow: rgba(122,134,154,.26); --wfd-tint: #eef1f4; }
.wfd-agent-gatekeeper[b-dssmgoa64y] { border-top-color: var(--tri-red); --wfd-accent: var(--tri-red); --wfd-glow: rgba(192,57,43,.22); --wfd-tint: #fbecea; }
.wfd-trigger[b-dssmgoa64y] { border-top-color: #2f7dd6; --wfd-accent: #2f7dd6; --wfd-glow: rgba(47,125,214,.22); --wfd-tint: #e7f0fb; }
.wfd-decision[b-dssmgoa64y] { border-top-color: #c98a1a; --wfd-accent: #c98a1a; --wfd-glow: rgba(201,138,26,.26); --wfd-tint: #fbf2dd; }
.wfd-kind-trigger[b-dssmgoa64y] { color: #2f7dd6; } .wfd-kind-decision[b-dssmgoa64y] { color: #c98a1a; }
.wfd-start[b-dssmgoa64y] { border-top-color: #2f7dd6; --wfd-accent: #2f7dd6; --wfd-glow: rgba(47,125,214,.22); --wfd-tint: #e7f0fb; }
.wfd-kind-start[b-dssmgoa64y] { color: #2f7dd6; }
.wfd-result[b-dssmgoa64y] { border-top-color: #7c3aed; --wfd-accent: #7c3aed; --wfd-glow: rgba(124,58,237,.35); --wfd-tint: #f1ebff; }
.wfd-kind-result[b-dssmgoa64y] { color: #7c3aed; }
/* Run-Nummer im Ergebnis-Knoten grau. */
.wfd-result .wfd-node-title[b-dssmgoa64y] { color: var(--tri-muted, #6b7280); }
/* Ergebnis-Knoten: finale Antwort sehr klein/grau, so viel wie passt. Klick öffnet die größere Ansicht. */
.wfd-result.has-result[b-dssmgoa64y] { cursor: pointer; animation: wfd-result-glow-b-dssmgoa64y 1.6s ease-in-out infinite; }
@keyframes wfd-result-glow-b-dssmgoa64y {
    0%   { box-shadow: 0 0 0 0 var(--wfd-glow), 0 2px 6px rgba(0,0,0,.14); }
    70%  { box-shadow: 0 0 0 9px rgba(124,58,237,0), 0 2px 6px rgba(0,0,0,.14); }
    100% { box-shadow: 0 0 0 0 rgba(124,58,237,0), 0 2px 6px rgba(0,0,0,.14); }
}
.wfd-result-text[b-dssmgoa64y] {
    margin-top: .5rem; color: var(--tri-muted, #6b7280);
    overflow: hidden; max-height: 7.5rem; position: relative;
}
/* Markdown-Vorschau im Node: kompakt/grau, so viel wie passt (unten ausgeblendet). */
.wfd-result-text[b-dssmgoa64y]  .markdown-body { font-size: .6rem; line-height: 1.3; color: var(--tri-muted, #6b7280); }
.wfd-result-text[b-dssmgoa64y]  .markdown-body * { margin-top: 0; margin-bottom: .25rem; }
.wfd-result-text[b-dssmgoa64y]  .markdown-body table { font-size: .55rem; border-collapse: collapse; }
.wfd-result-text[b-dssmgoa64y]  .markdown-body td, .wfd-result-text[b-dssmgoa64y]  .markdown-body th { padding: 0 .25rem; border: 1px solid var(--tri-border); }
.wfd-result-text[b-dssmgoa64y]::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1.5rem;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
.wfd-result-empty[b-dssmgoa64y] { margin-top: .5rem; font-size: .68rem; color: var(--tri-faint, #9aa4af); font-style: italic; }
.wfd-result-full[b-dssmgoa64y] { max-height: 70vh; overflow: auto; }

/* Kopf mit Icon-Kachel */
.wfd-node-head[b-dssmgoa64y] { display: flex; align-items: flex-start; gap: .6rem; }
.wfd-node-ic[b-dssmgoa64y] {
    flex: 0 0 auto; width: 2.1rem; height: 2.1rem; border-radius: .55rem;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--wfd-tint, var(--tri-surface)); color: var(--wfd-accent, var(--tri-muted)); font-size: 1.05rem;
}
.wfd-node-headtext[b-dssmgoa64y] { min-width: 0; }

/* Fußbereich mit Aktions-Symbolen (immer sichtbar) */
.wfd-node-foot[b-dssmgoa64y] { display: flex; gap: .4rem; margin-top: .55rem; padding-top: .45rem; border-top: 1px solid var(--tri-border); }
.wfd-foot-btn[b-dssmgoa64y] {
    width: 1.7rem; height: 1.7rem; padding: 0; line-height: 1;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--tri-border); border-radius: .4rem; background: #fff;
    color: var(--tri-muted); font-size: .82rem; cursor: pointer;
}
.wfd-foot-btn:hover[b-dssmgoa64y] { color: var(--tri-green); border-color: var(--tri-green); }
.wfd-foot-decider[b-dssmgoa64y] { color: #c98a1a; border-color: #e2c89a; }
.wfd-foot-decider:hover[b-dssmgoa64y] { color: #c98a1a; border-color: #c98a1a; }
.wfd-foot-del:hover[b-dssmgoa64y] { color: var(--tri-red); border-color: var(--tri-red); }
.wfd-addlist[b-dssmgoa64y] { display: flex; flex-direction: column; gap: .25rem; max-height: 18rem; overflow-y: auto; }
.wfd-addlist-item[b-dssmgoa64y] {
    display: flex; align-items: center; width: 100%; text-align: left;
    border: 1px solid var(--tri-border); background: #fff; border-radius: .5rem; padding: .5rem .65rem;
    font-size: .92rem; color: var(--tri-text); cursor: pointer;
}
.wfd-addlist-item:hover[b-dssmgoa64y] { border-color: var(--tri-green); background: var(--tri-surface); }
.wfd-addlist-item > i[b-dssmgoa64y] { color: var(--tri-green); }
.wfd-sel-skill[b-dssmgoa64y] { display: flex; align-items: center; gap: .25rem; padding: .3rem .45rem; border: 1px solid var(--tri-border); border-radius: .5rem; background: #fff; font-size: .92rem; }
.wfd-addlist-item.picked[b-dssmgoa64y] { border-color: var(--tri-green); background: var(--tri-surface); font-weight: 600; }
.wfd-orderlist[b-dssmgoa64y] { display: flex; flex-direction: column; gap: .3rem; }
.wfd-order-item[b-dssmgoa64y] {
    display: flex; align-items: center; gap: .25rem; padding: .45rem .55rem; font-size: .92rem;
    border: 1px solid var(--tri-border); border-radius: .5rem; background: #fff; cursor: grab; color: var(--tri-text);
}
.wfd-order-item.dragging[b-dssmgoa64y] { opacity: .5; }
.wfd-order-item .wfd-grip[b-dssmgoa64y] { color: var(--tri-faint); }
.wfd-order-prompt[b-dssmgoa64y] { background: #e7f0fb; border-color: #2f7dd6; color: #1f5c9e; }
.wfd-order-prompt .bi-chat-square-text[b-dssmgoa64y] { color: #2f7dd6; }
.wfd-proptabs .nav-link[b-dssmgoa64y] { padding: .3rem .7rem; font-size: .9rem; color: var(--tri-muted); }
.wfd-proptabs .nav-link.active[b-dssmgoa64y] { color: var(--tri-green); font-weight: 600; }
.wfd-snap[b-dssmgoa64y] {
    position: absolute; right: 14px; bottom: 14px; z-index: 5;
    display: inline-flex; align-items: center; gap: .35rem; margin: 0; cursor: pointer;
    font-size: .8rem; color: var(--tri-text); background: #fff;
    border: 1px solid var(--tri-border); border-radius: 1rem; padding: .35rem .7rem;
    box-shadow: 0 1px 4px rgba(0,0,0,.08);
}
.wfd-snap input[b-dssmgoa64y] { cursor: pointer; }
.wfd-run-select[b-dssmgoa64y] { width: auto; max-width: 16rem; }
/* Tags am Knoten (sehr klein) */
.wfd-tags[b-dssmgoa64y] { display: flex; flex-wrap: wrap; gap: .2rem; margin-top: .35rem; }
.wfd-tag[b-dssmgoa64y] {
    font-size: .6rem; line-height: 1.2; font-weight: 600; color: #fff;
    background: var(--tg, #2e8b3d); border-radius: .8rem; padding: .05rem .4rem; white-space: nowrap;
}
/* Tag-Auswahl im Editor-Popup */
.wfd-tagpick[b-dssmgoa64y] {
    display: inline-flex; align-items: center; gap: .25rem; font-size: .8rem;
    border: 1px solid var(--tg, var(--tri-border)); color: var(--tg, var(--tri-text));
    background: #fff; border-radius: 1rem; padding: .2rem .6rem; cursor: pointer;
}
.wfd-tagpick.on[b-dssmgoa64y] { background: var(--tg, var(--tri-green)); color: #fff; }

/* Verbindungs-Griff (rechte Kante, Mitte) – Verbindung ziehen */
.wfd-connect[b-dssmgoa64y] {
    position: absolute; right: 0; top: 50%; transform: translate(50%, -50%); width: 12px; height: 12px;
    border-radius: 50%; background: var(--wfd-accent, var(--tri-green)); border: none;
    cursor: crosshair; z-index: 4; touch-action: none;
}
.wfd-connect:hover[b-dssmgoa64y] { box-shadow: 0 0 0 4px var(--wfd-glow, rgba(46,139,61,.25)); }

/* Status-Kreis oben rechts */
.wfd-status-dot[b-dssmgoa64y] { position: absolute; top: .55rem; right: .6rem; width: 12px; height: 12px; border-radius: 50%; background: #c7cdd4; z-index: 3; }
.wfd-status-idle[b-dssmgoa64y] { background: #c7cdd4; }
.wfd-status-running[b-dssmgoa64y] { background: var(--tri-green); cursor: pointer; box-shadow: 0 0 0 0 rgba(46,139,61,.5); animation: wfd-pulse-b-dssmgoa64y 0.7s infinite; }
.wfd-status-done[b-dssmgoa64y] { background: var(--tri-green); cursor: pointer; }
.wfd-status-error[b-dssmgoa64y] { background: var(--tri-red); cursor: pointer; }
.wfd-status-waiting[b-dssmgoa64y] { background: #e08e0b; cursor: pointer; }
@keyframes wfd-pulse-b-dssmgoa64y { 0% { box-shadow: 0 0 0 0 rgba(46,139,61,.5); } 70% { box-shadow: 0 0 0 6px rgba(46,139,61,0); } 100% { box-shadow: 0 0 0 0 rgba(46,139,61,0); } }
/* Laufender Agent: oranger Glow am Knoten */
.wfd-node.wfd-node-running[b-dssmgoa64y] { border-color: #e08e0b; animation: wfd-node-glow-b-dssmgoa64y 1.3s ease-in-out infinite; }
@keyframes wfd-node-glow-b-dssmgoa64y {
    0%, 100% { box-shadow: 0 6px 16px rgba(0,0,0,.12), 0 0 0 2px rgba(224,142,11,.35), 0 0 10px 2px rgba(224,142,11,.30); }
    50%      { box-shadow: 0 6px 16px rgba(0,0,0,.12), 0 0 0 3px rgba(224,142,11,.65), 0 0 22px 6px rgba(224,142,11,.55); }
}
.wfd-run-btn[b-dssmgoa64y] {
    display: flex; align-items: center; justify-content: center;
    width: 40px; height: 40px; margin: .5rem auto 0; padding: 0;
    border: 2px solid #2f7dd6; border-radius: 50%; background: transparent; color: #2f7dd6;
    font-size: 1.15rem; line-height: 1; cursor: pointer;
}
.wfd-run-btn:hover[b-dssmgoa64y] { background: rgba(47,125,214,.12); }
.wfd-run-btn i[b-dssmgoa64y] { margin-left: 2px; }

/* Prompt-Popup (Markdown-Editor + Vorschau + Nachschärfen) */
.wfd-modal-backdrop[b-dssmgoa64y] { position: fixed; inset: 0; z-index: 1100; background: rgba(0,0,0,.32); display: flex; align-items: center; justify-content: center; }
.wfd-modal[b-dssmgoa64y] { background: #fff; border-radius: 1rem; box-shadow: 0 24px 60px rgba(0,0,0,.28); width: min(740px, 92vw); max-height: 88vh; display: flex; flex-direction: column; overflow: hidden; }
.wfd-modal-head[b-dssmgoa64y] { display: flex; align-items: center; gap: .75rem; padding: 1rem 1.25rem; border-bottom: 1px solid var(--tri-border); }
.wfd-modal-head > .btn-close[b-dssmgoa64y] { margin-left: auto; flex: 0 0 auto; }
.wfd-modal-ic[b-dssmgoa64y] { flex: 0 0 auto; width: 2.4rem; height: 2.4rem; border-radius: .7rem; display: inline-flex; align-items: center; justify-content: center; background: var(--tri-surface); color: var(--tri-green); font-size: 1.2rem; }
.wfd-modal-headtext[b-dssmgoa64y] { min-width: 0; }
.wfd-modal-body[b-dssmgoa64y] { padding: 1.25rem; overflow-y: auto; }
.wfd-modal-body .wfd-lbl:first-child[b-dssmgoa64y] { margin-top: 0; }
.wfd-modal-body .form-control[b-dssmgoa64y], .wfd-modal-body .form-select[b-dssmgoa64y] { border-radius: .6rem; padding: .55rem .75rem; font-size: .92rem; }
.wfd-modal-body .form-control:focus[b-dssmgoa64y], .wfd-modal-body .form-select:focus[b-dssmgoa64y] { border-color: var(--tri-green); box-shadow: 0 0 0 3px rgba(46,139,61,.18); }
.wfd-modal-foot[b-dssmgoa64y] { display: flex; align-items: center; gap: .5rem; padding: .85rem 1.25rem; border-top: 1px solid var(--tri-border); background: var(--tri-surface); }
.wfd-toolref[b-dssmgoa64y] { border: 1px solid var(--tri-border); border-radius: .6rem; padding: .6rem .75rem; margin-bottom: .6rem; max-height: 16rem; overflow-y: auto; background: var(--tri-surface); }
.wfd-prompt-area[b-dssmgoa64y] { min-height: 360px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .85rem; }
.wfd-prompt-preview[b-dssmgoa64y] { min-height: 360px; max-height: 52vh; overflow: auto; border: 1px solid var(--tri-border); border-radius: .5rem; padding: .75rem; }
/* Editor-Werkzeugleiste: bei Bedarf auf zwei Zeilen umbrechen */
.wfd-prompt-toolbar[b-dssmgoa64y] { display: flex; align-items: center; flex-wrap: wrap; row-gap: .35rem; gap: .25rem; margin-bottom: .6rem; }
.wfd-prompt-toolbar .btn[b-dssmgoa64y] { flex: 0 0 auto; }
/* Vollbild-Variante des Prompt-Modals */
.wfd-modal.wfd-modal-fs[b-dssmgoa64y] { width: 96vw !important; max-width: 96vw; height: 92vh; max-height: 92vh; }
.wfd-modal.wfd-modal-fs .wfd-prompt-area[b-dssmgoa64y] { min-height: 60vh; }
.wfd-modal.wfd-modal-fs .wfd-prompt-preview[b-dssmgoa64y] { min-height: 60vh; max-height: 72vh; }

/* Bestätigungsdialog „Prozess starten?" */
.wfd-confirm-backdrop[b-dssmgoa64y] { position: fixed; inset: 0; z-index: 1100; background: rgba(0,0,0,.32); display: flex; align-items: center; justify-content: center; }
.wfd-confirm[b-dssmgoa64y] {
    background: #fff; border-radius: .8rem; box-shadow: 0 20px 50px rgba(0,0,0,.3);
    padding: 1.5rem 1.6rem; max-width: 24rem; text-align: center;
}
.wfd-confirm-icon[b-dssmgoa64y] { font-size: 2.4rem; color: var(--tri-green); line-height: 1; }
.wfd-confirm-title[b-dssmgoa64y] { font-size: 1.1rem; font-weight: 700; color: var(--tri-text); margin-top: .4rem; }
.wfd-confirm-text[b-dssmgoa64y] { font-size: .9rem; color: var(--tri-muted); margin-top: .35rem; }
.wfd-confirm-actions[b-dssmgoa64y] { display: flex; gap: .6rem; justify-content: center; margin-top: 1.1rem; }

/* Agentennamen + Kicker (Typ · #Nr) in der Akzentfarbe (Worker grün) */
.wfd-agent .wfd-node-title[b-dssmgoa64y] { color: var(--tri-green); }
.wfd-agent .wfd-node-kind[b-dssmgoa64y] { color: var(--wfd-accent, var(--tri-green)); }
/* Titel bei Trigger/Entscheidung dunkelgrau */
.wfd-trigger .wfd-node-title[b-dssmgoa64y], .wfd-decision .wfd-node-title[b-dssmgoa64y] { color: #3a4047; }

.wfd-option[b-dssmgoa64y] { display: flex; align-items: center; gap: .4rem; font-size: .82rem; padding: .25rem .1rem; border-top: 1px solid var(--tri-border); margin-top: .25rem; }
.wfd-option:first-of-type[b-dssmgoa64y] { border-top: none; }
.wfd-option-dot[b-dssmgoa64y] { width: .5rem; height: .5rem; border-radius: 50%; background: #c98a1a; flex: 0 0 auto; }
.wfd-option-label[b-dssmgoa64y] { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; line-height: 1.15; overflow: hidden; }
.wfd-opt-name[b-dssmgoa64y] { font-weight: 600; color: var(--tri-green); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wfd-opt-cond[b-dssmgoa64y] { font-size: .72rem; color: var(--tri-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wfd-option-btn[b-dssmgoa64y] { flex: 0 0 auto; width: 1.4rem; height: 1.4rem; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--tri-border); background: #fff; border-radius: .3rem; color: var(--tri-muted); font-size: .76rem; cursor: pointer; }
.wfd-option-btn:hover[b-dssmgoa64y] { background: var(--tri-surface); color: var(--tri-text); }
.wfd-option-del:hover[b-dssmgoa64y] { color: var(--tri-red); }

/* Drag & Zoom */
.wfd-node[b-dssmgoa64y] { cursor: grab; touch-action: none; }
.wfd-result[b-dssmgoa64y] { cursor: grab; }
.wfd-dragging[b-dssmgoa64y] { cursor: grabbing; box-shadow: 0 14px 30px rgba(0,0,0,.18); opacity: .96; z-index: 5; }
.wfd-zoom .btn[b-dssmgoa64y] { min-width: 2.2rem; }

/* Inline-Bearbeitungspanel */
.wfd-panel[b-dssmgoa64y] {
    width: 360px; flex: 0 0 360px;
    border-left: 1px solid var(--tri-border);
    display: flex; flex-direction: column; min-height: 0; background: #fff;
    position: relative;
}
.wfd-panel-resize[b-dssmgoa64y] { position: absolute; left: -3px; top: 0; bottom: 0; width: 8px; cursor: col-resize; z-index: 5; }
.wfd-panel-resize:hover[b-dssmgoa64y] { background: linear-gradient(to right, var(--tri-green), transparent); opacity: .4; }
.wfd-panel-head[b-dssmgoa64y] { display: flex; align-items: flex-start; justify-content: space-between; gap: .5rem; padding: .8rem 1rem; border-bottom: 1px solid var(--tri-border); }
.wfd-panel-kicker[b-dssmgoa64y] { font-size: .66rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--tri-faint); }
.wfd-panel-title[b-dssmgoa64y] { font-size: 1.05rem; font-weight: 700; color: var(--tri-text); }
.wfd-panel-body[b-dssmgoa64y] { flex: 1 1 auto; overflow-y: auto; padding: .8rem 1rem; }
.wfd-panel-foot[b-dssmgoa64y] { display: flex; align-items: center; gap: .5rem; padding: .7rem 1rem; border-top: 1px solid var(--tri-border); }
.wfd-lbl[b-dssmgoa64y] { display: block; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--tri-faint); margin: .85rem 0 .25rem; }
.wfd-panel-body > .wfd-lbl:first-child[b-dssmgoa64y] { margin-top: 0; }
.wfd-prompt[b-dssmgoa64y] { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .8rem; }
.wfd-checklist[b-dssmgoa64y] { max-height: 9rem; overflow-y: auto; border: 1px solid var(--tri-border); border-radius: .5rem; padding: .4rem .55rem; }
.wfd-check[b-dssmgoa64y] { display: flex; align-items: center; gap: .45rem; font-size: .84rem; padding: .12rem 0; cursor: pointer; }
.wfd-check input[b-dssmgoa64y] { width: 1rem; height: 1rem; flex: 0 0 auto; }
.wfd-empty[b-dssmgoa64y] { font-size: .8rem; color: var(--tri-muted); background: var(--tri-surface); border-radius: .5rem; padding: .5rem .6rem; }
.wfd-decisions[b-dssmgoa64y] { margin-top: .5rem; }
.wfd-decision-row[b-dssmgoa64y] { border: 1px solid var(--tri-border); border-left: 3px solid #c98a1a; border-radius: .5rem; padding: .5rem; margin-bottom: .5rem; }
.wfd-kv[b-dssmgoa64y] { display: flex; gap: .6rem; padding: .35rem 0; border-bottom: 1px solid var(--tri-border); font-size: .86rem; }
.wfd-kv:last-child[b-dssmgoa64y] { border-bottom: none; }
.wfd-kv-k[b-dssmgoa64y] { flex: 0 0 5rem; font-weight: 700; color: var(--tri-faint); }
.wfd-block[b-dssmgoa64y] { cursor: pointer; transition: border-color .12s, box-shadow .12s; }
.wfd-block:hover[b-dssmgoa64y] { border-color: var(--tri-green); box-shadow: 0 2px 8px rgba(0,0,0,.06); }
