/* V31.22.10.41-D cumulative advanced PMO analytics cockpit. */
.v41-analytics-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:6px;border:1px solid #dbeafe;border-radius:11px;background:#f8fafc;position:sticky;top:0;z-index:2}.v41-analytics-tab{min-height:34px;padding:7px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#475569;font-size:11px;font-weight:750;cursor:pointer}.v41-analytics-tab:hover,.v41-analytics-tab:focus{background:#eff6ff;border-color:#bfdbfe}.v41-analytics-tab.active{background:#0f766e;color:#fff;border-color:#0f766e}.v41-analytics-tab-content{min-width:0}.v41-chart-grid-advanced .v41-chart-card{grid-column:span 3}.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-B06"],.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-B12"],.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-D14"]{grid-column:span 6}.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-C06"],.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-D08"]{grid-column:span 3}.v41-legend.inline{display:flex;flex-wrap:wrap;gap:8px}.v41-legend-item.static{display:inline-flex;width:auto;background:transparent;padding:2px 4px;cursor:default}.v41-line-wrap{display:grid;gap:5px;min-width:0}.v41-line-chart,.v41-scatter{display:block;width:100%;height:auto;min-height:230px;overflow:visible}.v41-grid-line{stroke:#e2e8f0;stroke-width:1}.v41-axis-label{font-size:9px;fill:#64748b}.v41-axis-title{font-size:10px;font-weight:700;fill:#475569}.v41-line{stroke-linejoin:round;stroke-linecap:round}.v41-point,.v41-scatter-point{cursor:pointer;stroke:#fff;stroke-width:1.5}.v41-point:hover,.v41-point:focus,.v41-scatter-point:hover,.v41-scatter-point:focus{stroke:#0f172a;stroke-width:2;outline:none}.v41-heatmap-wrap{max-width:100%;overflow:auto}.v41-heatmap{width:max-content;min-width:100%;border-collapse:separate;border-spacing:3px}.v41-heatmap th{max-width:130px;padding:4px 6px;color:#475569;font-size:9px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v41-heatmap td{padding:0}.v41-heat-cell{display:grid;place-content:center;min-width:54px;min-height:34px;padding:4px;border:1px solid color-mix(in srgb,#dc2626 var(--heat),#e2e8f0);border-radius:6px;background:color-mix(in srgb,#fee2e2 var(--heat),#f8fafc);color:#7f1d1d;cursor:pointer}.v41-heat-cell:hover,.v41-heat-cell:focus{outline:2px solid #2563eb}.v41-heat-cell b{font-size:10px}.v41-pareto{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,140px);gap:10px;align-items:stretch}.v41-pareto-cumulative{display:flex;align-items:end;gap:3px;min-height:200px;padding:10px;border-left:1px solid #e2e8f0}.v41-pareto-cumulative span{display:grid;grid-template-rows:1fr auto;align-items:end;gap:3px;flex:1;height:100%}.v41-pareto-cumulative i{display:block;min-height:2px;border-radius:4px 4px 0 0;background:linear-gradient(#38bdf8,#0f766e)}.v41-pareto-cumulative small{font-size:7px;color:#64748b;writing-mode:vertical-rl;transform:rotate(180deg)}.v41-signed-bars{display:grid;gap:6px;max-height:330px;overflow:auto}.v41-signed-row{display:grid;grid-template-columns:minmax(100px,150px) minmax(100px,1fr) 60px;gap:8px;align-items:center;width:100%;padding:7px;border:0;border-radius:8px;background:#f8fafc;text-align:left;cursor:pointer}.v41-signed-row:hover,.v41-signed-row:focus{background:#eff6ff;outline:1px solid #bfdbfe}.v41-signed-track{position:relative;display:block;height:12px;border-radius:999px;background:#e2e8f0}.v41-signed-track em{position:absolute;left:50%;top:-3px;width:1px;height:18px;background:#475569}.v41-signed-track i{position:absolute;top:0;height:100%;border-radius:999px}.v41-signed-track i.negative{background:#dc2626}.v41-signed-track i.positive{background:#16a34a}.v41-signed-row b{font-size:10px;text-align:right}.v41-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v41-metric{display:grid;gap:4px;min-height:86px;padding:10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.v41-metric span{font-size:9px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.v41-metric b{font-size:19px}.v41-metric small{font-size:9px;color:#64748b}.v41-tile-grid{display:flex;flex-wrap:wrap;gap:6px;align-items:stretch;max-height:500px;overflow:auto}.v41-tile{flex:1 0 var(--tile-size);min-width:70px;max-width:170px;min-height:72px;padding:8px;border:1px solid #cbd5e1;border-radius:9px;background:#f8fafc;text-align:left;cursor:pointer;overflow:hidden}.v41-tile.v41-series-red{background:#fff1f2;border-color:#fecaca;color:#991b1b}.v41-tile.v41-series-amber{background:#fffbeb;border-color:#fde68a;color:#92400e}.v41-tile.v41-series-green{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.v41-tile.v41-series-blue{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.v41-tile.v41-series-gray{background:#f8fafc;border-color:#cbd5e1;color:#475569}.v41-tile b,.v41-tile span,.v41-tile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v41-tile b{font-size:10px}.v41-tile span,.v41-tile small{font-size:8px;margin-top:3px}.v41-pivot-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:10px;border:1px solid #dbeafe;border-radius:10px;background:#f8fafc}.v41-pivot-controls label{display:grid;gap:4px;min-width:180px}.v41-pivot-controls label span{font-size:9px;font-weight:700;color:#475569}.v41-pivot-controls select{min-height:34px;padding:5px 8px;border:1px solid #cbd5e1;border-radius:7px;background:#fff}.v41-pivot-controls small{flex:1 1 280px;color:#64748b}.v41-explorer{display:grid;gap:12px}.v41-explorer>.v41-chart-card{width:100%}.v41-series-passed,.v41-series-approved-ready,.v41-series-cleared,.v41-series-closed{stroke:#16a34a;background:#16a34a}.v41-series-failed,.v41-series-rejected,.v41-series-open-failed{stroke:#dc2626;background:#dc2626}.v41-series-pending-active,.v41-series-submitted-review,.v41-series-open,.v41-series-in-progress{stroke:#0891b2;background:#0891b2}.v41-series-retest,.v41-series-waived{stroke:#7c3aed;background:#7c3aed}.v41-series-unknown,.v41-series-unassigned{stroke:#64748b;background:#64748b}.v41-series-critical{stroke:#991b1b;background:#991b1b}.v41-series-high{stroke:#dc2626;background:#dc2626}.v41-series-medium{stroke:#d97706;background:#d97706}.v41-series-low{stroke:#16a34a;background:#16a34a}
@media(max-width:1279px){.v41-chart-grid-advanced .v41-chart-card,.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-B06"],.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-B12"],.v41-chart-grid-advanced .v41-chart-card[data-chart-id="CH-D14"]{grid-column:span 1}.v41-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:899px){.v41-analytics-tabs{position:static}.v41-pareto{grid-template-columns:1fr}.v41-pareto-cumulative{display:none}.v41-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v41-signed-row{grid-template-columns:minmax(90px,120px) minmax(80px,1fr) 50px}}
@media(max-width:620px){.v41-analytics-tab{flex:1 1 calc(50% - 6px)}.v41-metric-grid{grid-template-columns:1fr}.v41-signed-row{grid-template-columns:1fr}.v41-pivot-controls label{min-width:100%}.v41-line-chart,.v41-scatter{min-width:620px}.v41-line-wrap,.v41-chart-body:has(.v41-scatter){overflow:auto}}
@media print{.v41-analytics-tabs{display:none}.v41-pareto-cumulative{display:none}.v41-tile-grid,.v41-signed-bars{max-height:none;overflow:visible}}
/* V31.23.10.66-P2 — live Programme Snapshot. Read-only Plan + Native Agile projection. */
.programme-snapshot{display:grid;gap:16px;min-width:0}.programme-snapshot-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:13px;border:1px solid #cbd5e1;border-radius:11px;background:#fff}.programme-snapshot-head h3{margin:3px 0 4px;font-size:16px}.programme-snapshot-head p{margin:0;color:#64748b;font-size:11px}.programme-snapshot-kpis{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:7px}.programme-snapshot-kpis span{display:grid;justify-items:center;padding:8px 10px;border:1px solid #dbeafe;border-radius:8px;background:#f8fafc}.programme-snapshot-kpis b{font-size:17px;color:#0f766e}.programme-snapshot-kpis small{font-size:8px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.programme-snapshot-section{display:grid;gap:9px;padding:12px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.programme-section-title{display:flex;justify-content:space-between;gap:12px;align-items:end}.programme-section-title h3{margin:0;font-size:14px}.programme-section-title p{margin:0;max-width:780px;color:#64748b;font-size:10px;text-align:right}.programme-table-wrap{max-width:100%;overflow:auto;border:1px solid #e2e8f0;border-radius:9px}.programme-matrix{width:100%;min-width:920px;border-collapse:separate;border-spacing:0;font-size:10px}.programme-matrix th{position:sticky;top:0;z-index:1;padding:8px 9px;border-right:1px solid #dbeafe;border-bottom:1px solid #cbd5e1;background:#1e4d73;color:#fff;text-align:center;white-space:nowrap}.programme-matrix th:first-child{text-align:left;left:0;z-index:2}.programme-matrix td{padding:7px 9px;border-right:1px solid #eef2f7;border-bottom:1px solid #eef2f7;text-align:center;vertical-align:middle}.programme-matrix tr:last-child td{border-bottom:0}.programme-matrix .programme-row-title{position:sticky;left:0;z-index:1;min-width:170px;background:#fff;font-weight:750;text-align:left;color:#0f172a}.programme-plan-cell.loaded{background:#dcfce7;color:#166534;font-weight:800}.programme-plan-cell.future{background:#f8fafc;color:#94a3b8}.programme-actual-cell{font-weight:800}.programme-release-cell{min-width:150px}.programme-release-cell b,.programme-release-cell small,.programme-stage-cell b,.programme-stage-cell small{display:block}.programme-release-cell small,.programme-stage-cell small{margin-top:2px;font-size:8px;opacity:.82}.programme-stage-cell{min-width:90px}.programme-stage-cell.na{background:#f1f5f9;color:#94a3b8}.programme-rag-red{background:#fee2e2!important;color:#991b1b}.programme-rag-amber{background:#fef3c7!important;color:#92400e}.programme-rag-green{background:#dcfce7!important;color:#166534}.programme-rag-blue{background:#dbeafe!important;color:#1e40af}.programme-rag-gray{background:#e2e8f0!important;color:#475569}.programme-authority-note{padding:10px 12px;border-left:4px solid #0f766e;border-radius:7px;background:#f0fdfa;color:#475569}.programme-authority-note p{margin:2px 0;font-size:9px;line-height:1.35}
@media(max-width:899px){.programme-snapshot-head,.programme-section-title{display:grid}.programme-snapshot-kpis{grid-template-columns:repeat(2,minmax(70px,1fr))}.programme-section-title p{text-align:left}.programme-matrix{min-width:820px}}
/* V31.23.10.66-P3: exact programme deliverable matrix + Excel-style release Gantt. */
.programme-gantt-matrix{min-width:1080px}.programme-gantt-cell{min-width:120px;padding:6px 8px!important}.programme-gantt-cell.future{background:#f8fafc;color:#94a3b8}.programme-gantt-track{height:8px;margin:2px 0;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.68);box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}.programme-gantt-track span{display:block;height:100%;border-radius:inherit}.programme-gantt-plan span{background:#2563eb}.programme-gantt-actual span{background:#16a34a}.programme-gantt-cell small{display:block;margin-top:3px;font-size:8px;font-weight:750}.programme-gantt-empty{color:#94a3b8}.programme-deliverable-matrix{min-width:2700px}.programme-deliverable-matrix thead tr:nth-child(2) th{top:32px;background:#2c678f}.programme-deliverable-cell{min-width:66px;padding:6px!important}.programme-deliverable-cell b,.programme-deliverable-cell small{display:block}.programme-deliverable-cell small{margin-top:2px;font-size:7px;opacity:.78}.programme-deliverable-cell.review{background:#eff6ff;color:#1d4ed8}.programme-deliverable-cell.signoff{background:#f0fdf4;color:#166534}
