/* DeSIGNATURE R5. Original palette and untouched brand assets; CRM scope only. */
html body.portal-page[data-portal]{background:var(--oat)!important;--ws-line:rgba(120,102,84,.28)}
html body.portal-page[data-portal] .crm-nav-panel{background:var(--night)!important;border-right:1px solid var(--dark)!important}
html body.portal-page[data-portal] .crm-nav-panel button,html body.portal-page[data-portal] .ws-settings summary,html body.portal-page[data-portal] .ws-member{color:var(--oat)!important}
html body.portal-page[data-portal] .crm-nav-panel button.active,html body.portal-page[data-portal] .crm-nav-panel button:hover{background:var(--deep)!important;color:var(--white)!important}
html body.portal-page[data-portal] .crm-nav-panel button.active{box-shadow:inset 3px 0 var(--sand)!important}
html body.portal-page[data-portal] .crm-nav-panel>.label,html body.portal-page[data-portal] .ws-member small{color:var(--sand)!important}
html body.portal-page[data-portal] .ws-settings{border-color:var(--dark)}
html body.portal-page[data-portal] .crm-topbar{background:var(--deep)!important;margin:0 -44px 30px!important;padding:18px 44px!important;min-height:76px!important;border-color:var(--rock)!important}
html body.portal-page[data-portal] .crm-topbar :is(h1,h1 strong,.crm-sync-status strong,.crm-sync-status small){color:var(--oat)!important}
html body.portal-page[data-portal] .crm-topbar .btn{background:transparent!important;border-color:var(--olive)!important;color:var(--oat)!important}
html body.portal-page[data-portal] :is(.ws-heading h2,.ws-event-header h2,.login-panel h1){font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.025em!important}
html body.portal-page[data-portal] .ws-heading h2{font-size:38px!important}
html body.portal-page[data-portal] :is(.crm-card,.commercial-card,.commercial-hero,.ws-list-card,.crm-panel-table){border-radius:4px!important;background:var(--mist)!important}
html body.portal-page[data-portal] .ws-stats{background:rgba(244,241,234,.42);padding:22px!important;border:1px solid var(--ws-line);border-radius:3px}
html body.portal-page[data-portal] .crm-project-picker{background:rgba(244,241,234,.55)!important;margin-bottom:24px!important}
html body.portal-page[data-portal] .ws-event-header{background:var(--deep);padding:26px 30px;margin:0!important;border-radius:4px 4px 0 0;color:var(--oat)}
html body.portal-page[data-portal] .ws-event-header h2{font-size:36px!important;color:var(--oat)!important}
html body.portal-page[data-portal] .ws-event-header :is(p,.label){color:var(--sand)!important}
html body.portal-page[data-portal] .ws-event-tabs{gap:0!important;background:var(--mist)!important;padding:4px!important;border:1px solid var(--ws-line)!important;border-top:0!important;border-radius:0 0 4px 4px!important;margin-bottom:24px!important}
html body.portal-page[data-portal] .ws-event-tabs button{padding:13px 16px!important;color:var(--deep)!important;border-radius:2px!important}
html body.portal-page[data-portal] .ws-event-tabs button[aria-current=page]{background:var(--deep)!important;color:var(--white)!important;border-color:var(--deep)!important}
html body.portal-page[data-portal] [data-view-panel=project]>.crm-card{padding:0!important;background:transparent!important;border:0!important}
html body.portal-page[data-portal] .ws-project-breakdown{display:grid;gap:20px}
html body.portal-page[data-portal] :is(.ws-brief-copy,.ws-breakdown-progress,.ws-timeline-panel){padding:24px;background:var(--mist);border:1px solid var(--ws-line);border-radius:4px;min-width:0}
html body.portal-page[data-portal] :is(.ws-brief-copy,.ws-breakdown-progress,.ws-timeline-panel) h3{font:400 25px/1.25 var(--serif)!important;margin:0 0 14px!important}
.ws-brief-copy p{margin:0}.ws-workstream-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(100px,240px) 50px;align-items:center;gap:24px;width:100%;padding:16px 0;text-align:left;border:0;border-top:1px solid var(--ws-line);background:transparent;color:var(--deep);font:14px var(--sans);cursor:pointer}
.ws-workstream-row small{display:block;margin-top:5px;color:var(--taupe);font-size:12px}.ws-workstream-row progress{width:100%;height:7px;accent-color:var(--olive)}
.ws-workstream-row progress::-webkit-progress-bar{background:var(--oat);border-radius:4px}.ws-workstream-row progress::-webkit-progress-value{background:var(--olive);border-radius:4px}
html body.portal-page[data-portal] .workflow-detail-grid{grid-template-columns:minmax(0,1fr)!important}
html body.portal-page[data-portal] .ws-timeline-panel{width:100%;display:block}
html body.portal-page[data-portal] .ws-timeline-panel .workflow-gantt{overflow-x:auto}
html body.portal-page[data-portal] .ws-brief-edit{margin:18px 0;background:var(--mist);border:1px solid var(--ws-line);padding:16px 22px;border-radius:4px}
html body.portal-page[data-portal] .ws-brief-edit summary{font-weight:600;cursor:pointer}
html body.portal-page[data-portal].is-locked .ws-login-brand{background:var(--night)}
html body.portal-page[data-portal] .login-panel h1{font-size:44px!important}
@media(max-width:1150px){html body.portal-page[data-portal] .crm-topbar{margin-inline:-28px!important;padding-inline:28px!important}}
@media(max-width:760px){
 html body.portal-page[data-portal] .crm-topbar{margin-inline:-18px!important;padding:16px 18px!important}
 html body.portal-page[data-portal] .ws-heading h2{font-size:32px!important}
 html body.portal-page[data-portal] .ws-event-header{padding:22px 20px}
 html body.portal-page[data-portal] .ws-event-header h2{font-size:30px!important}
 html body.portal-page[data-portal] :is(.ws-brief-copy,.ws-breakdown-progress,.ws-timeline-panel){padding:18px}
 .ws-workstream-row{grid-template-columns:minmax(0,1fr) 76px 38px;gap:12px}
 html body.portal-page[data-portal] .ws-stats{padding:18px!important}
 html body.portal-page[data-portal] .crm-nav-panel .ws-settings summary{color:var(--oat)!important}
}
html body.portal-page[data-portal] .crm-project-picker{grid-template-columns:minmax(140px,.5fr) minmax(200px,1fr) auto!important;align-items:center!important}
html body.portal-page[data-portal] .ws-event-actions{position:relative;align-self:end;padding-bottom:10px;min-width:125px}
html body.portal-page[data-portal] .ws-event-actions summary{font:13px var(--sans);cursor:pointer;color:var(--deep)}
html body.portal-page[data-portal] .ws-event-actions .project-action-row{position:absolute;right:0;top:32px;z-index:25;display:grid;background:var(--mist);padding:14px;min-width:220px;border:1px solid var(--rock);box-shadow:0 8px 24px #252b1920}
html body.portal-page[data-portal] .crm-project-picker>[data-access-summary]{grid-column:1/-1;margin:0!important;font-size:11px!important}
html body.portal-page[data-portal] .crm-project-picker>[data-event-action-status]:empty{display:none}
html body.portal-page[data-portal] .ws-readiness{padding:16px 22px;border:1px solid var(--ws-line);background:var(--mist);margin:18px 0;border-radius:4px}
html body.portal-page[data-portal] .ws-readiness>summary{font-size:13px;font-weight:600;cursor:pointer}
@media(max-width:760px){html body.portal-page[data-portal] .crm-project-picker{grid-template-columns:minmax(0,1fr)!important}html body.portal-page[data-portal] .ws-event-actions{padding:5px 0}html body.portal-page[data-portal] .ws-event-actions .project-action-row{left:0;right:auto}}
html body.portal-page[data-portal]:has([data-ws-event-nav]) .crm-nav-panel [data-view=events]{background:var(--deep)!important;color:var(--white)!important;box-shadow:inset 3px 0 var(--sand)!important}
/* R6 agency overview: live summaries, connected workflow and event controls. */
html body.portal-page[data-portal] .ws-overview-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
html body.portal-page[data-portal] .ws-sync-caption{margin:-8px 0 24px!important}
html body.portal-page[data-portal] .ws-caption{font:12px/1.65 var(--sans)!important;color:var(--taupe)!important;margin:14px 0 0}
html body.portal-page[data-portal] .ws-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
html body.portal-page[data-portal] .ws-section-heading h3{font:400 26px/1.25 var(--serif)!important;margin:0!important;color:var(--deep)!important}
html body.portal-page[data-portal] .ws-section-heading .label{margin:0 0 6px!important;font-size:10px!important;letter-spacing:.12em!important}
html body.portal-page[data-portal] .ws-section-heading .mini-action{flex-shrink:0}
html body.portal-page[data-portal] .ws-process{padding:26px;background:var(--deep);border:1px solid var(--dark);border-radius:4px;margin:0 0 24px;color:var(--oat)}
html body.portal-page[data-portal] .ws-process .ws-section-heading h3{color:var(--oat)!important;font-size:30px!important}
html body.portal-page[data-portal] .ws-process :is(.label,.ws-caption){color:var(--sand)!important}
html body.portal-page[data-portal] .ws-process-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none;counter-reset:step}
html body.portal-page[data-portal] .ws-process-steps li{min-width:0;position:relative;margin:0;padding:0;list-style:none}
html body.portal-page[data-portal] .ws-process-steps li:not(:last-child)::after{content:'→';position:absolute;right:-11px;top:64px;z-index:1;font-size:15px;color:var(--sand)}
html body.portal-page[data-portal] .ws-process-steps :is(button,.ws-process-locked){box-sizing:border-box;width:100%;height:100%;padding:18px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:13px;background:rgba(229,219,199,.06)!important;border:1px solid rgba(203,191,164,.25)!important;border-radius:3px!important;color:var(--oat)!important;font:13px/1.6 var(--sans)!important;text-align:left;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;transform:none!important;overflow:hidden}
html body.portal-page[data-portal] .ws-process-steps button{cursor:pointer}
html body.portal-page[data-portal] .ws-process-steps button:hover{background:rgba(229,219,199,.12)!important;border-color:var(--sand)!important}
html body.portal-page[data-portal] .ws-process-steps button::before,html body.portal-page[data-portal] .ws-process-steps button::after{display:none!important}
.ws-process-top{display:flex;justify-content:space-between;align-items:center;width:100%;color:var(--sand)}.ws-process-top svg{width:25px;height:25px;flex:none}.ws-process-top small{font:11px var(--sans)}
html body.portal-page[data-portal] .ws-process-steps strong{font:500 15px/1.35 var(--sans)!important;color:var(--oat)!important}
html body.portal-page[data-portal] .ws-process-steps button>span:last-child{color:var(--sand);font-size:12px}
html body.portal-page[data-portal] .ws-process-links{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(203,191,164,.2);padding-top:18px;margin-top:20px}
html body.portal-page[data-portal] .ws-process-links .mini-action{background:transparent!important;color:var(--oat)!important;border-color:var(--olive)!important}
html body.portal-page[data-portal] .ws-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px;align-items:start}
html body.portal-page[data-portal] .ws-overview-grid .ws-list-card{margin:0;min-width:0;padding:24px!important}
html body.portal-page[data-portal] .ws-mini-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px 0;border-top:1px solid var(--ws-line);border-bottom:1px solid var(--ws-line);margin-bottom:20px}
html body.portal-page[data-portal] .ws-mini-metrics strong{display:block;color:var(--deep);font:500 25px/1.3 var(--sans)!important;font-variant-numeric:tabular-nums}
html body.portal-page[data-portal] .ws-mini-metrics span{font:11px/1.5 var(--sans);color:var(--taupe);display:block;margin-top:4px}
.ws-chart-bars{display:grid;gap:13px}.ws-chart-row>div{display:flex;justify-content:space-between;gap:20px;font:12px/1.5 var(--sans);margin-bottom:6px}.ws-chart-row strong{font-weight:500}.ws-chart-row progress{width:100%;height:6px;display:block;appearance:none;border:none;accent-color:var(--olive);background:var(--oat)}
.ws-chart-row progress::-webkit-progress-bar{background:var(--oat);border-radius:2px}.ws-chart-row progress::-webkit-progress-value{background:var(--olive);border-radius:2px}.ws-chart-row progress::-moz-progress-bar{background:var(--olive);border-radius:2px}
.ws-event-health-body{display:grid;grid-template-columns:140px minmax(0,1fr);gap:26px;align-items:center}
.ws-total-ring{aspect-ratio:1;border:10px solid var(--oat);outline:1px solid var(--sand);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center}
html body.portal-page[data-portal] .ws-total-ring strong{font:400 44px/1 var(--serif)!important;color:var(--deep)!important}.ws-total-ring span{font:11px var(--sans);margin-top:10px;color:var(--taupe)}
.ws-data-detail{border-top:1px solid var(--ws-line);margin-top:20px;padding-top:14px}.ws-data-detail summary{font:12px var(--sans);cursor:pointer;padding:0 0 12px}
.ws-finance-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:22px 0}.ws-finance-metrics span{display:block;font:12px var(--sans);color:var(--taupe);margin-bottom:9px}.ws-finance-metrics strong{font:500 23px/1.3 var(--sans);color:var(--deep);overflow-wrap:anywhere}
html body.portal-page[data-portal] .ws-social{background:rgba(244,241,234,.4);padding:26px;border:1px solid var(--ws-line);border-radius:4px}
.ws-social-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ws-social-grid article{background:var(--mist);border:1px solid var(--ws-line);padding:20px;border-radius:3px;min-width:0}.ws-social-platform{display:flex;align-items:center;gap:10px;color:var(--deep)}.ws-social-platform>span{width:30px;height:30px;border:1px solid var(--sand);border-radius:5px;display:grid;place-items:center;font:600 12px var(--sans)}.ws-social-platform strong{font:500 14px var(--sans)}
.ws-social-grid dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.ws-social-grid dt{font:10px var(--sans);color:var(--taupe)}.ws-social-grid dd{font:22px var(--sans);color:var(--deep);margin:8px 0 0}.ws-social-grid small{font:10px/1.6 var(--sans);color:var(--taupe)}
html body.portal-page[data-portal] .ws-event-controls{grid-column:1/-1;border-top:1px solid var(--ws-line);padding-top:15px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
html body.portal-page[data-portal] .ws-event-controls>strong{font:500 12px var(--sans);margin-right:auto}.ws-event-controls .project-action-row{display:flex;position:static;flex-wrap:wrap;gap:8px}
html body.portal-page[data-portal] .ws-event-controls .btn{padding:9px 12px!important;min-height:36px;font-size:12px!important}
html body.portal-page[data-portal] .crm-project-picker>[data-event-action-status]{grid-column:1/-1;color:var(--deep)!important}
html body.portal-page[data-portal] .ws-register-note{margin:-8px 0 18px;font:12px/1.7 var(--sans);color:var(--taupe)}
html body.portal-page[data-portal] .ws-event-arrow{font:12px var(--sans);white-space:nowrap}
html body.portal-page[data-portal] .ws-event{grid-template-columns:82px minmax(0,1fr) auto 100px 85px}
html body.portal-page[data-portal] .ws-historical-note{padding:12px 18px;margin:0;background:var(--sand);color:var(--night);font:12px/1.65 var(--sans)}
html body.portal-page[data-portal] [data-agency-home] button:focus-visible{outline:2px solid var(--dark)!important;outline-offset:3px}
html body.portal-page[data-portal] .ws-process button:focus-visible{outline-color:var(--sand)!important}
@media(max-width:1100px){.ws-social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html body.portal-page[data-portal] .ws-process-steps{grid-template-columns:repeat(3,minmax(0,1fr))}html body.portal-page[data-portal] .ws-process-steps li:nth-child(3)::after{display:none}}
@media(max-width:760px){
 html body.portal-page[data-portal] .ws-overview-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 html body.portal-page[data-portal] :is(.ws-process,.ws-social,.ws-overview-grid .ws-list-card){padding:20px!important}
 html body.portal-page[data-portal] .ws-process-steps{grid-template-columns:minmax(0,1fr);gap:12px}
 html body.portal-page[data-portal] .ws-process-steps li::after{display:none}
 html body.portal-page[data-portal] .ws-process-steps button{display:grid;grid-template-columns:32px minmax(0,1fr);gap:6px 14px;padding:14px 16px}
 .ws-process-top{grid-row:span 2;display:block}.ws-process-top small{display:block;margin-top:6px}
 html body.portal-page[data-portal] .ws-process-steps button>span:last-child{grid-column:2}
 html body.portal-page[data-portal] .ws-section-heading{align-items:flex-start;flex-wrap:wrap;gap:10px}
 html body.portal-page[data-portal] .ws-section-heading h3{font-size:25px!important}
 .ws-event-health-body{grid-template-columns:105px minmax(0,1fr);gap:18px}.ws-total-ring{border-width:8px}
 .ws-finance-metrics{gap:16px}.ws-finance-metrics strong{font-size:19px}
 .ws-social-grid{grid-template-columns:minmax(0,1fr)}
 html body.portal-page[data-portal] .ws-event{grid-template-columns:65px minmax(0,1fr);gap:12px}
 html body.portal-page[data-portal] .ws-event-arrow{grid-column:2;justify-self:end}
 html body.portal-page[data-portal] .ws-event-controls .project-action-row{width:100%}
 html body.portal-page[data-portal] .ws-mini-metrics{gap:10px}
}

@media(min-width:761px){html body.portal-page[data-portal] .ws-stats:has(.ws-stat:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}
