/* Client campaign page (Peter, 30 Oct 2026): full width, the dashboard on top (feos:views/outreach/record/detail) and
   the Launch window (feos:views/outreach/launch-modal). */
.feos-or-page .record-grid > .left, .feos-or-page .left.col-md-8 { width: 100%; }
.feos-or-dash { margin: 0 0 16px; display: grid; gap: 12px; }
.feos-or-steps { background: #fff; border: 1px solid var(--feos-line, #e1e7ee); border-radius: 10px; padding: 14px 18px; }
.feos-or-steps ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 0; margin: 0 0 10px; padding: 0; counter-reset: s; }
.feos-or-steps li { flex: 1 1 120px; display: flex; align-items: center; gap: 8px; color: var(--feos-muted, #5b6875); font-weight: 600;
    position: relative; padding-right: 10px; }
.feos-or-steps li:not(:last-child)::after { content: ''; flex: 1; height: 2px; background: var(--feos-line, #e1e7ee); margin-left: 4px; }
.feos-or-steps li.done { color: #1d7a46; }
.feos-or-steps li.done:not(:last-child)::after { background: #8fd0a9; }
.feos-or-steps li.now { color: var(--feos-accent, #0a72ba); }
.feos-or-dot { width: 22px; height: 22px; border-radius: 50%; border: 2px solid currentColor; display: inline-flex; align-items: center;
    justify-content: center; font-size: 11px; flex: none; background: #fff; }
.feos-or-steps li.done .feos-or-dot { background: #1d7a46; border-color: #1d7a46; color: #fff; }
.feos-or-steps li.now .feos-or-dot { box-shadow: 0 0 0 4px var(--feos-accent-soft, #e8f3fb); }
.feos-or-next { font-size: 14px; }
.feos-or-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; }
.feos-or-card { background: #fff; border: 1px solid var(--feos-line, #e1e7ee); border-radius: 10px; padding: 14px 16px; min-width: 0; }
.feos-or-card h4 { margin: 0 0 10px; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: var(--feos-muted, #5b6875); }
.feos-or-card h4 .fas { color: var(--feos-accent, #0a72ba); margin-right: 4px; }
.feos-or-results { border-color: #b9dcc7; background: linear-gradient(180deg, #f4fbf6, #fff 60%); }
.feos-or-big { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 10px; }
.feos-or-big > div { display: flex; flex-direction: column; min-width: 0; }
.feos-or-big b { font-size: 24px; line-height: 1.1; color: var(--feos-ink, #0f1b26); font-variant-numeric: tabular-nums; }
.feos-or-big span { font-size: 12px; color: var(--feos-muted, #5b6875); }
.feos-or-big em { font-style: normal; font-size: 11px; color: var(--feos-muted, #5b6875); }
.feos-or-days { display: flex; align-items: flex-end; gap: 4px; height: 76px; padding-top: 4px; overflow-x: auto; }
.feos-or-days > div { display: flex; flex-direction: column; align-items: center; gap: 2px; flex: 0 0 30px; }
.feos-or-days i { display: block; width: 18px; background: var(--feos-accent, #0a72ba); border-radius: 3px 3px 0 0; }
.feos-or-days span { font-size: 10px; color: var(--feos-muted, #5b6875); }
.feos-or-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.feos-or-chips > span { background: var(--feos-canvas, #f3f6f9); border-radius: 12px; padding: 2px 10px; font-size: 12px; }
.feos-or-chips small { color: var(--feos-muted, #5b6875); }
.feos-or-bar { display: grid; grid-template-columns: 150px 1fr 90px; align-items: center; gap: 8px; margin: 5px 0; font-size: 12px; }
.feos-or-bar i { display: block; height: 10px; background: var(--feos-canvas, #f3f6f9); border-radius: 5px; overflow: hidden; }
.feos-or-bar i b { display: block; height: 100%; background: var(--feos-sky, #2090d0); }
.feos-or-bar em { font-style: normal; text-align: right; font-variant-numeric: tabular-nums; }
.feos-or-money { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; border-top: 1px dashed #b9dcc7;
    padding-top: 8px; margin-bottom: 6px; }
.feos-or-money span { display: block; font-size: 11px; color: var(--feos-muted, #5b6875); }
.feos-or-money b { font-size: 16px; color: #1d7a46; }
.feos-or-foot { margin: 8px 0 0; font-size: 12px; color: var(--feos-muted, #5b6875); }
.feos-or-warn { margin: 8px 0 0; font-size: 12px; color: #a35a00; }
@media (max-width: 600px) { .feos-or-bar { grid-template-columns: 110px 1fr 70px; } .feos-or-big b { font-size: 20px; } }

.feos-launch { display: grid; gap: 16px; }
.feos-launch h5 { font-weight: 700; margin: 0 0 6px; }
.feos-launch h5 a { font-weight: 400; margin-left: 8px; }
.feos-launch-block { background: #fff4e5; border: 1px solid #f0c27a; border-radius: 8px; padding: 10px 14px; }
.feos-launch-block ol { margin: 6px 0 0 18px; padding: 0; }
.feos-launch-check { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; margin: 0 0 8px; cursor: pointer; }
.feos-launch-check input { margin-top: 3px; }
.feos-launch-check em { display: block; font-style: normal; font-size: 12px; color: var(--feos-muted, #5b6875); }
.feos-launch-live { color: #b42318; font-weight: 600; }
