/* Shared tender components. Layout belongs here; analysis-workspace owns report content. */
.tenderWorkspacePage{--analysis-border:var(--border);--analysis-muted:var(--text-muted);--analysis-action:var(--action);--font-body:var(--font-interface)}
body:has(.customerHeader) main.tenderWorkspacePage{padding-top:22px}
body:has(.customerHeader) .tenderWorkspacePage .tenderFrame{max-width:1240px}
.tenderContext{min-width:0;margin:0 0 12px}.tenderBack{display:inline-flex;align-items:center;min-height:44px;color:var(--text-muted);font-size:.85rem;text-underline-offset:3px}
.tenderContextHeading{display:grid;grid-template-columns:minmax(0,1fr) 130px;align-items:start;gap:24px;margin:6px 0 12px}.tenderContextHeading>div{min-width:0}
body:has(.customerHeader) .tenderContext h1{font-family:var(--font-interface);font-size:clamp(1.35rem,2.15vw,1.85rem);line-height:1.3;letter-spacing:-.02em;margin:4px 0 10px;overflow-wrap:anywhere}
.tenderContext .tenderBuyer{font-size:.88rem;color:var(--text-muted);margin:0}.tenderContextLocation{font-size:.85rem;color:var(--text-muted)}
.tenderContextLabels{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:.78rem;color:var(--text-muted)}
.tenderCompactMatch{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;min-width:0;color:var(--text)}.tenderCompactMatch>span{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);background:var(--surface);border-radius:10px}.tenderCompactMatch strong{font-family:var(--font-interface);font-size:1.8rem;line-height:1.2}.tenderCompactMatch>span>span{font-size:.9rem;font-weight:600}.tenderCompactMatch small{font-size:.7rem;color:var(--text-muted);text-align:center}
.tenderFacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:12px 0;padding:14px 0;border-top:1px solid var(--border);min-width:0}.tenderFacts>div{min-width:0}.tenderFacts dt{font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.tenderFacts dd{font-weight:600;line-height:1.4;margin:0;overflow-wrap:anywhere}.tenderFacts dd strong{font-weight:600}.tenderFacts small{display:block;font-size:.75rem;font-weight:400;color:var(--text-muted);margin-top:3px}
.tenderNavigation{position:sticky;top:0;z-index:25;background:var(--bg);border-bottom:1px solid var(--border);margin:0 0 16px;min-width:0}.tenderSectionTabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;min-width:0;scroll-padding-inline:12px}.tenderSectionTabs a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 14px;border-bottom:3px solid transparent;color:var(--text-muted);text-decoration:none;font-size:.88rem;font-weight:600;white-space:nowrap}.tenderSectionTabs a[aria-current]{color:var(--action);border-color:var(--action)}.tenderSectionTabs a:hover{background:var(--surface-subtle)}.tenderNavHint{display:none;font-size:.72rem;color:var(--text-muted);padding:2px 0 6px}.tenderNavigation.hasOverflow .tenderNavHint{display:block}
.tenderSubnav{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 24px}.tenderSubnav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;text-decoration:none;border:1px solid var(--border);border-radius:7px;color:var(--text-muted);background:var(--surface);font-size:.85rem}.tenderSubnav a[aria-current]{color:var(--action);border-color:var(--action);font-weight:600}
.tenderSourceStatus{margin:0 0 20px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:.82rem}.tenderSourceStatus>summary{cursor:pointer;padding:10px 14px;min-height:44px;align-content:center;font-weight:600}.tenderSourceStatus>summary>span{font-weight:400;color:var(--text-muted);margin-left:14px}.tenderSourceStatus>div,.tenderSourceStatus>section,.tenderSourceStatus>p,.tenderSourceStatus>details{margin:12px 14px!important;max-width:none;width:auto!important}.tenderSourceStatus .tenderFreshness{padding:0;background:none;border:0}.tenderSourceStatus p{margin:8px 0}
.tenderAlert{padding:12px 16px;background:var(--warning-bg);border-left:3px solid var(--warning);margin:12px 0 16px;line-height:1.6;overflow-wrap:anywhere}.tenderAlert a{font-weight:600;text-underline-offset:3px}
.tenderWorkspacePage .detailLayout{display:block}.tenderWorkspacePage .detailMain{display:grid;gap:20px;min-width:0}.tenderWorkspacePage .detailSidebar{position:static;margin:0}.tenderWorkspacePage .detailSidebar .sourceCard{margin:20px 0 0}
.tenderSectionHeading{margin:0 0 8px;min-width:0}.tenderSectionHeading h2{font-size:1.35rem;margin:0 0 6px}.tenderSectionHeading p{color:var(--text-muted);margin:4px 0}.tenderOverviewGrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;align-items:start}.tenderOverviewGrid>section{min-width:0}.tenderDescriptionText{white-space:pre-line;overflow-wrap:anywhere}
.tenderWorkspacePage :is(.detailSection,.analysisCard,.sourceCard,.workflowCard,.analysisStatusCard,.docCard,.tzPanel){padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:none;min-width:0}
.tenderWorkspacePage :is(.detailSection,.analysisCard,.sourceCard,.docCard,.tzPanel) h2{font-size:1.3rem;font-family:var(--font-interface);line-height:1.35}.tenderWorkspacePage :is(.detailSection,.analysisCard,.sourceCard,.docCard,.tzPanel) h3{font-family:var(--font-interface);font-size:1.05rem;line-height:1.4;margin-bottom:10px}
.tenderWorkspacePage :is(.detailSection,.analysisCard) p{line-height:1.65;overflow-wrap:anywhere}.tenderWorkspacePage .analysisGrid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px}.tenderWorkspacePage .analysisCard{margin-bottom:20px}.tenderWorkspacePage .analysisStack{gap:20px}.tenderWorkspacePage .analysisStack>.analysisCard{margin:0}.tenderWorkspacePage .proReport{margin:0;background:none;border:0;overflow:visible}
.tenderWorkspacePage .analysisWorkspace,.tenderWorkspacePage .analysisView{min-width:0}.tenderWorkspacePage .analysisView{scroll-margin-top:100px}.tenderWorkspacePage .analysisView>span[id],.tenderWorkspacePage [id="planning"]{scroll-margin-top:100px}
.tenderWorkspacePage .analysisSecondaryNav{padding:0 0 12px;margin:0;border-top:0;border-bottom:1px solid var(--border);gap:6px 18px}.tenderWorkspacePage .analysisSecondaryNav a{min-height:44px;text-decoration:none;color:var(--text-muted);padding:6px 0;border-bottom:2px solid transparent}.tenderWorkspacePage .analysisSecondaryNav a[aria-current]{color:var(--action);border-color:var(--action);font-weight:600}
.tenderDisclosure,.tenderAnalysisTools{margin:16px 0;border-top:1px solid var(--border);padding-top:6px}.tenderDisclosure>summary,.tenderAnalysisTools>summary{cursor:pointer;min-height:44px;align-content:center;font-weight:600;color:var(--text)}.tenderAnalysisTools{padding:12px 16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);margin:0}.tenderAnalysisTools .analysisStatusCard{padding:12px 0;border:0;margin:0}.tenderAnalysisTools .exportOptions{padding:16px;margin:12px 0 0}
.tenderWorkspacePage .analysisCard>.abcChart{border:0;padding:0;margin:20px 0;background:none}.tenderWorkspacePage .abcRules{gap:10px}.tenderWorkspacePage .abcGrade{border-radius:8px}.tenderWorkspacePage .abcRule{border-radius:8px}.tenderWorkspacePage .abcReason{line-height:1.6}.tenderWorkspacePage .analysisCardHeading>.matchBadge{max-width:100%}.tenderWorkspacePage .analysisCardHeading .matchHybridRing{width:92px;height:92px}.tenderWorkspacePage .analysisCardHeading .matchHybridRing strong{font-size:2rem!important}.tenderWorkspacePage .analysisCardHeading .matchHybridRing small{font-size:1rem!important}
.tenderWorkspacePage .analysisMeta,.tenderWorkspacePage .analysisScope,.tenderWorkspacePage .analysisTopOwner,.tenderWorkspacePage .analysisBadge{color:var(--text-muted)}.tenderWorkspacePage .analysisAdvice{border-top:3px solid var(--warning)}.tenderWorkspacePage .analysisBadge.isWarning{background:var(--warning-bg);color:var(--warning)}.tenderWorkspacePage .analysisBadge.isPositive{background:var(--success-bg);color:var(--success)}.tenderWorkspacePage .analysisBadge.isDanger{background:var(--danger-bg);color:var(--danger)}.tenderWorkspacePage .analysisPriority>span{background:var(--warning-bg);color:var(--warning)}
.tenderWorkspacePage .analysisNotice{background:var(--surface-subtle);color:var(--text);border-color:var(--border-strong)}.tenderWorkspacePage .analysisFilter.isActive{background:var(--text);color:var(--surface);border-color:var(--text)}.tenderWorkspacePage .analysisStatusCard .analysisScope{color:var(--text-muted)}.tenderWorkspacePage .analysisPhases li.isDone{color:var(--success);border-color:var(--success)}.tenderWorkspacePage .analysisTable th,.tenderWorkspacePage .analysisTable td small{color:var(--text-muted)}.tenderWorkspacePage .analysisTable th{background:var(--surface-subtle)}.tenderWorkspacePage .analysisMeta>li{margin-left:18px}
.tenderWorkspacePage :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--action);outline-offset:3px}.tenderWorkspacePage .button,.tenderWorkspacePage .docToolbar button{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:10px 16px;border-radius:7px;white-space:normal;font:inherit;font-size:.88rem;line-height:1.4;text-decoration:none;max-width:100%;cursor:pointer}.tenderWorkspacePage .buttonPrimary{background:var(--action);border:1px solid var(--action);color:var(--on-brand,#fff)}.tenderWorkspacePage .buttonPrimary:hover{background:var(--action-hover)}.tenderWorkspacePage .buttonSecondary{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.tenderWorkspacePage button:disabled{cursor:not-allowed;opacity:.6}
.tenderWorkspacePage :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea){width:100%;min-width:0;max-width:100%;min-height:44px;font:inherit;font-size:.9rem;padding:10px 12px;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface);color:var(--text)}.tenderWorkspacePage input[type=checkbox],.tenderWorkspacePage input[type=radio]{accent-color:var(--action);flex-shrink:0}.tenderWorkspacePage fieldset{min-width:0}.tenderWorkspacePage summary{cursor:pointer}.tenderWorkspacePage :is(.tzPanel,.docCard)+:is(.tzPanel,.docCard){margin-top:20px}
.tenderUtilityLinks{display:flex;flex-wrap:wrap;gap:8px 20px;padding:12px 0;border-top:1px solid var(--border)}.tenderUtilityLinks a{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem;color:var(--text-muted)}
/* List filters and results share the tender controls without the old fixed columns. */
body:has(.customerHeader) .tendersPage .tenderFilters{display:block;padding:20px}.tenderFilterPrimary{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:16px}.tenderFilterGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:12px}.tenderAdvancedFilters{margin-top:14px;border-top:1px solid var(--border);padding-top:4px}.tenderAdvancedFilters>summary{min-height:44px;align-content:center;font-size:.88rem;font-weight:600}.tendersPage .filterActions{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:16px}.tendersPage .tenderResultsHeading{margin-top:24px}.tenderWorkspacePage .tzSavedFilters{padding:0 16px;margin:16px 0;width:100%!important;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:block}.tzSavedFilters>summary{cursor:pointer;min-height:44px;align-content:center;font-weight:600;font-size:.85rem}.tzSavedFilterContent{padding:8px 0 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tzSavedFilterContent form{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;gap:10px;width:100%;align-items:center}.tzSavedFilterContent>button{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}
body:has(.customerHeader) .tendersPage .tenderCard:has(.evaluationCardScore){grid-template-columns:100px minmax(0,1fr) 125px;gap:22px;padding:22px;min-width:0}.tendersPage .tenderCardBody,.tendersPage .tenderCardAside{min-width:0}.tendersPage .evaluationCardScore .matchHybridText{display:none}.tendersPage .evaluationCardScore{justify-content:flex-start;align-items:center}.tendersPage .evaluationCardScore>span{font-size:.78rem;text-align:center;overflow-wrap:anywhere}.tendersPage .tenderCard h2{font-size:1.15rem;line-height:1.4;overflow-wrap:anywhere}.tendersPage .tenderCardLabels,.tendersPage .tenderMetadata{flex-wrap:wrap}.tendersPage .tenderMetadata>span{min-width:0;overflow-wrap:anywhere}.tendersPage .tenderCard .tenderDescription{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.tendersPage .tenderCardAside{align-items:flex-end}.tendersPage .tenderMetadata{gap:12px 20px}.tendersPage .deadlineLabel{white-space:normal;overflow-wrap:anywhere}.tendersPage .statusTag{background:var(--surface-subtle);color:var(--text-muted)}.tendersPage .status-saved,.tenderContext .status-saved{background:var(--surface-info);color:var(--action)}
/* Work documents and map controls keep their own usable scroll area. */
body:has(.customerHeader) main.docWorkspace.tenderWorkspacePage{max-width:1240px;margin:0 auto;padding-inline:0}.tenderWorkspacePage .docToolbar{gap:10px}.tenderWorkspacePage .docBrand{margin:18px 0 8px}.tenderWorkspacePage .docColumns{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tenderWorkspacePage .docColumns>*{min-width:0}.tenderWorkspacePage .docTableWrap,.tenderWorkspacePage .docSheetWrap,.tenderWorkspacePage .workTableWrap{max-width:100%;min-width:0;overflow:auto}.tenderWorkspacePage .workBoard{max-width:100%;min-width:0}.tenderWorkspacePage .geoMetricList dd{overflow-wrap:anywhere}.tenderWorkspacePage .geoRegion,.tenderWorkspacePage .geoTravel{border-color:var(--border)}.tenderWorkspacePage .geoLicense,.tenderWorkspacePage .geoMetricList small{color:var(--text-muted)}.tenderWorkspacePage .geoMapLegend{background:var(--surface);border-color:var(--border);color:var(--text)}.tenderWorkspacePage .projectMap{max-width:100%;height:520px!important}.tenderWorkspacePage .geoMapFrame{min-width:0}.tenderWorkspacePage .marketContext{min-width:0}.tenderWorkspacePage .marketBars li>div{min-width:0}.tenderWorkspacePage .marketBars li>div>*{overflow-wrap:anywhere}
@media(max-width:1100px){.tenderWorkspacePage .analysisGrid,.tenderOverviewGrid{grid-template-columns:minmax(0,1fr)}.tenderFilterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){body:has(.customerHeader) .tendersPage .tenderCard:has(.evaluationCardScore){grid-template-columns:80px minmax(0,1fr);gap:14px;padding:16px}.tendersPage .tenderCardAside{grid-column:2;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.tendersPage .evaluationCardScore{flex-direction:column;grid-column:1;grid-row:1/3}.tendersPage .evaluationCardScore .matchHybridRing{width:72px;height:72px}.tendersPage .evaluationCardScore .matchHybridRing strong{font-size:1.6rem!important}.tendersPage .evaluationCardScore .matchHybridRing small{font-size:.85rem!important}.tenderFilterPrimary{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tenderFilterPrimary .filterSearch{grid-column:1/-1}.tenderWorkspacePage .docColumns{grid-template-columns:1fr}}
@media(max-width:760px){.tenderContextHeading{grid-template-columns:minmax(0,1fr) 98px;gap:12px}.tenderCompactMatch>span{padding:8px;gap:7px}.tenderCompactMatch strong{font-size:1.4rem}.tenderCompactMatch small{font-size:.65rem}.tenderFacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tenderFacts dd{font-size:.9rem}.tenderContextLabels{font-size:.73rem;gap:5px 10px}.tenderWorkspacePage :is(.detailSection,.analysisCard,.sourceCard,.workflowCard,.analysisStatusCard,.docCard,.tzPanel){padding:16px}.tenderWorkspacePage .analysisTable th{display:none}.tenderWorkspacePage .analysisTable td{display:block!important;width:100%;padding:7px 0;border:0;overflow-wrap:anywhere}.tenderWorkspacePage .analysisTable td:before{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:3px}.tenderWorkspacePage .analysisTable td:first-child:before{display:none}.tenderWorkspacePage .analysisTable td:first-child{margin-bottom:6px}.tenderWorkspacePage .analysisTable td small{margin-top:4px}.tenderWorkspacePage .analysisTable tr{padding:16px 0;border-bottom:1px solid var(--border)}.tenderWorkspacePage .analysisTable td a{min-height:44px}.tenderWorkspacePage .analysisMatrix .tenderDisclosure{margin:8px 0 0}.tenderWorkspacePage .analysisSourceDrawer{max-width:100vw}.tenderWorkspacePage .visualCriteria{grid-template-columns:1fr}.tenderWorkspacePage .visualTimelines{grid-template-columns:1fr}.tenderWorkspacePage .geoWorkspaceSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.tenderWorkspacePage .geoDrawingPanel form{grid-template-columns:1fr}.tenderWorkspacePage .projectMap{height:400px!important}.tenderSourceStatus>summary>span{display:block;margin:2px 0 0 18px}.tzSavedFilterContent form{grid-template-columns:1fr}.tenderSectionTabs{gap:0}.tenderSectionTabs a{padding:10px 12px}.tenderWorkspacePage .analysisTopActions{display:grid;gap:12px;margin:0 0 16px}.tenderWorkspacePage .analysisTopOwner a{margin-left:0;display:inline-flex;min-height:44px;align-items:center}.tenderWorkspacePage .analysisPhases{grid-template-columns:1fr}.tenderWorkspacePage .analysisStatusActions{flex-wrap:wrap}.tenderWorkspacePage .analysisFacts{grid-template-columns:1fr}.tenderWorkspacePage .analysisBandAxis{gap:12px}.tenderWorkspacePage .analysisNumber{font-size:clamp(1.35rem,7vw,1.9rem)}}
@media(max-width:420px){body:has(.customerHeader) .tenderContextHeading,.tenderContextHeading{grid-template-columns:1fr}.tenderCompactMatch{flex-direction:row;justify-content:flex-start;gap:10px}.tenderCompactMatch>span{padding:5px 10px}.tenderCompactMatch small{text-align:left;font-size:.75rem}.tenderWorkspacePage .tenderContext h1{font-size:1.25rem}.tenderWorkspacePage .tenderFacts{gap:10px}.tenderFilterGrid{grid-template-columns:1fr}.tenderWorkspacePage .analysisCardHeading .matchHybrid{flex-wrap:wrap}.tenderWorkspacePage .geoMapLegend{position:static!important;max-width:none;max-height:180px;margin:10px 0}.tenderWorkspacePage .geoMapLegend[hidden]{display:none!important}.tenderWorkspacePage .tenderFacts dt{font-size:.7rem}.tenderWorkspacePage .docStats{grid-template-columns:1fr}.tenderWorkspacePage .geoMetricList{grid-template-columns:minmax(0,1fr) minmax(60px,auto)}.tenderWorkspacePage .analysisSourceDrawer>header{gap:8px}.tenderWorkspacePage .analysisSourceDrawer>header h2{font-size:1.1rem}}
@media print{.tenderNavigation,.tenderSubnav,.tenderUtilityLinks,.tenderAnalysisTools{display:none!important}.tenderWorkspacePage{--analysis-border:#bbb;--analysis-muted:#444;--analysis-action:#333}.tenderWorkspacePage .analysisView[hidden]{display:block!important}.tenderWorkspacePage .analysisCard{break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.tenderWorkspacePage *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Breadcrumbs retain context without repeating a long tender title above the title. */
body:has(.tenderWorkspacePage) .tzBreadcrumbs ol{flex-wrap:nowrap;min-width:0;overflow:hidden}body:has(.tenderWorkspacePage) .tzBreadcrumbs li{min-width:0;max-width:55ch;flex-shrink:1}body:has(.tenderWorkspacePage) .tzBreadcrumbs :is(a,span){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body:has(.tenderWorkspacePage) .tzBreadcrumbs li:last-child{flex-shrink:0;max-width:45%}.tenderHardStop{color:var(--danger);font-weight:600}.tenderValueNotice{color:var(--warning)}
@media(max-width:760px){body:has(.tenderWorkspacePage) .tzBreadcrumbs ol:has(li:nth-child(3))>li:first-child{display:none}body:has(.tenderWorkspacePage) .tzBreadcrumbs ol:has(li:nth-child(4))>li:nth-last-child(2){display:none}.tenderWorkspacePage .geoCheck,.tenderWorkspacePage .geoObjectProperties{overflow-wrap:anywhere}.tenderWorkspacePage .geoMapTools,.tenderWorkspacePage .geoSearchRow{flex-wrap:wrap}.tenderWorkspacePage .geoInline{display:flex;gap:8px;align-items:start}}
.tenderContext :is(.status-interesting,.status-preparing),.tendersPage :is(.status-interesting,.status-preparing){background:var(--success-bg);color:var(--success)}
body:has(.tenderWorkspacePage) :is(.customerHeader,.customerSidebar) :focus-visible{outline:3px solid var(--action);outline-offset:3px}
.tenderWorkspacePage .tenderEmptyState{padding:14px 16px;background:var(--surface-subtle);color:var(--text-muted);border-radius:8px;margin:16px 0}

.tenderWorkspacePage .docReviewActions{flex-basis:100%;border-top:1px solid var(--border);margin-top:6px}.tenderWorkspacePage .docReviewActions>summary{min-height:44px;align-content:center;cursor:pointer;font-size:.88rem;font-weight:600}.tenderWorkspacePage .docReviewActions>div{display:flex;gap:10px;flex-wrap:wrap;padding:8px 0}.tenderWorkspacePage .docList{margin-top:14px}.tenderWorkspacePage .docCard>p{margin:8px 0}.tenderWorkspacePage .docCard>[data-retention]{align-items:center}
@media(max-width:760px){body:has(.tenderWorkspacePage) .tzBreadcrumbs ol:has(li:nth-child(3))>li:nth-child(2)::before{display:none}}
/* Matching uses one alignment grid, including the fully expanded state. */
.tenderWorkspacePage .matchReport{padding:24px}.tenderWorkspacePage .matchReportHeader{display:grid;grid-template-columns:minmax(0,1fr) 252px;gap:28px;align-items:start;margin-bottom:20px}.tenderWorkspacePage .matchReportHeader>div{min-width:0}.tenderWorkspacePage .matchReportHeader h2{margin:4px 0 10px}.tenderWorkspacePage .matchReportHeader .eyebrow{margin:0}.tenderWorkspacePage .matchReportHeader .matchReportIntro{margin:0;max-width:78ch;font-size:.9rem;line-height:1.65}.tenderWorkspacePage .matchReportMetrics{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle);min-width:0}.matchReportScore{display:grid;place-items:center;min-width:0}.tenderWorkspacePage .matchReportScore .matchHybridRing{width:76px;height:76px}.tenderWorkspacePage .matchReportScore .matchHybridRing strong{font-size:1.7rem!important}.tenderWorkspacePage .matchReportScore .matchHybridRing small{font-size:.9rem!important}.matchReportScore .matchHybridText{display:none}.matchReportMetrics dl{display:grid;gap:10px;margin:0;min-width:0}.matchReportMetrics dt{font-size:.73rem;color:var(--text-muted);line-height:1.4}.matchReportMetrics dd{margin:2px 0 0;font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.3}.tenderWorkspacePage .matchReport>.analysisNotice{margin:0 0 24px}.tenderWorkspacePage .matchReport .tenderDisclosure{margin:24px 0 0;padding:8px 0 0}.tenderWorkspacePage .matchReport .tenderDisclosure>summary{min-height:44px;font-size:.9rem;line-height:1.5}.tenderWorkspacePage .matchReport .analysisTextAction{margin-top:20px}.tenderWorkspacePage .analysisView>.matchReport:last-child{margin-bottom:0}
/* ABC headings, statuses and rule cards keep a common baseline. */
.tenderWorkspacePage .matchReport>.abcChartAligned{margin:0;padding:0;border:0}.tenderWorkspacePage .abcChartAligned .abcHeading{display:grid;grid-template-columns:minmax(0,1fr) 56px;gap:16px;align-items:center;margin:0 0 12px}.tenderWorkspacePage .abcChartAligned .abcHeading .eyebrow{margin:0 0 4px}.tenderWorkspacePage .abcChartAligned .abcHeading h3{margin:0;line-height:1.4}.tenderWorkspacePage .abcChartAligned .abcGrade{display:grid;place-items:center;width:56px;height:56px;padding:0;border-radius:8px;font-size:32px;line-height:1;background:var(--surface-subtle)}.tenderWorkspacePage .abcChartAligned .abcIntro{margin:0 0 16px;max-width:90ch;font-size:.88rem;line-height:1.6}.abcStatusTable{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left;margin:0}.abcStatusTable thead th:first-child{width:58%;text-align:left;padding-left:0}.abcStatusTable thead th:not(:first-child){width:14%;text-align:center}.abcStatusTable thead th{padding:10px 8px;color:var(--text-muted);font-size:.75rem;font-weight:500;line-height:1.5;border-bottom:1px solid var(--border)}.abcStatusTable tbody th{padding:16px 16px 16px 0;font-size:.88rem;font-weight:600;vertical-align:middle;border-bottom:1px solid var(--border)}.tenderWorkspacePage .abcStatusTable tbody th p{margin:6px 0 0;font-size:.82rem;font-weight:400;line-height:1.6;color:var(--text-muted)}.abcStatusTable td{padding:16px 8px;vertical-align:middle;text-align:center;border-bottom:1px solid var(--border);color:var(--text-muted)}.abcStatusCell b{display:inline-grid;place-items:center;width:32px;height:32px;border:1.5px solid currentColor;border-radius:50%;font-size:21px;line-height:1}.abcStatusCell--pass{color:var(--success)!important}.abcStatusCell--unknown{color:var(--warning)!important}.abcStatusCell--fail{color:var(--danger)!important}.tenderWorkspacePage .abcChartAligned .abcRules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;margin:20px 0 12px}.tenderWorkspacePage .abcChartAligned .abcRule{padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface-subtle);min-width:0}.tenderWorkspacePage .abcChartAligned .abcRule.isCurrent{border-color:var(--action);box-shadow:inset 0 0 0 1px var(--action)}.abcRule>strong{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:baseline;font-size:.8rem;line-height:1.5}.abcRuleLetter{font-family:var(--font-interface);font-size:1.05rem}.tenderWorkspacePage .abcChartAligned .abcRule p{margin:10px 0 0;font-size:.82rem;line-height:1.6}.abcStoredReasons{margin:12px 0 0}.abcStoredReasons>summary,.matchFactorSummary>summary{cursor:pointer;min-height:36px;align-content:center;font-size:.82rem;color:var(--text-muted)}.tenderWorkspacePage .abcStoredReasons ul,.tenderWorkspacePage .matchReasonList{margin:10px 0 0;padding-left:20px;display:grid;gap:8px;font-size:.85rem;line-height:1.6}.tenderWorkspacePage .matchLots{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.tenderWorkspacePage .matchLots>h3{margin:0 0 8px}.tenderWorkspacePage .matchLots>p{margin:0;font-size:.85rem}.tenderWorkspacePage .matchLots .tenderDisclosure{margin-top:10px}.tenderWorkspacePage .matchAllCriteria .matchCriteriaTable{margin-top:12px}.matchCriteriaTable th:first-child{width:22%}.matchCriteriaTable th:nth-child(2){width:60%}.matchCriteriaTable th:last-child{width:18%}.tenderWorkspacePage .matchAllCriteria .matchFactorSummary{margin-top:16px}.tenderWorkspacePage .matchFactorSummary h4{margin:16px 0 6px}
/* One shared column definition for labels, bars, values and weights. */
.tenderWorkspacePage .weightedChartAligned{margin:12px 0 0}.tenderWorkspacePage .weightedChartAligned .weightedHeading h3{margin:0 0 8px}.tenderWorkspacePage .weightedChartAligned .weightedHeading p{margin:0;font-size:.85rem}.tenderWorkspacePage .weightedChartAligned .weightedLegend{margin:8px 0 18px;max-width:90ch;font-size:.82rem;color:var(--text-muted);line-height:1.6}.weightedColumnHead,.weightedChartAligned .weightedScoredRow{display:grid;grid-template-columns:minmax(130px,1fr) minmax(160px,2fr) 148px 66px;column-gap:16px;align-items:center}.weightedColumnHead{padding:10px 0;border-bottom:1px solid var(--border);font-size:.73rem;color:var(--text-muted)}.weightedColumnHead>span:nth-child(3),.weightedColumnHead>span:last-child{text-align:right}.weightedChartAligned .weightedScoredRow{padding:14px 0;row-gap:4px;border-bottom:1px solid var(--border-soft);min-width:0}.weightedScoredRow .weightedLabel{font-size:.85rem;line-height:1.5;min-width:0;overflow-wrap:anywhere}.weightedChartAligned .weightedTrack{height:10px;margin:0;min-width:0;align-self:center}.weightedChartAligned .weightedValue,.weightedChartAligned .weightedWeight{text-align:right;font-size:.8rem;line-height:1.5;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}.weightedMobileLabel{display:none}.weightedChartAligned .weightedEvidence{grid-column:1/-1;font-size:.8rem;margin:2px 0 0}.weightedChartAligned .weightedEvidence>summary{min-height:30px;align-content:center;cursor:pointer;color:var(--text-muted)}.tenderWorkspacePage .weightedEvidence>p{margin:6px 0 0;padding:10px 12px;background:var(--surface-subtle);border-radius:6px;font-size:.82rem;line-height:1.6}.tenderWorkspacePage .weightedOmitted{margin:20px 0 0}.tenderWorkspacePage .weightedOmitted h4{font-size:.9rem;margin:0 0 6px}.tenderWorkspacePage .weightedOmitted>p{font-size:.82rem;margin:0 0 12px;color:var(--text-muted)}.weightedOmittedGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.weightedOmittedItem{min-width:0;border:1px solid var(--border);border-radius:7px;background:var(--surface-subtle)}.weightedOmittedItem>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;position:relative;padding:12px 12px 12px 30px;list-style:none;cursor:pointer;min-height:64px;font-size:.8rem;line-height:1.5}.weightedOmittedItem>summary::-webkit-details-marker{display:none}.weightedOmittedItem>summary:before{content:'▸';position:absolute;left:12px;top:12px;color:var(--text-muted)}.weightedOmittedItem[open]>summary:before{content:'▾'}.weightedOmittedItem>summary>strong{grid-column:1;font-size:.82rem;overflow-wrap:anywhere}.weightedOmittedItem>summary>span:first-of-type{grid-column:1;grid-row:2;font-size:.75rem;color:var(--text-muted)}.weightedOmittedItem>summary>span:last-child{grid-column:2;grid-row:1;font-size:.73rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.tenderWorkspacePage .weightedOmittedItem>p{padding:0 12px 12px 30px;margin:0;font-size:.8rem;line-height:1.6;overflow-wrap:anywhere}.tenderWorkspacePage .weightedChartAligned .weightedFootnote{margin:16px 0 0;font-size:.8rem;line-height:1.6;color:var(--text-muted)}
.tenderWorkspacePage .analysisStatusHeading{align-items:start}.tenderWorkspacePage .analysisStatusHeading>div:first-child{min-width:0}.tenderWorkspacePage .analysisStatusActions{align-self:start;align-items:center;min-height:44px}.tenderWorkspacePage .analysisStatusHeading h2{margin:3px 0 8px}.tenderWorkspacePage .analysisStatusCard .analysisAction{min-height:64px;align-items:center;margin-top:16px;border:0}.tenderWorkspacePage .analysisStatusCard .analysisAction>div{min-width:0;font-size:.88rem;line-height:1.5}
@media(max-width:1100px){.tenderWorkspacePage .matchReportHeader{grid-template-columns:1fr;gap:16px}.tenderWorkspacePage .matchReportMetrics{grid-template-columns:64px minmax(0,1fr);gap:16px;max-width:none;padding:12px}.matchReportMetrics dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tenderWorkspacePage .matchReportScore .matchHybridRing{width:64px;height:64px}.tenderWorkspacePage .matchReportScore .matchHybridRing strong{font-size:1.4rem!important}.tenderWorkspacePage .matchReportScore .matchHybridRing small{font-size:.8rem!important}.weightedColumnHead,.weightedChartAligned .weightedScoredRow{grid-template-columns:minmax(120px,1fr) minmax(120px,1.5fr) 130px 56px;column-gap:12px}}
@media(max-width:760px){.tenderWorkspacePage .matchReport{padding:16px}.weightedColumnHead{display:none}.weightedChartAligned .weightedScoredRow{grid-template-columns:minmax(0,1fr) auto;row-gap:8px;padding:16px 0}.weightedScoredRow .weightedLabel{grid-column:1;grid-row:1}.weightedScoredRow .weightedWeight{grid-column:2;grid-row:1}.weightedScoredRow .weightedTrack{grid-column:1/-1;grid-row:2}.weightedScoredRow .weightedValue{grid-column:1/-1;grid-row:3;text-align:left}.weightedScoredRow .weightedEvidence{grid-column:1/-1;grid-row:4}.weightedMobileLabel{display:inline}.weightedOmittedGrid{grid-template-columns:1fr}.tenderWorkspacePage .abcChartAligned .abcRules{grid-template-columns:1fr;gap:10px}.abcStatusTable thead{display:none}.abcStatusTable tbody,.abcStatusTable tbody tr{display:block;width:100%}.abcStatusTable tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:16px 0;border-bottom:1px solid var(--border)}.abcStatusTable tbody th{display:block;grid-column:1/-1;padding:0 0 12px;border:0}.abcStatusTable td{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 2px;border:0;font-size:.8rem}.abcStatusTable td:before{content:attr(data-label);font-size:.7rem;color:var(--text-muted);line-height:1.4;min-height:28px}.tenderWorkspacePage .abcChartAligned .abcIntro{font-size:.85rem}.tenderWorkspacePage .matchCriteriaTable th{width:auto}.matchReportMetrics dt{font-size:.7rem}.matchReportMetrics dd{font-size:.9rem}.tenderWorkspacePage .matchReportHeader .matchReportIntro{font-size:.85rem}.tenderWorkspacePage .analysisStatusHeading{gap:12px}.tenderWorkspacePage .analysisStatusActions{min-height:0}.tenderWorkspacePage .analysisStatusCard .analysisAction{gap:12px}}
.tenderWorkspacePage .abcStatusTable tbody th{background:transparent;color:var(--text)}


/* UI/UX-rework 2026-10-29: shared composition and accessibility */
/* The dossier heading is one compact context block: relevant facts first. */
.tenderWorkspacePage .tenderContext{margin-bottom:0}
.tenderWorkspacePage .tenderContextHeading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin:0 0 8px}
.tenderWorkspacePage .tenderContextHeading h1{max-width:64ch;margin:2px 0 8px;line-height:1.23}
.tenderWorkspacePage .tenderContextLabels{gap:6px 12px;line-height:1.4}
.tenderWorkspacePage .tenderFacts{margin:10px 0 0;padding:10px 0 14px;gap:10px 20px;grid-template-columns:minmax(0,1.15fr) repeat(3,minmax(0,1fr))}
.tenderWorkspacePage .tenderFacts>div:first-child dd{font-size:1rem;font-weight:700}
.tenderWorkspacePage .tenderCompactMatch{gap:2px;align-items:center}
.tenderWorkspacePage .tenderCompactMatch>span{padding:8px 12px}
.tenderWorkspacePage .tenderNavigation{position:relative;top:auto;z-index:3;margin:0 0 12px}
.tenderWorkspacePage .tenderSectionTabs a{min-height:44px;padding:8px 12px}
.tenderWorkspacePage .tenderSourceStatus{margin:4px 0 14px;background:transparent;border:0;border-top:1px solid var(--border)}
.tenderWorkspacePage .tenderSourceStatus>summary{padding:6px 0;color:var(--text-muted);min-height:40px;font-size:.78rem;font-weight:500}
.tenderWorkspacePage .tenderSourceStatus>summary span{margin-left:8px}
.tenderWorkspacePage .tenderAlert{margin:6px 0 10px;padding:9px 12px;font-size:.82rem}
.tenderWorkspacePage .detailMain{gap:16px}
.tenderWorkspacePage .tenderSectionHeading{margin-bottom:0}
.tenderWorkspacePage .tenderOverviewGrid{gap:16px}
.tenderWorkspacePage .tenderOverviewGrid>.detailSection{padding:20px}
.tenderWorkspacePage .analysisSecondaryNav{display:flex;flex-wrap:wrap;gap:4px 16px}
.tenderWorkspacePage .analysisSecondaryNav a{font-size:.86rem}
.tenderWorkspacePage .matchReportHeader{margin-bottom:16px}
.tenderWorkspacePage .matchReportHeader h2{margin-bottom:6px}
.tenderWorkspacePage .matchReportHeader .matchReportIntro{max-width:70ch;margin:6px 0}
.tenderWorkspacePage .matchKeyFindings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
.tenderWorkspacePage .matchKeyFindings article{min-width:0;background:var(--surface-subtle);border:1px solid var(--border);padding:16px;border-radius:8px}
.tenderWorkspacePage .matchKeyFindings article>span{display:block;color:var(--text-muted);font-size:.75rem;line-height:1.4;margin-bottom:8px}
.tenderWorkspacePage .matchKeyFindings strong{display:block;font-size:.98rem;line-height:1.4}
.tenderWorkspacePage .matchKeyFindings p{font-size:.85rem;line-height:1.55;margin:8px 0 0;color:var(--text-muted)}
.tenderWorkspacePage .matchABCDetails{padding:0;border-top:1px solid var(--border)}
.tenderWorkspacePage .matchABCDetails>summary,.tenderWorkspacePage .matchContribution>summary{padding:8px 0}
.tenderWorkspacePage .matchABCDetails .abcChart{margin-top:16px}
.tenderWorkspacePage .tenderAnalysisTools{margin:16px 0}
.tenderWorkspacePage .tenderAnalysisTools>summary{color:var(--action)}
.tenderWorkspacePage .requirementStatusSummary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 8px}
.tenderWorkspacePage .requirementStatusSummary>div{background:var(--surface-subtle);border:1px solid var(--border);border-radius:8px;padding:12px 14px;display:grid;gap:4px;align-content:start}
.tenderWorkspacePage .requirementStatusSummary strong{font-size:1.35rem;font-variant-numeric:tabular-nums;line-height:1.2}
.tenderWorkspacePage .requirementStatusSummary span{font-size:.78rem;color:var(--text-muted);line-height:1.45}
.tenderWorkspacePage .requirementDetails{margin-top:16px}
.tenderWorkspacePage .requirementDetails>summary{min-height:44px;cursor:pointer;font-weight:600;color:var(--text)}
.tenderWorkspacePage .requirementDetails .analysisMatrix{min-width:0}
.tenderWorkspacePage .analysisTable :is(th,td){overflow-wrap:anywhere;vertical-align:top}
.tenderMobileNavigation{display:none}
.tenderWorkspacePage .documentList li{min-width:0}
.tenderWorkspacePage .documentVersion{min-width:0}
@media(max-width:940px){.tenderWorkspacePage .matchKeyFindings{grid-template-columns:1fr 1fr}.tenderWorkspacePage .tenderFacts{grid-template-columns:repeat(2,minmax(0,1fr))}.tenderWorkspacePage .requirementStatusSummary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .tenderWorkspacePage .tenderContextHeading{grid-template-columns:minmax(0,1fr) auto}
 .tenderWorkspacePage .tenderContextHeading h1{font-size:1.25rem;margin-bottom:6px}
 .tenderWorkspacePage .tenderCompactMatch{min-width:70px}
 .tenderWorkspacePage .tenderFacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin:6px 0 0;padding:10px 0}
 .tenderWorkspacePage .tenderFacts>div:nth-child(3),.tenderWorkspacePage .tenderFacts>div:nth-child(4){display:none}
 .tenderWorkspacePage .tenderBack{min-height:36px}
 .tenderWorkspacePage .tenderNavigation{border:0;margin-bottom:10px}
 .tenderWorkspacePage .tenderSectionTabs{gap:2px;border-bottom:1px solid var(--border)}
 .tenderWorkspacePage .tenderSectionTabs a{min-height:44px;padding:8px 12px}
 .tenderWorkspacePage .tenderMobileNavigation{display:block;position:relative;margin:4px 0 0;font-size:.8rem}
 .tenderWorkspacePage .tenderMobileNavigation>summary{color:var(--action);min-height:40px;display:flex;align-items:center;cursor:pointer}
 .tenderWorkspacePage .tenderMobileNavigation>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 0 12px}
 .tenderWorkspacePage .tenderMobileNavigation a{display:flex;min-height:44px;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:7px;text-decoration:none;color:var(--text)}
 .tenderWorkspacePage .tenderSourceStatus{margin:0 0 10px}
 .tenderWorkspacePage .matchKeyFindings{grid-template-columns:1fr;gap:8px}
 .tenderWorkspacePage .matchKeyFindings article{padding:12px 14px}
 .tenderWorkspacePage .matchKeyFindings p{margin-top:4px}
 .tenderWorkspacePage .requirementStatusSummary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .tenderWorkspacePage .requirementStatusSummary>div{padding:12px}
 .tenderWorkspacePage .matchReport{padding:16px}
 .tenderWorkspacePage .analysisSecondaryNav{gap:2px 10px}
 .tenderWorkspacePage .analysisSecondaryNav a{font-size:.78rem}
 .tenderWorkspacePage .tenderOverviewGrid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:420px){
 .tenderWorkspacePage .tenderContextHeading{grid-template-columns:minmax(0,1fr) 76px;align-items:start;gap:10px}
 .tenderWorkspacePage .tenderCompactMatch{flex-direction:column;align-items:center}
 .tenderWorkspacePage .tenderCompactMatch>span{padding:5px 8px}
 .tenderWorkspacePage .tenderCompactMatch small{font-size:.63rem;text-align:center;line-height:1.3}
}
