.campaign-flow{display:grid;grid-template-columns:repeat(9,1fr);gap:7px;margin:18px 0}
.campaign-flow-step{position:relative;border:1px solid #dfe5ef;background:#fff;border-radius:12px;padding:11px 7px;text-align:center;min-height:72px}
.campaign-flow-step b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#eaf0fa;color:#49617f;margin:0 auto 6px;font-size:11px}
.campaign-flow-step span{font-size:10px;font-weight:800;color:#63718a;line-height:1.2;display:block}
.campaign-flow-step.done{border-color:#abdcc8;background:#f1fbf6}.campaign-flow-step.done b{background:#17845f;color:#fff}
.campaign-flow-step.active{border-color:#315fca;background:#eef4ff;box-shadow:0 0 0 2px #dbe7ff}.campaign-flow-step.active b{background:#234ca4;color:#fff}
.campaign-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}
.campaign-summary article{background:#fff;border:1px solid #e1e7f0;border-radius:14px;padding:15px}.campaign-summary span{display:block;font-size:10px;color:#75819a;font-weight:800}.campaign-summary strong{font-size:24px;color:#172747;display:block;margin-top:6px}
.campaign-layout{display:grid;grid-template-columns:.85fr 1.55fr;gap:18px;align-items:start}.campaign-list{display:grid;gap:10px;max-height:720px;overflow:auto}
.campaign-list-card{border:1px solid #e1e7f0;border-radius:14px;padding:14px;background:#fff;cursor:pointer;text-align:left;width:100%}.campaign-list-card.active{border-color:#315fca;background:#f3f6ff;box-shadow:0 0 0 2px #e0e9ff}.campaign-list-card header{display:flex;gap:10px;justify-content:space-between}.campaign-list-card h3{font-size:14px;margin:0;color:#162746}.campaign-list-card p{font-size:12px;color:#6c7890;line-height:1.45;margin:7px 0}.campaign-list-card footer{display:flex;justify-content:space-between;font-size:11px;color:#7a869b}
.campaign-status{white-space:nowrap;border-radius:999px;padding:5px 8px;background:#e9f0ff;color:#2850a2;font-size:10px;font-weight:800}.campaign-status.closed{background:#e9edf2;color:#647084}.campaign-status.review{background:#fff2ce;color:#8d6500}.campaign-status.live{background:#dcf7e9;color:#08784b}
.campaign-workspace-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid #e7ebf2;padding-bottom:16px}.campaign-workspace-head h2{margin:5px 0}.campaign-owner{font-size:11px;color:#567099;font-weight:800}.campaign-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.campaign-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.campaign-meta div{background:#f7f9fc;border-radius:10px;padding:10px}.campaign-meta span{display:block;font-size:9px;color:#7e899e;font-weight:800}.campaign-meta strong{display:block;font-size:12px;color:#22324f;margin-top:4px}
.campaign-description{color:#5f6d84;line-height:1.55;font-size:13px}.campaign-workspace-tabs{display:flex;gap:6px;border-bottom:1px solid #e4e9f1;margin-top:16px}.campaign-workspace-tabs button{border:0;background:transparent;padding:11px 12px;color:#64718a;font-weight:700}.campaign-workspace-tabs button.active{color:#224a9e;border-bottom:2px solid #315fca}
.campaign-tab-panel{padding-top:16px}.campaign-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.campaign-info-box{border:1px solid #e3e8f0;border-radius:12px;padding:14px}.campaign-info-box h3{font-size:13px;margin:0 0 9px}.campaign-info-box p{font-size:12px;color:#69758c;line-height:1.5;margin:5px 0}
.applicant-stage{display:inline-block;border-radius:999px;background:#eef3fb;color:#3b5278;padding:5px 8px;font-size:10px;font-weight:800}.applicant-stage.awarded{background:#dbf7e8;color:#08784b}.applicant-stage.declined{background:#ffe6e6;color:#a02c2c}.campaign-applicant-table td{vertical-align:middle}.campaign-score{font-weight:800;color:#244b9e}.campaign-timeline{display:grid;gap:0}.campaign-event{display:grid;grid-template-columns:18px 1fr;gap:10px;padding-bottom:14px}.campaign-event i{width:10px;height:10px;border-radius:50%;background:#315fca;margin-top:4px;box-shadow:0 0 0 4px #e7efff}.campaign-event strong{font-size:12px;color:#22324f;display:block}.campaign-event span{font-size:11px;color:#778399}
.campaign-empty{padding:32px;text-align:center;color:#79859a}.campaign-policy{margin-top:16px;border:1px solid #cdddf8;background:#f1f6ff;border-radius:13px;padding:13px;color:#315079;font-size:12px;line-height:1.5}.campaign-modal-wide{width:min(760px,94vw)}
@media(max-width:1100px){.campaign-flow{grid-template-columns:repeat(5,1fr)}.campaign-layout{grid-template-columns:1fr}.campaign-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.campaign-flow{grid-template-columns:repeat(3,1fr)}.campaign-summary,.campaign-meta,.campaign-overview-grid{grid-template-columns:1fr 1fr}.campaign-workspace-head{display:block}.campaign-actions{justify-content:flex-start;margin-top:12px}}
