/* _content/BlazorGED/Components/Paywall.razor.rz.scp.css */
.paywall-shell[b-qd6fvx65vn] {
    background: #f5f9f6;
    border-radius: 16px;
    padding: 1rem;
    border: 1px solid #d7e4dc;
}

.paywall-loading[b-qd6fvx65vn] {
    min-height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    color: #2d6a4f;
}

.paywall-toggle[b-qd6fvx65vn] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.paywall-grid[b-qd6fvx65vn] {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.plan-card[b-qd6fvx65vn] {
    background: #fff;
    border: 1px solid #d9e6de;
    border-radius: 14px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.plan-card.featured[b-qd6fvx65vn] {
    border: 2px solid #2d6a4f;
    box-shadow: 0 6px 18px rgba(45, 106, 79, 0.16);
}

.plan-card h3[b-qd6fvx65vn] {
    margin: 0;
    font-size: 1.1rem;
    color: #1f4e39;
    font-weight: 700;
}

.plan-card .price[b-qd6fvx65vn] {
    margin: 0;
    color: #2d6a4f;
    font-size: 1.2rem;
    font-weight: 700;
}

.plan-card ul[b-qd6fvx65vn] {
    margin: 0;
    padding-left: 1.1rem;
    color: #2e3a33;
    flex: 1;
}

@media (max-width: 992px) {
    .paywall-grid[b-qd6fvx65vn] {
        grid-template-columns: 1fr;
    }
}
/* _content/BlazorGED/Components/PlanBadge.razor.rz.scp.css */
.plan-badge[b-3rn52wdy6b] {
    display: inline-flex;
    align-items: center;
    padding: .2rem .55rem;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 700;
    margin-top: .2rem;
}

.plan-free[b-3rn52wdy6b] {
    background: #e5e7eb;
    color: #4b5563;
}

.plan-plus[b-3rn52wdy6b] {
    background: #2d6a4f;
    color: #fff;
}
/* _content/BlazorGED/Pages/Admin/AdminCreanciers.razor.rz.scp.css */
.ac-toast[b-aakspichcp] {
    margin-bottom: 1rem;
    border-radius: 10px;
}

.ac-card[b-aakspichcp] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
    padding: 0.9rem;
}

.ac-toolbar[b-aakspichcp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.ac-toolbar-title[b-aakspichcp] {
    font-size: 0.92rem;
    color: #334155;
}

.ac-search-wrap[b-aakspichcp] {
    position: relative;
    min-width: min(100%, 340px);
}

.ac-search-wrap i[b-aakspichcp] {
    position: absolute;
    top: 50%;
    left: 0.7rem;
    transform: translateY(-50%);
    color: #94a3b8;
    font-size: 0.8rem;
}

.ac-search-wrap .form-control[b-aakspichcp] {
    padding-left: 2rem;
    border-radius: 10px;
}

.ac-table[b-aakspichcp] {
    margin-bottom: 0;
}

.ac-table thead th[b-aakspichcp] {
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #64748b;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
    padding: 0.6rem 0.55rem;
}

.ac-table tbody td[b-aakspichcp] {
    vertical-align: middle;
    font-size: 0.86rem;
    color: #1e293b;
    padding: 0.58rem 0.55rem;
    border-bottom: 1px solid #f1f5f9;
}

.ac-name[b-aakspichcp] {
    font-weight: 600;
}

.ac-actions-col[b-aakspichcp] {
    width: 96px;
}

.ac-actions[b-aakspichcp] {
    display: flex;
    justify-content: flex-end;
    gap: 0.35rem;
}

.ac-btn-edit[b-aakspichcp],
.ac-btn-delete[b-aakspichcp] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
}

.ac-btn-edit[b-aakspichcp] {
    color: #0369a1;
    background: #e0f2fe;
    border-color: #bae6fd;
}

.ac-btn-delete[b-aakspichcp] {
    color: #b91c1c;
    background: #fee2e2;
    border-color: #fecaca;
}

.ac-btn-merge[b-aakspichcp] {
    color: #1d4ed8;
    background: #dbeafe;
    border-color: #bfdbfe;
}

.ac-iban[b-aakspichcp] {
    font-family: ui-monospace, monospace;
    font-size: 0.82rem;
    color: #475569;
}

.ac-merge-preview[b-aakspichcp] {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 10px;
    padding: 0.65rem 0.75rem;
    font-size: 0.88rem;
    color: #0c4a6e;
}

.ac-empty[b-aakspichcp] {
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    padding: 1.6rem 1rem;
    text-align: center;
    color: #64748b;
}

.ac-empty i[b-aakspichcp] {
    font-size: 1.2rem;
    margin-bottom: 0.45rem;
}

.ac-modal-overlay[b-aakspichcp] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.ac-modal-box[b-aakspichcp] {
    width: min(100%, 560px);
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.2);
    overflow: hidden;
}

.ac-modal-box--sm[b-aakspichcp] {
    width: min(100%, 420px);
}

.ac-modal-header[b-aakspichcp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.75rem 0.95rem;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.ac-modal-close[b-aakspichcp] {
    width: 30px;
    height: 30px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #fff;
    color: #475569;
}

.ac-modal-body[b-aakspichcp] {
    padding: 0.95rem;
}

.ac-modal-footer[b-aakspichcp] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.75rem 0.95rem;
    border-top: 1px solid #e2e8f0;
    background: #fff;
}
/* _content/BlazorGED/Pages/Admin/DocumentTypesAdmin.razor.rz.scp.css */
/* Types documents – preview WYSIWYG */
.dta-types[b-dcjmjpy596] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
    align-items: center;
}

.dta-type-chip[b-dcjmjpy596] {
    display: inline-flex;
    align-items: stretch;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #d0dae6;
    background: #fff;
}
.dta-type-chip.is-active[b-dcjmjpy596] {
    border-color: #1b8a5a;
    background: #1b8a5a;
}
.dta-type-chip .dta-type-pill[b-dcjmjpy596] {
    border: none;
    border-radius: 0;
    background: transparent;
}
.dta-type-chip.is-active .dta-type-pill[b-dcjmjpy596] { color: #fff; }
.dta-type-del[b-dcjmjpy596] {
    border: none;
    border-left: 1px solid rgba(0,0,0,.08);
    background: transparent;
    width: 28px;
    color: #8490a8;
    cursor: pointer;
}
.dta-type-chip.is-active .dta-type-del[b-dcjmjpy596] {
    border-left-color: rgba(255,255,255,.25);
    color: rgba(255,255,255,.85);
}
.dta-type-del:hover[b-dcjmjpy596] { color: #b91c1c; background: rgba(185,28,28,.08); }

.dta-type-pill[b-dcjmjpy596] {
    border: 1px solid #d0dae6;
    background: #fff;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 0.84rem;
    font-weight: 600;
    color: #3d5060;
    cursor: pointer;
}
.dta-type-pill:hover[b-dcjmjpy596] { border-color: #1b8a5a; color: #1b8a5a; }
.dta-type-pill.is-active[b-dcjmjpy596] {
    background: #1b8a5a;
    border-color: #1b8a5a;
    color: #fff;
}

.dta-type-add[b-dcjmjpy596] {
    border: 1px dashed #1b8a5a;
    background: #f3faf6;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 0.84rem;
    font-weight: 600;
    color: #1b8a5a;
    cursor: pointer;
}
.dta-type-add:hover[b-dcjmjpy596] { background: #e8f5ee; }

.dta-create-type[b-dcjmjpy596] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: -4px 0 14px;
    max-width: 520px;
}
.dta-create-type .form-control[b-dcjmjpy596] { flex: 1; min-width: 180px; }

.dta-workspace[b-dcjmjpy596] {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}
@media (max-width: 960px) {
    .dta-workspace[b-dcjmjpy596] { grid-template-columns: 1fr; }
}

.dta-palette[b-dcjmjpy596] {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
    overflow: hidden;
    position: sticky;
    top: 0.5rem;
}

.dta-palette-head[b-dcjmjpy596] {
    padding: 10px 12px;
    font-size: 0.82rem;
    font-weight: 700;
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
}

.dta-palette-body[b-dcjmjpy596] {
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-height: 52vh;
    overflow-y: auto;
    min-height: 120px;
}

.dta-pal-item[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 9px;
    background: #fff;
    border: 1px solid #d5dee8;
    border-radius: 8px;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: grab;
    user-select: none;
    -webkit-user-drag: element;
}
.dta-pal-item span[b-dcjmjpy596] { flex: 1; min-width: 0; }
.dta-pal-item:active[b-dcjmjpy596] { cursor: grabbing; }

.dta-pal-text[b-dcjmjpy596] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.dta-pal-label[b-dcjmjpy596] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #0b1220;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dta-type-badge[b-dcjmjpy596] {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 1px 6px;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
    background: #eef2f7;
    color: #5a6b7d;
}
.dta-type-badge--bool[b-dcjmjpy596] { background: #ecfdf5; color: #047857; }
.dta-type-badge--number[b-dcjmjpy596] { background: #eff6ff; color: #1d4ed8; }
.dta-type-badge--date[b-dcjmjpy596] { background: #fff7ed; color: #c2410c; }
.dta-type-badge--list[b-dcjmjpy596] { background: #f5f3ff; color: #6d28d9; }
.dta-type-badge--block[b-dcjmjpy596] { background: #ecfdf5; color: #166534; }
.dta-type-badge--system[b-dcjmjpy596] { background: #f1f5f9; color: #64748b; }
.dta-type-badge--text[b-dcjmjpy596] { background: #eef2f7; color: #475569; }

.dta-placed-meta[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 2px;
}
.dta-fake-check[b-dcjmjpy596] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 4px;
    font-size: 0.75rem;
    color: #64748b;
}
.dta-fake-check em[b-dcjmjpy596] { font-style: normal; }

.dta-create-mini[b-dcjmjpy596] {
    padding: 10px 12px 12px;
    border-top: 1px solid #e2e8f0;
    background: #fff;
}

.dta-scope[b-dcjmjpy596] {
    margin: 8px 0;
    padding: 8px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
    max-height: 160px;
    overflow-y: auto;
}
.dta-scope-head[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem;
    font-weight: 700;
    color: #5a6b7d;
    margin-bottom: 6px;
}
.dta-scope-head span[b-dcjmjpy596] { flex: 1; }
.dta-scope-item[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.78rem;
    font-weight: 500;
    color: #334155;
    margin: 0 0 4px;
    cursor: pointer;
}
.dta-scope-item input[b-dcjmjpy596] { accent-color: #1b8a5a; }

.dta-preview-card[b-dcjmjpy596] {
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
    padding: 14px 16px 18px;
}

.dta-preview-title[b-dcjmjpy596] {
    font-size: 0.92rem;
    font-weight: 700;
    margin-bottom: 12px;
    color: #0b1220;
}

.dta-core[b-dcjmjpy596] {
    position: relative;
    padding: 10px;
    border-radius: 10px;
    background: #f4f7f9;
    border: 1px dashed #cfd8e3;
    margin-bottom: 12px;
    opacity: 0.85;
    pointer-events: none;
}

.dta-core-note[b-dcjmjpy596] {
    font-size: 0.7rem;
    color: #8490a8;
    margin-top: 6px;
    text-align: right;
}

.dta-fake-row[b-dcjmjpy596] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.dta-fake-field[b-dcjmjpy596] { margin-bottom: 8px; }
.dta-fake-full[b-dcjmjpy596] { grid-column: 1 / -1; }
.dta-fake-label[b-dcjmjpy596] {
    display: block;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .3px;
    color: #7a8a9a;
    margin-bottom: 3px;
}
.dta-fake-input[b-dcjmjpy596] {
    height: 28px;
    border-radius: 6px;
    background: #fff;
    border: 1px solid #dde4ec;
}
.dta-fake-tall[b-dcjmjpy596] { height: 44px; }
.dta-fake-muted[b-dcjmjpy596] { opacity: .35; }

.dta-zone[b-dcjmjpy596], .dta-block[b-dcjmjpy596] {
    border: 1px solid #dce8e2;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    background: #fbfefc;
    min-height: 64px;
}

.dta-block[b-dcjmjpy596] {
    border-color: #b7dfc8;
    background: #f3faf6;
}

.dta-zone-label[b-dcjmjpy596] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .4px;
    color: #6b7f74;
    margin-bottom: 8px;
}

.dta-block-head[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.dta-block-title[b-dcjmjpy596] {
    flex: 1;
    border: 1px solid #c5d9ce;
    border-radius: 7px;
    padding: 5px 10px;
    font-size: 0.84rem;
    font-weight: 700;
    color: #163528;
    background: #fff;
}

.dta-zone-grid[b-dcjmjpy596] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.dta-placed[b-dcjmjpy596] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 9px;
    background: #fff;
    border: 1px solid #c5d9ce;
    border-radius: 8px;
    cursor: grab;
    user-select: none;
    -webkit-user-drag: element;
}
.dta-placed--full[b-dcjmjpy596] { grid-column: 1 / -1; }
.dta-placed:active[b-dcjmjpy596] { cursor: grabbing; }
.dta-placed-body[b-dcjmjpy596] { flex: 1; min-width: 0; }
.dta-placed-label[b-dcjmjpy596] {
    display: block;
    font-size: 0.82rem;
    font-weight: 700;
    color: #0b1220;
}
.dta-placed-key[b-dcjmjpy596] { font-size: 0.68rem; color: #8490a8; }

.dta-grip[b-dcjmjpy596] { color: #a8b8c4; font-size: 0.75rem; }
.dta-icon-btn[b-dcjmjpy596] {
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1px solid #d5dee8;
    background: #f5f8fb;
    color: #5a7080;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    flex-shrink: 0;
}
.dta-icon-btn:hover[b-dcjmjpy596] { background: #e8f5ee; border-color: #1b8a5a; color: #1b8a5a; }

.dta-drop-hint[b-dcjmjpy596], .dta-empty-sm[b-dcjmjpy596] {
    text-align: center;
    color: #90a0b0;
    font-size: 0.78rem;
    padding: 12px;
    border: 1px dashed #c8d4e0;
    border-radius: 8px;
}

.dta-toast[b-dcjmjpy596] {
    position: fixed;
    top: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1080;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    max-width: min(520px, calc(100vw - 2rem));
    padding: 0.7rem 1rem;
    border-radius: 10px;
    font-size: 0.88rem;
    font-weight: 600;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.18);
    backdrop-filter: blur(8px);
    animation: dta-toast-in-b-dcjmjpy596 220ms ease;
}
.dta-toast--success[b-dcjmjpy596] {
    background: rgba(240, 253, 244, 0.92);
    color: #166534;
    border: 1px solid rgba(187, 247, 208, 0.9);
}
.dta-toast--error[b-dcjmjpy596] {
    background: rgba(254, 242, 242, 0.94);
    color: #b91c1c;
    border: 1px solid rgba(254, 202, 202, 0.95);
}
.dta-toast-close[b-dcjmjpy596] {
    border: none;
    background: transparent;
    color: inherit;
    opacity: .65;
    cursor: pointer;
}
@keyframes dta-toast-in-b-dcjmjpy596 {
    from { opacity: 0; transform: translateX(-50%) translateY(-10px); }
    to { opacity: 1; transform: translateX(-50%) translateY(0); }
}
/* _content/BlazorGED/Pages/Budget.razor.rz.scp.css */
/* ================================================================
   Budget.razor.css — même palette exacte que SuiviPaiements
   ================================================================ */

:root[b-f0wcd0px71] {
    --nh-primary:       #1b8a5a;
    --nh-primary-dark:  #166534;
    --nh-primary-light: #dff0e6;
    --nh-primary-mid:   #bbf7d0;
    --nh-primary-soft:  #f0fdf4;
    --nh-bg:            #f4f7f6;
    --nh-bg-card:       #f8fbf9;
    --nh-border:        #dce8e2;
    --nh-text:          #104a2f;
    --nh-text-muted:    #5c7a6b;
    --nh-hover:         #eaf3ee;
}

/* ── Root ─────────────────────────────────────────────────── */
.bgt-root[b-f0wcd0px71] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 56px);
    overflow: hidden;
    background: var(--nh-bg);
    font-family: 'Inter', system-ui, sans-serif;
}

/* ── Header ───────────────────────────────────────────────── */
.bgt-header[b-f0wcd0px71] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--nh-border);
    flex-shrink: 0;
}
.bgt-header-left[b-f0wcd0px71]  { display: flex; align-items: center; gap: 0.65rem; }
.bgt-header-icon[b-f0wcd0px71]  { font-size: 1.25rem; color: var(--nh-primary); opacity: 0.9; }
.bgt-header-title[b-f0wcd0px71] { margin: 0; font-size: 1.05rem; font-weight: 800; color: #0b1a10; line-height: 1.2; }
.bgt-header-sub[b-f0wcd0px71]   { font-size: 0.78rem; color: var(--nh-text-muted); font-weight: 500; }
.bgt-header-right[b-f0wcd0px71] { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; }

/* ── Workspace ────────────────────────────────────────────── */
.bgt-workspace[b-f0wcd0px71] {
    display: grid;
    grid-template-columns: 230px 1fr;
    flex: 1;
    overflow: hidden;
}

/* ── Sidebar ──────────────────────────────────────────────── */
.bgt-sidebar[b-f0wcd0px71] {
    background: var(--nh-bg-card);
    border-right: 1px solid var(--nh-border);
    overflow-y: auto;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

/* Stats grid */
.bgt-stats-grid[b-f0wcd0px71] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem;
}
.bgt-stat[b-f0wcd0px71] {
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    padding: 0.4rem 0.55rem;
    text-align: center;
}
.bgt-stat-num[b-f0wcd0px71] {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0b1a10;
    line-height: 1.1;
}
.bgt-stat-label[b-f0wcd0px71] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 600;
}
.bgt-stat--success .bgt-stat-num[b-f0wcd0px71] { color: #16a34a; }
.bgt-stat--danger  .bgt-stat-num[b-f0wcd0px71] { color: #dc2626; }

/* Amount card (gradient vert — couleurs hardcodées pour Blazor isolated CSS) */
.bgt-amount-card[b-f0wcd0px71] {
    background: linear-gradient(135deg, #166534 0%, #1b8a5a 100%);
    border-radius: 10px;
    padding: 0.6rem 0.75rem;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}
.bgt-amount-label[b-f0wcd0px71] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.85; font-weight: 600; color: #ffffff; }
.bgt-amount-value[b-f0wcd0px71] { font-size: 1.15rem; font-weight: 800; line-height: 1.1; color: #ffffff; }
.bgt-amount-sub[b-f0wcd0px71]   { font-size: 0.72rem; opacity: 0.85; color: #ffffff; }

/* Filter sections */
.bgt-filter-section[b-f0wcd0px71] { display: flex; flex-direction: column; gap: 0.3rem; }
.bgt-filter-label[b-f0wcd0px71] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 700;
    margin: 0 0 0.15rem 0;
}

/* Chips (nav) */
.bgt-chip[b-f0wcd0px71] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.28rem 0.55rem;
    border-radius: 7px;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.82rem;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    transition: background 120ms, border-color 120ms;
    text-align: left;
    width: 100%;
}
.bgt-chip:hover[b-f0wcd0px71]       { background: var(--nh-hover); border-color: var(--nh-border); }
.bgt-chip--active[b-f0wcd0px71]     { background: var(--nh-primary-light); border-color: var(--nh-primary-mid); color: var(--nh-primary-dark); }
.bgt-chip-icon[b-f0wcd0px71]        { width: 16px; text-align: center; font-size: 0.78rem; opacity: 0.7; }
.bgt-chip-label[b-f0wcd0px71]       { flex: 1; margin-left: 0.35rem; }
.bgt-chip-count[b-f0wcd0px71] {
    font-size: 0.72rem;
    background: rgba(92, 122, 107, 0.12);
    border-radius: 999px;
    padding: 0.1rem 0.45rem;
    font-weight: 700;
    color: var(--nh-text-muted);
}
.bgt-chip--active .bgt-chip-count[b-f0wcd0px71] { background: rgba(27, 138, 90, 0.15); color: var(--nh-primary-dark); }

/* ── Main ─────────────────────────────────────────────────── */
.bgt-main[b-f0wcd0px71] {
    overflow-y: auto;
    background: var(--nh-bg);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}
.bgt-loading[b-f0wcd0px71] { display: flex; align-items: center; justify-content: center; flex: 1; padding: 3rem; }
.bgt-content-header[b-f0wcd0px71] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 0.1rem;
}
.bgt-content-title[b-f0wcd0px71] {
    font-size: 0.9rem; font-weight: 700; margin: 0;
    color: var(--nh-text);
    display: flex; align-items: center; gap: 0.4rem;
}
.bgt-content-title i[b-f0wcd0px71] { color: var(--nh-primary); }
.bgt-section-label[b-f0wcd0px71] {
    font-size: 0.68rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.04em; color: var(--nh-text-muted); margin-bottom: 0.4rem;
}
.mt-3[b-f0wcd0px71] { margin-top: 0.75rem; }

/* Person cards */
.bgt-cards-row[b-f0wcd0px71] { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.bgt-person-card[b-f0wcd0px71] {
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    padding: 0.6rem 0.75rem;
    display: flex; align-items: flex-start; gap: 0.55rem;
    flex: 1; min-width: 170px;
    transition: box-shadow 120ms;
}
.bgt-person-card:hover[b-f0wcd0px71] { box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07); }
.bgt-person-avatar[b-f0wcd0px71] {
    width: 32px; height: 32px;
    background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-primary));
    color: #fff; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 0.78rem; font-weight: 800; flex-shrink: 0;
}
.bgt-person-avatar--sm[b-f0wcd0px71] { width: 26px; height: 26px; font-size: 0.7rem; }
.bgt-person-info[b-f0wcd0px71]  { flex: 1; min-width: 0; }
.bgt-person-name[b-f0wcd0px71]  { font-size: 0.82rem; font-weight: 700; color: #0b1a10; }
.bgt-person-salary[b-f0wcd0px71] { font-size: 0.73rem; color: var(--nh-text-muted); font-weight: 500; }
.bgt-person-share[b-f0wcd0px71] { text-align: right; flex-shrink: 0; }
.bgt-person-ratio[b-f0wcd0px71] { font-size: 0.78rem; font-weight: 800; color: var(--nh-primary-dark); }
.bgt-person-contribution[b-f0wcd0px71] { font-size: 0.68rem; color: var(--nh-text-muted); }
.bgt-person-reste[b-f0wcd0px71] { font-size: 0.7rem; font-weight: 600; color: var(--nh-primary-dark); }
.bgt-reste--neg[b-f0wcd0px71]   { color: #dc2626 !important; }

/* Expense rows */
.bgt-expense-list[b-f0wcd0px71] { display: flex; flex-direction: column; gap: 2px; }
.bgt-expense-row[b-f0wcd0px71] {
    display: flex; align-items: center; gap: 0.55rem;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    padding: 0.42rem 0.7rem;
    font-size: 0.84rem;
    transition: box-shadow 120ms, border-color 120ms;
}
.bgt-expense-row--clickable[b-f0wcd0px71] { cursor: pointer; }
.bgt-expense-row--clickable:hover[b-f0wcd0px71] {
    box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07);
    border-color: #a7c4b3;
}
.bgt-expense-icon[b-f0wcd0px71] { width: 20px; text-align: center; flex-shrink: 0; }
.bgt-expense-icon i[b-f0wcd0px71] { font-size: 0.5rem; color: var(--nh-text-muted); }
.bgt-expense-icon--green  i[b-f0wcd0px71] { color: var(--nh-primary); }
.bgt-expense-icon--blue   i[b-f0wcd0px71] { color: #3b82f6; }
.bgt-expense-icon--red    i[b-f0wcd0px71] { color: #ef4444; }
.bgt-expense-icon--teal   i[b-f0wcd0px71] { color: #0d9488; }
.bgt-expense-icon--purple i[b-f0wcd0px71] { color: #7c3aed; }
.bgt-expense-icon--muted  i[b-f0wcd0px71] { color: #94a3b8; }
.bgt-expense-name[b-f0wcd0px71] { flex: 1; font-weight: 600; color: #0b1a10; font-size: 0.84rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bgt-expense-meta[b-f0wcd0px71] { font-size: 0.72rem; color: var(--nh-text-muted); font-weight: 400; }
.bgt-expense-amount[b-f0wcd0px71] { font-size: 0.86rem; font-weight: 700; white-space: nowrap; color: #334155; }
.bgt-expense-sub[b-f0wcd0px71]   { font-size: 0.65rem; font-weight: 400; color: var(--nh-text-muted); margin-left: 2px; }
.bgt-expense-equiv[b-f0wcd0px71] { font-size: 0.7rem; color: var(--nh-text-muted); white-space: nowrap; }
.bgt-row-btn[b-f0wcd0px71] {
    border: none; background: none; color: var(--nh-text-muted); cursor: pointer;
    padding: 3px 5px; border-radius: 5px; font-size: 0.75rem; flex-shrink: 0;
}
.bgt-row-btn:hover[b-f0wcd0px71] { color: var(--nh-primary); background: var(--nh-hover); }

/* Badges */
.bgt-badge[b-f0wcd0px71] {
    display: inline-block; font-size: 0.68rem; padding: 0.12rem 0.4rem;
    border-radius: 999px;
    background: rgba(92, 122, 107, 0.1);
    border: 1px solid rgba(92, 122, 107, 0.2);
    color: var(--nh-text-muted);
    font-weight: 600;
}
.bgt-badge--blue[b-f0wcd0px71] { background: #dbeafe; color: #1d4ed8; border-color: #bfdbfe; }
.bgt-badge--green[b-f0wcd0px71] { background: #dcfce7; color: #166534; border-color: #bbf7d0; }

/* Empty */
.bgt-empty[b-f0wcd0px71] {
    display: flex; flex-direction: column; align-items: center;
    gap: 0.5rem; padding: 2.5rem; color: var(--nh-text-muted); text-align: center;
}
.bgt-empty i[b-f0wcd0px71] { font-size: 2.5rem; color: #a7c4b3; }
.bgt-empty span[b-f0wcd0px71] { font-size: 0.85rem; }

/* ── Modal ────────────────────────────────────────────────── */
.bgt-modal-overlay[b-f0wcd0px71] {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.4);
    display: flex; align-items: center; justify-content: center;
    z-index: 1050;
}
.bgt-modal-box[b-f0wcd0px71] {
    background: #fff;
    border-radius: 12px;
    width: 480px; max-width: 96vw;
    box-shadow: 0 16px 48px rgba(11, 26, 16, 0.18);
    display: flex; flex-direction: column; max-height: 90vh;
}
.bgt-modal-header[b-f0wcd0px71] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.85rem 1rem 0.7rem;
    border-bottom: 1px solid var(--nh-border);
}
.bgt-modal-title[b-f0wcd0px71] {
    margin: 0; font-size: 0.88rem; font-weight: 700; color: #0b1a10;
    display: flex; align-items: center; gap: 0.4rem;
}
.bgt-modal-title i[b-f0wcd0px71] { color: var(--nh-primary); }
.bgt-modal-close[b-f0wcd0px71] { border: none; background: none; font-size: 0.85rem; color: var(--nh-text-muted); cursor: pointer; padding: 4px; }
.bgt-modal-body[b-f0wcd0px71]  { padding: 0.9rem 1rem; overflow-y: auto; flex: 1; }
.bgt-modal-footer[b-f0wcd0px71] {
    display: flex; gap: 0.5rem; align-items: center;
    padding: 0.65rem 1rem;
    border-top: 1px solid var(--nh-border);
}

.bgt-form-grid[b-f0wcd0px71] { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
.bgt-field[b-f0wcd0px71] { display: flex; flex-direction: column; gap: 3px; }
.bgt-field--full[b-f0wcd0px71] { grid-column: 1 / -1; }
.bgt-field-label[b-f0wcd0px71] { font-size: 0.67rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--nh-text-muted); }
.bgt-field--toggle[b-f0wcd0px71] { flex-direction: row; align-items: center; }
.bgt-toggle-wrap[b-f0wcd0px71] { display: flex; align-items: center; gap: 0.4rem; font-size: 0.82rem; cursor: pointer; }

/* ── KPI cards (vue d'ensemble) ──────────────────────────── */
.bgt-kpi-row[b-f0wcd0px71] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: nowrap;
}
.bgt-kpi[b-f0wcd0px71] {
    flex: 1;
    min-width: 0;
    border-radius: 8px;
    padding: 0.7rem 1rem;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.bgt-kpi--blue[b-f0wcd0px71]  { background: #2563eb; }
.bgt-kpi--teal[b-f0wcd0px71]  { background: #0891b2; }
.bgt-kpi--green[b-f0wcd0px71] { background: linear-gradient(135deg, #166534 0%, #1b8a5a 100%); }
.bgt-kpi-label[b-f0wcd0px71]  { font-size: 0.72rem; opacity: 0.88; font-weight: 600; color: #ffffff; }
.bgt-kpi-value[b-f0wcd0px71]  { font-size: 1.35rem; font-weight: 800; line-height: 1.1; color: #ffffff; }

/* ── Sections avec tableaux ───────────────────────────────── */
.bgt-section[b-f0wcd0px71] {
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    overflow: hidden;
}
.bgt-section-head[b-f0wcd0px71] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.85rem;
    background: var(--nh-bg-card);
    border-bottom: 1px solid var(--nh-border);
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--nh-text);
}
.bgt-section-head i[b-f0wcd0px71] { color: var(--nh-primary); font-size: 0.8rem; }

/* Table */
.bgt-table[b-f0wcd0px71] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}
.bgt-table thead th[b-f0wcd0px71] {
    padding: 0.35rem 0.75rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    background: var(--nh-bg-card);
    border-bottom: 1px solid var(--nh-border);
    white-space: nowrap;
}
.bgt-table tbody tr[b-f0wcd0px71] { border-bottom: 1px solid var(--nh-border); }
.bgt-table tbody tr:last-child[b-f0wcd0px71] { border-bottom: none; }
.bgt-table tbody td[b-f0wcd0px71] { padding: 0.4rem 0.75rem; color: #0b1a10; vertical-align: middle; }
.bgt-table-row-click[b-f0wcd0px71] { cursor: pointer; transition: background 120ms; }
.bgt-table-row-click:hover[b-f0wcd0px71] { background: var(--nh-hover); }

/* Couleurs utilitaires */
.bgt-text-green[b-f0wcd0px71] { color: #16a34a; font-weight: 700; }
.bgt-text-red[b-f0wcd0px71]   { color: #dc2626; font-weight: 700; }
.bgt-text-muted[b-f0wcd0px71] { color: var(--nh-text-muted); }

/* Avatar inline dans tableau */
.bgt-avatar[b-f0wcd0px71] {
    display: inline-flex; align-items: center; justify-content: center;
    width: 22px; height: 22px;
    background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-primary));
    color: #fff; border-radius: 50%;
    font-size: 0.65rem; font-weight: 800;
    margin-right: 0.4rem; vertical-align: middle;
}

/* Empty inline (dans section) */
.bgt-empty-inline[b-f0wcd0px71] {
    padding: 0.75rem;
    font-size: 0.8rem;
    color: var(--nh-text-muted);
    font-style: italic;
}

/* fw utilities */
.fw-semibold[b-f0wcd0px71] { font-weight: 600; }
.fw-bold[b-f0wcd0px71]     { font-weight: 700; }
.ms-auto[b-f0wcd0px71]     { margin-left: auto; }

/* ── Toast ────────────────────────────────────────────────── */
.bgt-toast[b-f0wcd0px71] {
    position: fixed; bottom: 1.25rem; left: 50%; transform: translateX(-50%);
    z-index: 9999;
    display: flex; align-items: center; gap: 0.55rem;
    padding: 0.6rem 1.1rem; border-radius: 10px;
    font-size: 0.875rem; font-weight: 600;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.14);
    animation: bgt-toast-in-b-f0wcd0px71 200ms ease;
    white-space: nowrap; pointer-events: none;
}
.bgt-toast--success[b-f0wcd0px71] { background: var(--nh-primary-soft); color: var(--nh-primary-dark); border: 1px solid var(--nh-primary-mid); }
.bgt-toast--error[b-f0wcd0px71]   { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@keyframes bgt-toast-in-b-f0wcd0px71 {
    from { opacity: 0; transform: translateX(-50%) translateY(8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* _content/BlazorGED/Pages/DocumentsAutres.razor.rz.scp.css */
.nav-pills .nav-link[b-5skxrf8xlc] {
        margin-right: 0.5rem;
        margin-bottom: 0.5rem;
        border-radius: 0.375rem;
        transition: all 0.15s ease-in-out;
    }

        .nav-pills .nav-link:hover[b-5skxrf8xlc] {
            background-color: rgba(13, 110, 253, 0.1);
        }

        .nav-pills .nav-link.active[b-5skxrf8xlc] {
            background-color: #0d6efd;
            border-color: #0d6efd;
        }

    .document-card[b-5skxrf8xlc] {
        transition: all 0.2s ease-in-out;
        cursor: pointer;
    }

        .document-card:hover[b-5skxrf8xlc] {
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }

    .table-hover tbody tr:hover[b-5skxrf8xlc] {
        background-color: rgba(0, 0, 0, 0.05);
        cursor: pointer;
    }

    .badge[b-5skxrf8xlc] {
        font-size: 0.75em;
    }

    .btn-group .btn.active[b-5skxrf8xlc] {
        background-color: #0d6efd;
        border-color: #0d6efd;
        color: white;
    }

    .text-truncate[b-5skxrf8xlc] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .card-body .fa-2x[b-5skxrf8xlc] {
        opacity: 0.8;
    }

    .card-footer .btn-group[b-5skxrf8xlc] {
        gap: 2px;
    }

    .table td[b-5skxrf8xlc] {
        vertical-align: middle;
    }

    @@media (max-width: 768px) {
        .nav-pills[b-5skxrf8xlc]

    {
        flex-wrap: wrap;
    }

    .nav-pills .nav-link[b-5skxrf8xlc] {
        margin-right: 0.25rem;
        font-size: 0.875rem;
        padding: 0.375rem 0.75rem;
    }

    }
/* _content/BlazorGED/Pages/DocumentsVues.razor.rz.scp.css */
/* ─────────────────────────────────────────────────────────
   DocumentsVues – styles isolés (CSS isolation Blazor)
   .dv-btn-action / .dv-btn-primary / .dv-btn-ghost : site.css
   ───────────────────────────────────────────────────────── */

/* Bouton danger */
[b-w2mmw7nj0w] .dv-btn-danger {
    background: #fff;
    border: 1px solid #fca5a5;
    color: #dc2626;
    border-radius: 8px;
    font-size: 0.82rem;
    font-weight: 500;
    padding: 5px 12px;
}
[b-w2mmw7nj0w] .dv-btn-danger:hover { background: #fef2f2; }

/* ── Workspace layout ── */
[b-w2mmw7nj0w] .panel-workspace {
    flex: 1;
    min-height: 0;
    display: flex;
    gap: 0;
    align-items: stretch;
    overflow: hidden;
}
[b-w2mmw7nj0w] .resizable-panels {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    border-radius: var(--dv-radius);
    box-shadow: var(--dv-shadow);
    border: 1px solid var(--dv-sidebar-border);
    background: #fff;
}
[b-w2mmw7nj0w] .resizable-panel { min-width: 0; height: 100%; overflow: hidden; }
[b-w2mmw7nj0w] .resizable-panel .card { height: 100%; display: flex; flex-direction: column; overflow: hidden; }

/* Panneau métadonnées : corps scrollable */
[b-w2mmw7nj0w] .dv-meta-body {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

[b-w2mmw7nj0w] .panel-splitter {
    width: 5px;
    background: var(--dv-sidebar-border);
    cursor: col-resize;
    flex-shrink: 0;
    transition: background .15s;
}
[b-w2mmw7nj0w] .panel-splitter:hover { background: var(--dv-accent); }

[b-w2mmw7nj0w] .panel-toggle-rail {
    display: flex;
    flex-direction: column;
    gap: 6px;
    justify-content: center;
    padding-left: 8px;
}
[b-w2mmw7nj0w] .panel-toggle-btn {
    width: 32px;
    min-height: 108px;
    border-radius: 8px;
    border: 1px solid #dde1ea;
    background: #fff;
    color: #8490a8;
    font-size: 10.5px;
    font-weight: 700;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 0.3px;
    padding: 6px 4px;
    transition: background .15s, color .15s;
}
[b-w2mmw7nj0w] .panel-toggle-btn.is-active {
    background: var(--dv-accent);
    border-color: var(--dv-accent);
    color: #fff;
    box-shadow: 0 2px 8px rgba(27,138,90,.25);
}

/* ── Left panel ── */
[b-w2mmw7nj0w] .dv-left-panel {
    display: flex;
    flex-direction: column;
    background: var(--dv-sidebar-bg);
    overflow: hidden;
}
[b-w2mmw7nj0w] .dv-nav-header {
    padding: 12px 14px 10px;
    border-bottom: 1px solid var(--dv-sidebar-border);
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
[b-w2mmw7nj0w] .dv-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2px;
    font-size: 0.78rem;
}
[b-w2mmw7nj0w] .dv-crumb { color: var(--dv-accent); text-decoration: none; font-weight: 500; }
[b-w2mmw7nj0w] .dv-crumb:hover { text-decoration: underline; }
[b-w2mmw7nj0w] .dv-crumb-sep { color: #bcc1ce; margin: 0 2px; }

[b-w2mmw7nj0w] .dv-catalog-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%;
}
[b-w2mmw7nj0w] .dv-catalog-search-main {
    flex: 1;
    min-width: 220px;
    position: relative;
    display: flex;
    align-items: center;
}
[b-w2mmw7nj0w] .dv-catalog-search-icon { position: absolute; left: 12px; color: #6b7f74; pointer-events: none; }
[b-w2mmw7nj0w] .dv-catalog-search-input { padding-left: 2.25rem; padding-right: 2rem; border-radius: 10px; border: 1px solid #c5d9ce; }
[b-w2mmw7nj0w] .dv-catalog-search-clear { position: absolute; right: 4px; color: #6b7f74; text-decoration: none; }

[b-w2mmw7nj0w] .dv-search-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 0;
}
[b-w2mmw7nj0w] .dv-search-toolbar .dv-search-wrap { flex: 1; min-width: 0; }
[b-w2mmw7nj0w] .dv-node-actions-inline { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
[b-w2mmw7nj0w] .dv-icon-btn {
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 8px;
    border: 1px solid #dce8e2;
    background: #fff;
    color: #486a59;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.82rem;
    line-height: 1;
    transition: background .12s, border-color .12s, color .12s;
}
[b-w2mmw7nj0w] .dv-icon-btn:hover { background: var(--dv-node-hover); border-color: #b8c9c0; color: #163528; }
[b-w2mmw7nj0w] .dv-icon-btn-danger { color: #dc2626; border-color: #fecaca; }
[b-w2mmw7nj0w] .dv-icon-btn-danger:hover { background: #fef2f2; border-color: #fca5a5; color: #b91c1c; }

[b-w2mmw7nj0w] .dv-search-wrap { position: relative; display: flex; align-items: center; }
[b-w2mmw7nj0w] .dv-search-icon { position: absolute; left: 10px; color: #8490a8; font-size: 0.8rem; pointer-events: none; }
[b-w2mmw7nj0w] .dv-search-input {
    width: 100%;
    border: 1px solid #dce8e2;
    border-radius: 8px;
    padding: 6px 32px 6px 32px;
    font-size: 0.83rem;
    background: #f4f7f6;
    color: #0b1220;
    outline: none;
    transition: border-color .15s;
}
[b-w2mmw7nj0w] .dv-search-input:focus { border-color: var(--dv-accent); background: #fff; }
[b-w2mmw7nj0w] .dv-search-clear {
    position: absolute;
    right: 8px;
    background: transparent;
    border: none;
    color: #8490a8;
    cursor: pointer;
    font-size: 0.8rem;
    padding: 2px;
}

/* ── Main area ── */
[b-w2mmw7nj0w] .dv-main-area {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 10px 8px 12px;
    min-height: 0;
}
[b-w2mmw7nj0w] .dv-main-drop-zone {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 140px;
    overflow-y: auto;
    border-radius: var(--dv-radius);
}
[b-w2mmw7nj0w] .dv-drop-hint-bar {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 10px;
    margin-bottom: 8px;
    border-radius: 8px;
    background: #eef5f1;
    border: 1px dashed #b5d4c4;
    font-size: 0.78rem;
    color: #3d5c4e;
}
[b-w2mmw7nj0w] .dv-files-header-inline {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--dv-section-fg);
    padding: 2px 4px 8px;
}
[b-w2mmw7nj0w] .dv-section-header {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .6px;
    color: var(--dv-section-fg);
    padding: 4px 8px 4px 6px;
    margin-bottom: 2px;
    user-select: none;
}
[b-w2mmw7nj0w] .dv-mode-card {
    flex: 1;
    border: 2px solid #e2e5ea;
    border-radius: 10px;
    padding: 12px 10px;
    cursor: pointer;
    text-align: center;
    transition: border-color .15s, background .15s;
    background: #f9fafc;
    user-select: none;
}
[b-w2mmw7nj0w] .dv-mode-card:hover { border-color: #7fba9e; background: #eef5f1; }
[b-w2mmw7nj0w] .dv-mode-card-active { border-color: #1b8a5a !important; background: #dff0e6 !important; }

[b-w2mmw7nj0w] .dv-group-header-row td { background: #f0f7f3; border-top: 2px solid #dce8e2 !important; padding: 5px 8px !important; }
[b-w2mmw7nj0w] .dv-group-header-label { font-size: 0.73rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; color: #3a6b52; }
[b-w2mmw7nj0w] .dv-group-header-count {
    margin-left: 8px;
    background: #c8e6d4;
    color: #2e5a45;
    border-radius: 9px;
    font-size: 0.68rem;
    padding: 0 6px;
    font-weight: 700;
    vertical-align: middle;
}
[b-w2mmw7nj0w] .dv-section-count {
    margin-left: auto;
    background: #dce8e2;
    color: #486a59;
    border-radius: 10px;
    font-size: 0.7rem;
    padding: 0 6px;
    line-height: 1.6;
    font-weight: 700;
}

[b-w2mmw7nj0w] .dv-node {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    text-align: left;
    padding: 6px 10px;
    border: none;
    border-radius: 7px;
    background: transparent;
    color: #374151;
    font-size: 0.85rem;
    cursor: pointer;
    transition: background .12s, color .12s;
    margin-bottom: 1px;
}
[b-w2mmw7nj0w] .dv-node:hover { background: var(--dv-node-hover); }
[b-w2mmw7nj0w] .dv-node.is-active {
    background: var(--dv-node-active-bg);
    color: var(--dv-node-active-text);
    font-weight: 600;
    border-left: 3px solid var(--dv-node-active-border);
    padding-left: 7px;
}
[b-w2mmw7nj0w] .dv-node-icon { font-size: 0.9rem; flex-shrink: 0; }
[b-w2mmw7nj0w] .text-indigo { color: #2e5a45 !important; }
[b-w2mmw7nj0w] .text-teal  { color: #1b8a5a !important; }
[b-w2mmw7nj0w] .dv-node-name { flex: 1; min-width: 0; }
[b-w2mmw7nj0w] .dv-node-badge {
    background: #e4ede9;
    color: #486a59;
    border-radius: 10px;
    font-size: 0.7rem;
    padding: 1px 7px;
    font-weight: 700;
    flex-shrink: 0;
}
[b-w2mmw7nj0w] .dv-node.is-active .dv-node-badge { background: #b7deca; color: var(--dv-node-active-text); }

[b-w2mmw7nj0w] .dv-back-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    padding: 5px 10px;
    margin-bottom: 6px;
    border: 1px dashed #dde1ea;
    border-radius: 7px;
    background: transparent;
    color: #6b7280;
    font-size: 0.82rem;
    cursor: pointer;
}
[b-w2mmw7nj0w] .dv-back-btn:hover { background: #eaf3ee; color: #163528; }

[b-w2mmw7nj0w] .dv-tree-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 16px 8px;
    color: #adb5bd;
    font-size: 0.82rem;
}
[b-w2mmw7nj0w] .dv-files-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 32px 16px;
    text-align: center;
}
[b-w2mmw7nj0w] .dv-files-drop-zone { min-height: 120px; border-radius: var(--dv-radius); transition: background .15s, box-shadow .15s; }
[b-w2mmw7nj0w] .dv-files-drop-zone.blazorged-drop-active {
    background: var(--dv-accent-light);
    box-shadow: inset 0 0 0 2px var(--dv-accent);
}

[b-w2mmw7nj0w] .dv-files-table { font-size: 0.82rem; border: none; margin: 0; table-layout: fixed; width: 100%; }
[b-w2mmw7nj0w] .dv-files-table thead th {
    position: sticky;
    top: 0;
    background: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #5c7a6b;
    border-bottom: 1px solid var(--dv-sidebar-border) !important;
    padding: 7px 10px;
}
[b-w2mmw7nj0w] .dv-th-resizable { position: relative; padding-right: 12px !important; overflow: hidden; }
[b-w2mmw7nj0w] .dv-th-text { display: block; padding-right: 2px; overflow: hidden; text-overflow: ellipsis; }
[b-w2mmw7nj0w] .dv-col-resize-handle {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 8px;
    margin-right: 2px;
    cursor: col-resize;
    z-index: 2;
}
[b-w2mmw7nj0w] .dv-col-resize-handle:hover,
[b-w2mmw7nj0w] .dv-col-resize-handle:focus { background: rgba(13,110,253,.18); }
[b-w2mmw7nj0w] .dv-files-table tbody tr { cursor: pointer; transition: background .1s; }
[b-w2mmw7nj0w] .dv-files-table tbody tr:hover { background: var(--dv-node-hover); }
[b-w2mmw7nj0w] .dv-row-active { background: var(--dv-node-active-bg) !important; }
[b-w2mmw7nj0w] .dv-row-folder .dv-doc-icon { color: #d97706; }
[b-w2mmw7nj0w] .dv-files-table td { padding: 7px 10px; border-color: #e4ede9 !important; vertical-align: middle; }

[b-w2mmw7nj0w] .dv-cell-name { display: flex; align-items: center; gap: 8px; min-width: 0; }
[b-w2mmw7nj0w] .dv-doc-icon { font-size: 1rem; color: #486a59; flex-shrink: 0; }
[b-w2mmw7nj0w] .dv-doc-info { min-width: 0; flex: 1; }
[b-w2mmw7nj0w] .dv-doc-title { font-weight: 600; color: #0b1220; font-size: 0.83rem; }
[b-w2mmw7nj0w] .dv-doc-sub { font-size: 0.73rem; color: #5c7a6b; }
[b-w2mmw7nj0w] .dv-cell-cat { white-space: nowrap; }
[b-w2mmw7nj0w] .dv-cell-date { color: #8490a8; font-size: 0.78rem; white-space: nowrap; }

[b-w2mmw7nj0w] .dv-cat-pill {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: .2px;
}
[b-w2mmw7nj0w] .dv-cat-facture        { background: #fff3cd; color: #7c5e00; }
[b-w2mmw7nj0w] .dv-cat-medical        { background: #fce7f3; color: #9d174d; }
[b-w2mmw7nj0w] .dv-cat-contrat        { background: #d1fae5; color: #065f46; }
[b-w2mmw7nj0w] .dv-cat-garantie       { background: #e0e7ff; color: #3730a3; }
[b-w2mmw7nj0w] .dv-cat-devis          { background: #e5f6fd; color: #075985; }
[b-w2mmw7nj0w] .dv-cat-recu           { background: #fef3c7; color: #92400e; }
[b-w2mmw7nj0w] .dv-cat-correspondance { background: #f3f4f6; color: #374151; }
[b-w2mmw7nj0w] .dv-cat-autres         { background: #f3f4f6; color: #6b7280; }
[b-w2mmw7nj0w] .dv-cat-default        { background: #f3f4f6; color: #6b7280; }

/* ── Panel headers (metadata + preview) ── */
[b-w2mmw7nj0w] .dv-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid var(--dv-panel-header-border);
    background: var(--dv-panel-header-bg);
    flex-shrink: 0;
    min-height: 48px;
}
[b-w2mmw7nj0w] .dv-panel-title { font-size: 0.88rem; font-weight: 700; color: #0b1220; }

/* ── Empty states ── */
[b-w2mmw7nj0w] .dv-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 40px 24px;
    text-align: center;
    flex: 1;
}
[b-w2mmw7nj0w] .dv-empty-title { font-size: 0.95rem; font-weight: 700; color: #374151; margin: 8px 0 2px; }
[b-w2mmw7nj0w] .dv-empty-sub { font-size: 0.82rem; color: #8490a8; max-width: 220px; margin: 0; line-height: 1.5; }

/* ── Context menu (sélecteurs directs : le panneau est dans ce composant, pas ::deep) ── */
.context-menu-backdrop[b-w2mmw7nj0w] { position: fixed; inset: 0; z-index: 1040; background: transparent; }
.context-menu-panel[b-w2mmw7nj0w] {
    position: fixed;
    z-index: 1050;
    min-width: 210px;
    border: 1px solid #e0e4ef;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 32px rgba(0,0,0,.14), 0 2px 8px rgba(0,0,0,.06);
    padding: 5px;
}
.context-menu-item[b-w2mmw7nj0w] {
    width: 100%;
    border: none;
    background: transparent;
    text-align: left;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.87rem;
    color: #374151;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
}
.context-menu-item:hover[b-w2mmw7nj0w] { background: var(--dv-node-hover); color: #163528; }
.context-menu-item.text-danger[b-w2mmw7nj0w] { color: #dc2626; }
.context-menu-item.text-danger:hover[b-w2mmw7nj0w] { background: #fef2f2; }
.context-menu-sep[b-w2mmw7nj0w] { height: 1px; background: #f0f2f7; margin: 4px 0; }
.context-menu-divider[b-w2mmw7nj0w] { height: 1px; background: #f0f2f7; margin: 4px 5px; }
.context-menu-title[b-w2mmw7nj0w] {
    padding: 6px 12px 4px;
    font-size: 0.78rem;
    font-weight: 600;
    color: #8490a8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

/* ── Search results header ── */
[b-w2mmw7nj0w] .dv-search-results-header {
    background: #f0f6ff;
    border: 1px solid #d4e6ff;
    border-radius: 6px;
    padding: 6px 10px;
    margin-bottom: 4px;
}
/* _content/BlazorGED/Pages/DossiersMedicaux.razor.rz.scp.css */
/* ================================================================
   DossiersMedicaux — aligné sur Suivi paiements (palette NexoHub)
   ================================================================ */

:root[b-hdjfrrcimd] {
    --nh-primary:       #1b8a5a;
    --nh-primary-dark:  #166534;
    --nh-primary-light: #dff0e6;
    --nh-primary-mid:   #bbf7d0;
    --nh-primary-soft:  #f0fdf4;
    --nh-bg:            #f4f7f6;
    --nh-bg-card:       #f8fbf9;
    --nh-border:        #dce8e2;
    --nh-text:          #104a2f;
    --nh-text-muted:    #5c7a6b;
    --nh-hover:         #eaf3ee;
}

/* ── Root ─────────────────────────────────────────────────────── */
.med-root[b-hdjfrrcimd] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 56px);
    overflow: hidden;
    background: var(--nh-bg);
}

/* ── Header (identique esprit sp-header) ───────────────────────── */
.med-header[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--nh-border);
    flex-shrink: 0;
}

.med-header-left[b-hdjfrrcimd]  { display: flex; align-items: center; gap: 0.65rem; }

.med-header-icon[b-hdjfrrcimd] {
    font-size: 1.25rem;
    color: var(--nh-primary);
    opacity: 0.92;
}

.med-header-title[b-hdjfrrcimd] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
    color: #0b1a10;
    line-height: 1.2;
}

.med-header-sub[b-hdjfrrcimd] {
    font-size: 0.78rem;
    color: var(--nh-text-muted);
    font-weight: 500;
}

.med-header-actions[b-hdjfrrcimd] { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; }

.med-search-wrap[b-hdjfrrcimd]  { position: relative; display: flex; align-items: center; }
.med-search-icon[b-hdjfrrcimd]  { position: absolute; left: 0.6rem; color: #94a3b8; font-size: 0.8rem; pointer-events: none; }

.med-search-input[b-hdjfrrcimd] {
    padding: 0.3rem 0.7rem 0.3rem 1.9rem;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    font-size: 0.875rem;
    width: 220px;
    background: var(--nh-bg-card);
    color: var(--nh-text);
    outline: none;
    transition: border-color 150ms, box-shadow 150ms;
}

.med-search-input:focus[b-hdjfrrcimd] {
    border-color: #86efac;
    box-shadow: 0 0 0 3px rgba(27, 138, 90, 0.12);
    background: #fff;
}

/* ── Workspace ────────────────────────────────────────────────── */
.med-workspace[b-hdjfrrcimd] {
    display: grid;
    grid-template-columns: 230px 1fr;
    flex: 1;
    overflow: hidden;
}

.med-workspace.med-workspace--detail[b-hdjfrrcimd] {
    grid-template-columns: 230px 1fr 320px;
}

/* ── Sidebar ──────────────────────────────────────────────────── */
.med-sidebar[b-hdjfrrcimd] {
    background: var(--nh-bg-card);
    border-right: 1px solid var(--nh-border);
    overflow-y: auto;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

/* Stats = sp-stats-grid */
.med-stats-grid[b-hdjfrrcimd] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem;
}

.med-stat[b-hdjfrrcimd] {
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    padding: 0.4rem 0.55rem;
    text-align: center;
}

.med-stat-num[b-hdjfrrcimd] {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0b1a10;
    line-height: 1.1;
}

.med-stat-label[b-hdjfrrcimd] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 600;
}

.med-stat--success .med-stat-num[b-hdjfrrcimd] { color: #16a34a; }
.med-stat--danger  .med-stat-num[b-hdjfrrcimd] { color: #dc2626; }
.med-stat--warning .med-stat-num[b-hdjfrrcimd] { color: #d97706; }

/* Carte récap = sp-amount-card */
.med-highlight-card[b-hdjfrrcimd] {
    /* Couleurs hardcodées: évite les soucis de contraste variables CSS */
    background: linear-gradient(135deg, #166534 0%, #1b8a5a 100%);
    border-radius: 10px;
    padding: 0.6rem 0.75rem;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.med-highlight-label[b-hdjfrrcimd] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.9;
    font-weight: 600;
    color: #ffffff;
}

.med-highlight-value[b-hdjfrrcimd] {
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.1;
    color: #ffffff;
}

.med-highlight-sub[b-hdjfrrcimd] {
    font-size: 0.72rem;
    opacity: 0.9;
    color: #ffffff;
}

/* Filtres */
.med-filter-section[b-hdjfrrcimd] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.med-filter-label[b-hdjfrrcimd] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 700;
    margin: 0 0 0.15rem 0;
}

.med-sidebar .form-select[b-hdjfrrcimd] {
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    font-size: 0.82rem;
    background: #fff;
    color: var(--nh-text);
}

.med-sidebar .form-select:focus[b-hdjfrrcimd] {
    border-color: #86efac;
    box-shadow: 0 0 0 3px rgba(27, 138, 90, 0.1);
}

/* Chips = sp-chip */
.med-chip[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.28rem 0.55rem;
    border-radius: 7px;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.82rem;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    transition: background 120ms, border-color 120ms;
    text-align: left;
    gap: 0.35rem;
}

.med-chip:hover[b-hdjfrrcimd] {
    background: var(--nh-hover);
    border-color: var(--nh-border);
}

.med-chip--active[b-hdjfrrcimd] {
    background: var(--nh-primary-light);
    border-color: var(--nh-primary-mid);
    color: var(--nh-primary-dark);
}

.med-chip-count[b-hdjfrrcimd] {
    font-size: 0.72rem;
    background: rgba(92, 122, 107, 0.12);
    border-radius: 999px;
    padding: 0.1rem 0.45rem;
    font-weight: 700;
    color: var(--nh-text-muted);
    flex-shrink: 0;
    margin-left: 0.35rem;
}

.med-chip--active .med-chip-count[b-hdjfrrcimd] {
    background: rgba(27, 138, 90, 0.15);
    color: var(--nh-primary-dark);
}

.med-chip-inner[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
    overflow: hidden;
}

.med-chip-name[b-hdjfrrcimd] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Avatars membres : tons verts uniquement */
.med-chip-avatar[b-hdjfrrcimd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    font-size: 0.68rem;
    font-weight: 800;
    color: #fff;
    flex-shrink: 0;
}

.med-avatar--leaf[b-hdjfrrcimd]  { background: #1b8a5a; }
.med-avatar--moss[b-hdjfrrcimd]  { background: #166534; }
.med-avatar--pine[b-hdjfrrcimd]  { background: #047857; }
.med-avatar--sea[b-hdjfrrcimd]   { background: #0d9488; }
.med-avatar--sage[b-hdjfrrcimd]  { background: #3f6f57; }
.med-avatar--fern[b-hdjfrrcimd]  { background: #15803d; }

.med-toggle-wrap[b-hdjfrrcimd]  { display: flex; align-items: center; gap: 0.5rem; cursor: pointer; margin: 0; }
.med-toggle-label[b-hdjfrrcimd] { font-size: 0.82rem; font-weight: 600; color: #1f3f2f; }
.med-urgent-ico[b-hdjfrrcimd]    { color: #dc2626; font-size: 0.85rem; }

/* ── Liste centrale ───────────────────────────────────────────── */
.med-list[b-hdjfrrcimd] {
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    background: var(--nh-bg);
    padding: 0.5rem;
    gap: 0.15rem;
}

.med-loading[b-hdjfrrcimd], .med-empty[b-hdjfrrcimd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
}

.med-empty-icon[b-hdjfrrcimd] { font-size: 3rem; color: #a7c4b3; margin-bottom: 1rem; }

/* Groupe personne ≈ sp-month-group */
.med-person-group[b-hdjfrrcimd] {
    display: flex;
    flex-direction: column;
    margin-bottom: 0.35rem;
}

.med-person-header[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.65rem;
    background: rgba(148, 163, 184, 0.12);
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    width: 100%;
    transition: background 120ms, border-color 120ms;
}

.med-person-header:hover[b-hdjfrrcimd] {
    background: var(--nh-hover);
    border-color: var(--nh-border);
}

.med-chevron[b-hdjfrrcimd]     { font-size: 0.7rem; color: var(--nh-text-muted); width: 14px; flex-shrink: 0; }
.med-person-name[b-hdjfrrcimd] { font-size: 0.83rem; font-weight: 700; color: var(--nh-text); flex: 1; }

.med-person-avatar[b-hdjfrrcimd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    font-size: 0.72rem;
    font-weight: 800;
    color: #fff;
    flex-shrink: 0;
}

.med-person-chips[b-hdjfrrcimd] { display: flex; gap: 0.3rem; flex-wrap: wrap; align-items: center; }

.med-pchip[b-hdjfrrcimd] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.45rem;
    border-radius: 999px;
    background: rgba(92, 122, 107, 0.1);
    color: var(--nh-text-muted);
    border: 1px solid rgba(92, 122, 107, 0.18);
}

.med-pchip--urgent[b-hdjfrrcimd] { background: #fef2f2; color: #dc2626; border-color: #fecaca; }

/* Ligne dossier ≈ sp-invoice-row */
.med-row[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    margin-left: 0.35rem;
    margin-bottom: 2px;
    cursor: pointer;
    transition: box-shadow 120ms, border-color 120ms, background 120ms;
    overflow: hidden;
    position: relative;
}

.med-row:hover[b-hdjfrrcimd] {
    box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07);
    border-color: #a7c4b3;
}

.med-row--selected[b-hdjfrrcimd] {
    background: var(--nh-primary-soft);
    border-color: #86efac;
    box-shadow: 0 0 0 2px rgba(27, 138, 90, 0.12);
}

.med-row--urgent[b-hdjfrrcimd] { border-left: 3px solid #ef4444 !important; }

.med-row-accent[b-hdjfrrcimd] { width: 3px; align-self: stretch; flex-shrink: 0; }
.med-accent--green[b-hdjfrrcimd]  { background: var(--nh-primary); }
.med-accent--blue[b-hdjfrrcimd]   { background: #0e7490; }
.med-accent--teal[b-hdjfrrcimd]   { background: #0d9488; }
.med-accent--purple[b-hdjfrrcimd] { background: #6d28d9; }
.med-accent--indigo[b-hdjfrrcimd] { background: #4338ca; }

.med-row-icon[b-hdjfrrcimd] {
    width: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.med-row-icon--calm[b-hdjfrrcimd] { color: #a7c4b3; }

.med-row-body[b-hdjfrrcimd] {
    flex: 1;
    min-width: 0;
    padding: 0.42rem 0.4rem 0.42rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.med-row-top[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.med-row-title[b-hdjfrrcimd] {
    font-size: 0.87rem;
    font-weight: 700;
    color: #0b1a10;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.med-row-date[b-hdjfrrcimd] { font-size: 0.72rem; color: #6b7280; white-space: nowrap; flex-shrink: 0; }

.med-row-bottom[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.med-badge[b-hdjfrrcimd] {
    font-size: 0.7rem;
    padding: 0.12rem 0.4rem;
    background: rgba(92, 122, 107, 0.1);
    border: 1px solid rgba(92, 122, 107, 0.2);
    border-radius: 999px;
    color: var(--nh-text-muted);
    font-weight: 600;
}

/* Spécialité : même famille que badges Suivi (vert) */
.med-badge--specialty[b-hdjfrrcimd] {
    background: var(--nh-primary-light);
    border-color: var(--nh-primary-mid);
    color: var(--nh-primary-dark);
}

.med-row-medecin[b-hdjfrrcimd] { font-size: 0.72rem; color: var(--nh-text-muted); }

.med-row-actions[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    padding: 0 0.5rem;
    gap: 0.2rem;
    opacity: 0;
    transition: opacity 150ms;
}

.med-row:hover .med-row-actions[b-hdjfrrcimd],
.med-row--selected .med-row-actions[b-hdjfrrcimd] { opacity: 1; }

.med-action-btn[b-hdjfrrcimd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid var(--nh-border);
    background: #fff;
    color: var(--nh-text-muted);
    font-size: 0.75rem;
    cursor: pointer;
    padding: 0;
    transition: background 120ms, color 120ms;
}

.med-action-btn:hover[b-hdjfrrcimd] {
    background: var(--nh-hover);
    border-color: #a7c4b3;
    color: #104a2f;
}

/* ── Panneau détail ──────────────────────────────────────────── */
.med-detail[b-hdjfrrcimd] {
    background: #fff;
    border-left: 1px solid var(--nh-border);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.med-detail-header[b-hdjfrrcimd] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0.75rem;
    border-bottom: 1px solid var(--nh-bg);
    gap: 0.5rem;
}

.med-detail-title-wrap[b-hdjfrrcimd] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    min-width: 0;
    flex: 1;
}

.med-detail-icon[b-hdjfrrcimd] {
    font-size: 1.2rem;
    color: var(--nh-primary);
    flex-shrink: 0;
    margin-top: 2px;
}

.med-detail-title[b-hdjfrrcimd] { font-size: 0.9rem; font-weight: 700; color: #0b1a10; line-height: 1.3; word-break: break-word; }
.med-detail-sub[b-hdjfrrcimd]   { font-size: 0.72rem; color: #6b7280; font-weight: 500; }

.med-detail-header-actions[b-hdjfrrcimd] { display: flex; gap: 0.2rem; flex-shrink: 0; }

.med-urgent-banner[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    background: #fef2f2;
    border-bottom: 1px solid #fecaca;
    color: #dc2626;
    padding: 0.45rem 0.75rem;
    font-size: 0.82rem;
    font-weight: 700;
}

.med-detail-fields[b-hdjfrrcimd] {
    padding: 0.6rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.med-field[b-hdjfrrcimd] { display: flex; flex-direction: column; gap: 0.12rem; }

.med-field-label[b-hdjfrrcimd] {
    font-size: 0.67rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 700;
    margin: 0;
}

.med-file-chip[b-hdjfrrcimd] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0.4rem 0.75rem 0;
    padding: 0.45rem 0.6rem;
    background: var(--nh-bg-card);
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.8rem;
    color: #1f3f2f;
    transition: background 120ms;
    min-width: 0;
}

.med-file-chip:hover[b-hdjfrrcimd] { background: var(--nh-primary-light); border-color: var(--nh-primary-mid); }
.med-file-link[b-hdjfrrcimd] { color: var(--nh-text-muted); font-size: 0.7rem; flex-shrink: 0; }

.med-muted-text[b-hdjfrrcimd] {
    color: #4b5563;
}

.med-notes-text[b-hdjfrrcimd] {
    color: #374151;
    white-space: pre-wrap;
    margin: 0;
}

.med-created-text[b-hdjfrrcimd] {
    color: #6b7280;
}

.med-urgent-toggle[b-hdjfrrcimd] {
    margin: 0.5rem 0.75rem 0.75rem;
    padding: 0.45rem 0.6rem;
    background: var(--nh-bg-card);
    border: 1px solid var(--nh-border);
    border-radius: 8px;
}

/* Toast & menu contextuel */
.med-toast[b-hdjfrrcimd] {
    position: fixed;
    bottom: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.6rem 1.1rem;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.14);
    pointer-events: none;
    white-space: nowrap;
    animation: med-toast-in-b-hdjfrrcimd 200ms ease;
}

.med-toast--success[b-hdjfrrcimd] { background: var(--nh-primary-soft); color: #166534; border: 1px solid var(--nh-primary-mid); }
.med-toast--error[b-hdjfrrcimd]   { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@keyframes med-toast-in-b-hdjfrrcimd {
    from { opacity: 0; transform: translateX(-50%) translateY(8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

.med-ctx-overlay[b-hdjfrrcimd] { position: fixed; inset: 0; z-index: 9990; }

.med-ctx-menu[b-hdjfrrcimd] {
    position: fixed; z-index: 9995;
    background: #fff; border: 1px solid var(--nh-border);
    border-radius: 10px; box-shadow: 0 8px 24px rgba(11, 26, 16, 0.12);
    padding: 0.3rem; min-width: 185px;
    animation: med-ctx-in-b-hdjfrrcimd 150ms ease;
}

@keyframes med-ctx-in-b-hdjfrrcimd { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }

.med-ctx-item[b-hdjfrrcimd] {
    display: flex; align-items: center; gap: 0.6rem;
    width: 100%; padding: 0.38rem 0.65rem;
    border: none; background: transparent; border-radius: 7px;
    font-size: 0.83rem; font-weight: 600; color: #334155;
    cursor: pointer; text-align: left; transition: background 100ms;
}

.med-ctx-item:hover[b-hdjfrrcimd]         { background: var(--nh-hover); }
.med-ctx-item--danger[b-hdjfrrcimd]       { color: #dc2626; }
.med-ctx-item--danger:hover[b-hdjfrrcimd] { background: #fef2f2; }
.med-ctx-sep[b-hdjfrrcimd] { height: 1px; background: var(--nh-bg); margin: 0.2rem 0; }
/* _content/BlazorGED/Pages/Factures.razor.rz.scp.css */
.factures-table[b-q8eivzeniz] {
    table-layout: fixed;
    width: 100%;
}

.factures-table th[b-q8eivzeniz],
.factures-table td[b-q8eivzeniz] {
    vertical-align: middle;
}

.factures-table .facture-clip[b-q8eivzeniz] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.factures-table .facture-actions[b-q8eivzeniz] {
    white-space: nowrap;
    text-align: end;
    overflow: visible;
}

.month-card[b-q8eivzeniz] {
    border: 1px solid #d8e6de;
}

.month-card-header[b-q8eivzeniz] {
    background: #ecf5f0;
    color: #173a2b;
}

.month-chip[b-q8eivzeniz] {
    background: #f2f5f4 !important;
    color: #385548 !important;
    border: 1px solid #d8e2dd;
}

.month-chip--warn[b-q8eivzeniz] {
    background: #fff2da !important;
    color: #8a5a00 !important;
    border-color: #edd49d;
}

.month-collapse-btn[b-q8eivzeniz] {
    border: 1px solid #c7d8ce;
    color: #2f5b45;
    background: #f5faf7;
}

.month-collapse-btn:hover[b-q8eivzeniz] {
    background: #e8f2ec;
    color: #234835;
}

.facture-type-icon[b-q8eivzeniz] {
    color: #2e5a45;
}

.facture-amount[b-q8eivzeniz] {
    color: #2f6d52;
}

.facture-type-badge[b-q8eivzeniz] {
    background: #eef2f7 !important;
    color: #435469 !important;
    border: 1px solid #d9e3ef;
}

.facture-row--overdue[b-q8eivzeniz] {
    background: #fff1f1;
}

.facture-row--pending[b-q8eivzeniz] {
    background: #fff8eb;
}

.facture-row--done[b-q8eivzeniz] {
    background: #eef8f1;
}

.facture-row--inprogress[b-q8eivzeniz] {
    background: #edf5ff;
}

.fact-stat-card[b-q8eivzeniz] {
    border: 1px solid #d8e6de;
}

.fact-stat-card .card-body h5[b-q8eivzeniz] {
    font-size: 0.92rem;
    font-weight: 700;
}

.fact-stat-card .card-body h3[b-q8eivzeniz] {
    font-weight: 800;
}

.fact-stat-card--primary[b-q8eivzeniz] {
    background: #e8f1ff;
    color: #1f4e8c;
}

.fact-stat-card--success[b-q8eivzeniz] {
    background: #e8f6ee;
    color: #226a46;
}

.fact-stat-card--warning[b-q8eivzeniz] {
    background: #fff4de;
    color: #8a5a00;
}

.fact-stat-card--info[b-q8eivzeniz] {
    background: #e8f7fb;
    color: #0e7490;
}

.status-pill[b-q8eivzeniz] {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    padding: 0.28rem 0.58rem;
    border: 1px solid transparent;
}

.status-pill--pending[b-q8eivzeniz] {
    background: #fff4de;
    color: #8a5a00;
    border-color: #f1d79f;
}

.status-pill--inprogress[b-q8eivzeniz] {
    background: #e8f1ff;
    color: #1f4e8c;
    border-color: #b9d2f6;
}

.status-pill--done[b-q8eivzeniz] {
    background: #e8f6ee;
    color: #226a46;
    border-color: #b9dfc9;
}

.status-pill--overdue[b-q8eivzeniz] {
    background: #fdecec;
    color: #992f2f;
    border-color: #efbcbc;
}

.status-pill--archived[b-q8eivzeniz] {
    background: #eef1f4;
    color: #566273;
    border-color: #d1d9e2;
}
/* _content/BlazorGED/Pages/Index.razor.rz.scp.css */
.upload-quick-action[b-ptlhi0vzfy] {
    border: 1px solid #d6e8de;
    background: #f8fcfa;
    border-radius: 12px;
    padding: 0.75rem;
    text-align: center;
}

.btn-add-doc[b-ptlhi0vzfy] {
    background: #1b8a5a;
    color: #fff;
    border: 1px solid #17754c;
    border-radius: 10px;
    font-weight: 700;
}

.btn-add-doc:hover[b-ptlhi0vzfy] {
    background: #17754c;
    color: #fff;
}

.section-card[b-ptlhi0vzfy] {
    border: 1px solid #d8e6de;
}

.section-card-header[b-ptlhi0vzfy] {
    background: #f1f7f4;
    color: #173a2b;
}

.section-card--pending .section-card-header[b-ptlhi0vzfy] {
    background: #fff4de;
    color: #7a4b00;
}

.section-card--progress .section-card-header[b-ptlhi0vzfy] {
    background: #eaf5ef;
    color: #1a4a34;
}

.section-metric-badge[b-ptlhi0vzfy] {
    background: #eef3f0 !important;
    color: #365548 !important;
    border: 1px solid #d5e2db;
}

.pending-row[b-ptlhi0vzfy] {
    background: #fffaf0;
}

.doc-type-icon[b-ptlhi0vzfy] {
    display: inline-grid;
    place-items: center;
    width: 1.85rem;
    height: 1.85rem;
    border-radius: 999px;
    background: #edf3ef;
    color: #35604b;
    font-size: 0.88rem;
}

.doc-category-badge[b-ptlhi0vzfy] {
    background: #eef2f7 !important;
    color: #435469 !important;
    border: 1px solid #d9e3ef;
}

.status-pill[b-ptlhi0vzfy] {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    padding: 0.28rem 0.58rem;
    border: 1px solid transparent;
}

.status-pill--pending[b-ptlhi0vzfy] {
    background: #fff4de;
    color: #8a5a00;
    border-color: #f1d79f;
}

.status-pill--inprogress[b-ptlhi0vzfy] {
    background: #e8f1ff;
    color: #1f4e8c;
    border-color: #b9d2f6;
}

.status-pill--done[b-ptlhi0vzfy] {
    background: #e8f6ee;
    color: #226a46;
    border-color: #b9dfc9;
}

.status-pill--archived[b-ptlhi0vzfy] {
    background: #eef1f4;
    color: #566273;
    border-color: #d1d9e2;
}

/* ── Extrait du <style> inline ── */
.panel-workspace[b-ptlhi0vzfy] {
        display: flex;
        gap: 8px;
        align-items: stretch;
        min-height: 68vh;
    }

    .resizable-panels[b-ptlhi0vzfy] {
        flex: 1;
        min-width: 0;
        display: flex;
        align-items: stretch;
        overflow: hidden;
    }

    .resizable-panel[b-ptlhi0vzfy] {
        min-width: 0;
    }

    .resizable-panel .card[b-ptlhi0vzfy] {
        height: 100%;
    }

    .panel-splitter[b-ptlhi0vzfy] {
        width: 8px;
        background: #e9ecef;
        border: 1px solid #d8dde3;
        border-radius: 6px;
        cursor: col-resize;
        margin: 0 4px;
    }

    .panel-toggle-rail[b-ptlhi0vzfy] {
        display: flex;
        flex-direction: column;
        gap: 6px;
        justify-content: center;
    }

    .panel-toggle-btn[b-ptlhi0vzfy] {
        width: 34px;
        min-height: 112px;
        border-radius: 8px;
        border: 1px solid #cfd4dc;
        background: #f4f6f8;
        color: #4b5563;
        font-size: 11px;
        font-weight: 700;
        writing-mode: vertical-rl;
        text-orientation: mixed;
        letter-spacing: 0.3px;
        padding: 6px 4px;
    }

    .panel-toggle-btn.is-active[b-ptlhi0vzfy] {
        background: #0d6efd;
        border-color: #0d6efd;
        color: #fff;
    }

    .context-menu-backdrop[b-ptlhi0vzfy] {
        position: fixed;
        inset: 0;
        z-index: 1040;
        background: transparent;
    }

    .context-menu-panel[b-ptlhi0vzfy] {
        position: fixed;
        z-index: 1050;
        min-width: 220px;
        border: 1px solid #d8dde3;
        border-radius: 10px;
        background: #fff;
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
        padding: 6px;
    }

    .context-menu-item[b-ptlhi0vzfy] {
        width: 100%;
        border: none;
        background: transparent;
        text-align: left;
        padding: 8px 10px;
        border-radius: 8px;
        font-size: 0.9rem;
    }

    .context-menu-item:hover[b-ptlhi0vzfy] {
        background: #f4f7fb;
    }

    .home-doc-drop-zone[b-ptlhi0vzfy] {
        min-height: 88px;
        border-radius: 8px;
        transition: background .15s, box-shadow .15s;
    }

    .home-doc-drop-zone.blazorged-drop-active[b-ptlhi0vzfy] {
        background: #eef5f1;
        box-shadow: inset 0 0 0 2px #1b8a5a;
    }

    .home-doc-drop-hint[b-ptlhi0vzfy] {
        background: #fafcfb;
    }

.home-list-card[b-ptlhi0vzfy] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.home-list-body[b-ptlhi0vzfy] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.home-list-scroll[b-ptlhi0vzfy] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

[b-ptlhi0vzfy] .dv-files-table {
    font-size: 0.82rem;
    border: none;
    margin: 0;
    table-layout: fixed;
    width: 100%;
}

[b-ptlhi0vzfy] .dv-files-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #5c7a6b;
    border-bottom: 1px solid #e4ede9 !important;
    padding: 7px 10px;
}

[b-ptlhi0vzfy] .dv-files-table tbody tr {
    cursor: pointer;
    transition: background .1s;
}

[b-ptlhi0vzfy] .dv-files-table tbody tr:hover {
    background: #f3f8f5;
}

[b-ptlhi0vzfy] .dv-row-active {
    background: #e8f5ee !important;
}

[b-ptlhi0vzfy] .dv-files-table td {
    padding: 7px 10px;
    border-color: #e4ede9 !important;
    vertical-align: middle;
}

[b-ptlhi0vzfy] .dv-cell-name {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

[b-ptlhi0vzfy] .dv-doc-icon {
    font-size: 1rem;
    color: #486a59;
    flex-shrink: 0;
}

[b-ptlhi0vzfy] .dv-doc-info {
    min-width: 0;
    flex: 1;
}

[b-ptlhi0vzfy] .dv-doc-title {
    font-weight: 600;
    color: #0b1220;
    font-size: 0.83rem;
}

[b-ptlhi0vzfy] .dv-doc-sub {
    font-size: 0.73rem;
    color: #5c7a6b;
}

[b-ptlhi0vzfy] .dv-cell-cat {
    white-space: nowrap;
}

[b-ptlhi0vzfy] .dv-cell-date {
    color: #8490a8;
    font-size: 0.78rem;
    white-space: nowrap;
}

[b-ptlhi0vzfy] .dv-cat-pill {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: .2px;
}

[b-ptlhi0vzfy] .dv-cat-facture { background: #fff3cd; color: #7c5e00; }
[b-ptlhi0vzfy] .dv-cat-medical { background: #fce7f3; color: #9d174d; }
[b-ptlhi0vzfy] .dv-cat-contrat { background: #d1fae5; color: #065f46; }
[b-ptlhi0vzfy] .dv-cat-garantie { background: #e0e7ff; color: #3730a3; }
[b-ptlhi0vzfy] .dv-cat-devis { background: #e5f6fd; color: #075985; }
[b-ptlhi0vzfy] .dv-cat-recu { background: #fef3c7; color: #92400e; }
[b-ptlhi0vzfy] .dv-cat-correspondance { background: #f3f4f6; color: #374151; }
[b-ptlhi0vzfy] .dv-cat-autres,
[b-ptlhi0vzfy] .dv-cat-default { background: #f3f4f6; color: #6b7280; }

.dv-panel-header[b-ptlhi0vzfy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid #e8edf3;
    background: #f8fafc;
    flex-shrink: 0;
    min-height: 48px;
}

.dv-panel-title[b-ptlhi0vzfy] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0b1220;
}

.dv-empty-state[b-ptlhi0vzfy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 40px 24px;
    text-align: center;
    flex: 1;
}

.dv-empty-title[b-ptlhi0vzfy] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #374151;
    margin: 8px 0 2px;
}

.dv-empty-sub[b-ptlhi0vzfy] {
    font-size: 0.82rem;
    color: #8490a8;
    max-width: 240px;
    margin: 0;
    line-height: 1.5;
}
/* _content/BlazorGED/Pages/ReconciliationBancaire.razor.rz.scp.css */
.rb-root[b-bpqpjf1ttv] {
    padding: 1rem 1.25rem 2rem;
    max-width: 1200px;
}

.rb-header[b-bpqpjf1ttv] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.rb-title[b-bpqpjf1ttv] {
    font-size: 1.15rem;
    font-weight: 800;
    margin: 0;
}

.rb-sub[b-bpqpjf1ttv] {
    margin: 0.25rem 0 0;
    color: #64748b;
    font-size: 0.85rem;
}

.rb-card[b-bpqpjf1ttv] {
    background: #fff;
    border: 1px solid #dce8e2;
    border-radius: 10px;
    padding: 1rem;
    margin-bottom: 1rem;
}

.rb-card-title[b-bpqpjf1ttv] {
    font-size: 0.95rem;
    font-weight: 700;
    margin: 0 0 0.75rem;
}

.rb-import-grid[b-bpqpjf1ttv] {
    display: grid;
    grid-template-columns: 140px 1fr 1fr auto;
    gap: 0.75rem;
    align-items: end;
}

.rb-workspace[b-bpqpjf1ttv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.rb-list-head[b-bpqpjf1ttv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.rb-filter[b-bpqpjf1ttv] { width: 180px; }

.rb-tx[b-bpqpjf1ttv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    padding: 0.55rem 0.65rem;
    margin-bottom: 4px;
    background: #fff;
    text-align: left;
    cursor: pointer;
    transition: border-color 120ms, background 120ms;
}

.rb-tx:hover[b-bpqpjf1ttv] { border-color: #a7c4b3; background: #f8fbf9; }
.rb-tx--selected[b-bpqpjf1ttv] { border-color: #86efac; background: #f0fdf4; }

.rb-tx-main[b-bpqpjf1ttv] { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.rb-tx-date[b-bpqpjf1ttv] { font-size: 0.72rem; color: #94a3b8; }
.rb-tx-desc[b-bpqpjf1ttv] { font-size: 0.84rem; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.rb-tx-amount[b-bpqpjf1ttv] { font-size: 0.88rem; font-weight: 800; white-space: nowrap; }
.rb-tx-amount--debit[b-bpqpjf1ttv] { color: #dc2626; }
.rb-tx-amount--credit[b-bpqpjf1ttv] { color: #16a34a; }

.rb-detail-grid[b-bpqpjf1ttv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem 0.75rem;
    margin-bottom: 0.75rem;
}

.rb-detail-full[b-bpqpjf1ttv] { grid-column: 1 / -1; }
.rb-lbl[b-bpqpjf1ttv] { display: block; font-size: 0.65rem; text-transform: uppercase; color: #94a3b8; font-weight: 700; }

.rb-actions[b-bpqpjf1ttv] { display: flex; gap: 0.5rem; margin-bottom: 1rem; }
.rb-section-title[b-bpqpjf1ttv] { font-size: 0.82rem; font-weight: 700; margin: 0.75rem 0 0.4rem; color: #334155; }

.rb-suggestion[b-bpqpjf1ttv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.rb-toast[b-bpqpjf1ttv] {
    position: fixed;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    padding: 0.55rem 1rem;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
}

.rb-toast--ok[b-bpqpjf1ttv] { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.rb-toast--error[b-bpqpjf1ttv] { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@media (max-width: 900px) {
    .rb-import-grid[b-bpqpjf1ttv] { grid-template-columns: 1fr 1fr; }
    .rb-workspace[b-bpqpjf1ttv] { grid-template-columns: 1fr; }
}
/* _content/BlazorGED/Pages/SuiviDepenses.razor.rz.scp.css */
/* ================================================================
   SuiviDepenses.razor.css — même palette exacte que SuiviPaiements
   ================================================================ */

:root[b-l4y4jzt2n4] {
    --nh-primary:       #1b8a5a;
    --nh-primary-dark:  #166534;
    --nh-primary-light: #dff0e6;
    --nh-primary-mid:   #bbf7d0;
    --nh-primary-soft:  #f0fdf4;
    --nh-bg:            #f4f7f6;
    --nh-bg-card:       #f8fbf9;
    --nh-border:        #dce8e2;
    --nh-text:          #104a2f;
    --nh-text-muted:    #5c7a6b;
    --nh-hover:         #eaf3ee;
}

/* ── Root ─────────────────────────────────────────────────── */
.sd-root[b-l4y4jzt2n4] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 56px);
    overflow: hidden;
    background: var(--nh-bg);
    font-family: 'Inter', system-ui, sans-serif;
}

.sd-period-hint[b-l4y4jzt2n4] {
    margin: 0.35rem 1rem 0;
    padding: 0.45rem 0.75rem;
    font-size: 0.8rem;
    color: #92400e;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 8px;
}

/* ── Header ───────────────────────────────────────────────── */
.sd-header[b-l4y4jzt2n4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--nh-border);
    flex-shrink: 0;
}
.sd-header-left[b-l4y4jzt2n4]  { display: flex; align-items: center; gap: 0.65rem; }
.sd-header-icon[b-l4y4jzt2n4]  { font-size: 1.25rem; color: var(--nh-primary); opacity: 0.9; }
.sd-header-title[b-l4y4jzt2n4] { margin: 0; font-size: 1.05rem; font-weight: 800; color: #0b1a10; line-height: 1.2; }
.sd-header-sub[b-l4y4jzt2n4]   { font-size: 0.78rem; color: var(--nh-text-muted); font-weight: 500; }
.sd-header-right[b-l4y4jzt2n4] { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; }

/* ── Workspace ────────────────────────────────────────────── */
.sd-workspace[b-l4y4jzt2n4] {
    display: grid;
    grid-template-columns: 230px 1fr;
    flex: 1;
    overflow: hidden;
}

/* ── Sidebar ──────────────────────────────────────────────── */
.sd-sidebar[b-l4y4jzt2n4] {
    background: var(--nh-bg-card);
    border-right: 1px solid var(--nh-border);
    overflow-y: auto;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

/* Stats 2×1 */
.sd-stats-grid[b-l4y4jzt2n4] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem;
}
.sd-stat[b-l4y4jzt2n4] {
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    padding: 0.4rem 0.55rem;
    text-align: center;
}
.sd-stat-num[b-l4y4jzt2n4]   { font-size: 1.25rem; font-weight: 800; color: #0b1a10; line-height: 1.1; }
.sd-stat-label[b-l4y4jzt2n4] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--nh-text-muted); font-weight: 600; }
.sd-stat--success .sd-stat-num[b-l4y4jzt2n4] { color: #16a34a; }
.sd-stat--danger  .sd-stat-num[b-l4y4jzt2n4] { color: #dc2626; }

/* Amount card (couleurs hardcodées pour Blazor isolated CSS) */
.sd-amount-card[b-l4y4jzt2n4] {
    background: linear-gradient(135deg, #166534 0%, #1b8a5a 100%);
    border-radius: 10px;
    padding: 0.6rem 0.75rem;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}
.sd-amount-label[b-l4y4jzt2n4] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.9; font-weight: 600; color: #ffffff; }
.sd-amount-value[b-l4y4jzt2n4] { font-size: 1.15rem; font-weight: 800; line-height: 1.1; color: #ffffff; }
.sd-amount-sub[b-l4y4jzt2n4]   { font-size: 0.72rem; opacity: 0.9; color: #ffffff; }

/* Filter sections */
.sd-filter-section[b-l4y4jzt2n4] { display: flex; flex-direction: column; gap: 0.2rem; }
.sd-filter-label[b-l4y4jzt2n4] {
    font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--nh-text-muted); font-weight: 700; margin: 0 0 0.15rem 0;
}

/* "Tous" chip */
.sd-chip[b-l4y4jzt2n4] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.28rem 0.55rem;
    border-radius: 7px; border: 1px solid transparent;
    background: transparent;
    font-size: 0.82rem; font-weight: 600; color: #334155;
    cursor: pointer; transition: background 120ms, border-color 120ms;
    text-align: left; width: 100%;
}
.sd-chip:hover[b-l4y4jzt2n4]    { background: var(--nh-hover); border-color: var(--nh-border); }
.sd-chip--active[b-l4y4jzt2n4]  { background: var(--nh-primary-light); border-color: var(--nh-primary-mid); color: var(--nh-primary-dark); }
.sd-chip-count[b-l4y4jzt2n4] {
    font-size: 0.72rem;
    background: rgba(92, 122, 107, 0.12);
    border-radius: 999px; padding: 0.1rem 0.45rem;
    font-weight: 700; color: var(--nh-text-muted);
}
.sd-chip--active .sd-chip-count[b-l4y4jzt2n4] { background: rgba(27, 138, 90, 0.15); color: var(--nh-primary-dark); }

/* Poste items */
.sd-poste-item[b-l4y4jzt2n4] {
    display: flex; flex-direction: column; gap: 4px;
    padding: 0.5rem 0.6rem;
    border-radius: 8px; border: 1px solid transparent;
    background: transparent;
    cursor: pointer; transition: background 120ms, border-color 120ms;
    text-align: left; width: 100%;
}
.sd-poste-item:hover[b-l4y4jzt2n4]   { background: var(--nh-hover); border-color: var(--nh-border); }
.sd-poste-item--active[b-l4y4jzt2n4] { background: var(--nh-primary-light); border-color: var(--nh-primary-mid); }
.sd-poste-top[b-l4y4jzt2n4] { display: flex; align-items: center; justify-content: space-between; gap: 0.3rem; }
.sd-poste-name[b-l4y4jzt2n4]  { font-size: 0.81rem; font-weight: 700; color: #0b1a10; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; }
.sd-poste-count[b-l4y4jzt2n4] {
    font-size: 0.65rem; font-weight: 700;
    background: rgba(92, 122, 107, 0.12);
    border-radius: 999px; padding: 1px 6px;
    color: var(--nh-text-muted); flex-shrink: 0;
}
.sd-poste-item--active .sd-poste-count[b-l4y4jzt2n4] { background: rgba(27, 138, 90, 0.15); color: var(--nh-primary-dark); }
.sd-poste-amounts[b-l4y4jzt2n4] { display: flex; align-items: baseline; gap: 3px; }
.sd-poste-spent[b-l4y4jzt2n4]  { font-size: 0.82rem; font-weight: 800; color: var(--nh-primary-dark); }
.sd-poste-spent--over[b-l4y4jzt2n4] { color: #dc2626 !important; }
.sd-poste-budget[b-l4y4jzt2n4] { font-size: 0.7rem; color: var(--nh-text-muted); }

/* Progress bar */
.sd-progress-bar[b-l4y4jzt2n4]  { height: 4px; background: var(--nh-border); border-radius: 4px; overflow: hidden; }
.sd-progress-fill[b-l4y4jzt2n4] { height: 100%; background: var(--nh-primary); border-radius: 4px; transition: width .3s; }
.sd-progress-fill--over[b-l4y4jzt2n4] { background: #ef4444; }

/* ── Main ─────────────────────────────────────────────────── */
.sd-main[b-l4y4jzt2n4] {
    overflow-y: auto;
    background: var(--nh-bg);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.sd-loading[b-l4y4jzt2n4] { display: flex; align-items: center; justify-content: center; flex: 1; padding: 3rem; }
.sd-content-header[b-l4y4jzt2n4] {
    display: flex; align-items: baseline; justify-content: space-between;
    padding-bottom: 0.5rem; border-bottom: 1px solid var(--nh-border);
}
.sd-content-title[b-l4y4jzt2n4] { font-size: 0.9rem; font-weight: 700; margin: 0; color: var(--nh-text); }
.sd-content-count[b-l4y4jzt2n4] { font-size: 0.75rem; color: var(--nh-text-muted); font-weight: 500; }

/* Ticket list */
.sd-ticket-list[b-l4y4jzt2n4] { display: flex; flex-direction: column; gap: 2px; }
.sd-ticket-row[b-l4y4jzt2n4] {
    display: flex; align-items: center; gap: 0.65rem;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    padding: 0.42rem 0.7rem;
    transition: box-shadow 120ms, border-color 120ms;
}
.sd-ticket-row:hover[b-l4y4jzt2n4] { box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07); border-color: #a7c4b3; }

/* Date stamp */
.sd-ticket-date[b-l4y4jzt2n4] {
    display: flex; flex-direction: column; align-items: center;
    min-width: 32px;
    background: var(--nh-primary-light);
    border: 1px solid var(--nh-primary-mid);
    border-radius: 7px; padding: 3px 5px;
}
.sd-date-day[b-l4y4jzt2n4] { font-size: 0.88rem; font-weight: 800; color: #0b1a10; line-height: 1; }
.sd-date-mon[b-l4y4jzt2n4] { font-size: 0.57rem; text-transform: uppercase; color: var(--nh-primary-dark); font-weight: 700; letter-spacing: .03em; }

/* Body */
.sd-ticket-body[b-l4y4jzt2n4] { flex: 1; min-width: 0; }
.sd-ticket-title[b-l4y4jzt2n4] { font-size: 0.84rem; font-weight: 700; color: #0b1a10; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sd-ticket-meta[b-l4y4jzt2n4]  { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; margin-top: 1px; }
.sd-ticket-poste[b-l4y4jzt2n4] {
    font-size: 0.68rem;
    background: rgba(92, 122, 107, 0.1);
    border: 1px solid rgba(92, 122, 107, 0.2);
    border-radius: 999px; padding: 0.1rem 0.4rem;
    color: var(--nh-text-muted); font-weight: 600;
}
.sd-ticket-member[b-l4y4jzt2n4] { font-size: 0.7rem; color: var(--nh-text-muted); display: flex; align-items: center; gap: 3px; }

/* Amount & actions */
.sd-ticket-amount[b-l4y4jzt2n4]  { font-size: 0.88rem; font-weight: 700; white-space: nowrap; color: #334155; min-width: 90px; text-align: right; }
.sd-ticket-actions[b-l4y4jzt2n4] { display: flex; gap: 4px; flex-shrink: 0; }
.sd-action-btn[b-l4y4jzt2n4] {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 7px;
    border: 1px solid var(--nh-border); background: #fff;
    color: var(--nh-text-muted); font-size: 0.75rem;
    cursor: pointer; transition: background 120ms, border-color 120ms, color 120ms;
    padding: 0; text-decoration: none;
}
.sd-action-btn:hover[b-l4y4jzt2n4] { background: var(--nh-hover); border-color: #a7c4b3; color: var(--nh-text); }
.sd-action-btn--del:hover[b-l4y4jzt2n4] { background: #fef2f2; border-color: #fecaca; color: #dc2626; }

/* Empty */
.sd-empty[b-l4y4jzt2n4] {
    display: flex; flex-direction: column; align-items: center;
    gap: 0.5rem; padding: 3rem; color: var(--nh-text-muted); text-align: center;
}
.sd-empty i[b-l4y4jzt2n4]    { font-size: 3rem; color: #a7c4b3; }
.sd-empty span[b-l4y4jzt2n4] { font-size: 0.85rem; line-height: 1.5; }

/* ── Modal ────────────────────────────────────────────────── */
.sd-modal-overlay[b-l4y4jzt2n4] {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.4);
    display: flex; align-items: center; justify-content: center;
    z-index: 1050;
}
.sd-modal-box[b-l4y4jzt2n4] {
    background: #fff; border-radius: 12px;
    width: 460px; max-width: 96vw;
    box-shadow: 0 16px 48px rgba(11, 26, 16, 0.18);
    display: flex; flex-direction: column; max-height: 90vh;
}
.sd-modal-header[b-l4y4jzt2n4] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.85rem 1rem 0.7rem; border-bottom: 1px solid var(--nh-border);
}
.sd-modal-title[b-l4y4jzt2n4] { margin: 0; font-size: 0.88rem; font-weight: 700; color: #0b1a10; display: flex; align-items: center; gap: 0.4rem; }
.sd-modal-title i[b-l4y4jzt2n4] { color: var(--nh-primary); }
.sd-modal-close[b-l4y4jzt2n4] { border: none; background: none; font-size: 0.85rem; color: var(--nh-text-muted); cursor: pointer; }
.sd-modal-body[b-l4y4jzt2n4]  { padding: 0.9rem 1rem; overflow-y: auto; flex: 1; }
.sd-modal-footer[b-l4y4jzt2n4] {
    display: flex; gap: 0.5rem; align-items: center;
    padding: 0.65rem 1rem; border-top: 1px solid var(--nh-border);
}

.sd-form-grid[b-l4y4jzt2n4] { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
.sd-field[b-l4y4jzt2n4] { display: flex; flex-direction: column; gap: 3px; }
.sd-field--full[b-l4y4jzt2n4] { grid-column: 1 / -1; }
.sd-field-label[b-l4y4jzt2n4] { font-size: 0.67rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--nh-text-muted); }

/* ── Toast ────────────────────────────────────────────────── */
.sd-toast[b-l4y4jzt2n4] {
    position: fixed; bottom: 1.25rem; left: 50%; transform: translateX(-50%);
    z-index: 9999;
    display: flex; align-items: center; gap: 0.55rem;
    padding: 0.6rem 1.1rem; border-radius: 10px;
    font-size: 0.875rem; font-weight: 600;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.14);
    animation: sd-toast-in-b-l4y4jzt2n4 200ms ease;
    white-space: nowrap; pointer-events: none;
}
.sd-toast--success[b-l4y4jzt2n4] { background: var(--nh-primary-soft); color: var(--nh-primary-dark); border: 1px solid var(--nh-primary-mid); }
.sd-toast--error[b-l4y4jzt2n4]   { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@keyframes sd-toast-in-b-l4y4jzt2n4 {
    from { opacity: 0; transform: translateX(-50%) translateY(8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}
/* _content/BlazorGED/Pages/SuiviPaiements.razor.rz.scp.css */
/* ================================================================
   SuiviPaiements — page-scoped styles (palette verte NexoHub)
   ================================================================ */

/* ── Variables palette verte ─────────────────────────────────── */
:root[b-kskutwt4p9] {
    --nh-primary:       #1b8a5a;
    --nh-primary-dark:  #166534;
    --nh-primary-light: #dff0e6;
    --nh-primary-mid:   #bbf7d0;
    --nh-primary-soft:  #f0fdf4;
    --nh-bg:            #f4f7f6;
    --nh-bg-card:       #f8fbf9;
    --nh-border:        #dce8e2;
    --nh-text:          #104a2f;
    --nh-text-muted:    #5c7a6b;
    --nh-hover:         #eaf3ee;
}

/* ── Tab bar ──────────────────────────────────────────────────── */
.sp-tabbar[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    background: #fff;
    border-bottom: 1px solid var(--nh-border);
    padding: 0.35rem 0.75rem;
    flex-shrink: 0;
}

.sp-tab[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.5rem 0.85rem;
    border: none;
    border: 1px solid transparent;
    border-radius: 999px;
    background: #f8fafc;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--nh-text-muted);
    cursor: pointer;
    transition: color 120ms, border-color 120ms, background 120ms;
}

.sp-tab:hover[b-kskutwt4p9] {
    color: var(--nh-text);
    border-color: var(--nh-border);
}

.sp-tab--active[b-kskutwt4p9] {
    color: #ffffff;
    border-color: #1b8a5a;
    background: #1b8a5a;
}

/* ── Root layout ──────────────────────────────────────────────── */
.sp-root[b-kskutwt4p9] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 56px);
    overflow: hidden;
    background: var(--nh-bg);
}

/* ── Header ───────────────────────────────────────────────────── */
.sp-header[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--nh-border);
    flex-shrink: 0;
}

.sp-header-left[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

.sp-header-icon[b-kskutwt4p9] {
    font-size: 1.25rem;
    color: var(--nh-primary);
    opacity: 0.9;
}

.sp-header-title[b-kskutwt4p9] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
    color: #0b1a10;
    line-height: 1.2;
}

.sp-header-sub[b-kskutwt4p9] {
    font-size: 0.78rem;
    color: var(--nh-text-muted);
    font-weight: 500;
}

.sp-header-actions[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

/* Search in header */
.sp-search-wrap[b-kskutwt4p9] {
    position: relative;
    display: flex;
    align-items: center;
}

.sp-search-icon[b-kskutwt4p9] {
    position: absolute;
    left: 0.6rem;
    color: #94a3b8;
    font-size: 0.8rem;
    pointer-events: none;
}

.sp-search-input[b-kskutwt4p9] {
    padding: 0.3rem 0.7rem 0.3rem 1.9rem;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    font-size: 0.875rem;
    width: 220px;
    background: var(--nh-bg-card);
    color: var(--nh-text);
    outline: none;
    transition: border-color 150ms, box-shadow 150ms;
}

.sp-search-input:focus[b-kskutwt4p9] {
    border-color: #86efac;
    box-shadow: 0 0 0 3px rgba(27, 138, 90, 0.12);
    background: #fff;
}

/* ── PAIN.001 bar ─────────────────────────────────────────────── */
.sp-pain-bar[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 1rem;
    background: var(--nh-primary-soft);
    border-bottom: 1px solid var(--nh-primary-mid);
    flex-shrink: 0;
    font-size: 0.875rem;
}

.sp-date[b-kskutwt4p9] { width: 150px; }

/* ── Workspace (3-col grid) ───────────────────────────────────── */
.sp-workspace[b-kskutwt4p9] {
    display: grid;
    grid-template-columns: 230px 1fr;
    flex: 1;
    overflow: hidden;
}

.sp-workspace.sp-workspace--detail[b-kskutwt4p9] {
    grid-template-columns: 230px 1fr 320px;
}

.sp-ordres-panel[b-kskutwt4p9] {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* ── Left sidebar ─────────────────────────────────────────────── */
.sp-sidebar[b-kskutwt4p9] {
    background: var(--nh-bg-card);
    border-right: 1px solid var(--nh-border);
    overflow-y: auto;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

/* Stats grid */
.sp-stats-caption[b-kskutwt4p9] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--nh-text-muted);
    margin: 0;
    line-height: 1.35;
}

.sp-stats-grid[b-kskutwt4p9] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem;
}

.sp-stat[b-kskutwt4p9] {
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    padding: 0.4rem 0.55rem;
    text-align: center;
}

.sp-stat-num[b-kskutwt4p9] {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0b1a10;
    line-height: 1.1;
}

.sp-stat-label[b-kskutwt4p9] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 600;
}

.sp-stat--success .sp-stat-num[b-kskutwt4p9] { color: #16a34a; }
.sp-stat--danger  .sp-stat-num[b-kskutwt4p9] { color: #dc2626; }
.sp-stat--warning .sp-stat-num[b-kskutwt4p9] { color: #d97706; }

/* Amount card */
.sp-amount-card[b-kskutwt4p9] {
    /* Couleurs hardcodées: évite le bug de variables CSS sur certains clients */
    background: linear-gradient(135deg, #166534 0%, #1b8a5a 100%);
    border-radius: 10px;
    padding: 0.6rem 0.75rem;
    color: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.sp-amount-label[b-kskutwt4p9] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    opacity: 0.9;
    font-weight: 600;
    color: #ffffff;
}

.sp-amount-value[b-kskutwt4p9] {
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.1;
    color: #ffffff;
}

.sp-amount-sub[b-kskutwt4p9] {
    font-size: 0.72rem;
    opacity: 0.9;
    color: #ffffff;
}

/* Filter sections */
.sp-filter-section[b-kskutwt4p9] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.sp-filter-label[b-kskutwt4p9] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 700;
    margin: 0 0 0.15rem 0;
}

.sp-chip[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.28rem 0.55rem;
    border-radius: 7px;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.82rem;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    transition: background 120ms, border-color 120ms;
    text-align: left;
}

.sp-chip:hover[b-kskutwt4p9] {
    background: var(--nh-hover);
    border-color: var(--nh-border);
}

.sp-chip--active[b-kskutwt4p9] {
    background: var(--nh-primary-light);
    border-color: var(--nh-primary-mid);
    color: var(--nh-primary-dark);
}

.sp-chip--danger.sp-chip--active[b-kskutwt4p9]  { background: #fef2f2; border-color: #fecaca; color: #dc2626; }
.sp-chip--success.sp-chip--active[b-kskutwt4p9] { background: var(--nh-primary-soft); border-color: var(--nh-primary-mid); color: var(--nh-primary-dark); }
.sp-chip--warning.sp-chip--active[b-kskutwt4p9] { background: #fffbeb; border-color: #fde68a; color: #d97706; }
.sp-chip--info.sp-chip--active[b-kskutwt4p9]    { background: var(--nh-primary-light); border-color: var(--nh-primary-mid); color: var(--nh-primary); }

.sp-chip-count[b-kskutwt4p9] {
    font-size: 0.72rem;
    background: rgba(92, 122, 107, 0.12);
    border-radius: 999px;
    padding: 0.1rem 0.45rem;
    font-weight: 700;
    color: var(--nh-text-muted);
}

.sp-chip--active .sp-chip-count[b-kskutwt4p9] { background: rgba(27, 138, 90, 0.15); color: var(--nh-primary-dark); }

/* Selection info */
.sp-selection-info[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    background: var(--nh-primary-light);
    border: 1px solid var(--nh-primary-mid);
    border-radius: 8px;
    padding: 0.35rem 0.55rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--nh-primary-dark);
}

/* ── Center list ──────────────────────────────────────────────── */
.sp-list[b-kskutwt4p9] {
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    background: var(--nh-bg);
    padding: 0.5rem;
    gap: 0.15rem;
}

.sp-loading[b-kskutwt4p9],
.sp-empty[b-kskutwt4p9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
}

.sp-empty-icon[b-kskutwt4p9] {
    font-size: 3rem;
    color: #a7c4b3;
    margin-bottom: 1rem;
}

/* Month group */
.sp-month-group[b-kskutwt4p9] {
    display: flex;
    flex-direction: column;
    margin-bottom: 0.25rem;
}

.sp-month-header[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.6rem;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    border-radius: 7px;
    transition: background 120ms;
    width: 100%;
}

.sp-month-header:hover[b-kskutwt4p9] { background: var(--nh-hover); }

.sp-month-chevron[b-kskutwt4p9] {
    font-size: 0.7rem;
    color: var(--nh-text-muted);
    width: 14px;
    flex-shrink: 0;
}

.sp-month-name[b-kskutwt4p9] {
    font-size: 0.83rem;
    font-weight: 700;
    color: var(--nh-text);
    text-transform: capitalize;
    flex: 1;
}

.sp-month-chips[b-kskutwt4p9] {
    display: flex;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.sp-mchip[b-kskutwt4p9] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.45rem;
    border-radius: 999px;
    background: rgba(92, 122, 107, 0.1);
    color: var(--nh-text-muted);
    border: 1px solid rgba(92, 122, 107, 0.18);
}

.sp-mchip--danger[b-kskutwt4p9]  { background: #fef2f2; color: #dc2626; border-color: #fecaca; }
.sp-mchip--amount[b-kskutwt4p9]  { background: var(--nh-primary-light); color: var(--nh-primary-dark); border-color: var(--nh-primary-mid); }

/* Invoice row */
.sp-invoice-row[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 10px;
    margin-left: 1rem;
    margin-bottom: 6px;
    cursor: pointer;
    transition: box-shadow 120ms, border-color 120ms, background 120ms;
    overflow: hidden;
    position: relative;
    min-height: 62px;
}

.sp-invoice-row:hover[b-kskutwt4p9] {
    box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07);
    border-color: #a7c4b3;
}

.sp-invoice-row--selected[b-kskutwt4p9] {
    background: var(--nh-primary-soft);
    border-color: #86efac;
    box-shadow: 0 0 0 2px rgba(27, 138, 90, 0.12);
}

.sp-invoice-row--paid[b-kskutwt4p9] { opacity: 0.8; }

/* Accent strip */
.sp-row-accent[b-kskutwt4p9] { width: 3px; align-self: stretch; flex-shrink: 0; border-radius: 0; }
.sp-accent--red[b-kskutwt4p9]    { background: #ef4444; }
.sp-accent--orange[b-kskutwt4p9] { background: #f59e0b; }
.sp-accent--blue[b-kskutwt4p9]   { background: #3b82f6; }
.sp-accent--green[b-kskutwt4p9]  { background: var(--nh-primary); }
.sp-accent--gray[b-kskutwt4p9]   { background: #b0c4ba; }

/* Row checkbox */
.sp-row-check[b-kskutwt4p9] {
    margin: 0 0.4rem 0 0.55rem;
    flex-shrink: 0;
    accent-color: var(--nh-primary);
    cursor: pointer;
}

/* Row body */
.sp-row-body[b-kskutwt4p9] {
    flex: 1;
    min-width: 0;
    padding: 0.7rem 0.85rem 0.7rem 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.38rem;
}

.sp-row-top[b-kskutwt4p9] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.sp-row-title[b-kskutwt4p9] {
    font-size: 0.92rem;
    font-weight: 700;
    color: #0b1a10;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    line-height: 1.35;
    letter-spacing: -0.01em;
}

.sp-row-amount[b-kskutwt4p9] {
    font-size: 0.94rem;
    font-weight: 800;
    color: #334155;
    white-space: nowrap;
    flex-shrink: 0;
    line-height: 1.35;
    font-variant-numeric: tabular-nums;
}

.sp-row-amount--red[b-kskutwt4p9]   { color: #dc2626; }
.sp-row-amount--green[b-kskutwt4p9] { color: var(--nh-primary-dark); }

.sp-row-bottom[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    flex-wrap: wrap;
    line-height: 1.4;
}

.sp-row-creancier[b-kskutwt4p9] {
    font-size: 0.78rem;
    color: var(--nh-text-muted);
    font-weight: 600;
}

.sp-row-creancier i[b-kskutwt4p9] { opacity: 0.75; }

.sp-row-date[b-kskutwt4p9] {
    font-size: 0.76rem;
    color: #94a3b8;
    font-weight: 500;
}

.sp-row-date i[b-kskutwt4p9] { opacity: 0.7; }

.sp-type-badge[b-kskutwt4p9] {
    font-size: 0.72rem;
    padding: 0.18rem 0.5rem;
    background: rgba(92, 122, 107, 0.1);
    border: 1px solid rgba(92, 122, 107, 0.2);
    border-radius: 999px;
    color: var(--nh-text-muted);
    font-weight: 600;
    line-height: 1.2;
}

.sp-due-ok[b-kskutwt4p9]   { font-size: 0.74rem; color: var(--nh-primary-dark); font-weight: 600; }
.sp-due-late[b-kskutwt4p9] { font-size: 0.74rem; color: #dc2626; font-weight: 600; }

/* Row actions */
.sp-row-actions[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0 0.75rem;
    opacity: 0;
    transition: opacity 150ms;
    flex-shrink: 0;
}

.sp-invoice-row:hover .sp-row-actions[b-kskutwt4p9],
.sp-invoice-row--selected .sp-row-actions[b-kskutwt4p9] { opacity: 1; }

.sp-action-btn[b-kskutwt4p9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid var(--nh-border);
    background: #fff;
    color: var(--nh-text-muted);
    font-size: 0.75rem;
    cursor: pointer;
    transition: background 120ms, border-color 120ms, color 120ms;
    padding: 0;
}

.sp-action-btn:hover[b-kskutwt4p9] {
    background: var(--nh-hover);
    border-color: #a7c4b3;
    color: var(--nh-text);
}

.sp-action-btn--success[b-kskutwt4p9]       { color: #16a34a; border-color: rgba(34, 197, 94, 0.35); }
.sp-action-btn--success:hover[b-kskutwt4p9] { background: var(--nh-primary-soft); border-color: #86efac; }

/* ── Right detail panel ───────────────────────────────────────── */
.sp-detail[b-kskutwt4p9] {
    background: #fff;
    border-left: 1px solid var(--nh-border);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.sp-detail-header[b-kskutwt4p9] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0.75rem;
    border-bottom: 1px solid var(--nh-bg-card);
    gap: 0.5rem;
}

.sp-detail-title-wrap[b-kskutwt4p9] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    min-width: 0;
    flex: 1;
}

.sp-detail-docicon[b-kskutwt4p9] {
    font-size: 1.25rem;
    color: var(--nh-primary);
    opacity: 0.85;
    flex-shrink: 0;
    margin-top: 2px;
}

.sp-detail-title[b-kskutwt4p9] {
    font-size: 0.9rem;
    font-weight: 700;
    color: #0b1a10;
    line-height: 1.3;
    word-break: break-word;
}

.sp-detail-sub[b-kskutwt4p9] {
    font-size: 0.72rem;
    color: #94a3b8;
    font-weight: 500;
}

.sp-detail-header-actions[b-kskutwt4p9] {
    display: flex;
    gap: 0.2rem;
    flex-shrink: 0;
}

/* Quick actions */
.sp-quick-actions[b-kskutwt4p9] {
    padding: 0.65rem 0.75rem;
    border-bottom: 1px solid var(--nh-bg-card);
}

.sp-paid-banner[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    background: var(--nh-primary-soft);
    border: 1px solid var(--nh-primary-mid);
    color: var(--nh-primary-dark);
    border-radius: 8px;
    padding: 0.45rem 0.65rem;
    font-size: 0.82rem;
    font-weight: 700;
}

/* Fields */
.sp-detail-fields[b-kskutwt4p9] {
    padding: 0.5rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.sp-field[b-kskutwt4p9] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.sp-field-label[b-kskutwt4p9] {
    font-size: 0.67rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--nh-text-muted);
    font-weight: 700;
    margin: 0;
}

.sp-field-amount[b-kskutwt4p9] {
    font-size: 1.1rem;
    font-weight: 800;
    color: #0b1a10;
}

.sp-iban[b-kskutwt4p9] {
    font-size: 0.75rem;
    background: var(--nh-bg-card);
    border: 1px solid var(--nh-border);
    border-radius: 6px;
    padding: 0.2rem 0.45rem;
    color: var(--nh-text);
    word-break: break-all;
}

/* File chip */
.sp-file-chip[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0.5rem 0.75rem 0.75rem;
    padding: 0.45rem 0.6rem;
    background: var(--nh-bg-card);
    border: 1px solid var(--nh-border);
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.8rem;
    color: var(--nh-text);
    transition: background 120ms;
    min-width: 0;
}

.sp-file-chip:hover[b-kskutwt4p9] { background: var(--nh-primary-soft); border-color: var(--nh-primary-mid); }
.sp-file-chip-link[b-kskutwt4p9]  { color: var(--nh-text-muted); font-size: 0.7rem; flex-shrink: 0; }

/* ── Toast ────────────────────────────────────────────────────── */
.sp-toast[b-kskutwt4p9] {
    position: fixed;
    bottom: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.6rem 1.1rem;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.14);
    animation: sp-toast-in-b-kskutwt4p9 200ms ease;
    white-space: nowrap;
    pointer-events: none;
}

.sp-toast--success[b-kskutwt4p9] { background: var(--nh-primary-soft); color: var(--nh-primary-dark); border: 1px solid var(--nh-primary-mid); }
.sp-toast--error[b-kskutwt4p9]   { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@keyframes sp-toast-in-b-kskutwt4p9 {
    from { opacity: 0; transform: translateX(-50%) translateY(8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* ── Context menu ─────────────────────────────────────────────── */
.sp-ctx-overlay[b-kskutwt4p9] { position: fixed; inset: 0; z-index: 9990; }

.sp-ctx-menu[b-kskutwt4p9] {
    position: fixed;
    z-index: 9995;
    background: #fff;
    border: 1px solid var(--nh-border);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.12);
    padding: 0.3rem;
    min-width: 185px;
    animation: sp-ctx-in-b-kskutwt4p9 150ms ease;
}

@keyframes sp-ctx-in-b-kskutwt4p9 {
    from { opacity: 0; transform: scale(0.96); }
    to   { opacity: 1; transform: scale(1); }
}

.sp-ctx-item[b-kskutwt4p9] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    padding: 0.38rem 0.65rem;
    border: none;
    background: transparent;
    border-radius: 7px;
    font-size: 0.83rem;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    text-align: left;
    transition: background 100ms;
}

.sp-ctx-item:hover[b-kskutwt4p9]         { background: var(--nh-hover); }
.sp-ctx-item--success[b-kskutwt4p9]      { color: var(--nh-primary-dark); }
.sp-ctx-item--danger[b-kskutwt4p9]       { color: #dc2626; }
.sp-ctx-item--danger:hover[b-kskutwt4p9] { background: #fef2f2; }
.sp-ctx-sep[b-kskutwt4p9] { height: 1px; background: var(--nh-bg-card); margin: 0.2rem 0; }
/* _content/BlazorGED/Shared/BudgetPlanBar.razor.rz.scp.css */
/* ── BudgetPlanBar ─────────────────────────────────────────── */

.bpb-bar[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    padding: 0.5rem 0 0.75rem;
}

.bpb-chip-wrap[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    gap: 2px;
}

.bpb-edit-btn[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border: none;
    background: transparent;
    color: #6b7280;
    border-radius: 4px;
    cursor: pointer;
    font-size: .65rem;
    padding: 0;
    transition: background .15s, color .15s;
    flex-shrink: 0;
}

.bpb-edit-btn:hover[b-oq2itvlhsz] {
    background: #e5e7eb;
    color: #1b8a5a;
}

.bpb-chip[b-oq2itvlhsz] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    border: 2px solid transparent;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.82rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    white-space: nowrap;
}

.bpb-chip:hover[b-oq2itvlhsz] {
    background: #e2e8f0;
}

.bpb-chip--active[b-oq2itvlhsz] {
    background: #ecfdf3;
    color: #14532d;
    border-color: var(--chip-color, #1b8a5a);
}

.bpb-dot[b-oq2itvlhsz] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.bpb-chip--active .bpb-dot[b-oq2itvlhsz] {
    background: var(--chip-color, #1b8a5a) !important;
}

.bpb-badge[b-oq2itvlhsz] {
    background: rgba(255,255,255,0.25);
    color: inherit;
    font-size: 0.68rem;
    padding: 0.1rem 0.4rem;
    border-radius: 999px;
    margin-left: 0.1rem;
}

.bpb-chip--active .bpb-badge[b-oq2itvlhsz] {
    background: rgba(20, 83, 45, 0.12);
    color: #14532d;
}

.bpb-chip:not(.bpb-chip--active) .bpb-badge[b-oq2itvlhsz] {
    background: #cbd5e1;
    color: #475569;
}

.bpb-add[b-oq2itvlhsz] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 2px dashed #94a3b8;
    background: transparent;
    color: #64748b;
    font-size: 0.75rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, color 0.15s;
}

.bpb-add:hover[b-oq2itvlhsz] {
    border-color: #1b8a5a;
    color: #1b8a5a;
}

.bpb-add--locked[b-oq2itvlhsz] {
    position: relative;
    border-color: #d4a017;
    color: #b8860b;
}

.bpb-add--locked:hover[b-oq2itvlhsz] {
    border-color: #b8860b;
    color: #8b6914;
}

.bpb-add-crown[b-oq2itvlhsz] {
    position: absolute;
    top: -4px;
    right: -4px;
    font-size: 0.5rem;
    color: #d4a017;
}

/* ── Modal ───────────────────────────────────────────────── */

.bpb-overlay[b-oq2itvlhsz] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bpb-modal[b-oq2itvlhsz] {
    background: #ffffff;
    border-radius: 12px;
    width: min(420px, 94vw);
    box-shadow: 0 8px 32px rgba(0,0,0,0.2);
    overflow: hidden;
}

.bpb-modal-head[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem 0.75rem;
    font-weight: 600;
    font-size: 0.95rem;
    color: #1e293b;
    border-bottom: 1px solid #e2e8f0;
}

.bpb-close[b-oq2itvlhsz] {
    background: none;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    font-size: 1rem;
    padding: 0.2rem;
}

.bpb-modal-body[b-oq2itvlhsz] {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.bpb-modal-body label[b-oq2itvlhsz] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-top: 0.25rem;
}

.bpb-input[b-oq2itvlhsz] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    font-size: 0.9rem;
    color: #1e293b;
    background: #f8fafc;
    box-sizing: border-box;
}

.bpb-input:focus[b-oq2itvlhsz] {
    outline: none;
    border-color: #1b8a5a;
    background: #ffffff;
}

.bpb-colors[b-oq2itvlhsz] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 0.25rem;
}

.bpb-color-btn[b-oq2itvlhsz] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 3px solid transparent;
    cursor: pointer;
    transition: border-color 0.15s, transform 0.1s;
}

.bpb-color-btn:hover[b-oq2itvlhsz] {
    transform: scale(1.15);
}

.bpb-color-btn--sel[b-oq2itvlhsz] {
    border-color: #1e293b;
    transform: scale(1.15);
}

.bpb-modal-foot[b-oq2itvlhsz] {
    padding: 0.75rem 1.25rem 1rem;
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    border-top: 1px solid #e2e8f0;
}

.bpb-btn[b-oq2itvlhsz] {
    padding: 0.45rem 1rem;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: opacity 0.15s;
}

.bpb-btn:disabled[b-oq2itvlhsz] {
    opacity: 0.5;
    cursor: not-allowed;
}

.bpb-btn--primary[b-oq2itvlhsz] {
    background: #1b8a5a;
    color: #ffffff;
}

.bpb-btn--primary:hover:not(:disabled)[b-oq2itvlhsz] {
    background: #166534;
}

.bpb-btn--secondary[b-oq2itvlhsz] {
    background: #f1f5f9;
    color: #334155;
}

.bpb-btn--secondary:hover[b-oq2itvlhsz] {
    background: #e2e8f0;
}

.bpb-btn--danger[b-oq2itvlhsz] {
    background: #fee2e2;
    color: #dc2626;
    margin-right: auto;
}

.bpb-btn--danger:hover[b-oq2itvlhsz] {
    background: #fecaca;
}

.bpb-badge--provision[b-oq2itvlhsz] {
    background: #fef3c7;
    color: #92400e;
}

/* Badges de type */
.bpb-badge--familial[b-oq2itvlhsz] {
    background: #d1fae5;
    color: #065f46;
}

.bpb-badge--thematique[b-oq2itvlhsz] {
    background: #dbeafe;
    color: #1e40af;
}

/* Sélecteur de type (modal) */
.bpb-type-row[b-oq2itvlhsz] {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
}

.bpb-type-option[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    gap: .35rem;
    padding: .4rem .75rem;
    border-radius: 6px;
    border: 2px solid #e2e8f0;
    font-size: .82rem;
    font-weight: 500;
    cursor: pointer;
    background: #f8fafc;
    color: #334155;
    transition: border-color .15s, background .15s;
    text-transform: none !important;
    letter-spacing: 0 !important;
    margin-top: 0;
}

.bpb-type-option input[type="radio"][b-oq2itvlhsz] {
    display: none;
}

.bpb-type-option:hover[b-oq2itvlhsz] {
    background: #f1f5f9;
}

.bpb-type-option--sel.bpb-type-option--familial[b-oq2itvlhsz] {
    border-color: #059669;
    background: #d1fae5;
    color: #065f46;
}

.bpb-type-option--sel.bpb-type-option--thematique[b-oq2itvlhsz] {
    border-color: #2563eb;
    background: #dbeafe;
    color: #1e40af;
}

.bpb-provision-label[b-oq2itvlhsz] {
    display: block;
    font-size: .75rem;
    font-weight: 600;
    color: #374151;
    margin-top: .75rem;
    margin-bottom: .25rem;
}

.bpb-provision-hint[b-oq2itvlhsz] {
    font-size: .7rem;
    color: #6b7280;
    margin-top: .2rem;
    margin-bottom: 0;
}

.bpb-toggle-row[b-oq2itvlhsz] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .82rem;
    color: #334155;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 500;
}

.bpb-toggle-row input[type="checkbox"][b-oq2itvlhsz] {
    width: 16px;
    height: 16px;
    accent-color: #1b8a5a;
}

.bpb-error[b-oq2itvlhsz] {
    margin-top: .5rem;
    padding: .55rem .7rem;
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #9f1239;
    border-radius: 6px;
    font-size: .8rem;
}
/* _content/BlazorGED/Shared/DocumentEditModal.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════
   DocumentEditModal – styles isolés
   Préfixe : deml-
   ═══════════════════════════════════════════════════════════ */

/* ── Dialog ──────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-dialog {
    max-width: 1140px;
    width: 96vw;
    margin: 2vh auto;
}

[b-xj84s2qeox] .deml-content {
    border-radius: 14px;
    border: none;
    box-shadow: 0 24px 64px rgba(0,0,0,.22);
    overflow: hidden;
    max-height: 94vh;
    display: flex;
    flex-direction: column;
}

/* ── En-tête ─────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-bottom: 1px solid #e5edf6;
    background: #fff;
    flex-shrink: 0;
}

[b-xj84s2qeox] .deml-header-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

[b-xj84s2qeox] .deml-header-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, #1b8a5a, #25b378);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .95rem;
    flex-shrink: 0;
}

[b-xj84s2qeox] .deml-header-title {
    font-size: .97rem;
    font-weight: 700;
    color: #0b1220;
    line-height: 1.2;
}

[b-xj84s2qeox] .deml-header-sub {
    font-size: .75rem;
    color: #7f92a8;
    margin-top: 1px;
}

[b-xj84s2qeox] .deml-close-btn {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid #e0e8f0;
    background: #f5f8fb;
    color: #7f92a8;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .9rem;
    transition: background .12s, color .12s;
}
[b-xj84s2qeox] .deml-close-btn:hover { background: #eaf0f8; color: #0b1220; }

/* ── Onglets ─────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 0 0 10px;
    margin: 0 0 4px;
    border-bottom: 1px solid #e5edf6;
    list-style: none;
}

[b-xj84s2qeox] .deml-tab {
    border: 1px solid transparent;
    background: transparent;
    color: #6b7c8f;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 8px;
    cursor: pointer;
    transition: background .12s, color .12s, border-color .12s;
}

[b-xj84s2qeox] .deml-tab:hover {
    background: #f3f7fb;
    color: #0b1220;
}

[b-xj84s2qeox] .deml-tab.is-active {
    background: #e8f5ee;
    border-color: #c5e4d2;
    color: #1b8a5a;
}

/* ── Queue strip ─────────────────────────────────────────── */
[b-xj84s2qeox] .deml-queue-strip {
    display: flex;
    gap: 6px;
    padding: 8px 18px;
    background: #f5f8fb;
    border-bottom: 1px solid #e5edf6;
    overflow-x: auto;
    flex-shrink: 0;
    scrollbar-width: thin;
}

[b-xj84s2qeox] .deml-queue-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px 4px 8px;
    border-radius: 20px;
    border: 1px solid #d2dce8;
    background: #fff;
    font-size: .76rem;
    color: #7f92a8;
    white-space: nowrap;
    flex-shrink: 0;
}

[b-xj84s2qeox] .deml-queue-chip.is-current {
    border-color: #1b8a5a;
    background: #eaf6f0;
    color: #1b8a5a;
    font-weight: 600;
}

[b-xj84s2qeox] .deml-queue-chip.is-done {
    border-color: #86efac;
    background: #f0fdf4;
    color: #16a34a;
}

[b-xj84s2qeox] .deml-queue-chip-name {
    max-width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-xj84s2qeox] .deml-queue-chip-badge {
    font-size: .66rem;
    background: #1b8a5a;
    color: #fff;
    padding: 1px 7px;
    border-radius: 10px;
    margin-left: 4px;
}

/* ── Corps ───────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-body {
    display: flex;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* Colonne formulaire */
[b-xj84s2qeox] .deml-form-col {
    flex: 0 0 50%;
    overflow-y: auto;
    padding: 16px 20px 12px;
    border-right: 1px solid #e5edf6;
    scrollbar-width: thin;
}

/* Colonne aperçu */
[b-xj84s2qeox] .deml-preview-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #f5f8fb;
}

[b-xj84s2qeox] .deml-preview-header {
    padding: 10px 14px;
    font-size: .76rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #7f92a8;
    border-bottom: 1px solid #e5edf6;
    background: #fff;
    flex-shrink: 0;
}

[b-xj84s2qeox] .deml-preview-body {
    flex: 1;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

[b-xj84s2qeox] .deml-preview-frame {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

[b-xj84s2qeox] .deml-preview-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

[b-xj84s2qeox] .deml-preview-empty {
    text-align: center;
    color: #a0aec0;
    padding: 24px;
}
[b-xj84s2qeox] .deml-preview-empty p { font-size: .84rem; margin: 0; }

/* ── Sections du formulaire ──────────────────────────────── */
[b-xj84s2qeox] .deml-section {
    padding-bottom: 14px;
    margin-bottom: 14px;
    border-bottom: 1px solid #eef3f9;
}
[b-xj84s2qeox] .deml-section:last-of-type { border-bottom: none; margin-bottom: 0; }

[b-xj84s2qeox] .deml-section-title {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: .73rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #7f92a8;
    margin-bottom: 10px;
}

[b-xj84s2qeox] .deml-section-title--facture { color: #2563eb; }
[b-xj84s2qeox] .deml-section-title--medical { color: #dc2626; }

/* ── Grilles ─────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-grid-2 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 8px;
}
[b-xj84s2qeox] .deml-grid-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 8px;
}

/* ── Champs ──────────────────────────────────────────────── */
[b-xj84s2qeox] .deml-field {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
[b-xj84s2qeox] .deml-field-wide { grid-column: span 2; }

[b-xj84s2qeox] .deml-label {
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .35px;
    color: #5a7080;
}

[b-xj84s2qeox] .deml-required { color: #dc2626; }

[b-xj84s2qeox] .deml-input,
[b-xj84s2qeox] .deml-select,
[b-xj84s2qeox] .deml-textarea {
    border: 1px solid #d0dae6;
    border-radius: 7px;
    padding: 6px 10px;
    font-size: .86rem;
    color: #0b1220;
    background: #fff;
    outline: none;
    width: 100%;
    transition: border-color .14s, box-shadow .14s;
}
[b-xj84s2qeox] .deml-input:focus,
[b-xj84s2qeox] .deml-select:focus,
[b-xj84s2qeox] .deml-textarea:focus {
    border-color: #1b8a5a;
    box-shadow: 0 0 0 3px rgba(27,138,90,.1);
}

[b-xj84s2qeox] .deml-textarea { resize: vertical; min-height: 52px; }

[b-xj84s2qeox] .deml-input-group { display: flex; gap: 4px; align-items: flex-end; }
[b-xj84s2qeox] .deml-input-group .deml-select,
[b-xj84s2qeox] .deml-input-group .deml-input { flex: 1; }

[b-xj84s2qeox] .deml-addon-btn {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    border: 1px solid #d0dae6;
    border-radius: 7px;
    background: #f3f7fb;
    color: #1b8a5a;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .82rem;
    transition: background .12s, border-color .12s;
}
[b-xj84s2qeox] .deml-addon-btn:hover { background: #e4f0ea; border-color: #1b8a5a; }
[b-xj84s2qeox] .deml-addon-btn:disabled { opacity: .5; cursor: not-allowed; }

[b-xj84s2qeox] .deml-error { font-size: .73rem; color: #dc2626; margin-top: 1px; }

[b-xj84s2qeox] .deml-validation-summary {
    font-size: .8rem;
    margin-bottom: 8px;
    padding: 6px 10px;
    border-radius: 6px;
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

/* ── Zone de dépôt ───────────────────────────────────────── */
[b-xj84s2qeox] .deml-drop-zone {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 22px 16px;
    border: 2px dashed #b8d0e4;
    border-radius: 10px;
    background: #f3f8fc;
    text-align: center;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    overflow: hidden;
}
[b-xj84s2qeox] .deml-drop-zone:hover,
[b-xj84s2qeox] .deml-drop-zone.blazorged-drop-active {
    border-color: #1b8a5a;
    background: #e8f5ee;
}

[b-xj84s2qeox] .deml-drop-icon { font-size: 1.8rem; color: #6aacca; margin-bottom: 2px; }
[b-xj84s2qeox] .deml-drop-text { font-size: .84rem; color: #3d5c70; }
[b-xj84s2qeox] .deml-drop-hint { font-size: .73rem; color: #90a8b8; }

[b-xj84s2qeox] .deml-file-input-overlay {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

/* Fichier déjà sélectionné */
[b-xj84s2qeox] .deml-file-info {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #e8f5ee;
    border: 1px solid #a3d9ba;
    border-radius: 8px;
}

[b-xj84s2qeox] .deml-file-icon { font-size: 1.3rem; flex-shrink: 0; }
[b-xj84s2qeox] .deml-file-details { flex: 1; min-width: 0; }
[b-xj84s2qeox] .deml-file-name { display: block; font-size: .84rem; font-weight: 600; color: #163528; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
[b-xj84s2qeox] .deml-file-size { font-size: .74rem; color: #4a7a5e; }

[b-xj84s2qeox] .deml-change-link {
    font-size: .75rem;
    color: #1b8a5a;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 3px;
}
[b-xj84s2qeox] .deml-change-link:hover { text-decoration: underline; }

/* ── Badges & hints ──────────────────────────────────────── */
[b-xj84s2qeox] .deml-info-hint {
    font-size: .78rem;
    padding: 6px 10px;
    border-radius: 6px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1e40af;
}
[b-xj84s2qeox] .deml-info-hint--warn { background: #fffbeb; border-color: #fde68a; color: #92400e; }
[b-xj84s2qeox] .deml-info-hint--ok  { background: #f0fdf4; border-color: #86efac; color: #15803d; }

[b-xj84s2qeox] .deml-hint-text {
    font-size: .78rem;
    color: #6b7f99;
    margin-bottom: 8px;
    line-height: 1.4;
}

[b-xj84s2qeox] .deml-warranty-summary {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: .82rem;
    color: #3d5060;
}

[b-xj84s2qeox] .deml-badge {
    font-size: .72rem;
    padding: 2px 8px;
    border-radius: 10px;
    font-weight: 600;
}
[b-xj84s2qeox] .deml-badge-success { background: #dcfce7; color: #15803d; }
[b-xj84s2qeox] .deml-badge-warning { background: #fef9c3; color: #92400e; }
[b-xj84s2qeox] .deml-badge-danger  { background: #fee2e2; color: #b91c1c; }

[b-xj84s2qeox] .deml-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: .84rem;
    cursor: pointer;
    color: #374151;
}

/* ── Boutons utilitaires ─────────────────────────────────── */
[b-xj84s2qeox] .deml-btn-sm {
    padding: 6px 12px;
    font-size: .8rem;
    border: 1px solid #d0dae6;
    border-radius: 7px;
    background: #f3f7fb;
    cursor: pointer;
    white-space: nowrap;
    transition: background .12s;
}
[b-xj84s2qeox] .deml-btn-sm:hover { background: #e4eef8; }

[b-xj84s2qeox] .deml-btn-xs {
    padding: 4px 8px;
    font-size: .76rem;
    border: 1px solid #d0dae6;
    border-radius: 6px;
    background: #f3f7fb;
    cursor: pointer;
    white-space: nowrap;
}
[b-xj84s2qeox] .deml-btn-xs:hover { background: #e4eef8; }

/* ── Pied de formulaire ──────────────────────────────────── */
[b-xj84s2qeox] .deml-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 14px;
    margin-top: 6px;
    border-top: 1px solid #eef3f9;
}

[b-xj84s2qeox] .deml-btn-cancel {
    padding: 7px 16px;
    border: 1px solid #d0dae6;
    border-radius: 8px;
    background: #fff;
    color: #6b7f99;
    font-size: .84rem;
    cursor: pointer;
    transition: background .12s;
}
[b-xj84s2qeox] .deml-btn-cancel:hover { background: #f3f7fb; }

[b-xj84s2qeox] .deml-btn-skip {
    padding: 7px 14px;
    border: 1px solid #d0dae6;
    border-radius: 8px;
    background: #fff;
    color: #6b7f99;
    font-size: .84rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: background .12s;
}
[b-xj84s2qeox] .deml-btn-skip:hover { background: #f3f7fb; }

[b-xj84s2qeox] .deml-btn-save {
    padding: 7px 20px;
    border: none;
    border-radius: 8px;
    background: linear-gradient(135deg, #1b8a5a, #25b378);
    color: #fff;
    font-size: .84rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: opacity .15s;
    box-shadow: 0 2px 6px rgba(27,138,90,.25);
}
[b-xj84s2qeox] .deml-btn-save:hover { opacity: .9; }
[b-xj84s2qeox] .deml-btn-save:disabled { opacity: .55; cursor: not-allowed; }
/* _content/BlazorGED/Shared/DocumentMetadataPanel.razor.rz.scp.css */
/* ──────────────────────────────────────────────────────────
   DocumentMetadataPanel — design compact & pro
   ────────────────────────────────────────────────────────── */

.dmp[b-6hrk20a27r] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px 12px 14px;
}

.dmp-tabs[b-6hrk20a27r] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 0 0 8px;
    margin: 0 0 2px;
    border-bottom: 1px solid #e8edf3;
    list-style: none;
}

.dmp-tab[b-6hrk20a27r] {
    border: 1px solid transparent;
    background: transparent;
    color: #6b7c8f;
    font-size: 0.76rem;
    font-weight: 600;
    padding: 5px 11px;
    border-radius: 8px;
    cursor: pointer;
    transition: background .12s, color .12s, border-color .12s;
}

.dmp-tab:hover[b-6hrk20a27r] {
    background: #f3f7fb;
    color: #0b1220;
}

.dmp-tab.is-active[b-6hrk20a27r] {
    background: #e8f5ee;
    border-color: #c5e4d2;
    color: #1b8a5a;
}

.dmp-tab-badge[b-6hrk20a27r] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.1rem;
    height: 1.1rem;
    margin-left: 0.35rem;
    padding: 0 0.3rem;
    border-radius: 999px;
    background: #1b8a5a;
    color: #fff;
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1;
}

.dmp-tab.is-active .dmp-tab-badge[b-6hrk20a27r] {
    background: #146b45;
}

/* ── Champ générique ── */
.dmp-field[b-6hrk20a27r] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.dmp-field--full[b-6hrk20a27r] {
    grid-column: 1 / -1;
}

/* ── Grille 2 colonnes (core + blocs composites) ── */
.dmp-grid[b-6hrk20a27r],
.dmp-configured-grid[b-6hrk20a27r] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px 10px;
    align-items: start;
}

.dmp-grid > .dmp-field--full[b-6hrk20a27r],
.dmp-configured-grid > .dmp-field--full[b-6hrk20a27r],
.dmp-grid > .dmp-field.dmp-field--full[b-6hrk20a27r],
.dmp-configured-grid > .dmp-field.dmp-field--full[b-6hrk20a27r] {
    grid-column: 1 / -1;
}

/* Dates / montants : inputs plus compacts dans leur colonne */
.dmp-field--compact .dmp-input[b-6hrk20a27r],
.dmp-field--compact .dmp-select[b-6hrk20a27r],
.dmp-field--compact input[type="date"][b-6hrk20a27r],
.dmp-field--compact input[type="number"][b-6hrk20a27r] {
    max-width: 100%;
}

@media (max-width: 420px) {
    .dmp-grid[b-6hrk20a27r],
    .dmp-configured-grid[b-6hrk20a27r] {
        grid-template-columns: 1fr;
    }
}

/* ── Label uppercase ── */
.dmp-label[b-6hrk20a27r] {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7a8f;
    margin: 0;
    line-height: 1;
}

/* ── Inputs & selects unifiés ── */
.dmp-input[b-6hrk20a27r],
.dmp-select[b-6hrk20a27r] {
    width: 100%;
    padding: 5px 8px;
    font-size: 0.8rem;
    font-family: inherit;
    font-weight: 400;
    color: #0f172a;
    background: #fff;
    border: 1px solid #d8e3f0;
    border-radius: 6px;
    transition: border-color 0.15s, box-shadow 0.15s;
    height: 30px;
    line-height: 1.2;
    box-shadow: none;
    outline: none !important;
}

.dmp[b-6hrk20a27r]  .form-control,
.dmp[b-6hrk20a27r]  .form-select,
.dmp[b-6hrk20a27r]  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.dmp[b-6hrk20a27r]  select,
.dmp[b-6hrk20a27r]  textarea {
    width: 100%;
    padding: 5px 8px;
    font-size: 0.8rem;
    font-family: inherit;
    font-weight: 400;
    color: #0f172a;
    background: #fff;
    border: 1px solid #d8e3f0 !important;
    border-radius: 6px !important;
    transition: border-color 0.15s, box-shadow 0.15s;
    height: 30px;
    line-height: 1.2;
    box-shadow: none !important;
    outline: none !important;
}

.dmp-textarea[b-6hrk20a27r],
.dmp textarea.dmp-input[b-6hrk20a27r] {
    height: auto;
    resize: vertical;
    min-height: 52px;
    line-height: 1.45;
    padding: 6px 8px;
}

.dmp[b-6hrk20a27r]  textarea {
    height: auto !important;
    min-height: 52px;
    line-height: 1.45;
    padding: 6px 8px;
}

.dmp-input:focus[b-6hrk20a27r],
.dmp-select:focus[b-6hrk20a27r] {
    outline: none !important;
    border-color: #1b8a5a;
    box-shadow: 0 0 0 2px rgba(27, 138, 90, 0.14);
}

.dmp[b-6hrk20a27r]  .form-control:focus,
.dmp[b-6hrk20a27r]  .form-select:focus,
.dmp[b-6hrk20a27r]  input:focus,
.dmp[b-6hrk20a27r]  select:focus,
.dmp[b-6hrk20a27r]  textarea:focus {
    outline: none !important;
    border-color: #1b8a5a !important;
    box-shadow: 0 0 0 2px rgba(27, 138, 90, 0.14) !important;
}

/* Annule les cadres de validation Blazor (outline vert/rouge) */
.dmp[b-6hrk20a27r]  .valid.modified:not([type="checkbox"]),
.dmp[b-6hrk20a27r]  .invalid {
    outline: none !important;
}

/* Labels unifiés (y compris Tags / MetadataFieldLabel / budget) */
.dmp[b-6hrk20a27r]  .form-label,
.dmp[b-6hrk20a27r]  .form-label.small {
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7a8f !important;
    margin: 0 0 3px !important;
    line-height: 1;
}

.dmp[b-6hrk20a27r]  .doc-tags-input {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.dmp[b-6hrk20a27r]  .doc-tags-input .form-control,
.dmp[b-6hrk20a27r]  .doc-tags-input .form-control-sm {
    height: 30px;
    font-size: 0.8rem;
    padding: 5px 8px;
}

.dmp[b-6hrk20a27r]  .doc-tags-input small,
.dmp[b-6hrk20a27r]  .doc-tags-input .text-muted {
    font-size: 0.65rem;
    color: #94a3b8 !important;
    margin-top: 2px;
    line-height: 1.35;
}

.dmp-remove-field[b-6hrk20a27r] {
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: transparent;
    color: #c4ced8;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    border-radius: 4px;
    flex-shrink: 0;
}
.dmp-remove-field:hover[b-6hrk20a27r] {
    color: #dc2626;
    background: #fef2f2;
}

/* ── Input + bouton inline ── */
.dmp-input-group[b-6hrk20a27r] {
    display: flex;
    gap: 4px;
}

.dmp-input-group .dmp-select[b-6hrk20a27r] {
    flex: 1;
    min-width: 0;
}

.dmp-addon[b-6hrk20a27r] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #d8e3f0;
    border-radius: 6px;
    background: #f8fbf9;
    color: #1b8a5a;
    cursor: pointer;
    font-size: 0.72rem;
    transition: background 0.15s, border-color 0.15s;
}

.dmp-addon:hover[b-6hrk20a27r] {
    background: #e6f4ed;
    border-color: #1b8a5a;
}

.dmp-addon--confirm[b-6hrk20a27r] {
    background: #1b8a5a;
    border-color: #1b8a5a;
    color: #fff;
}

.dmp-addon--confirm:hover[b-6hrk20a27r] {
    background: #146b45;
    border-color: #146b45;
}

/* ── Checkbox inline ── */
.dmp-field--check[b-6hrk20a27r] {
    flex-direction: row;
    align-items: center;
    gap: 8px;
    padding-top: 4px;
}

.dmp-checkbox[b-6hrk20a27r] {
    width: 14px;
    height: 14px;
    accent-color: #1b8a5a;
    cursor: pointer;
    flex-shrink: 0;
}

.dmp-check-label[b-6hrk20a27r] {
    font-size: 0.78rem;
    color: #374151;
    cursor: pointer;
    margin: 0;
}

/* ── En-tête de section ── */
.dmp-section-header[b-6hrk20a27r] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 0 3px;
    margin-top: 4px;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #1b8a5a;
    border-top: 1px solid #e4ede8;
}

.dmp-section-header i[b-6hrk20a27r] {
    font-size: 0.7rem;
    color: #1b8a5a;
}

.dmp-section-header--medical[b-6hrk20a27r] {
    color: #dc2626;
    border-top-color: #fecaca;
}

.dmp-section-header--medical i[b-6hrk20a27r] {
    color: #dc2626;
}

.dmp-hint[b-6hrk20a27r] {
    font-size: 0.72rem;
    color: #8490a8;
    margin-top: 2px;
}

/* ── Groupe de champs liés ── */
.dmp-section-group[b-6hrk20a27r] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 8px 10px;
    background: #f8fbf9;
    border-radius: 8px;
    border: 1px solid #e4ede8;
}

.dmp-section-group .dmp-label[b-6hrk20a27r] {
    color: #5c7a6b;
}

/* ── Sélect pour label de section ── */
.dmp-section-label[b-6hrk20a27r] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #5c7a6b;
    margin-bottom: 2px;
}

/* ── Zone ajout de champ ── */
.dmp-add-field[b-6hrk20a27r] {
    display: flex;
    gap: 4px;
    margin-top: 4px;
    padding-top: 8px;
    border-top: 1px dashed #dce8e2;
}

.dmp-select--sm[b-6hrk20a27r] {
    height: 28px;
    font-size: 0.72rem;
    padding: 3px 6px;
    color: #6b7a8f;
    background: #f8fbf9;
}

/* ── Nom de fichier ── */
.dmp-filename[b-6hrk20a27r] {
    margin-top: 4px;
    font-size: 0.65rem;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Ancien helper conservé pour MetadataFieldLabel ── */
.dmp-field-head[b-6hrk20a27r] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    margin-bottom: 0;
}

.dmp-field-head .dmp-label[b-6hrk20a27r] { margin-bottom: 0; }

/* Poste budget dans le panneau */
.dmp[b-6hrk20a27r]  .mb-2 > .form-label {
    display: block;
}
/* _content/BlazorGED/Shared/DocumentTagsInput.razor.rz.scp.css */
.doc-tags-chips[b-l9xx5ucyx0] {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }
    .doc-tag-chip[b-l9xx5ucyx0] {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        background: #e4ede9;
        color: #2e5a45;
        font-weight: 500;
        font-size: 0.78rem;
        padding: 4px 6px 4px 8px;
        border-radius: 6px;
    }
    .doc-tag-remove[b-l9xx5ucyx0] {
        border: none;
        background: transparent;
        color: #5c7a6b;
        padding: 0 2px;
        line-height: 1;
        cursor: pointer;
    }
    .doc-tag-remove:hover[b-l9xx5ucyx0] { color: #b91c1c; }
    .doc-tags-suggestions[b-l9xx5ucyx0] {
        position: absolute;
        z-index: 1050;
        width: 100%;
        max-height: 11rem;
        overflow-y: auto;
        margin-top: 2px;
        border-radius: 8px;
    }
    .doc-tags-suggestions .list-group-item[b-l9xx5ucyx0] {
        border-left: none;
        border-right: none;
    }
/* _content/BlazorGED/Shared/DocumentViewModal.razor.rz.scp.css */
.modal-custom-wide[b-0evq3wkxog] {
        max-width: 1100px !important;
        width: 95vw !important;
    }

    .document-modal-body[b-0evq3wkxog] {
        max-height: 82vh;
        overflow-y: auto;
    }

    .document-preview-frame[b-0evq3wkxog] {
        width: 100%;
        height: 68vh;
        min-height: 380px;
        border: none;
    }

    .document-preview-image[b-0evq3wkxog] {
        width: 100%;
        max-height: 68vh;
        min-height: 280px;
        object-fit: contain;
        background: #f8f9fa;
        display: block;
    }
/* _content/BlazorGED/Shared/DvPreviewPanel.razor.rz.scp.css */
.dv-panel-header[b-jokbqf1oa2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid var(--dv-panel-header-border, #dce8e2);
    background: var(--dv-panel-header-bg, #ffffff);
    flex-shrink: 0;
    min-height: 48px;
}

.dv-panel-title[b-jokbqf1oa2] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0b1220;
}

.dv-empty-state[b-jokbqf1oa2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 40px 24px;
    text-align: center;
    flex: 1;
}

.dv-empty-title[b-jokbqf1oa2] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #374151;
    margin: 8px 0 2px;
}

.dv-empty-sub[b-jokbqf1oa2] {
    font-size: 0.82rem;
    color: #8490a8;
    max-width: 220px;
    margin: 0;
    line-height: 1.5;
}
/* _content/BlazorGED/Shared/HomeDocumentPreview.razor.rz.scp.css */
.home-preview-card[b-60xs6hnulc] {
    background: #fff;
}

.home-preview-header[b-60xs6hnulc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid #dce8e2;
    background: #fff;
    min-height: 48px;
}

.home-preview-title[b-60xs6hnulc] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0b1220;
}

.home-preview-btn[b-60xs6hnulc] {
    border: 1px solid #d5e0db;
    background: #f8fbf9;
    color: #1f3f2f;
}

.home-preview-btn:hover[b-60xs6hnulc] {
    background: #eaf3ee;
    color: #173a2b;
}

.home-preview-empty[b-60xs6hnulc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 40px 24px;
    text-align: center;
    flex: 1;
}

.home-preview-empty-title[b-60xs6hnulc] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #374151;
    margin: 8px 0 2px;
}

.home-preview-empty-sub[b-60xs6hnulc] {
    font-size: 0.82rem;
    color: #6b7280;
    max-width: 250px;
    margin: 0;
    line-height: 1.5;
}
/* _content/BlazorGED/Shared/HomePendingMetadataPanel.razor.rz.scp.css */
.home-meta-card[b-q6nvjxwhmt] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.dv-panel-header[b-q6nvjxwhmt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid #e8edf3;
    background: #f8fafc;
    flex-shrink: 0;
    min-height: 48px;
}

.dv-panel-title[b-q6nvjxwhmt] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #0b1220;
}

.dv-meta-body[b-q6nvjxwhmt] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.dv-empty-state[b-q6nvjxwhmt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 40px 24px;
    text-align: center;
    flex: 1;
}

.dv-empty-title[b-q6nvjxwhmt] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #374151;
    margin: 8px 0 2px;
}

.dv-empty-sub[b-q6nvjxwhmt] {
    font-size: 0.82rem;
    color: #8490a8;
    max-width: 220px;
    margin: 0;
    line-height: 1.5;
}
/* _content/BlazorGED/Shared/MainLayout.razor.rz.scp.css */
.app-shell[b-7uge3znvjl] {
    display: flex;
    height: 100vh;
    overflow: hidden;
    background: #f4f7f6;
}

.app-sidebar[b-7uge3znvjl] {
    width: 200px;
    flex-shrink: 0;
    background: #f8fbf9;
    color: #1e3a2d;
    box-shadow: none;
    border-right: 1px solid #dce8e2;
    height: 100vh;
    overflow-y: auto;
}

.app-main[b-7uge3znvjl] {
    flex: 1;
    min-width: 0;
    padding: 0.55rem 0.65rem;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
}

.app-content[b-7uge3znvjl] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
}

/* ── Bannière d'essai (non bloquante) ── */
.trial-banner[b-7uge3znvjl] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-wrap: wrap;
    background: linear-gradient(90deg, #166534 0%, #1b8a5a 100%);
    color: #ffffff;
    font-size: 0.78rem;
    padding: 0.4rem 0.85rem;
    border-radius: 7px;
    margin-bottom: 0.45rem;
}

.trial-banner i[b-7uge3znvjl] {
    color: #facc15;
    font-size: 0.9rem;
}

.trial-banner-link[b-7uge3znvjl] {
    margin-left: auto;
    color: #bbf7d0;
    text-decoration: underline;
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .app-shell[b-7uge3znvjl] {
        flex-direction: column;
    }

    .app-sidebar[b-7uge3znvjl] {
        width: 100%;
        height: auto;
        position: static;
    }

    .app-main[b-7uge3znvjl] {
        padding: 0.65rem;
    }

}
/* _content/BlazorGED/Shared/NavMenu.razor.rz.scp.css */
.menu-root[b-j7p12bu9tf] {
    padding: 0.4rem 0.4rem;
}

.brand-block[b-j7p12bu9tf] {
    padding: 0.3rem 0.35rem;
    border-radius: 12px;
    background: #eef5f1;
    border: 1px solid #dce8e2;
    margin-bottom: 0.55rem;
}

/* Pas de cadre blanc : le logo PNG (1043×316, fond transparent) remplit la bande grise */
.brand-link[b-j7p12bu9tf] {
    display: block;
    line-height: 0;
    text-decoration: none;
    background: transparent;
    padding: 0;
    border: none;
    width: 100%;
    border-radius: 10px;
    transition: opacity 0.15s ease;
}

.brand-link:hover[b-j7p12bu9tf] {
    opacity: 0.9;
}

.brand-link:focus-visible[b-j7p12bu9tf] {
    outline: 2px solid #1b8a5a;
    outline-offset: 3px;
}

.brand-logo[b-j7p12bu9tf] {
    display: block;
    width: 100%;
    height: auto;
    max-width: 132px;
    margin-inline: auto;
    aspect-ratio: 1043 / 316;
}

.trial-banner[b-j7p12bu9tf] {
    display: flex;
    align-items: flex-start;
    gap: 0.45rem;
    padding: 0.55rem 0.65rem;
    margin: 0 0 0.7rem;
    border-radius: 10px;
    background: #fff7db;
    border: 1px solid #f5d782;
    color: #775100;
    font-size: 0.72rem;
    line-height: 1.35;
}

.trial-banner--locked[b-j7p12bu9tf] {
    background: #fee2e2;
    border-color: #fca5a5;
    color: #7f1d1d;
}

.trial-banner i[b-j7p12bu9tf] {
    margin-top: 0.08rem;
}

.menu-section[b-j7p12bu9tf] {
    margin-bottom: 0.5rem;
}

.menu-label[b-j7p12bu9tf] {
    margin: 0 0 0.25rem;
    padding-left: 0.35rem;
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #5c7a6b;
    font-weight: 700;
}

.menu-section[b-j7p12bu9tf]  .menu-link {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.18rem;
    border-radius: 8px;
    padding: 0.34rem 0.4rem;
    color: #1f3f2f;
    text-decoration: none;
    transition: all 0.2s ease;
    font-size: 0.78rem;
    font-weight: 500;
}

.premium-chip[b-j7p12bu9tf] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.1rem 0.4rem;
    border-radius: 999px;
    font-size: 0.66rem;
    font-weight: 700;
    color: #8a6b00;
    background: #fff3cf;
    border: 1px solid #f2d483;
}

.premium-chip i[b-j7p12bu9tf] {
    width: auto !important;
    font-size: 0.68rem !important;
}

.menu-section[b-j7p12bu9tf]  .menu-link i {
    width: 16px;
    text-align: center;
    font-size: 0.88rem;
    color: #2e5a45;
}

.menu-section[b-j7p12bu9tf]  .menu-link:hover {
    background: #eaf3ee;
    color: #163528;
}

.menu-section[b-j7p12bu9tf]  .menu-link.active {
    background: #dff0e6;
    color: #104a2f;
    box-shadow: inset 3px 0 0 #1b8a5a;
    font-weight: 650;
}

@media (max-width: 991.98px) {
    .menu-root[b-j7p12bu9tf] {
        padding-bottom: 0.75rem;
    }

    .menu-section[b-j7p12bu9tf] {
        margin-bottom: 0.45rem;
    }
}
/* _content/BlazorGED/Shared/StandingOrdersPanel.razor.rz.scp.css */
/* ================================================================
   StandingOrdersPanel — palette verte NexoHub
   ================================================================ */

.so-root[b-vllni0bge5] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

/* ── Header ───────────────────────────────────────────────────── */
.so-header[b-vllni0bge5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 0.85rem;
    background: #fff;
    border-bottom: 1px solid #dce8e2;
    flex-shrink: 0;
}

.so-header-left[b-vllni0bge5] { display: flex; align-items: center; gap: 0.55rem; }

.so-title[b-vllni0bge5]  { display: block; font-size: 0.92rem; font-weight: 800; color: #0b1a10; line-height: 1.2; }
.so-sub[b-vllni0bge5]    { display: block; font-size: 0.72rem; color: #5c7a6b; }

/* ── Workspace ────────────────────────────────────────────────── */
.so-workspace[b-vllni0bge5] { display: flex; flex: 1; overflow: hidden; }
.so-workspace.so-workspace--form .so-list[b-vllni0bge5] { flex: 1; }

/* ── List ─────────────────────────────────────────────────────── */
.so-list[b-vllni0bge5] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    background: #f4f7f6;
    padding: 0.5rem;
    gap: 0.15rem;
}

.so-loading[b-vllni0bge5], .so-empty[b-vllni0bge5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
}

.so-empty-icon[b-vllni0bge5] { font-size: 3rem; color: #a7c4b3; margin-bottom: 1rem; }

/* Summary bar */
.so-summary-bar[b-vllni0bge5] {
    display: flex;
    gap: 0.5rem;
    padding: 0.4rem 0.5rem;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    margin-bottom: 0.25rem;
    flex-wrap: wrap;
}

.so-summary-item[b-vllni0bge5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.25rem 0.6rem;
    flex: 1;
    min-width: 70px;
}

.so-summary-val[b-vllni0bge5]   { font-size: 1rem; font-weight: 800; color: #0f172a; }
.so-summary-label[b-vllni0bge5] { font-size: 0.65rem; color: #5c7a6b; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.so-summary-item--blue   .so-summary-val[b-vllni0bge5] { color: #1b8a5a; }
.so-summary-item--orange .so-summary-val[b-vllni0bge5] { color: #d97706; }

/* Row */
.so-row[b-vllni0bge5] {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #e5ede8;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    transition: box-shadow 120ms, border-color 120ms;
    position: relative;
}

.so-row:hover[b-vllni0bge5] { box-shadow: 0 2px 8px rgba(22, 101, 52, 0.07); border-color: #a7c4b3; }
.so-row--selected[b-vllni0bge5] { background: #f0fdf4; border-color: #86efac; }
.so-row--inactive[b-vllni0bge5] { opacity: 0.6; }
.so-row--needs-gen[b-vllni0bge5] { border-left-color: #f59e0b !important; }

/* Accent strip */
.so-row-accent[b-vllni0bge5] { width: 3px; align-self: stretch; flex-shrink: 0; }
.so-accent--green[b-vllni0bge5]  { background: #1b8a5a; }
.so-accent--blue[b-vllni0bge5]   { background: #3b82f6; }
.so-accent--indigo[b-vllni0bge5] { background: #6366f1; }
.so-accent--teal[b-vllni0bge5]   { background: #14b8a6; }
.so-accent--purple[b-vllni0bge5] { background: #a855f7; }
.so-accent--gray[b-vllni0bge5]   { background: #b0c4ba; }

.so-row-icon[b-vllni0bge5] {
    width: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a7c4b3;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.so-row-body[b-vllni0bge5] {
    flex: 1;
    min-width: 0;
    padding: 0.42rem 0.4rem 0.42rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.so-row-top[b-vllni0bge5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.so-row-name[b-vllni0bge5]   { font-size: 0.87rem; font-weight: 700; color: #0b1a10; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; }
.so-row-amount[b-vllni0bge5] { font-size: 0.87rem; font-weight: 700; color: #334155; white-space: nowrap; flex-shrink: 0; }
.so-row-period[b-vllni0bge5] { font-size: 0.7rem; color: #94a3b8; font-weight: 500; }

.so-row-bottom[b-vllni0bge5] { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; }
.so-row-creancier[b-vllni0bge5] { font-size: 0.73rem; color: #5c7a6b; }

.so-badge[b-vllni0bge5] {
    font-size: 0.68rem;
    padding: 0.1rem 0.4rem;
    background: rgba(92, 122, 107, 0.1);
    border: 1px solid rgba(92, 122, 107, 0.2);
    border-radius: 999px;
    color: #5c7a6b;
    font-weight: 600;
}

.so-badge--inactive[b-vllni0bge5]  { background: #f1f5f9; color: #94a3b8; }
.so-badge--needs-gen[b-vllni0bge5] { background: #fffbeb; color: #b45309; border-color: #fde68a; }
.so-badge--soon[b-vllni0bge5]      { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.so-badge--ok[b-vllni0bge5]        { background: #f0fdf4; color: #166534; border-color: #bbf7d0; }

.so-row-actions[b-vllni0bge5] {
    display: flex;
    align-items: center;
    padding: 0 0.5rem;
    gap: 0.2rem;
    opacity: 0;
    transition: opacity 150ms;
}

.so-row:hover .so-row-actions[b-vllni0bge5],
.so-row--selected .so-row-actions[b-vllni0bge5] { opacity: 1; }

.so-action-btn[b-vllni0bge5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid #dce8e2;
    background: #fff;
    color: #5c7a6b;
    font-size: 0.75rem;
    cursor: pointer;
    padding: 0;
    transition: background 120ms, color 120ms;
}

.so-action-btn:hover[b-vllni0bge5]          { background: #eaf3ee; color: #104a2f; }
.so-action-btn--pause:hover[b-vllni0bge5]   { background: #fffbeb; color: #d97706; }
.so-action-btn--play:hover[b-vllni0bge5]    { background: #f0fdf4; color: #1b8a5a; }

/* ── Form panel ───────────────────────────────────────────────── */
.so-form-panel[b-vllni0bge5] {
    width: 300px;
    flex-shrink: 0;
    background: #fff;
    border-left: 1px solid #dce8e2;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.so-form-header[b-vllni0bge5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.65rem 0.75rem;
    border-bottom: 1px solid #f4f7f6;
}

.so-form-title[b-vllni0bge5] { font-size: 0.87rem; font-weight: 700; color: #0b1a10; }

.so-form-body[b-vllni0bge5] {
    flex: 1;
    overflow-y: auto;
    padding: 0.65rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.so-form-footer[b-vllni0bge5] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.55rem 0.75rem;
    border-top: 1px solid #f4f7f6;
}

.so-field[b-vllni0bge5] { display: flex; flex-direction: column; gap: 0.2rem; }
.so-field-row[b-vllni0bge5] { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }

.so-field-label[b-vllni0bge5] {
    font-size: 0.67rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #5c7a6b;
    font-weight: 700;
    margin: 0;
}

.so-field--toggle[b-vllni0bge5] {
    background: #f8fbf9;
    border: 1px solid #dce8e2;
    border-radius: 8px;
    padding: 0.45rem 0.55rem;
}

.so-toggle-wrap[b-vllni0bge5] { display: flex; align-items: center; gap: 0.5rem; cursor: pointer; margin: 0; }
.so-toggle-label[b-vllni0bge5] { font-size: 0.82rem; font-weight: 600; color: #1f3f2f; }

/* ── Toast ────────────────────────────────────────────────────── */
.so-toast[b-vllni0bge5] {
    position: fixed;
    bottom: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    display: flex;
    align-items: center;
    padding: 0.6rem 1.1rem;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(11, 26, 16, 0.14);
    pointer-events: none;
    white-space: nowrap;
    animation: so-toast-in-b-vllni0bge5 200ms ease;
}

.so-toast--success[b-vllni0bge5] { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.so-toast--error[b-vllni0bge5]   { background: #fef2f2; color: #dc2626; border: 1px solid #fecaca; }

@keyframes so-toast-in-b-vllni0bge5 {
    from { opacity: 0; transform: translateX(-50%) translateY(8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* ── Context menu ─────────────────────────────────────────────── */
.so-ctx-overlay[b-vllni0bge5] { position: fixed; inset: 0; z-index: 9990; }
.so-ctx-menu[b-vllni0bge5] {
    position: fixed; z-index: 9995;
    background: #fff; border: 1px solid #dce8e2;
    border-radius: 10px; box-shadow: 0 8px 24px rgba(11, 26, 16, 0.12);
    padding: 0.3rem; min-width: 185px;
    animation: so-ctx-in-b-vllni0bge5 150ms ease;
}
@keyframes so-ctx-in-b-vllni0bge5 { from { opacity: 0; transform: scale(0.96); } to { opacity: 1; transform: scale(1); } }
.so-ctx-item[b-vllni0bge5] {
    display: flex; align-items: center; gap: 0.6rem; width: 100%;
    padding: 0.38rem 0.65rem; border: none; background: transparent;
    border-radius: 7px; font-size: 0.83rem; font-weight: 600;
    color: #334155; cursor: pointer; text-align: left; transition: background 100ms;
}
.so-ctx-item:hover[b-vllni0bge5]         { background: #eaf3ee; }
.so-ctx-item--danger[b-vllni0bge5]       { color: #dc2626; }
.so-ctx-item--danger:hover[b-vllni0bge5] { background: #fef2f2; }
.so-ctx-sep[b-vllni0bge5] { height: 1px; background: #f4f7f6; margin: 0.2rem 0; }

/* ── Confirm modal ────────────────────────────────────────────── */
.so-modal-overlay[b-vllni0bge5] {
    position: fixed; inset: 0;
    background: rgba(11, 26, 16, 0.35);
    z-index: 9998; display: flex; align-items: center; justify-content: center;
}
.so-modal-box[b-vllni0bge5] {
    background: #fff; border-radius: 12px; padding: 1.25rem;
    max-width: 360px; width: 90%;
    box-shadow: 0 14px 40px rgba(11, 26, 16, 0.18);
}
/* _content/BlazorGED/Shared/ViewFilterQueryBuilder.razor.rz.scp.css */
.vfqb-row[b-kwgvvo4ho5] {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 6px;
        margin-bottom: 8px;
        padding: 8px;
        border: 1px solid #dce8e2;
        border-radius: 8px;
        background: #f8fbf9;
    }
    .vfqb-logic[b-kwgvvo4ho5] {
        font-size: 0.7rem;
        font-weight: 700;
        color: #1b8a5a;
        min-width: 1.6rem;
        text-align: center;
        padding-top: 0.35rem;
    }
    .vfqb-field[b-kwgvvo4ho5] { flex: 1 1 8rem; min-width: 7rem; }
    .vfqb-op[b-kwgvvo4ho5] { flex: 0 1 7rem; min-width: 6rem; }
    .vfqb-value[b-kwgvvo4ho5] { flex: 1 1 10rem; min-width: 8rem; }
    .vfqb-multi-pick[b-kwgvvo4ho5] {
        flex: 1 1 12rem;
        min-width: 10rem;
        max-width: 100%;
        max-height: 9rem;
        overflow-y: auto;
        padding: 4px 6px;
        border: 1px solid #dce8e2;
        border-radius: 6px;
        background: #fff;
    }
    .vfqb-check-item[b-kwgvvo4ho5] {
        display: flex;
        align-items: center;
        gap: 6px;
        margin: 0;
        padding: 2px 4px;
        font-size: 0.82rem;
        cursor: pointer;
        border-radius: 4px;
    }
    .vfqb-check-item:hover[b-kwgvvo4ho5] { background: #eaf3ee; }
    .vfqb-check-item input[b-kwgvvo4ho5] { flex-shrink: 0; }
    .vfqb-remove[b-kwgvvo4ho5] { flex-shrink: 0; margin-top: 0.15rem; }
