/*
 * CENARA One master stylesheet entry point
 * 9 September 2026
 *
 * This is the single stylesheet loaded by the master application template.
 * Legacy source layers are imported in their existing cascade order while the
 * physical consolidation is completed. No page should add its own stylesheet
 * link; new visual work belongs here or in a source layer folded into this file.
 */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap');
@import url('styles.css');
@import url('workspace-ui.css');
@import url('assessment-branching.css');
@import url('assessment-readiness.css');
@import url('complete-upgrade.css');
@import url('change-request-overrides.css');
@import url('decision-assurance.css');
@import url('pricing-journey.css');
@import url('workspace-navigation-v2.css');
@import url('platform-coherence.css');
@import url('accessibility-uat.css');
@import url('platform-polish-v2.css');
@import url('platform-polish-v2-components.css');
@import url('platform-polish-v2-final.css');
@import url('platform-polish-v3.css');
@import url('platform-polish-v3-fixes.css');
@import url('platform-navigation-v4.css');
@import url('platform-navigation-v4-fixes.css');
@import url('journey-lifecycle-v5.css');
@import url('acceptance-defects-2026-08-04.css');
@import url('staff-operations-workspace-2026-08-11.css');
@import url('admin-governance-workspace-2026-08-11.css');
@import url('admin-operations-workspace-2026-08-11.css');
@import url('consultant-workspace-system-2026-08-06.css');
@import url('consultant-workspace-navigation-2026-08-07.css');
@import url('consultant-workspace-states-2026-08-07.css');
@import url('consultant-workspace-portfolio-2026-08-10.css');
@import url('consultant-workspace-workload-2026-08-10.css');
@import url('consultant-workspace-density-2026-08-10.css');
@import url('consultant-workspace-followups-2026-08-11.css');
@import url('consultant-workspace-overview-2026-08-11.css');
@import url('preliminary-assessment-management-2026-08-20.css');
@import url('cenara-operating-workspaces.css');
@import url('mobile-frontend-ux-2026-08-06.css');
@import url('content-design-refinement-2026-08-06.css');
@import url('runtime-review-2026-08-08.css');
@import url('discovery-process-2026-08-08.css');
@import url('site-integration-2026-08-08.css');
@import url('public-visual-polish-2026-08-08.css');
@import url('decivara-site-refresh-2026-08-08.css');
@import url('decivara-site-refresh-extensions-2026-08-09.css');
@import url('decivara-content-expansion-2026-08-09.css');
@import url('decivara-public-rebuild-2026-08-09.css');
@import url('customer-assessment-entry.css');
@import url('workspace-navigation-stability-2026-08-24.css');
@import url('cenara-typography-2026-08-25.css');
@import url('cenara-design-system-remediation-2026-09-03.css');
@import url('communication-template-studio-2026-08-27.css');
@import url('cenara-product-quality-remediation-2026-09-06.css');
@import url('cenara-workspace-master-2026-09-07.css');
@import url('cenara-workspace-review-fixes-2026-09-07.css');
@import url('cenara-workspace-uat-convergence-2026-09-07.css');
@import url('cenara-workspace-visual-consolidation-2026-09-07.css');
@import url('cenara-product-experience-refinement-2026-09-08.css?v=20260908a');
@import url('cenara-heading-surfaces-2026-09-10.css?v=20260910a');

html,body{margin:0;min-height:100%;background:#fff}

/* Shell-only rules formerly embedded in _workspace_navigation.html. */
.workspace-body .app-primary-nav,
.workspace-body .app-header-context,
.workspace-body .app-header-actions{display:none!important}
.workspace-layout.workspace-layout-topnav{display:grid;grid-template-columns:clamp(248px,17vw,292px) minmax(0,1fr);min-height:calc(100vh - 64px)}
.workspace-layout-topnav>aside{min-width:0;background:#0b0d22;border-right:1px solid rgba(255,255,255,.08)}
.workspace-layout-topnav .workspace-nav-shell{display:flex;min-height:100%;flex-direction:column}
.workspace-layout-topnav .workspace-nav,
.workspace-layout-topnav .workspace-nav-groups{display:grid}
.workspace-menu-flat-links{display:grid;gap:3px;padding:6px}
.workspace-menu-flat-links a{display:flex;min-height:38px;align-items:center;padding:7px 10px;border-radius:8px;color:inherit;font-size:.82rem;font-weight:650;text-decoration:none}
.workspace-menu-flat-links a:hover,
.workspace-menu-flat-links a[aria-current="page"]{background:rgba(255,255,255,.09)}
.workspace-nav-card .workspace-menu>summary>span:first-child>small{display:none!important}
.workspace-nav-card .workspace-menu>summary>span:first-child>strong{font-size:.88rem}
.workspace-current-engagement-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:6px;padding:8px}
.workspace-current-engagement-links a{padding:8px 9px;border-radius:8px;background:rgba(255,255,255,.055);color:inherit;font-size:.75rem;font-weight:700;text-decoration:none}
.workspace-current-engagement-links a[aria-current="page"]{background:rgba(81,5,223,.42);outline:1px solid rgba(253,151,29,.42)}
.workspace-menu-engagement>summary .workspace-menu-kicker{color:#FD971D!important;-webkit-text-fill-color:#FD971D!important;opacity:1!important}
.workspace-menu-engagement>summary strong{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important}
.workspace-menu-engagement>summary small{color:rgba(255,255,255,.82)!important;-webkit-text-fill-color:rgba(255,255,255,.82)!important;opacity:1!important}
.workspace-engagement-empty{display:grid;gap:5px;margin:8px 6px 10px;padding:12px;border:1px solid rgba(253,151,29,.34);border-radius:10px;background:rgba(255,255,255,.055)}
.workspace-engagement-empty>span{color:#FD971D;font-size:.68rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.workspace-engagement-empty>a{display:flex;min-height:38px;align-items:center;justify-content:center;padding:7px 10px;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;background:rgba(81,5,223,.42);font-size:.8rem;font-weight:800;text-decoration:none}
.workspace-engagement-empty>a:hover,
.workspace-engagement-empty>a:focus-visible{border-color:#FD971D;background:rgba(81,5,223,.68);outline:none}
.workspace-engagement-empty>small{color:rgba(255,255,255,.74);font-size:.68rem;line-height:1.4}

/* Sidebar utility control formerly carried by _consolidated_workspace_tabs.html. */
html body.workspace-body #workspace-sidebar .workspace-nav-card .cenara-sidebar-tools[data-cenara-sidebar-tools]{display:block!important;margin:8px 2px 8px!important;padding:8px 0 10px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
html body.workspace-body #workspace-sidebar .workspace-nav-card .cenara-sidebar-tools[data-cenara-sidebar-tools] .cenara-expand-all{width:100%!important;min-height:38px!important;padding:8px 11px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;color:#fff!important;background:rgba(255,255,255,.07)!important;box-shadow:none!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.02em!important}
html body.workspace-body #workspace-sidebar .workspace-nav-card .cenara-sidebar-tools[data-cenara-sidebar-tools] .cenara-expand-all:hover,
html body.workspace-body #workspace-sidebar .workspace-nav-card .cenara-sidebar-tools[data-cenara-sidebar-tools] .cenara-expand-all:focus-visible{border-color:rgba(253,151,29,.65)!important;background:rgba(81,5,223,.24)!important;outline:2px solid rgba(253,111,16,.55)!important;outline-offset:1px!important}
html body.workspace-body #workspace-sidebar .workspace-nav-card .cenara-sidebar-tools[data-cenara-sidebar-tools] .cenara-expand-all-icon{color:#FD971D!important;background:rgba(253,151,29,.13)!important}

/* UAT quality hardening: meaningful workspace copy must remain readable. Legacy
   component rules may inherit a larger size, but ordinary UI copy cannot fall
   below 13px. Tiny decorative/environment labels remain explicit exceptions. */
body.workspace-body .workspace-main :where(p,li,td,th,label,legend,summary,small,strong,span,a,button,code,dd,dt){font-size:max(13px,1em)!important}

/* Warm brand colours remain accents, not small body-copy colours on white. */
body.workspace-body .workspace-main .cod-metrics article>span{color:#5B5F6A!important;-webkit-text-fill-color:#5B5F6A!important}
body.workspace-body .workspace-main .template-status-pill.cenara{color:#230265!important;-webkit-text-fill-color:#230265!important}
body.workspace-body .workspace-main .product-card-footer .tag-row{color:#5B5F6A!important;-webkit-text-fill-color:#5B5F6A!important}
body.workspace-body .workspace-main .evidence-pill.warning{color:#704400!important;-webkit-text-fill-color:#704400!important}
body.workspace-body .workspace-main .section-heading>span{color:#5B5F6A!important;-webkit-text-fill-color:#5B5F6A!important}

/* TCO year labels are informative text, not decorative amber accents. */
body.workspace-body .workspace-main [class*="year"] b,
body.workspace-body .workspace-main [class*="year"] strong{color:#5B5F6A!important;-webkit-text-fill-color:#5B5F6A!important}

/* Hierarchy metadata/chips must have enough inline space to wrap by words rather
   than collapsing into character fragments on the canonical desktop viewport. */
body.workspace-body .workspace-main :where(.category-chip,.tag-row,.status-pill,.phase-pill,.stage-chip,.pill,.badge){min-width:max-content;max-width:100%;overflow-wrap:normal;word-break:normal}

/* Authenticated workspace navigation and responsive-layout authority.
   Consolidated from workspace-navigation-hardening-2026-09-08.css so these
   rules no longer depend on a dated final override layer. */
body.workspace-body #workspace-sidebar .workspace-menu-flat-links a[aria-current="page"],
body.workspace-body #workspace-sidebar .workspace-current-engagement-links a[aria-current="page"],
body.workspace-body #workspace-sidebar .workspace-account-actions a[aria-current="page"]{
  position:relative;
  background:rgba(81,5,223,.52)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #FD971D,inset 0 0 0 1px rgba(253,151,29,.38);
  font-weight:800
}
body.workspace-body #workspace-sidebar .workspace-menu.current>summary{background:rgba(81,5,223,.24);box-shadow:inset 3px 0 0 rgba(253,151,29,.82)}
body.workspace-body #workspace-sidebar a[data-workspace-active="true"]:focus-visible{outline:2px solid #FD971D;outline-offset:2px}

/* The product-context breadcrumb below the application header is authoritative.
   Older page-local trails must not create a second breadcrumb row. */
body.workspace-body .workspace-main nav[class*="breadcrumb"],
body.workspace-body .workspace-main [data-page-breadcrumb],
body.workspace-body .workspace-main [aria-label="Breadcrumb"]{display:none!important}

body.workspace-body .workspace-main{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  padding:clamp(12px,1.15vw,20px) clamp(10px,1.1vw,18px) 46px!important;
  box-sizing:border-box!important
}
body.workspace-body .workspace-main>:is(section,article,div){min-width:0!important;max-width:none!important;box-sizing:border-box!important}

/* Workspace page shells must use the full horizontal working area. Imported
   legacy layers still carry fixed 1180/1480px page widths, which become a narrow
   centre column on wide and zoomed-out viewports. Keep the readable text rails
   inside each component, but let the page, panels, tables and form grids expand
   with the available workspace width. */
html body.workspace-body #main-content.workspace-main>:is(.page-shell,.operational-page,.content-section,.wide-page,.consultant-page,.ecc-shell,.admin-governance-workspace,.admin-operations-workspace,.aum-workspace){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important
}

body.workspace-body .workspace-main>:is(.cod-shell,.client-work-showcase,.cow-shell,.ops-shell,.ag-shell,.v1-shell,.wide-page,.staff-workspace-overview,.pam-workspace,[data-admin-governance],[data-admin-operations]){
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important
}
body.workspace-body .workspace-main>.cod-shell{padding:0 0 64px!important}
body.workspace-body .workspace-main .cod-metrics.five{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))!important}

/* Engagement is a working record, not a narrow sidebar. Keep every working
   section on the full content width and make each action row own its available
   space without relying on overflow clipping. */
html body.workspace-body #main-content.workspace-main .engagement-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(14px,1.5vw,22px)!important;
  align-items:start!important
}
html body.workspace-body #main-content.workspace-main .engagement-layout>*{min-width:0!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-card{min-width:0!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(160px,220px)!important;
  gap:12px!important;
  align-items:center!important;
  min-width:0!important
}
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-meta,
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-status{min-width:0!important;max-width:100%!important}
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-status{width:100%!important;margin:0!important}
html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-status select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important
}
html body.workspace-body #main-content.workspace-main .engagement-layout :where(.form-grid,.stack-form,.data-table-wrap,.timeline-list){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
html body.workspace-body #main-content.workspace-main .engagement-layout :where(input,select,textarea,button){max-width:100%;box-sizing:border-box}

/* Breadcrumb and sidebar are the contextual navigation authorities. The older
   utility-header engagement label duplicated that context and could truncate. */
body.workspace-body .topbar .workspace-utility-context,
body.workspace-body .top-bar .workspace-utility-context{display:none!important}

/* Final rendered-authority rules. Page-family source sheets are now imported
   above, so nothing loaded from inside a template can overturn these contracts. */
html body.workspace-body #main-content.workspace-main .button.primary{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body.workspace-body #main-content.workspace-main .template-status-pill.cenara{color:#230265!important;-webkit-text-fill-color:#230265!important}
html body.workspace-body #main-content.workspace-main .metric-strip>div>span,
html body.workspace-body #main-content.workspace-main .priority-summary>div>span{color:#230265!important;-webkit-text-fill-color:#230265!important}
html body.workspace-body #main-content.workspace-main .cenara-process-strip>article>span,
html body.workspace-body #main-content.workspace-main .cow-metrics>article>span{font-size:13px!important}

/* Some legacy templates retain page-local navigation that duplicates the shared
   workspace rail. Remove it at first paint. */
html body.workspace-body #main-content.workspace-main .client-work-hero-actions,
html body.workspace-body #main-content.workspace-main .followup-hero-actions{display:none!important}

/* Closure state lives on a dark purple governance card; headings must remain
   readable there even when general page-heading colour rules have higher weight. */
html body.workspace-body #main-content.workspace-main .client-work-closure-card h2{color:#fff!important;-webkit-text-fill-color:#fff!important}

@media(max-width:980px){
  .workspace-layout.workspace-layout-topnav{display:block}
  .workspace-layout-topnav>aside{position:fixed}
  body.workspace-body .workspace-main{padding-inline:clamp(10px,2.2vw,16px)!important}
}
@media(max-width:760px){
  body.workspace-body .workspace-main .cod-metrics.five{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.workspace-body #main-content.workspace-main .engagement-layout .engagement-task-row{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important}
}
@media(max-width:480px){body.workspace-body .workspace-main .cod-metrics.five{grid-template-columns:1fr!important}}

/* Failure-only Retest known-defect closure — 11 September 2026.
   The final heading authority deliberately makes product headings unboxed. Partner
   pages previously retained white-on-dark copy after that background was removed,
   so explicitly restore readable text on the now-light surface. */
html[lang] body.partner-body[data-page-path] #main-content :is(.page-head,.page-heading.split-heading,.workspace-head){color:#07101f!important}
html[lang] body.partner-body[data-page-path] #main-content :is(.page-head,.page-heading.split-heading,.workspace-head) h1{color:#07101f!important;-webkit-text-fill-color:#07101f!important}
html[lang] body.partner-body[data-page-path] #main-content :is(.page-head,.page-heading.split-heading,.workspace-head) p{color:#5b5f6a!important;-webkit-text-fill-color:#5b5f6a!important}
html[lang] body.partner-body[data-page-path] #main-content :is(.page-head,.page-heading.split-heading,.workspace-head) .button.secondary{color:#230265!important;-webkit-text-fill-color:#230265!important;background:#fff!important}

/* These dashboard labels were 4.45:1 on the rendered light surface, fractionally
   below the 4.5:1 normal-text floor. Use the existing readable workspace neutral. */
html[lang] body.workspace-body #main-content .staff-overview-section-head>span{color:#5b5f6a!important;-webkit-text-fill-color:#5b5f6a!important}

/* Governed-truth dt labels are substantive metadata, not decorative grey copy. */
html[lang] body.workspace-body #main-content .cod-truth-summary dt{color:#5b5f6a!important;-webkit-text-fill-color:#5b5f6a!important}

/* Decision Priorities is a record list. Admin product-library grid rules must not
   turn the criterion list into several narrow columns and crush technical keys,
   rationale controls or body copy. */
html[lang] body.workspace-body[data-page-path^="/workspace/assessment/"][data-page-path$="/priorities"] #main-content .criteria-list{grid-template-columns:minmax(0,1fr)!important}
html[lang] body.workspace-body[data-page-path^="/workspace/assessment/"][data-page-path$="/priorities"] #main-content :is(.criterion-card,.criterion-main,.criterion-controls){min-width:0!important}
html[lang] body.workspace-body[data-page-path^="/workspace/assessment/"][data-page-path$="/priorities"] #main-content .criterion-controls{grid-template-columns:minmax(240px,320px) minmax(0,1fr)!important}
html[lang] body.workspace-body[data-page-path^="/workspace/assessment/"][data-page-path$="/priorities"] #main-content .criterion-code{max-width:100%!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important}
