/* Estimator Active Bids top section refresh.
   Scoped to .v30-active-board so Overview, Submitted, Project Files and vendor UI remain unchanged. */
.v30-active-board>.v30-title{margin-bottom:20px}
.v30-active-board .v30-summary-grid{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;
 border:1px solid #d8e4ee;border-radius:15px;overflow:hidden;
 margin:0 0 16px;
 background:linear-gradient(115deg,#fff 0%,#fcfdff 70%,#f7fbfc 100%);
 box-shadow:0 3px 13px #163b5210;
}
.v30-active-board .v30-summary{
 display:grid;grid-template-columns:45px auto minmax(0,1fr);align-items:center;
 column-gap:11px;min-width:0;min-height:98px;
 margin:0;padding:16px 18px;border:0;border-radius:0;
 background:transparent;box-shadow:none;position:relative;
}
.v30-active-board .v30-summary+.v30-summary{border-left:1px solid #dae5ee}
.v30-active-board .v30-summary-icon{
 display:grid;place-items:center;width:43px;height:43px;border-radius:12px;
 background:#dff4f1;color:#087a7a;flex:none;
}
.v30-active-board .v30-summary-icon svg{display:block;width:25px;height:25px}
.v30-active-board .v30-summary-count{
 display:block;font-size:35px;line-height:1;font-weight:820;letter-spacing:-.055em;
 color:#096b71;font-variant-numeric:tabular-nums;
}
.v30-active-board .v30-summary-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.v30-active-board .v30-summary-label{color:#17344f;font-size:13px;font-weight:800;line-height:1.25}
.v30-active-board .v30-summary-copy small{font-size:11px;line-height:1.4;color:#75869a;font-weight:500}
.v30-active-board .v30-summary--upcoming .v30-summary-icon{background:#e0efff;color:#185eb7}
.v30-active-board .v30-summary--upcoming .v30-summary-count{color:#205da8}
.v30-active-board .v30-summary--attention .v30-summary-icon{background:#fff0d9;color:#b46a0d}
.v30-active-board .v30-summary--attention .v30-summary-count{color:#a9620a}
.v30-active-board .v30-summary--submitted .v30-summary-icon{background:#e0f6e9;color:#0b8655}
.v30-active-board .v30-summary--submitted .v30-summary-count{color:#0b8050}

.v30-active-board .v30-deadline-band{
 margin-bottom:20px;padding:17px 19px 18px;
 border:1px solid #dce6ed;border-radius:15px;
 box-shadow:0 3px 13px #163b5210;background:#fff;min-width:0;
}
.v30-active-board .v30-deadline-heading{
 display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;
 margin:0 0 13px;
}
.v30-active-board .v30-deadline-heading-left{
 display:flex;align-items:center;gap:11px;min-width:0;
}
.v30-active-board .v30-deadline-heading-icon{
 display:grid;place-items:center;width:30px;height:30px;flex:none;color:#167f85;
}
.v30-active-board .v30-deadline-heading-icon svg{width:24px;height:24px}
.v30-active-board .v30-deadline-heading-text{
 display:flex;align-items:center;gap:15px;min-width:0;flex-wrap:wrap;
}
.v30-active-board .v30-deadline-heading-text h2{font-size:18px;line-height:1.2;margin:0;color:#193650}
.v30-active-board .v30-deadline-heading-text>span{
 font-size:12px;color:#768a9e;border-left:1px solid #d6e2eb;padding-left:15px;line-height:1.3;
}
.v30-active-board .v30-deadline-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.v30-active-board .v30-deadline-actions button{
 color:#087a78;font-weight:800;font-size:12px;padding:5px 0;
}
.v30-active-board .v30-deadline-actions button:hover{text-decoration:underline}
.v30-active-board .v30-deadline-track{
 display:grid;grid-auto-flow:column;grid-auto-columns:minmax(205px,1fr);
 gap:10px;overflow-x:auto;overflow-y:hidden;
 scroll-snap-type:x proximity;overscroll-behavior-x:contain;
 padding:1px 2px 7px;scrollbar-width:thin;scrollbar-color:#bdcfdb transparent;
}
.v30-active-board .v30-radar-card{
 display:flex;justify-content:space-between;align-items:flex-start;gap:7px;
 min-width:0;min-height:100px;padding:12px 11px 12px 12px;
 text-align:left;cursor:pointer;font:inherit;
 background:#fafcfe;border:1px solid #dde7ef;border-left:3px solid #9db3c8;
 border-radius:9px;box-shadow:0 1px 3px #11364b0a;
 scroll-snap-align:start;transition:box-shadow .12s ease,border-color .12s ease;
}
.v30-active-board .v30-radar-card:hover{
 background:#f3f8fc;border-color:#86b8cf;box-shadow:0 4px 11px #11364b1a;
}
.v30-active-board .v30-radar-card:focus-visible{outline:3px solid #087f83;outline-offset:2px}
.v30-active-board .v30-radar-card-info{
 display:flex;flex-direction:column;align-items:flex-start;gap:6px;
 min-width:0;flex:1;
}
.v30-active-board .v30-radar-card-info strong{
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
 overflow:hidden;max-width:100%;font-size:12px;font-weight:800;
 line-height:1.32;color:#1c3652;min-height:31px;overflow-wrap:anywhere;
}
.v30-active-board .v30-radar-location,.v30-active-board .v30-radar-date{
 display:block;color:#698198;font-size:10px;line-height:1.4;white-space:normal;
}
.v30-active-board .v30-radar-date{font-variant-numeric:tabular-nums}
.v30-active-board .v30-radar-countdown{
 flex:none;max-width:86px;padding:7px 8px;align-self:center;
 border-radius:7px;background:#e9eef5;color:#334a62;
 font-size:11px;font-weight:850;line-height:1.25;text-align:center;
 font-variant-numeric:tabular-nums;
}
.v30-active-board .v30-radar-card.is-soon{border-left-color:#df9a35;background:#fffdf8}
.v30-active-board .v30-radar-card.is-soon .v30-radar-countdown{background:#fff0d9;color:#9a5709}
.v30-active-board .v30-radar-card.is-critical{border-left-color:#cf3338;background:#fff9f9;border-color:#f0d5d8;border-left-width:3px}
.v30-active-board .v30-radar-card.is-critical .v30-radar-countdown{
 background:#d4323c;color:#fff;font-size:12px;box-shadow:0 2px 5px #9d253528;
}
.v30-active-board .v30-radar-card.is-overdue{border-left-color:#8c1724;background:#fff5f6;border-color:#e9bfc4;border-left-width:3px}
.v30-active-board .v30-radar-card.is-overdue .v30-radar-countdown{background:#a51f30;color:#fff;font-size:12px}
.v30-active-board .v30-deadline-empty{
 margin:0;padding:18px 12px;border:1px dashed #d3e0e8;border-radius:9px;
 background:#f8fafc;color:#627b8d;font-size:13px;
}
.v30-active-board .v30-active-pursuits>.v30-panel{
 width:100%;min-width:0;box-shadow:0 3px 13px #163b5210;
}
.v30-active-board .v30-timing.is-critical{
 background:#fee4e6;color:#b4232f;font-weight:800;
}
.v30-active-board .v30-timing.is-overdue{
 background:#fbd6dc;color:#901e2b;font-weight:850;
}
.v30-active-board .v30-timing.is-soon{background:#fff0d8;color:#a76410}

@media(max-width:1180px){
 .v30-active-board .v30-summary{padding:14px 12px;grid-template-columns:37px auto minmax(0,1fr);column-gap:8px}
 .v30-active-board .v30-summary-icon{width:37px;height:37px;border-radius:10px}
 .v30-active-board .v30-summary-icon svg{width:22px;height:22px}
 .v30-active-board .v30-summary-count{font-size:31px}
 .v30-active-board .v30-summary-label{font-size:12px}
 .v30-active-board .v30-summary-copy small{font-size:10px}
}
@media(max-width:940px){
 .v30-active-board .v30-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v30-active-board .v30-summary:nth-child(3){border-left:0;border-top:1px solid #dae5ee}
 .v30-active-board .v30-summary:nth-child(4){border-top:1px solid #dae5ee}
 .v30-active-board .v30-summary{min-height:86px;padding:14px 16px;grid-template-columns:43px auto minmax(0,1fr);column-gap:12px}
 .v30-active-board .v30-summary-icon{width:43px;height:43px}
 .v30-active-board .v30-summary-count{font-size:33px}
 .v30-active-board .v30-radar-card{min-height:98px}
}
@media(max-width:620px){
 .v30-active-board .v30-deadline-band{padding:13px 12px 14px}
 .v30-active-board .v30-deadline-heading{align-items:start;gap:8px}
 .v30-active-board .v30-deadline-heading-text{display:block}
 .v30-active-board .v30-deadline-heading-text h2{font-size:16px;margin-bottom:4px}
 .v30-active-board .v30-deadline-heading-text>span{border-left:0;padding-left:0;font-size:11px}
 .v30-active-board .v30-deadline-actions{width:100%;justify-content:space-between}
 .v30-active-board .v30-deadline-track{grid-auto-columns:minmax(205px,75%)}
}
@media(max-width:480px){
 .v30-active-board .v30-summary{grid-template-columns:30px minmax(0,1fr);gap:5px 9px;padding:12px 10px;min-height:94px}
 .v30-active-board .v30-summary-icon{width:30px;height:30px;border-radius:8px}
 .v30-active-board .v30-summary-icon svg{width:19px;height:19px}
 .v30-active-board .v30-summary-count{font-size:29px}
 .v30-active-board .v30-summary-copy{grid-column:1/-1;margin-top:2px}
 .v30-active-board .v30-summary-label{font-size:11px}
 .v30-active-board .v30-summary-copy small{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .v30-active-board .v30-radar-card{transition:none}
}

/* Estimator dashboard refinement: individually outlined KPI sections and
   exactly five readable deadline cards at full desktop width. */
.v30-active-board .v30-summary-grid{
 gap:8px;
 padding:8px;
 background:#eef3f7;
 border:1px solid #c8d8e4;
}
.v30-active-board .v30-summary,
.v30-active-board .v30-summary+.v30-summary,
.v30-active-board .v30-summary:nth-child(3),
.v30-active-board .v30-summary:nth-child(4){
 border:1px solid #c3d5e2;
 border-radius:10px;
 background:#fff;
 box-shadow:0 1px 3px #18394c10;
}
.v30-active-board .v30-summary.v30-summary--active{border-top:3px solid #128d8d}
.v30-active-board .v30-summary.v30-summary--upcoming{border-top:3px solid #3879c8}
.v30-active-board .v30-summary.v30-summary--attention{border-top:3px solid #dc942d}
.v30-active-board .v30-summary.v30-summary--submitted{border-top:3px solid #259665}
.v30-active-board .v30-summary.v30-summary--active,
.v30-active-board .v30-summary.v30-summary--upcoming,
.v30-active-board .v30-summary.v30-summary--attention,
.v30-active-board .v30-summary.v30-summary--submitted{border-top-width:3px}

.v30-active-board .v30-deadline-track{
 display:grid;
 grid-auto-flow:row;
 grid-template-columns:repeat(5,minmax(0,1fr));
 grid-auto-columns:auto;
 overflow:visible;
 gap:10px;
 padding:1px 0 0;
 scroll-snap-type:none;
}
.v30-active-board .v30-radar-card{
 display:flex;
 flex-direction:column;
 align-items:stretch;
 justify-content:space-between;
 gap:10px;
 min-height:145px;
 padding:13px 13px 12px;
}
.v30-active-board .v30-radar-card-info{
 display:flex;
 flex-direction:column;
 gap:5px;
 align-items:flex-start;
 flex:0 1 auto;
 width:100%;
}
.v30-active-board .v30-radar-card-info strong{
 display:block;
 -webkit-line-clamp:unset;
 -webkit-box-orient:unset;
 overflow:visible;
 max-width:none;
 min-height:0;
 font-size:13px;
 line-height:1.35;
 white-space:normal;
 overflow-wrap:break-word;
}
.v30-active-board .v30-radar-card .v30-radar-countdown{
 align-self:flex-start;
 max-width:none;
 font-size:12px;
 font-weight:850;
 padding:7px 10px;
}
.v30-active-board .v30-radar-card.is-critical .v30-radar-countdown,
.v30-active-board .v30-radar-card.is-overdue .v30-radar-countdown{font-size:12px}

@media(max-width:1100px){
 .v30-active-board .v30-deadline-track{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
 .v30-active-board .v30-deadline-track{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-columns:auto;
  overflow:visible;
 }
}
@media(max-width:430px){
 .v30-active-board .v30-deadline-track{grid-template-columns:1fr}
 .v30-active-board .v30-radar-card{min-height:118px}
}

/* Four compact radar cards, full-size due dates. */
.v30-active-board .v30-deadline-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.v30-active-board .v30-radar-card{min-height:108px;padding:12px 13px 11px;gap:9px;display:flex;flex-direction:column;justify-content:space-between}
.v30-active-board .v30-radar-card-info{gap:0;flex:1 1 auto}
.v30-active-board .v30-radar-card-info strong{font-size:14px;line-height:1.38;min-height:0;max-height:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-weight:820}
.v30-active-board .v30-radar-bottom{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:7px 8px;width:100%}
.v30-active-board .v30-radar-date{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:13px;line-height:1.3;font-variant-numeric:tabular-nums}
.v30-active-board .v30-radar-date>span{display:block;font-size:10px;color:#647d90;font-weight:750;text-transform:uppercase;letter-spacing:.45px}
.v30-active-board .v30-radar-date strong{display:block;font-size:15px;line-height:1.32;color:#1a405c;font-weight:850;white-space:normal}
.v30-active-board .v30-radar-card .v30-radar-countdown{align-self:flex-end;max-width:none;flex:none;padding:7px 9px;font-size:12px;font-weight:850;line-height:1.2}
.v30-active-board .v30-radar-card.is-critical .v30-radar-countdown,.v30-active-board .v30-radar-card.is-overdue .v30-radar-countdown{font-size:12px}
@media(max-width:1150px){.v30-active-board .v30-deadline-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.v30-active-board .v30-deadline-track{grid-template-columns:1fr}.v30-active-board .v30-radar-card{min-height:95px}.v30-active-board .v30-radar-bottom{align-items:center}.v30-active-board .v30-radar-date{flex-direction:row;gap:6px;align-items:center}}
