:root{--pg-gray:#7a8790;--pg-coral:#d85b54;--pg-orange:#df7a22;--pg-gold:#d9a514;--pg-teal:#168f83;--pg-green:#27834f;--pg-purple:#7259a5;--pg-blue:#2876a8}
.progress-workspace{display:grid;gap:14px}#pwTabPanel{display:grid;gap:18px;min-width:0}.pw-refresh-hint{flex-basis:100%;font-size:14px;line-height:1.5}.progress-workspace button,.progress-workspace select,.progress-workspace input{font:inherit}.pw-topline{display:flex;align-items:center;justify-content:space-between;gap:14px}.pw-last-updated{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:11px}.pw-tabs{display:flex;gap:7px;overflow:auto;padding:4px;background:#e8eef2;border:1px solid var(--line);border-radius:12px}.pw-tab{appearance:none;border:0;border-radius:9px;background:transparent;color:#365064;padding:10px 14px;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}.pw-tab[aria-selected="true"]{background:#fff;color:var(--navy);box-shadow:0 3px 10px rgba(18,61,95,.12)}.pw-shared-filters{padding:13px 14px}.pw-filter-grid{display:grid;grid-template-columns:1.4fr repeat(5,minmax(120px,1fr));gap:9px;align-items:end}.pw-filter-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:9px}.pw-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pw-metric{appearance:none;text-align:left;border:1px solid transparent;border-radius:15px;padding:16px;background:#fff;box-shadow:0 8px 22px rgba(13,49,86,.09);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.pw-metric:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(13,49,86,.14)}.pw-metric:active{transform:translateY(1px);box-shadow:0 4px 10px rgba(13,49,86,.1)}.pw-metric.amber{background:#fff7dc;border-color:#ead58a}.pw-metric.purple{background:#f3effa;border-color:#d7c9ee}.pw-metric.green{background:#eaf7ef;border-color:#b9dcc8}.pw-metric.blue{background:#eaf4fb;border-color:#bbd8e9}.pw-metric .label{display:block;color:#4b6170;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.6px}.pw-metric strong{display:block;color:var(--navy);font-size:29px;line-height:1;margin-top:7px}.pw-metric small{display:block;color:#627582;font-size:10px;margin-top:6px}.pw-section{padding:16px}.pw-section-title{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.pw-section-title>div{flex:1 1 240px;min-width:0}.pw-section-title>.pw-badge,.pw-graph-head>.pw-badge{flex:0 0 auto;white-space:nowrap;overflow-wrap:normal;word-break:normal}.pw-section-title h2,.pw-section-title h3{margin:0;color:var(--navy)}.pw-section-title p{margin:4px 0 0;color:var(--muted);font-size:11px}.pw-list{display:grid;gap:10px}.pw-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:#fff}.pw-record:hover{border-color:#b8ccd8;box-shadow:0 5px 15px rgba(18,61,95,.07)}.pw-record-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:13px;font-weight:900;color:var(--navy)}.pw-record-meta{display:flex;flex-wrap:wrap;gap:4px 8px;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}.pw-meta-part{display:inline-block;min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal}.pw-meta-part+.pw-meta-part:before{content:"·";margin-right:8px}.pw-record-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}.pw-progress-button{appearance:none;border:0;background:transparent;width:100%;padding:0;margin:8px 0 0;text-align:left;cursor:pointer}.pw-progress-line{display:flex;justify-content:space-between;gap:10px;color:#405767;font-size:9px;font-weight:900;margin-bottom:5px}.pw-track{display:block;height:11px;background:#e5ebee;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}.pw-fill{display:block;height:100%;border-radius:999px;transition:width .35s ease}.stage-not-started{background:var(--pg-gray)}.stage-just-started{background:var(--pg-coral)}.stage-building{background:var(--pg-orange)}.stage-progress{background:var(--pg-gold)}.stage-almost{background:var(--pg-teal)}.stage-complete{background:var(--pg-green)}.pw-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;line-height:1;background:#edf1f3;color:#596a75}.pw-badge.amber{background:#fff1c9;color:#775600}.pw-badge.green{background:#e8f7ef;color:#21734a}.pw-badge.blue{background:#e8f1f8;color:#245c82}.pw-badge.purple{background:#f0ebf8;color:#634d91}.pw-badge.coral{background:#fdeceb;color:#9e423d}.pw-empty{padding:30px 20px;border:1px dashed #bdcbd4;border-radius:13px;text-align:center;color:#667985;background:#f9fbfc;line-height:1.5}.pw-folder-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:13px;min-height:520px}.pw-folder-nav{padding:12px;align-self:start;position:sticky;top:14px;max-height:calc(100vh - 120px);overflow:auto}.pw-folder-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:3px 3px 10px}.pw-folder-tree{display:grid;gap:4px}.pw-folder-group-label{margin:12px 5px 5px;color:#6b7d88;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.pw-folder{appearance:none;width:100%;border:0;border-radius:9px;padding:9px 10px;background:transparent;color:#29465a;text-align:left;font-size:11px;font-weight:850;cursor:pointer;display:flex;align-items:center;gap:8px}.pw-folder:hover{background:#eef5f7}.pw-folder.active{background:#e3f0f5;color:#0f486c;box-shadow:inset 3px 0 0 var(--pg-blue)}.pw-folder-icon{width:19px;height:15px;border-radius:3px;background:var(--folder-color,#2876a8);box-shadow:inset 0 -2px 0 rgba(0,0,0,.12);flex:0 0 auto;position:relative}.pw-folder-icon:before{content:"";position:absolute;left:1px;top:-4px;width:9px;height:5px;border-radius:3px 3px 0 0;background:inherit}.pw-folder-count{flex:0 0 auto;white-space:nowrap;margin-left:auto;color:#6d7c86;font-size:9px}.pw-folder-indent{padding-left:24px}.pw-folder-main{padding:16px;min-width:0}.pw-breadcrumbs{display:flex;align-items:center;gap:5px;flex-wrap:wrap;color:#687b88;font-size:10px;margin-bottom:12px}.pw-breadcrumbs strong{color:var(--navy)}.pw-folder-toolbar{display:flex;gap:7px;flex-wrap:wrap}.pw-folder-card{border:1px solid var(--line);border-left:5px solid var(--folder-color,#2876a8);border-radius:12px;padding:13px;background:#fff;margin-bottom:10px}.pw-folder-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.pw-folder-card-head>:first-child{flex:1 1 220px;min-width:0}.pw-folder-card-head>.btn{flex:0 0 auto}.pw-folder-card h3{margin:0;color:var(--navy);font-size:14px}.pw-folder-card .pw-record{margin-top:9px;background:#fbfcfd}.pw-color-row{display:flex;gap:7px;flex-wrap:wrap}.pw-color{appearance:none;width:26px;height:26px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #b8c6cf;background:var(--swatch);cursor:pointer}.pw-color.selected{box-shadow:0 0 0 3px #173f60}.pw-analytics-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.pw-chart{display:grid;gap:10px}.pw-chart-row{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr) 58px;gap:10px;align-items:center}.pw-chart-label{font-size:11px;font-weight:850;color:#29465a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-chart-track{height:28px;border-radius:8px;background:#edf2f4;overflow:hidden}.pw-chart-bar{appearance:none;border:0;height:100%;min-width:0;border-radius:8px;background:linear-gradient(90deg,#1c709f,#25a091);color:#fff;font-size:9px;font-weight:900;cursor:pointer;transition:filter .15s,transform .15s}.pw-chart-bar:hover{filter:brightness(1.07)}.pw-chart-bar:active{transform:scaleY(.9)}.pw-chart-value{text-align:right;font-size:11px;font-weight:900;color:var(--navy)}.pw-table{width:100%;border-collapse:collapse;font-size:10px}.pw-table th,.pw-table td{text-align:left;padding:9px;border-bottom:1px solid var(--line);vertical-align:top}.pw-table th{color:#647886;text-transform:uppercase;font-size:8px;letter-spacing:.5px}.pw-table-wrap{overflow:auto}.pw-drawer-backdrop{position:fixed;inset:0;z-index:5000;background:rgba(8,29,47,.38);display:flex;justify-content:flex-end}.pw-drawer{width:min(520px,100%);height:100%;overflow:auto;background:#fff;box-shadow:-12px 0 40px rgba(9,32,50,.22);padding:20px}.pw-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line)}.pw-drawer-head h2{margin:0;color:var(--navy);font-size:21px}.pw-drawer-close{appearance:none;border:1px solid var(--line);background:var(--surface-soft);color:var(--ink);border-radius:8px;width:34px;height:34px;font-size:20px;cursor:pointer}.pw-drawer-body{padding-top:14px;display:grid;gap:12px}.pw-notification-button{position:relative}.pw-notification-count{position:absolute;right:-7px;top:-8px;min-width:19px;height:19px;border-radius:999px;background:#e2584d;color:#fff;border:2px solid var(--navy2);display:grid;place-items:center;font-size:9px;font-weight:900}.pw-notification-item{appearance:none;width:100%;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;padding:11px;cursor:pointer}.pw-notification-item.unread{background:#eef7fb;border-color:#b8d8e8;box-shadow:inset 3px 0 0 var(--pg-blue)}.pw-notification-item strong{display:block;color:var(--navy);font-size:12px}.pw-notification-item span{display:block;color:var(--muted);font-size:10px;margin-top:4px}.pw-modal{border:0;border-radius:16px;box-shadow:0 22px 70px rgba(7,30,48,.3);width:min(480px,calc(100% - 28px));padding:0}.pw-modal::backdrop{background:rgba(8,29,47,.45)}.pw-modal-body{padding:20px}.pw-modal h2{margin:0 0 5px;color:var(--navy)}.pw-modal p{margin:0 0 15px;color:var(--muted);font-size:11px}.pw-modal-fields{display:grid;gap:12px}.pw-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.pw-folder-toggle{display:none;flex:0 0 auto;white-space:nowrap;overflow-wrap:normal;word-break:normal}.pw-live-region{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media(max-width:1180px){.pw-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pw-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.pw-folder-layout{grid-template-columns:1fr}.pw-folder-nav{display:none;position:fixed;inset:82px 12px 12px;z-index:4500;max-height:none;box-shadow:0 18px 50px rgba(8,29,47,.25)}.pw-folder-nav.open{display:block}.pw-folder-toggle{display:inline-flex}.pw-analytics-controls{grid-template-columns:1fr 1fr}.pw-record{grid-template-columns:1fr}.pw-record-actions{justify-content:flex-start}.pw-chart-row{grid-template-columns:100px minmax(0,1fr) 48px}}
@media(max-width:620px){.pw-filter-grid,.pw-metrics,.pw-analytics-controls{grid-template-columns:1fr}.pw-topline{align-items:flex-start;flex-direction:column}.pw-filter-actions{justify-content:flex-start}.pw-tabs{width:100%}.pw-tab{flex:1}.pw-section,.pw-folder-main{padding:13px}.pw-chart-row{grid-template-columns:1fr 46px}.pw-chart-label{grid-column:1/-1}.pw-drawer{padding:16px}}
@media print{.pw-tabs,.pw-shared-filters,.pw-record-actions,.pw-folder-nav,.pw-folder-toolbar,.pw-topline .btn,.pw-notification-button,.pw-drawer-backdrop{display:none!important}.pw-folder-layout{display:block}.progress-workspace{background:#fff}.pw-section,.pw-folder-main{box-shadow:none!important;border-color:#aaa}.shell{display:block}.sidebar,.topbar,.page-head .primary-action{display:none!important}.main{padding:0}}

/* V43.8.7 multi-graph analytics */
.pw-graph-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pw-graph-card{border:1px solid #cbd8df;border-radius:15px;background:#fff;padding:14px;min-width:0;box-shadow:0 7px 18px rgba(13,49,86,.06)}.pw-graph-card[data-default-graph="status"],.pw-graph-card.expanded{grid-column:1/-1}.pw-graph-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px}.pw-graph-head>div{flex:1 1 220px;min-width:0}.pw-graph-head h3{margin:0;color:var(--navy);font-size:15px}.pw-graph-head p{margin:4px 0 0;color:var(--muted);font-size:10px}.pw-graph-settings{margin:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.pw-graph-settings summary{cursor:pointer;color:#245c82;font-size:10px;font-weight:900}.pw-graph-settings .pw-analytics-controls{grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0 7px}.pw-chart-rule{margin:0;color:#6b7d88;font-size:9px;line-height:1.45}.pw-graph-canvas{min-height:250px;display:grid;align-items:center;overflow:auto;padding:8px 2px}.pw-graph-actions{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:11px}.pw-add-graph{margin-top:14px}
.pw-columns{height:250px;display:flex;gap:8px;align-items:stretch;padding:8px 4px 0;border-bottom:1px solid #cbd8df;overflow-x:auto}.pw-column-item{appearance:none;border:0;background:transparent;padding:0;min-width:54px;flex:1;display:grid;grid-template-rows:22px 1fr 40px;align-items:end;cursor:pointer}.pw-column-value{text-align:center;color:var(--navy);font-size:9px;font-weight:900}.pw-column-track{display:flex;align-items:flex-end;justify-content:center;height:100%}.pw-column-fill{display:block;width:min(34px,72%);border-radius:7px 7px 0 0;background:linear-gradient(#2876a8,#168f83)}.pw-column-label{align-self:start;padding-top:6px;color:#445d6d;font-size:8px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;text-align:center}
.pw-donut-layout{display:grid;grid-template-columns:minmax(180px,250px) minmax(180px,1fr);gap:24px;align-items:center;justify-content:center}.pw-donut{appearance:none;border:0;width:min(230px,100%);aspect-ratio:1;border-radius:50%;background:var(--donut);display:grid;place-items:center;cursor:pointer;margin:auto;position:relative}.pw-donut:after{content:"";width:57%;aspect-ratio:1;border-radius:50%;background:#fff;position:absolute}.pw-donut span{z-index:1;display:grid;text-align:center;color:var(--navy)}.pw-donut strong{font-size:28px}.pw-donut small{font-size:9px;text-transform:uppercase;font-weight:900}.pw-chart-legend{display:grid;gap:6px}.pw-chart-legend button{appearance:none;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;text-align:left;color:#385263;font-size:10px;cursor:pointer}.pw-chart-legend i,.pw-stack-legend i{width:10px;height:10px;border-radius:3px;background:var(--legend);display:inline-block}
.pw-line-chart{height:280px;display:grid;grid-template-rows:200px auto;gap:8px}.pw-line-chart svg{width:100%;height:100%;overflow:visible}.pw-line-chart line{stroke:#cbd8df;stroke-width:1}.pw-line-chart polyline{fill:none;stroke:#2876a8;stroke-width:2.2;vector-effect:non-scaling-stroke}.pw-line-chart circle{fill:#168f83;vector-effect:non-scaling-stroke}.pw-line-labels{display:flex;gap:6px;overflow:auto}.pw-line-labels button{appearance:none;border:0;background:#edf4f7;border-radius:7px;padding:6px;min-width:74px;color:#385263;font-size:8px;cursor:pointer}.pw-line-labels span,.pw-line-labels strong{display:block}
.pw-dot-chart{display:grid;gap:11px}.pw-dot-row{display:grid;grid-template-columns:minmax(90px,150px) minmax(120px,1fr) 46px;align-items:center;gap:9px;color:#385263;font-size:9px}.pw-dot-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-dot-track{height:2px;background:#b9cad4;position:relative}.pw-dot-track button{appearance:none;width:16px;height:16px;border-radius:50%;border:3px solid #fff;background:#2876a8;box-shadow:0 0 0 1px #1f668f;position:absolute;top:50%;transform:translate(-50%,-50%);cursor:pointer}
.pw-stacked{display:grid;gap:10px}.pw-stacked-row{display:grid;grid-template-columns:minmax(90px,160px) minmax(150px,1fr) 34px;gap:9px;align-items:center;color:#385263;font-size:9px}.pw-stacked-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-stacked-row button{appearance:none;border:0;border-radius:7px;background:#e8eef2;height:25px;display:flex;overflow:hidden;padding:0;cursor:pointer}.pw-stacked-row button i{display:block;height:100%;background:var(--segment)}.pw-stack-legend{display:flex;gap:12px;flex-wrap:wrap;color:#526a79;font-size:9px}.pw-stack-legend span{display:flex;align-items:center;gap:5px}
@media(max-width:850px){.pw-graph-grid{grid-template-columns:1fr}.pw-graph-card,.pw-graph-card[data-default-graph="status"],.pw-graph-card.expanded{grid-column:1}.pw-donut-layout{grid-template-columns:1fr}.pw-donut{width:190px}}
@media(max-width:620px){.pw-graph-settings .pw-analytics-controls{grid-template-columns:1fr}.pw-graph-canvas{min-height:220px}.pw-dot-row,.pw-stacked-row{grid-template-columns:1fr 42px}.pw-dot-row>span,.pw-stacked-row>span{grid-column:1/-1}}
@media print{.pw-graph-settings,.pw-graph-actions,.pw-add-graph{display:none!important}.pw-graph-grid{display:block}.pw-graph-card{break-inside:avoid;margin-bottom:14px}}

/* Keep every progress tab visible when the update note needs a second row. */
.pw-topline{flex-wrap:wrap}.pw-tabs{flex-wrap:wrap;overflow:visible;flex-shrink:0;max-width:100%}.pw-last-updated{flex:1 1 300px}

.pw-topline{flex-wrap:wrap}.pw-tabs{flex:1 1 430px;min-width:0;flex-wrap:wrap;overflow:visible}.pw-tab{flex-shrink:0;min-height:44px}.pw-last-updated{flex:0 1 auto}
