/* ===== Waiting to sign, and Electronic documents on a client / an advice process (docs/modules/e-signature.md 4.7) ===== */
.feos-ed, .feos-ed-panel {
    --ed-navy: #0F2A44; --ed-gold: #F2B544; --ed-ink: #0f1b26; --ed-muted: #5b6876; --ed-line: #e1e7ee;
    --ed-amber: #fff4d6; --ed-amber-ink: #8a5a00; --ed-green: #e6f4ec; --ed-green-ink: #17804a; --ed-red: #a3271b;
    font-family: "Nunito Sans", system-ui, sans-serif;
}

.feos-ed { max-width: 1240px; margin: 0 auto; padding: 4px 0 24px; color: var(--ed-ink); }
.feos-ed-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; margin-bottom: 14px; }
.feos-ed-head h2 { margin: 0 0 2px; font-weight: 800; color: var(--ed-navy); }
.feos-ed-lede { margin: 0; color: var(--ed-muted); }
.feos-ed-whose { display: flex; align-items: center; gap: 8px; margin: 0; font-weight: 600; font-size: 12.5px; color: var(--ed-muted); white-space: nowrap; }
.feos-ed-whose select { min-width: 160px; width: auto; }

.feos-ed-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.feos-ed-tile { background: var(--ed-navy); color: #fff; border-radius: 12px; padding: 12px 14px; display: flex; flex-direction: column;
    gap: 2px; border-bottom: 3px solid transparent; }
.feos-ed-tile b { font-size: 26px; font-weight: 800; line-height: 1.1; font-variant-numeric: tabular-nums; }
.feos-ed-tile span { font-size: 12.5px; opacity: .85; }
.feos-ed-tile.warn { border-bottom-color: var(--ed-gold); }
.feos-ed-tile.warn b { color: var(--ed-gold); }
.feos-ed-tile.good b { color: #8fe3b0; }

.feos-ed-filters { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.feos-ed-fchip { border: 1px solid var(--ed-line); background: #fff; color: var(--ed-ink); border-radius: 999px; padding: 3px 11px;
    font-size: 12.5px; font-weight: 600; line-height: 1.5; cursor: pointer; white-space: nowrap; }
.feos-ed-fchip i { font-style: normal; font-weight: 800; color: var(--ed-muted); margin-left: 2px; }
.feos-ed-fchip.on { background: var(--ed-navy); border-color: var(--ed-navy); color: #fff; }
.feos-ed-fchip.on i { color: var(--ed-gold); }

.feos-ed-table { background: #fff; border: 1px solid var(--ed-line); border-radius: 10px; overflow: hidden; margin-bottom: 0; }
.feos-ed-table > thead > tr > th { font-size: 11.5px; text-transform: uppercase; letter-spacing: .04em; color: var(--ed-muted);
    font-weight: 700; border-bottom: 1px solid var(--ed-line); white-space: nowrap; }
.feos-ed-table > tbody > tr > td { vertical-align: top; }
.feos-ed-table tr.feos-ed-chase { background: #fffaf0; }
.feos-ed-late { color: var(--ed-amber-ink); font-weight: 700; }
.feos-ed-empty { background: #fff; border: 1px dashed var(--ed-line); border-radius: 10px; padding: 22px; color: var(--ed-muted); text-align: center; }
.feos-ed-summary { margin: 0 0 8px; color: var(--ed-muted); }
.feos-ed-summary b { color: var(--ed-ink); }

/* the status chip */
.feos-ed-chip { display: inline-block; border-radius: 999px; padding: 1px 10px; font-size: 12px; font-weight: 700; line-height: 1.6;
    border: 1px solid transparent; white-space: nowrap; }
.feos-ed-chip.warn { background: var(--ed-amber); color: var(--ed-amber-ink); border-color: #f2d98b; }
.feos-ed-chip.good { background: var(--ed-green); color: var(--ed-green-ink); border-color: #b9e1c8; }
.feos-ed-chip.plain { background: #eef2f6; color: var(--ed-navy); border-color: var(--ed-line); }
.feos-ed-chip.info { background: #e8f0fb; color: #1f4f8f; border-color: #c6d9f3; }
.feos-ed-chip.muted { background: #f3f4f6; color: var(--ed-muted); border-color: var(--ed-line); }

@media (max-width: 800px) {
    .feos-ed-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
