/* CISO Compass Enterprise UI v3
   White sidebar · Italia blue header · Gold accent · Dark theme
*/

:root{
  --cc-blue:#0A36AF;
  --cc-blue-700:#082B86;
  --cc-blue-800:#061F63;
  --cc-blue-050:#EEF3FF;
  --cc-gold:#C99A2E;
  --cc-gold-700:#9B7316;
  --cc-gold-050:#FBF5E5;
  --cc-gold-gradient:linear-gradient(135deg,#F2DC83 0%,#D4AF37 48%,#A97B16 100%);

  --cc-bg:#F5F7FB;
  --cc-surface:#FFFFFF;
  --cc-surface-2:#F8FAFD;
  --cc-text:#172033;
  --cc-muted:#697386;
  --cc-line:#E3E8F0;
  --cc-line-strong:#D1D9E5;
  --cc-red:#C2413A;
  --cc-amber:#B7791F;
  --cc-green:#168A53;

  --cc-sidebar:286px;
  --cc-topbar:72px;
  --cc-radius:16px;
  --cc-shadow:0 8px 24px rgba(15,39,71,.07);
  color-scheme:light;
}

html[data-theme="dark"]{
  --cc-bg:#081321;
  --cc-surface:#101E30;
  --cc-surface-2:#15263B;
  --cc-text:#EEF4FF;
  --cc-muted:#A3AEC0;
  --cc-line:#263A52;
  --cc-line-strong:#344B65;
  --cc-blue:#6B86E8;
  --cc-blue-700:#4E69CA;
  --cc-blue-800:#24366F;
  --cc-blue-050:#17234B;
  --cc-gold:#D7B34C;
  --cc-gold-700:#B78F20;
  --cc-gold-050:#302816;
  --cc-red:#FF827B;
  --cc-amber:#F1C45A;
  --cc-green:#4DD49A;
  --cc-shadow:0 10px 28px rgba(0,0,0,.28);
  color-scheme:dark;
}

html,body{background:var(--cc-bg)!important;color:var(--cc-text)!important}
body{font-size:14px;line-height:1.55}
h1,h2,h3,h4{color:var(--cc-text)}
a{color:inherit}

/* App shell */
.app-sidebar{
  position:fixed!important;
  inset:0 auto 0 0!important;
  width:var(--cc-sidebar)!important;
  min-width:var(--cc-sidebar)!important;
  display:flex!important;
  flex-direction:column!important;
  background:var(--cc-surface)!important;
  border-right:1px solid var(--cc-line)!important;
  box-shadow:6px 0 20px rgba(15,39,71,.035)!important;
  overflow:hidden!important;
  z-index:60!important;
}

.app-sidebar-brand{
  position:static!important;
  padding:22px 20px 18px!important;
  background:var(--cc-surface)!important;
  border-bottom:1px solid var(--cc-line)!important;
}
.app-sidebar-brand:after{display:none!important}
.sidebar-brand-link{display:block;min-height:48px}
.sidebar-logo{
  display:block!important;
  width:auto!important;
  max-width:190px!important;
  height:52px!important;
  max-height:52px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
}
.sidebar-logo-fallback{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  color:var(--cc-blue);
}
.sidebar-logo-fallback[hidden]{display:none!important}
.sidebar-logo-fallback img{width:38px;height:38px;object-fit:contain}
.sidebar-logo-fallback strong{font-size:18px}
.brand-headline{margin-top:11px!important;font-size:11px!important;font-weight:700!important;color:var(--cc-text)!important}
.brand-byline{margin-top:3px!important;font-size:9px!important;color:var(--cc-muted)!important}

/* White professional navigation */
.classified-menu{
  flex:1!important;
  align-content:start!important;
  display:grid!important;
  gap:7px!important;
  padding:14px 12px!important;
  overflow-y:auto!important;
  background:var(--cc-surface)!important;
}
.classified-menu .menu-home,
.classified-menu .menu-group summary{
  min-height:46px!important;
  border-radius:12px!important;
}
.classified-menu .menu-home{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  padding:6px 10px!important;
  color:var(--cc-muted)!important;
  border:1px solid transparent!important;
  font-size:13px!important;
}
.classified-menu .menu-home:hover{
  background:var(--cc-blue-050)!important;
  color:var(--cc-blue)!important;
}
.classified-menu .menu-home.active{
  background:var(--cc-blue)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(10,54,175,.18)!important;
}
.classified-menu .menu-icon{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:var(--cc-blue-050)!important;
  color:var(--cc-blue)!important;
}
.classified-menu .menu-home.active .menu-icon{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
}
.classified-menu .menu-icon svg{width:18px!important;height:18px!important;fill:currentColor!important}

.classified-menu .menu-group{
  width:100%!important;
  border:1px solid var(--cc-line)!important;
  border-radius:13px!important;
  background:var(--cc-surface)!important;
  overflow:hidden!important;
}
.classified-menu .menu-group summary{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 20px!important;
  align-items:center!important;
  gap:10px!important;
  padding:6px 10px!important;
  color:var(--cc-muted)!important;
  font-size:12px!important;
  font-weight:700!important;
  background:var(--cc-surface)!important;
}
.classified-menu .menu-group summary:hover,
.classified-menu .menu-group[open] summary{
  background:var(--cc-blue-050)!important;
  color:var(--cc-blue)!important;
}
.classified-menu .menu-group[open] summary{border-bottom:1px solid var(--cc-line)!important}
.classified-menu .menu-group-items{
  display:grid!important;
  gap:3px!important;
  padding:7px!important;
  background:var(--cc-surface-2)!important;
}
.classified-menu .menu-group-items a{
  display:grid!important;
  grid-template-columns:15px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 10px!important;
  border-radius:9px!important;
  color:var(--cc-muted)!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
.classified-menu .menu-group-items a:before{
  content:""!important;
  position:static!important;
  width:5px!important;
  height:5px!important;
  border-radius:50%!important;
  background:var(--cc-line-strong)!important;
  transform:none!important;
}
.classified-menu .menu-group-items a:hover{
  background:var(--cc-surface)!important;
  color:var(--cc-blue)!important;
}
.classified-menu .menu-group-items a.active{
  background:var(--cc-surface)!important;
  color:var(--cc-blue)!important;
  font-weight:800!important;
  box-shadow:0 3px 10px rgba(15,39,71,.06)!important;
}
.classified-menu .menu-group-items a.active:before{background:var(--cc-gold)!important}
.menu-chevron{color:var(--cc-muted)!important}

/* Sidebar footer */
.app-sidebar-footer{
  padding:12px 14px 15px!important;
  background:var(--cc-surface)!important;
  border-top:1px solid var(--cc-line)!important;
}
.sidebar-user{padding:6px 4px 11px!important}
.sidebar-avatar{background:var(--cc-gold-gradient)!important;color:#17334B!important}
.sidebar-user strong{color:var(--cc-text)!important}
.sidebar-user small,.sidebar-copyright{color:var(--cc-muted)!important}
.sidebar-footer-actions{grid-template-columns:minmax(0,1fr) auto!important}
.theme-switch,.sidebar-logout{
  border:1px solid var(--cc-line)!important;
  background:var(--cc-surface-2)!important;
  color:var(--cc-text)!important;
}
.theme-switch:hover,.sidebar-logout:hover{border-color:var(--cc-blue)!important;color:var(--cc-blue)!important}
.theme-switch-track{background:var(--cc-line-strong)!important}
html[data-theme="dark"] .theme-switch-track{background:var(--cc-gold-gradient)!important}

/* Blue header */
.app-workspace{
  min-height:100vh!important;
  margin-left:var(--cc-sidebar)!important;
  display:flex!important;
  flex-direction:column!important;
}
.app-topbar{
  position:sticky!important;
  top:0!important;
  z-index:40!important;
  height:var(--cc-topbar)!important;
  padding:0 28px!important;
  background:linear-gradient(135deg,#0A36AF 0%,#082B86 100%)!important;
  border:0!important;
  box-shadow:0 5px 18px rgba(8,43,134,.18)!important;
  color:#fff!important;
  backdrop-filter:none!important;
}
.topbar-context span{color:#E4C65D!important}
.topbar-context strong{color:#fff!important;font-size:15px!important}
.topbar-status{color:rgba(255,255,255,.78)!important}
.topbar-status i{background:#59D49E!important}
.topbar-action{
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
.topbar-action:hover{background:#fff!important;color:#0A36AF!important}
.mobile-menu-toggle{
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}

/* Main content */
.app-main{
  width:100%!important;
  max-width:none!important;
  padding:28px 30px 36px!important;
  background:var(--cc-bg)!important;
}
.app-footer{color:var(--cc-muted)!important;border-color:var(--cc-line)!important}

/* Universal page surfaces */
.page-head{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:22px!important;
  align-items:end!important;
  padding:23px 25px!important;
  background:var(--cc-surface)!important;
  border:1px solid var(--cc-line)!important;
  border-radius:18px!important;
  box-shadow:var(--cc-shadow)!important;
  overflow:hidden!important;
}
.page-head:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:5px!important;
  background:var(--cc-gold-gradient)!important;
}
.page-head h1{font-size:clamp(30px,2.5vw,40px)!important;line-height:1.08!important;color:var(--cc-blue)!important}
.page-head p{font-size:13px!important;color:var(--cc-muted)!important}
.eyebrow{color:var(--cc-gold-700)!important}

.panel,.workspace-card,.table-card,.executive-card,.data-record-card,
.environment-card,.programme-card,.plan-card{
  background:var(--cc-surface)!important;
  border:1px solid var(--cc-line)!important;
  box-shadow:var(--cc-shadow)!important;
}
.workspace-header{background:var(--cc-surface-2)!important;border-color:var(--cc-line)!important}
.panel-head h2,.workspace-header h2{color:var(--cc-blue)!important}

.primary{
  background:linear-gradient(135deg,#0A36AF,#082B86)!important;
  border-color:#0A36AF!important;
  color:#fff!important;
}
.secondary{background:var(--cc-surface)!important;color:var(--cc-text)!important;border-color:var(--cc-line-strong)!important}
.gold-btn{background:var(--cc-gold-gradient)!important;color:#17334B!important}

input,select,textarea{
  background:var(--cc-surface)!important;
  color:var(--cc-text)!important;
  border-color:var(--cc-line-strong)!important;
}
th{background:var(--cc-surface-2)!important;color:var(--cc-muted)!important}
td{border-color:var(--cc-line)!important}

/* Overview */
.executive-overview-header{
  background:var(--cc-surface)!important;
  border:1px solid var(--cc-line)!important;
  color:var(--cc-text)!important;
  box-shadow:var(--cc-shadow)!important;
  position:relative!important;
  overflow:hidden!important;
}
.executive-overview-header:before{
  content:""!important;
  position:absolute!important;
  left:0!important;top:0!important;bottom:0!important;width:6px!important;
  background:var(--cc-gold-gradient)!important;
}
.executive-overview-header h1{color:var(--cc-blue)!important}
.executive-overview-header p{color:var(--cc-muted)!important}
.overview-eyebrow{color:var(--cc-gold-700)!important}
.overview-header-actions .secondary{background:var(--cc-surface)!important;color:var(--cc-text)!important;border-color:var(--cc-line-strong)!important}
.overview-header-actions .primary{background:linear-gradient(135deg,#0A36AF,#082B86)!important}

.executive-kpi,.executive-panel,.executive-link-card{
  background:var(--cc-surface)!important;
  border-color:var(--cc-line)!important;
  box-shadow:var(--cc-shadow)!important;
}
.executive-panel-head h2{color:var(--cc-blue)!important}
.enterprise-risk-item,.management-focus-list>div,.execution-progress{background:var(--cc-surface-2)!important;border-color:var(--cc-line)!important}

/* Explicit heatmap colors — never inherit theme-neutral card colors */
.clean-heat-cell,
.board-heat-cell{
  color:#172033!important;
  border:1px solid rgba(23,32,51,.16)!important;
}
.clean-heat-cell.low,.board-heat-cell.green{
  background:#BFE8CF!important;
}
.clean-heat-cell.medium,.board-heat-cell.amber{
  background:#F6D77A!important;
}
.clean-heat-cell.high,.board-heat-cell.red{
  background:#EE9B94!important;
}
.clean-heat-cell.active,.board-heat-cell.has-risk{
  border-width:2px!important;
  border-color:rgba(23,32,51,.42)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.48)!important;
  opacity:1!important;
}
.clean-heatmap-legend .low,.board-heatmap-legend i.green{background:#168A53!important}
.clean-heatmap-legend .medium,.board-heatmap-legend i.amber{background:#D4AF37!important}
.clean-heatmap-legend .high,.board-heatmap-legend i.red{background:#C2413A!important}

/* Progress bars: gold gradient */
.execution-progress u,.board-progress-item>i>u,.progress-block u,.numeric-cell i,.maturity-progress>i>u{
  background:var(--cc-gold-gradient)!important;
}

/* Responsive */
.app-sidebar-backdrop{display:none}
@media(max-width:1180px){
  :root{--cc-sidebar:270px}
  .app-main{padding:24px!important}
}
@media(max-width:960px){
  .app-sidebar{
    width:min(88vw,310px)!important;
    min-width:0!important;
    transform:translateX(-102%)!important;
    transition:transform .22s ease!important;
    box-shadow:18px 0 40px rgba(15,39,71,.18)!important;
  }
  body.sidebar-open{overflow:hidden}
  body.sidebar-open .app-sidebar{transform:translateX(0)!important}
  .app-sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:55!important;
    background:rgba(7,19,31,.50)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .2s ease!important;
  }
  body.sidebar-open .app-sidebar-backdrop{opacity:1!important;pointer-events:auto!important}
  .app-workspace{margin-left:0!important}
  .mobile-menu-toggle{display:grid!important;place-items:center!important}
}
@media(max-width:760px){
  .app-topbar{height:64px!important;padding:0 14px!important}
  .topbar-context span,.topbar-status,.topbar-action{display:none!important}
  .topbar-context strong{font-size:13px!important}
  .app-main{padding:16px 13px 28px!important}
  .page-head{grid-template-columns:1fr!important;padding:19px!important}
  .page-head h1{font-size:28px!important}
  .page-actions{justify-content:flex-start!important}
  .executive-kpis,.executive-footer-grid,.execution-progress-grid,
  .executive-main-grid,.executive-risk-control-grid{
    grid-template-columns:1fr!important;
  }
  .executive-panel{padding:15px!important}
  .clean-heatmap{
    grid-template-columns:18px 62px 390px!important;
    overflow-x:auto!important;
  }
  .enterprise-risk-item{grid-template-columns:34px minmax(0,1fr) auto!important}
  .risk-value{display:none!important}
}

/* =========================================================
   Header simplification and contrast correction
   ========================================================= */

/* Slim utility header */
:root{
  --cc-topbar:56px;
}

.app-topbar{
  height:var(--cc-topbar)!important;
  min-height:var(--cc-topbar)!important;
  padding:0 24px!important;
}

.topbar-product{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-width:0;
}

.topbar-product strong{
  color:#FFFFFF!important;
  font-size:14px!important;
  font-weight:800!important;
  white-space:nowrap;
}

.topbar-product span{
  color:rgba(255,255,255,.68)!important;
  font-size:10px!important;
  white-space:nowrap;
}

.app-main{
  min-height:calc(100vh - var(--cc-topbar))!important;
}

/* All text placed on blue surfaces must remain readable */
.app-topbar,
.app-topbar *,
.overview-hero,
.overview-hero *,
.overview-board-brief,
.overview-board-brief *,
.investment-page .page-head,
.investment-page .page-head *,
.executive-card.primary-card,
.executive-card.primary-card *{
  color:#FFFFFF!important;
}

.app-topbar .topbar-status{
  color:rgba(255,255,255,.78)!important;
}

.app-topbar .topbar-action{
  color:#FFFFFF!important;
}

.app-topbar .topbar-action:hover{
  color:#0A36AF!important;
}

/* Gold labels remain gold on blue backgrounds */
.overview-hero .eyebrow,
.overview-board-brief .section-kicker,
.investment-page .page-head .eyebrow,
.executive-card.primary-card .executive-card-top i{
  color:#F0D77A!important;
}

/* Text hierarchy inside blue cards */
.overview-hero p,
.overview-board-brief p,
.investment-page .page-head p,
.executive-card.primary-card small,
.executive-card.primary-card .executive-card-top span{
  color:rgba(255,255,255,.76)!important;
}

.overview-hero h1,
.overview-board-brief h2,
.investment-page .page-head h1{
  color:#FFFFFF!important;
}

/* Buttons on blue backgrounds */
.overview-hero .secondary,
.investment-page .page-head .secondary{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.28)!important;
  color:#FFFFFF!important;
}

.overview-hero .secondary:hover,
.investment-page .page-head .secondary:hover{
  background:#FFFFFF!important;
  color:#0A36AF!important;
}

.overview-hero .primary,
.investment-page .page-head .primary{
  background:var(--cc-gold-gradient)!important;
  border-color:#D4AF37!important;
  color:#17334B!important;
}

/* Prevent generic heading rules from overriding blue-background headings */
.page-head.investment-page h1,
.investment-page .page-head h1{
  color:#FFFFFF!important;
}

/* Mobile header */
@media(max-width:760px){
  .app-topbar{
    height:54px!important;
    min-height:54px!important;
    padding:0 12px!important;
  }

  .topbar-product span{
    display:none!important;
  }

  .topbar-product strong{
    font-size:13px!important;
  }

  .mobile-menu-toggle{
    width:38px!important;
    height:38px!important;
  }
}

/* =========================================================
   Investment Prioritization — Enterprise UI v3 repair
   ========================================================= */
.investment-v3-page{display:grid;gap:18px;min-width:0}
.investment-v3-page .page-head{margin-bottom:0!important}
.investment-v3-page .page-head h1{color:var(--cc-blue)!important}
.investment-v3-page .page-head p{color:var(--cc-muted)!important}
.investment-v3-page .page-head .eyebrow{color:var(--cc-gold-700)!important}
.investment-v3-page .page-head .secondary{background:var(--cc-surface)!important;color:var(--cc-text)!important;border-color:var(--cc-line-strong)!important}
.investment-v3-page .page-head .primary{background:linear-gradient(135deg,#0A36AF,#082B86)!important;color:#fff!important;border-color:#0A36AF!important}

.investment-v3-page .executive-summary-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:0!important}
.investment-v3-page .executive-card{min-height:145px!important;padding:20px!important;border-radius:16px!important}
.investment-v3-page .executive-card strong{font-size:30px!important;margin:18px 0 8px!important}
.investment-v3-page .executive-card-top span{font-size:11px!important}
.investment-v3-page .executive-card small{font-size:11px!important}

.investment-v3-page .workspace-card,.investment-v3-page .panel{border-radius:18px!important;overflow:hidden!important}
.investment-v3-page .workspace-header{padding:20px 22px!important;align-items:center!important}
.investment-v3-page .workspace-header h2,.investment-v3-page .panel-head h2{font-size:21px!important;color:var(--cc-blue)!important}
.investment-v3-page .workspace-header p,.investment-v3-page .panel-head p{font-size:12px!important}
.investment-v3-page .matrix-method{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.investment-v3-page .matrix-method span{padding:7px 10px!important;border-radius:999px!important;background:var(--cc-blue-050)!important;color:var(--cc-blue)!important;font-size:10px!important;font-weight:700!important}

.investment-v3-page .dynamic-priority-matrix{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:18px!important;background:var(--cc-surface-2)!important}
.investment-v3-page .dynamic-quadrant{min-width:0!important;min-height:340px!important;padding:16px!important;border:1px solid var(--cc-line)!important;border-radius:16px!important;background:var(--cc-surface)!important;display:flex!important;flex-direction:column!important}
.investment-v3-page .dynamic-quadrant.quick{border-top:5px solid var(--cc-green)!important}
.investment-v3-page .dynamic-quadrant.strategic{border-top:5px solid var(--cc-blue)!important}
.investment-v3-page .dynamic-quadrant.tactical{border-top:5px solid var(--cc-gold)!important}
.investment-v3-page .dynamic-quadrant.defer{border-top:5px solid var(--cc-red)!important}
.investment-v3-page .dynamic-quadrant>header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;padding-bottom:13px!important;margin-bottom:12px!important;border-bottom:1px solid var(--cc-line)!important}
.investment-v3-page .dynamic-quadrant>header>div{display:flex!important;align-items:center!important;gap:10px!important}
.investment-v3-page .dynamic-quadrant>header span{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:10px!important;background:var(--cc-blue-050)!important;color:var(--cc-blue)!important;font-size:10px!important;font-weight:900!important}
.investment-v3-page .dynamic-quadrant h3{margin:0!important;font-size:17px!important;color:var(--cc-text)!important}
.investment-v3-page .dynamic-quadrant header small{font-size:10px!important;color:var(--cc-muted)!important;white-space:nowrap!important}
.investment-v3-page .quadrant-investments{display:grid!important;gap:10px!important;align-content:start!important;overflow:auto!important;max-height:430px!important;padding-right:3px!important}
.investment-v3-page .matrix-investment-card{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:11px!important;align-items:center!important;padding:13px!important;border:1px solid var(--cc-line)!important;border-radius:12px!important;background:var(--cc-surface-2)!important;color:var(--cc-text)!important}
.investment-v3-page .matrix-investment-card:hover{border-color:var(--cc-blue)!important;background:var(--cc-surface)!important;box-shadow:0 5px 14px rgba(15,39,71,.07)!important}
.investment-v3-page .matrix-rank{display:grid!important;place-items:center!important;min-width:38px!important;height:30px!important;padding:0 8px!important;border-radius:9px!important;background:var(--cc-blue)!important;color:#fff!important;font-size:10px!important;font-weight:900!important}
.investment-v3-page .matrix-investment-card>div:nth-child(2) strong,.investment-v3-page .matrix-investment-card>div:nth-child(2) small{display:block!important}
.investment-v3-page .matrix-investment-card>div:nth-child(2) strong{font-size:13px!important;line-height:1.35!important}
.investment-v3-page .matrix-investment-card>div:nth-child(2) small{font-size:10px!important;color:var(--cc-muted)!important;margin-top:3px!important}
.investment-v3-page .matrix-card-metrics{text-align:right!important;min-width:76px!important}
.investment-v3-page .matrix-card-metrics b,.investment-v3-page .matrix-card-metrics em{display:block!important}
.investment-v3-page .matrix-card-metrics b{font-size:19px!important;color:var(--cc-blue)!important}
.investment-v3-page .matrix-card-metrics em{font-size:10px!important;color:var(--cc-muted)!important;font-style:normal!important;margin-top:3px!important}
.investment-v3-page .empty-quadrant{display:grid!important;place-items:center!important;min-height:120px!important;margin:0!important;border:1px dashed var(--cc-line-strong)!important;border-radius:12px!important;color:var(--cc-muted)!important;font-size:12px!important}
.investment-v3-page .matrix-axis-summary{display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:12px!important;align-items:center!important;padding:12px 20px!important;border-top:1px solid var(--cc-line)!important;background:var(--cc-surface)!important;font-size:10px!important;color:var(--cc-muted)!important}
.investment-v3-page .matrix-axis-summary span:last-child{text-align:right!important}
.investment-v3-page .matrix-axis-summary strong{color:var(--cc-gold-700)!important;font-size:10px!important}

.investment-v3-page>.grid-2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;margin-top:0!important}
.investment-v3-page .panel{padding:20px!important}
.investment-v3-page .weight-list>div{margin-top:13px!important}
.investment-v3-page .weight-list span{display:flex!important;justify-content:space-between!important;gap:10px!important}
.investment-v3-page .weight-list strong{font-size:12px!important}.investment-v3-page .weight-list small{font-size:10px!important;color:var(--cc-muted)!important}
.investment-v3-page .weight-list i{display:block!important;height:8px!important;margin-top:7px!important;border-radius:999px!important;background:var(--cc-line)!important;overflow:hidden!important}
.investment-v3-page .weight-list u{display:block!important;height:100%!important;border-radius:999px!important;background:var(--cc-gold-gradient)!important;text-decoration:none!important}
.investment-v3-page .overview-summary-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.investment-v3-page .overview-summary-list>div{padding:14px!important;border:1px solid var(--cc-line)!important;border-radius:12px!important;background:var(--cc-surface-2)!important}
.investment-v3-page .overview-summary-list span,.investment-v3-page .overview-summary-list strong,.investment-v3-page .overview-summary-list small{display:block!important}
.investment-v3-page .overview-summary-list span{font-size:10px!important;color:var(--cc-muted)!important}.investment-v3-page .overview-summary-list strong{font-size:24px!important;margin:7px 0!important}.investment-v3-page .overview-summary-list small{font-size:10px!important;color:var(--cc-muted)!important;line-height:1.4!important}

.section-kicker{display:block;font-size:9px;letter-spacing:.14em;color:var(--cc-gold-700);font-weight:900;margin-bottom:4px}
.roadmap-pipeline-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 18px 0}
.roadmap-pipeline-summary>div{padding:14px 15px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface-2)}
.roadmap-pipeline-summary span,.roadmap-pipeline-summary strong{display:block}.roadmap-pipeline-summary span{font-size:10px;color:var(--cc-muted)}.roadmap-pipeline-summary strong{font-size:21px;margin-top:5px;color:var(--cc-blue)}
.roadmap-pipeline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}
.roadmap-pipeline-card{display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface)}
.roadmap-pipeline-card.covered{border-top:5px solid var(--cc-green)}.roadmap-pipeline-card.uncovered{border-top:5px solid var(--cc-red)}
.roadmap-pipeline-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.roadmap-pipeline-card h3{font-size:16px;margin:5px 0 3px;color:var(--cc-text)}.roadmap-pipeline-card header small{font-size:10px;color:var(--cc-muted)}
.roadmap-code{font-size:9px;letter-spacing:.08em;font-weight:900;color:var(--cc-blue)}
.coverage-status{display:inline-flex;padding:6px 8px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.coverage-status.covered{background:color-mix(in srgb,var(--cc-green) 12%,var(--cc-surface));color:var(--cc-green)}.coverage-status.gap{background:color-mix(in srgb,var(--cc-red) 12%,var(--cc-surface));color:var(--cc-red)}
.maturity-progress{margin:15px 0;padding:12px;border-radius:12px;background:var(--cc-surface-2)}.maturity-progress>div{display:flex;justify-content:space-between;gap:10px;font-size:10px}.maturity-progress>i{display:block;height:9px;margin:9px 0 6px;border-radius:999px;background:var(--cc-line);overflow:hidden}.maturity-progress>i>u{display:block;height:100%;border-radius:999px;background:var(--cc-gold-gradient);text-decoration:none}.maturity-progress small{font-size:9px;color:var(--cc-muted)}
.roadmap-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.roadmap-metrics>div{padding:11px;border:1px solid var(--cc-line);border-radius:11px}.roadmap-metrics span,.roadmap-metrics strong{display:block}.roadmap-metrics span{font-size:9px;color:var(--cc-muted)}.roadmap-metrics strong{font-size:15px;margin-top:4px}
.roadmap-pipeline-card footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:15px}.roadmap-pipeline-card footer strong,.roadmap-pipeline-card footer small{display:block}.roadmap-pipeline-card footer strong{font-size:11px}.roadmap-pipeline-card footer small{font-size:9px;color:var(--cc-muted);margin-top:3px}.roadmap-pipeline-card footer a{font-size:11px;white-space:nowrap}

.investment-v3-page .responsive-data-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding:18px!important}
.investment-v3-page .data-record-card{padding:18px!important;border-radius:15px!important}
.investment-v3-page .data-record-card header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important}
.investment-v3-page .data-record-card h3{font-size:16px!important;margin:5px 0 0!important}.investment-v3-page .data-record-card header small{font-size:9px!important;color:var(--cc-muted)!important}.investment-v3-page .data-record-card>p{font-size:12px!important;color:var(--cc-muted)!important;line-height:1.5!important}
.investment-v3-page .record-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.investment-v3-page .record-metrics>div{padding:11px!important;border:1px solid var(--cc-line)!important;border-radius:11px!important;background:var(--cc-surface-2)!important}.investment-v3-page .record-metrics span,.investment-v3-page .record-metrics strong{display:block!important}.investment-v3-page .record-metrics span{font-size:9px!important;color:var(--cc-muted)!important}.investment-v3-page .record-metrics strong{font-size:13px!important;margin-top:4px!important}
.investment-v3-page .alignment-chips{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:12px!important}.investment-v3-page .alignment-chips span{padding:6px 8px!important;border-radius:999px!important;background:var(--cc-blue-050)!important;color:var(--cc-blue)!important;font-size:9px!important;font-weight:700!important}
.investment-v3-page .data-record-card footer{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:14px!important;padding-top:14px!important;border-top:1px solid var(--cc-line)!important}

@media(max-width:1220px){
  .investment-v3-page .executive-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .roadmap-pipeline-grid,.investment-v3-page .responsive-data-grid{grid-template-columns:1fr!important}
  .investment-v3-page .record-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .investment-v3-page .dynamic-priority-matrix{grid-template-columns:1fr!important}
  .investment-v3-page>.grid-2{grid-template-columns:1fr!important}
  .investment-v3-page .dynamic-quadrant{min-height:auto!important}
}
@media(max-width:700px){
  .investment-v3-page .executive-summary-grid{grid-template-columns:1fr!important}
  .investment-v3-page .workspace-header{align-items:flex-start!important;flex-direction:column!important}
  .investment-v3-page .matrix-method{justify-content:flex-start!important}
  .investment-v3-page .matrix-investment-card{grid-template-columns:auto minmax(0,1fr)!important}
  .investment-v3-page .matrix-card-metrics{grid-column:2!important;text-align:left!important;display:flex!important;align-items:baseline!important;gap:8px!important}
  .investment-v3-page .matrix-axis-summary{grid-template-columns:1fr!important;text-align:left!important}.investment-v3-page .matrix-axis-summary span:last-child{text-align:left!important}
  .roadmap-pipeline-summary{grid-template-columns:1fr!important}.roadmap-metrics{grid-template-columns:1fr!important}.roadmap-pipeline-card footer{align-items:flex-start!important;flex-direction:column!important}.roadmap-pipeline-card footer a{width:100%!important}
  .investment-v3-page .overview-summary-list{grid-template-columns:1fr!important}
  .investment-v3-page .record-metrics{grid-template-columns:1fr!important}
  .investment-v3-page .data-record-card footer{flex-direction:column!important}.investment-v3-page .data-record-card footer a{width:100%!important}
}


/* =========================================================
   Executive Cybersecurity Metrics
   ========================================================= */
.cyber-metrics-page{display:grid;gap:18px;min-width:0}
.metrics-hero{
 display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;
 padding:25px 27px;border-radius:18px;background:var(--cc-surface);border:1px solid var(--cc-line);
 box-shadow:var(--cc-shadow);position:relative;overflow:hidden
}
.metrics-hero:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--cc-gold-gradient)}
.metrics-hero h1{font-size:clamp(30px,2.7vw,42px);line-height:1.08;color:var(--cc-blue);margin:6px 0 9px;letter-spacing:-.035em}
.metrics-hero p{max-width:850px;margin:0;color:var(--cc-muted);font-size:13px;line-height:1.6}
.metrics-hero-actions{display:flex;gap:9px;flex-wrap:wrap}
.metrics-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.metrics-summary{position:relative;padding:17px 18px;border-radius:15px;background:var(--cc-surface);border:1px solid var(--cc-line);box-shadow:var(--cc-shadow);overflow:hidden}
.metrics-summary:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cc-blue)}
.metrics-summary.critical:before{background:var(--cc-red)}.metrics-summary.attention:before{background:var(--cc-gold)}.metrics-summary.good:before{background:var(--cc-green)}
.metrics-summary span,.metrics-summary strong,.metrics-summary small{display:block}.metrics-summary span{font-size:10px;font-weight:800;color:var(--cc-muted)}.metrics-summary strong{font-size:clamp(23px,2vw,31px);line-height:1.1;margin:12px 0 7px}.metrics-summary small{font-size:9px;color:var(--cc-muted);line-height:1.35}
.metrics-navigation{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:12px;border-radius:16px;background:var(--cc-surface);border:1px solid var(--cc-line)}
.metrics-navigation a{display:block;padding:11px 12px;border-radius:10px;background:var(--cc-surface-2);border:1px solid transparent}
.metrics-navigation a:hover{border-color:var(--cc-blue);background:var(--cc-blue-050)}
.metrics-navigation span,.metrics-navigation small{display:block}.metrics-navigation span{font-size:11px;font-weight:800}.metrics-navigation small{font-size:9px;color:var(--cc-muted);margin-top:3px}
.metrics-executive-note{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.5fr) auto;gap:22px;align-items:center;padding:18px 20px;border-radius:16px;background:linear-gradient(135deg,#0A36AF,#082B86);color:#fff}
.metrics-executive-note span{font-size:9px;color:#F0D77A;font-weight:900;letter-spacing:.13em}.metrics-executive-note h2{font-size:18px;color:#fff;margin:4px 0 0}.metrics-executive-note p{font-size:11px;line-height:1.55;color:rgba(255,255,255,.78);margin:0}.metrics-generated{font-size:9px;color:rgba(255,255,255,.62);white-space:nowrap}
.metrics-category-list{display:grid;gap:16px}
.metrics-category{scroll-margin-top:72px;padding:20px;border-radius:18px;background:var(--cc-surface);border:1px solid var(--cc-line);box-shadow:var(--cc-shadow)}
.metrics-category-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid var(--cc-line)}
.metrics-category-head span{font-size:9px;letter-spacing:.14em;color:var(--cc-gold-700);font-weight:900}.metrics-category-head h2{font-size:21px;color:var(--cc-blue);margin:4px 0 5px}.metrics-category-head p{font-size:11px;color:var(--cc-muted);margin:0;max-width:760px}
.metrics-coverage-badge{padding:7px 10px;border-radius:999px;background:var(--cc-blue-050);color:var(--cc-blue);font-size:9px;font-weight:800;white-space:nowrap}
.metrics-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.metric-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:210px;padding:15px;border-radius:14px;background:var(--cc-surface-2);border:1px solid var(--cc-line);overflow:hidden}
.metric-card:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--cc-blue)}.metric-card.status-good:before{background:var(--cc-green)}.metric-card.status-attention:before{background:var(--cc-gold)}.metric-card.status-critical:before{background:var(--cc-red)}.metric-card.status-unavailable:before{background:var(--cc-line-strong)}
.metric-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.metric-card-top small{font-size:8px;color:var(--cc-muted)}
.metric-status{display:inline-flex;padding:5px 7px;border-radius:999px;background:var(--cc-blue-050);color:var(--cc-blue);font-size:8px;font-weight:900}.status-good .metric-status{background:color-mix(in srgb,var(--cc-green) 12%,var(--cc-surface));color:var(--cc-green)}.status-attention .metric-status{background:var(--cc-gold-050);color:var(--cc-amber)}.status-critical .metric-status{background:color-mix(in srgb,var(--cc-red) 12%,var(--cc-surface));color:var(--cc-red)}.status-unavailable .metric-status{background:var(--cc-surface);color:var(--cc-muted)}
.metric-card h3{font-size:13px;line-height:1.35;margin:14px 0 8px}.metric-card>strong{font-size:clamp(24px,2vw,31px);line-height:1;color:var(--cc-text);letter-spacing:-.03em}.metric-card>p{font-size:10px;line-height:1.45;color:var(--cc-muted);margin:10px 0 14px}.metric-card footer{display:flex;justify-content:space-between;gap:9px;margin-top:auto;padding-top:10px;border-top:1px solid var(--cc-line)}.metric-card footer span{font-size:8px;color:var(--cc-muted)}.metric-card footer b{font-size:8px;text-align:right}
.metrics-framework-note{padding:21px;border-radius:18px;background:var(--cc-surface);border:1px solid var(--cc-line);box-shadow:var(--cc-shadow)}
.metrics-framework-note>div:first-child span{font-size:9px;letter-spacing:.14em;color:var(--cc-gold-700);font-weight:900}.metrics-framework-note h2{font-size:21px;color:var(--cc-blue);margin:4px 0 15px}.metrics-level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.metrics-level-grid article{padding:15px;border-radius:13px;background:var(--cc-surface-2);border:1px solid var(--cc-line)}.metrics-level-grid b,.metrics-level-grid strong,.metrics-level-grid p{display:block}.metrics-level-grid b{font-size:9px;color:var(--cc-gold-700);text-transform:uppercase;letter-spacing:.1em}.metrics-level-grid strong{font-size:13px;margin:7px 0}.metrics-level-grid p{font-size:10px;line-height:1.45;color:var(--cc-muted);margin:0}
@media(max-width:1350px){.metrics-summary-grid{grid-template-columns:repeat(3,1fr)}.metrics-card-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1050px){.metrics-navigation{grid-template-columns:repeat(3,1fr)}.metrics-card-grid{grid-template-columns:repeat(2,1fr)}.metrics-executive-note{grid-template-columns:1fr}.metrics-generated{white-space:normal}}
@media(max-width:760px){.metrics-hero{grid-template-columns:1fr;padding:19px}.metrics-hero-actions{display:grid;grid-template-columns:1fr}.metrics-summary-grid,.metrics-navigation,.metrics-card-grid,.metrics-level-grid{grid-template-columns:1fr}.metrics-category{padding:15px}.metrics-category-head{flex-direction:column}.metric-card{min-height:190px}.metrics-executive-note{padding:17px}}
@media print{.app-sidebar,.app-topbar,.app-footer,.metrics-hero-actions,.metrics-navigation{display:none!important}.app-workspace{margin:0!important}.app-main{padding:0!important}.metrics-category{break-inside:avoid;box-shadow:none}.metrics-card-grid{grid-template-columns:repeat(4,1fr)}}

/* Cybersecurity metrics dummy data and guideline */
.metrics-data-notice{
display:flex;
justify-content:space-between;
align-items:center;
gap:18px;
padding:15px 17px;
margin-bottom:15px;
border:1px solid color-mix(in srgb,var(--cc-gold) 42%,var(--cc-line));
border-radius:14px;
background:var(--cc-gold-050)
}
.metrics-data-notice>div{display:flex;align-items:flex-start;gap:12px}
.metrics-data-notice-icon{
display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;
background:var(--cc-gold-gradient);color:#17334b;font-weight:900
}
.metrics-data-notice strong{display:block;font-size:12px;color:var(--cc-text)}
.metrics-data-notice p{margin:3px 0 0;font-size:11px;line-height:1.5;color:var(--cc-muted)}
.metrics-data-notice>a{font-size:11px;font-weight:800;color:var(--cc-blue);white-space:nowrap}

.metric-card{overflow:visible!important}
.metric-card-top{align-items:flex-start!important}
.metric-status-group,.metric-card-tools{display:flex;align-items:center;gap:7px}
.metric-card-tools{margin-left:auto}
.metric-dummy-badge{
display:inline-flex;padding:4px 7px;border-radius:999px;
background:var(--cc-gold-050);color:var(--cc-gold-700);
font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em
}
.metric-info-button{
position:relative;
display:grid;
place-items:center;
width:27px;height:27px;
padding:0;
border:1px solid var(--cc-line-strong);
border-radius:9px;
background:var(--cc-surface);
color:var(--cc-blue);
cursor:help;
z-index:3
}
.metric-info-button>span{
display:grid;place-items:center;width:17px;height:17px;border-radius:50%;
background:var(--cc-blue-050);font-size:10px;font-weight:900
}
.metric-info-button:hover,.metric-info-button:focus-visible{
border-color:var(--cc-blue);
box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-blue) 12%,transparent)
}
.metric-info-popover{
position:absolute;
right:0;
top:calc(100% + 9px);
width:min(340px,80vw);
padding:15px;
border:1px solid var(--cc-line);
border-radius:14px;
background:var(--cc-surface);
box-shadow:0 18px 45px rgba(15,39,71,.18);
color:var(--cc-text);
text-align:left;
opacity:0;
visibility:hidden;
transform:translateY(-5px);
transition:opacity .16s ease,transform .16s ease,visibility .16s;
pointer-events:none;
z-index:30
}
.metric-info-button:hover .metric-info-popover,
.metric-info-button:focus .metric-info-popover,
.metric-info-button:focus-within .metric-info-popover{
opacity:1;visibility:visible;transform:translateY(0)
}
.metric-info-popover:before{
content:"";position:absolute;right:8px;top:-6px;width:11px;height:11px;
background:var(--cc-surface);border-left:1px solid var(--cc-line);border-top:1px solid var(--cc-line);
transform:rotate(45deg)
}
.metric-info-popover>strong{display:block;font-size:13px;color:var(--cc-blue);margin-bottom:11px}
.metric-info-popover dl{display:grid;gap:9px;margin:0}
.metric-info-popover dl>div{display:grid;gap:2px}
.metric-info-popover dt{font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--cc-gold-700)}
.metric-info-popover dd{margin:0;font-size:10px;line-height:1.5;color:var(--cc-muted)}

.metrics-reporting-guideline{
margin-top:18px;padding:21px;border:1px solid var(--cc-line);border-radius:18px;
background:var(--cc-surface);box-shadow:var(--cc-shadow)
}
.metrics-guideline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.metrics-guideline-grid article{padding:15px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface-2)}
.metrics-guideline-grid b{
display:grid;place-items:center;width:30px;height:30px;border-radius:9px;
background:var(--cc-gold-gradient);color:#17334b;font-size:9px
}
.metrics-guideline-grid strong{display:block;margin:11px 0 5px;font-size:12px;color:var(--cc-text)}
.metrics-guideline-grid p{margin:0;font-size:10px;line-height:1.5;color:var(--cc-muted)}

@media(max-width:1000px){
.metrics-guideline-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
.metrics-data-notice{align-items:flex-start;flex-direction:column}
.metrics-guideline-grid{grid-template-columns:1fr}
.metric-info-popover{position:fixed;left:14px;right:14px;top:auto;bottom:18px;width:auto}
.metric-info-popover:before{display:none}
}

/* =========================================================
   Executive Cybersecurity Metrics — Enterprise UI v3 alignment
   Final scoped repair
   ========================================================= */
.cyber-metrics-page{
  display:grid;
  gap:18px;
  min-width:0;
  --metrics-radius:18px;
  --metrics-gap:14px;
}

/* Hero */
.cyber-metrics-page .metrics-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:24px;
  padding:24px 26px;
  margin:0;
  overflow:hidden;
  border:1px solid var(--cc-line);
  border-radius:var(--metrics-radius);
  background:var(--cc-surface)!important;
  box-shadow:var(--cc-shadow);
}
.cyber-metrics-page .metrics-hero:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:var(--cc-gold-gradient);
}
.cyber-metrics-page .metrics-hero:after{
  content:"";
  position:absolute;
  right:-42px;
  bottom:-54px;
  width:150px;
  height:150px;
  border:28px solid color-mix(in srgb,var(--cc-blue) 6%,transparent);
  border-radius:50%;
  pointer-events:none;
}
.cyber-metrics-page .metrics-hero>div,
.cyber-metrics-page .metrics-hero-actions{
  position:relative;
  z-index:1;
}
.cyber-metrics-page .metrics-hero .eyebrow{
  display:block;
  margin:0 0 6px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.15em;
  color:var(--cc-gold-700)!important;
}
.cyber-metrics-page .metrics-hero h1{
  margin:0 0 9px;
  font-size:clamp(31px,3vw,43px);
  line-height:1.06;
  letter-spacing:-.035em;
  color:var(--cc-blue)!important;
}
.cyber-metrics-page .metrics-hero p{
  max-width:850px;
  margin:0;
  font-size:13px;
  line-height:1.6;
  color:var(--cc-muted)!important;
}
.cyber-metrics-page .metrics-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:9px;
}
.cyber-metrics-page .metrics-hero-actions a,
.cyber-metrics-page .metrics-hero-actions button{
  min-height:42px;
  padding:10px 15px;
  font-size:12px;
}

/* Summary KPI */
.cyber-metrics-page .metrics-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--metrics-gap);
  margin:0;
}
.cyber-metrics-page .metrics-summary{
  position:relative;
  min-width:0;
  min-height:132px;
  padding:18px 19px;
  overflow:hidden;
  border:1px solid var(--cc-line);
  border-radius:16px;
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.cyber-metrics-page .metrics-summary:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:var(--cc-blue);
}
.cyber-metrics-page .metrics-summary.critical:before{background:var(--cc-red)}
.cyber-metrics-page .metrics-summary.attention:before{background:var(--cc-gold)}
.cyber-metrics-page .metrics-summary.good:before{background:var(--cc-green)}
.cyber-metrics-page .metrics-summary span,
.cyber-metrics-page .metrics-summary strong,
.cyber-metrics-page .metrics-summary small{
  display:block;
}
.cyber-metrics-page .metrics-summary span{
  font-size:11px;
  font-weight:800;
  color:var(--cc-muted);
}
.cyber-metrics-page .metrics-summary strong{
  margin:15px 0 8px;
  font-size:clamp(27px,2.3vw,36px);
  line-height:1;
  letter-spacing:-.035em;
  color:var(--cc-text);
}
.cyber-metrics-page .metrics-summary small{
  font-size:10px;
  line-height:1.4;
  color:var(--cc-muted);
}

/* Dummy data notice */
.cyber-metrics-page .metrics-data-notice{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:15px 17px;
  margin:0;
  border:1px solid color-mix(in srgb,var(--cc-gold) 38%,var(--cc-line));
  border-radius:15px;
  background:linear-gradient(135deg,var(--cc-gold-050),var(--cc-surface));
}
.cyber-metrics-page .metrics-data-notice>div{
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.cyber-metrics-page .metrics-data-notice-icon{
  display:grid;
  place-items:center;
  flex:0 0 32px;
  width:32px;
  height:32px;
  border-radius:10px;
  background:var(--cc-gold-gradient);
  color:#17334b;
  font-size:12px;
  font-weight:900;
}
.cyber-metrics-page .metrics-data-notice strong{
  display:block;
  font-size:12px;
  color:var(--cc-text);
}
.cyber-metrics-page .metrics-data-notice p{
  margin:3px 0 0;
  font-size:11px;
  line-height:1.5;
  color:var(--cc-muted);
}
.cyber-metrics-page .metrics-data-notice>a{
  flex:0 0 auto;
  font-size:11px;
  font-weight:800;
  color:var(--cc-blue);
}

/* Category navigation */
.cyber-metrics-page .metrics-navigation{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  padding:10px;
  margin:0;
  border:1px solid var(--cc-line);
  border-radius:15px;
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.cyber-metrics-page .metrics-navigation a{
  min-width:0;
  padding:11px 12px;
  border:1px solid transparent;
  border-radius:11px;
  background:var(--cc-surface-2);
}
.cyber-metrics-page .metrics-navigation a:hover{
  border-color:color-mix(in srgb,var(--cc-blue) 35%,var(--cc-line));
  background:var(--cc-blue-050);
}
.cyber-metrics-page .metrics-navigation span,
.cyber-metrics-page .metrics-navigation small{
  display:block;
}
.cyber-metrics-page .metrics-navigation span{
  overflow:hidden;
  font-size:11px;
  font-weight:800;
  line-height:1.35;
  text-overflow:ellipsis;
}
.cyber-metrics-page .metrics-navigation small{
  margin-top:4px;
  font-size:9px;
  color:var(--cc-muted);
}

/* Executive interpretation */
.cyber-metrics-page .metrics-executive-note{
  display:grid;
  grid-template-columns:minmax(220px,.65fr) minmax(0,1.5fr) auto;
  align-items:center;
  gap:22px;
  padding:18px 20px;
  margin:0;
  border-radius:16px;
  background:linear-gradient(135deg,#0A36AF,#082B86)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(8,43,134,.16);
}
.cyber-metrics-page .metrics-executive-note span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  color:#F0D77A!important;
}
.cyber-metrics-page .metrics-executive-note h2{
  margin:4px 0 0;
  font-size:18px;
  color:#fff!important;
}
.cyber-metrics-page .metrics-executive-note p{
  margin:0;
  font-size:11px;
  line-height:1.55;
  color:rgba(255,255,255,.80)!important;
}
.cyber-metrics-page .metrics-generated{
  font-size:9px;
  color:rgba(255,255,255,.64)!important;
  white-space:nowrap;
}

/* Categories */
.cyber-metrics-page .metrics-category-list{
  display:grid;
  gap:16px;
}
.cyber-metrics-page .metrics-category{
  min-width:0;
  scroll-margin-top:72px;
  padding:20px;
  border:1px solid var(--cc-line);
  border-radius:var(--metrics-radius);
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.cyber-metrics-page .metrics-category-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:0 0 15px;
  margin:0 0 16px;
  border-bottom:1px solid var(--cc-line);
}
.cyber-metrics-page .metrics-category-head span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  color:var(--cc-gold-700);
}
.cyber-metrics-page .metrics-category-head h2{
  margin:4px 0 5px;
  font-size:22px;
  line-height:1.2;
  color:var(--cc-blue);
}
.cyber-metrics-page .metrics-category-head p{
  max-width:780px;
  margin:0;
  font-size:11px;
  line-height:1.5;
  color:var(--cc-muted);
}
.cyber-metrics-page .metrics-coverage-badge{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  background:var(--cc-blue-050);
  color:var(--cc-blue);
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}

/* Metric cards */
.cyber-metrics-page .metrics-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.cyber-metrics-page .metric-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:225px;
  padding:17px;
  overflow:visible!important;
  border:1px solid var(--cc-line);
  border-radius:15px;
  background:var(--cc-surface-2);
  box-shadow:none;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.cyber-metrics-page .metric-card:hover{
  z-index:5;
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--cc-blue) 30%,var(--cc-line));
  box-shadow:0 10px 25px rgba(15,39,71,.08);
}
.cyber-metrics-page .metric-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  border-radius:15px 15px 0 0;
  background:var(--cc-blue);
}
.cyber-metrics-page .metric-card.status-good:before{background:var(--cc-green)}
.cyber-metrics-page .metric-card.status-attention:before{background:var(--cc-gold)}
.cyber-metrics-page .metric-card.status-critical:before{background:var(--cc-red)}
.cyber-metrics-page .metric-card.status-unavailable:before{background:var(--cc-line-strong)}

.cyber-metrics-page .metric-card-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start!important;
  gap:10px;
  min-height:30px;
}
.cyber-metrics-page .metric-status-group,
.cyber-metrics-page .metric-card-tools{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
}
.cyber-metrics-page .metric-card-tools{
  flex:0 0 auto;
  margin-left:auto;
}
.cyber-metrics-page .metric-card-top small{
  max-width:110px;
  overflow:hidden;
  font-size:9px;
  color:var(--cc-muted);
  text-overflow:ellipsis;
  white-space:nowrap;
}
.cyber-metrics-page .metric-status,
.cyber-metrics-page .metric-dummy-badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:4px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.cyber-metrics-page .metric-status{
  background:var(--cc-blue-050);
  color:var(--cc-blue);
}
.cyber-metrics-page .status-good .metric-status{
  background:color-mix(in srgb,var(--cc-green) 12%,var(--cc-surface));
  color:var(--cc-green);
}
.cyber-metrics-page .status-attention .metric-status{
  background:var(--cc-gold-050);
  color:var(--cc-amber);
}
.cyber-metrics-page .status-critical .metric-status{
  background:color-mix(in srgb,var(--cc-red) 12%,var(--cc-surface));
  color:var(--cc-red);
}
.cyber-metrics-page .status-unavailable .metric-status{
  background:var(--cc-surface);
  color:var(--cc-muted);
}
.cyber-metrics-page .metric-dummy-badge{
  background:var(--cc-gold-050);
  color:var(--cc-gold-700);
  letter-spacing:.05em;
  text-transform:uppercase;
}
.cyber-metrics-page .metric-card h3{
  min-height:38px;
  margin:15px 0 8px;
  font-size:14px;
  line-height:1.35;
  color:var(--cc-text);
}
.cyber-metrics-page .metric-card>strong{
  display:block;
  margin:0;
  font-size:clamp(27px,2vw,34px);
  line-height:1;
  letter-spacing:-.035em;
  color:var(--cc-text);
}
.cyber-metrics-page .metric-card>p{
  margin:11px 0 15px;
  font-size:11px;
  line-height:1.5;
  color:var(--cc-muted);
}
.cyber-metrics-page .metric-card footer{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  align-items:start;
  margin-top:auto;
  padding-top:11px;
  border-top:1px solid var(--cc-line);
}
.cyber-metrics-page .metric-card footer span{
  font-size:8px;
  color:var(--cc-muted);
  text-transform:uppercase;
  letter-spacing:.06em;
}
.cyber-metrics-page .metric-card footer b{
  overflow-wrap:anywhere;
  font-size:9px;
  line-height:1.4;
  text-align:right;
  color:var(--cc-text);
}

/* Info button and popover */
.cyber-metrics-page .metric-info-button{
  position:relative;
  z-index:4;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  padding:0;
  border:1px solid var(--cc-line-strong);
  border-radius:9px;
  background:var(--cc-surface);
  color:var(--cc-blue);
  cursor:help;
}
.cyber-metrics-page .metric-info-button>span{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--cc-blue-050);
  font-size:10px;
  font-weight:900;
}
.cyber-metrics-page .metric-info-button:hover,
.cyber-metrics-page .metric-info-button:focus-visible{
  border-color:var(--cc-blue);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-blue) 12%,transparent);
}
.cyber-metrics-page .metric-info-popover{
  position:absolute;
  top:calc(100% + 9px);
  right:0;
  width:min(350px,80vw);
  padding:16px;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  transform:translateY(-5px);
  border:1px solid var(--cc-line);
  border-radius:14px;
  background:var(--cc-surface);
  box-shadow:0 18px 45px rgba(15,39,71,.20);
  color:var(--cc-text);
  text-align:left;
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
  z-index:40;
}
.cyber-metrics-page .metric-info-button:hover .metric-info-popover,
.cyber-metrics-page .metric-info-button:focus .metric-info-popover,
.cyber-metrics-page .metric-info-button:focus-within .metric-info-popover{
  visibility:visible;
  opacity:1;
  transform:translateY(0);
}
.cyber-metrics-page .metric-info-popover>strong{
  display:block;
  margin-bottom:11px;
  font-size:13px;
  color:var(--cc-blue);
}
.cyber-metrics-page .metric-info-popover dl{
  display:grid;
  gap:9px;
  margin:0;
}
.cyber-metrics-page .metric-info-popover dl>div{
  display:grid;
  gap:2px;
}
.cyber-metrics-page .metric-info-popover dt{
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--cc-gold-700);
}
.cyber-metrics-page .metric-info-popover dd{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}

/* Reporting guideline */
.cyber-metrics-page .metrics-reporting-guideline,
.cyber-metrics-page .metrics-framework-note{
  padding:20px;
  margin:0;
  border:1px solid var(--cc-line);
  border-radius:var(--metrics-radius);
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.cyber-metrics-page .metrics-guideline-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
}
.cyber-metrics-page .metrics-guideline-grid article,
.cyber-metrics-page .metrics-level-grid article{
  min-width:0;
  padding:15px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface-2);
}
.cyber-metrics-page .metrics-guideline-grid b{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:9px;
  background:var(--cc-gold-gradient);
  color:#17334b;
  font-size:9px;
}
.cyber-metrics-page .metrics-guideline-grid strong{
  display:block;
  margin:11px 0 5px;
  font-size:12px;
}
.cyber-metrics-page .metrics-guideline-grid p{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}
.cyber-metrics-page .metrics-level-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}
.cyber-metrics-page .metrics-framework-note>div:first-child span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  color:var(--cc-gold-700);
}
.cyber-metrics-page .metrics-framework-note h2{
  margin:4px 0 15px;
  font-size:21px;
  color:var(--cc-blue);
}
.cyber-metrics-page .metrics-level-grid b,
.cyber-metrics-page .metrics-level-grid strong,
.cyber-metrics-page .metrics-level-grid p{
  display:block;
}
.cyber-metrics-page .metrics-level-grid b{
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--cc-gold-700);
}
.cyber-metrics-page .metrics-level-grid strong{
  margin:7px 0;
  font-size:13px;
}
.cyber-metrics-page .metrics-level-grid p{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}

/* Dark mode */
html[data-theme="dark"] .cyber-metrics-page .metrics-hero,
html[data-theme="dark"] .cyber-metrics-page .metrics-summary,
html[data-theme="dark"] .cyber-metrics-page .metrics-navigation,
html[data-theme="dark"] .cyber-metrics-page .metrics-category,
html[data-theme="dark"] .cyber-metrics-page .metrics-reporting-guideline,
html[data-theme="dark"] .cyber-metrics-page .metrics-framework-note{
  background:var(--cc-surface)!important;
}
html[data-theme="dark"] .cyber-metrics-page .metric-card{
  background:var(--cc-surface-2)!important;
}
html[data-theme="dark"] .cyber-metrics-page .metrics-data-notice{
  background:linear-gradient(135deg,var(--cc-gold-050),var(--cc-surface))!important;
}

/* Responsive */
@media(max-width:1350px){
  .cyber-metrics-page .metrics-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .cyber-metrics-page .metrics-navigation{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(max-width:1050px){
  .cyber-metrics-page .metrics-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .cyber-metrics-page .metrics-navigation{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .cyber-metrics-page .metrics-executive-note{
    grid-template-columns:1fr;
    gap:12px;
  }
  .cyber-metrics-page .metrics-generated{
    white-space:normal;
  }
  .cyber-metrics-page .metrics-guideline-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .cyber-metrics-page{
    gap:14px;
  }
  .cyber-metrics-page .metrics-hero{
    grid-template-columns:1fr;
    padding:19px;
  }
  .cyber-metrics-page .metrics-hero-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .cyber-metrics-page .metrics-hero-actions a,
  .cyber-metrics-page .metrics-hero-actions button{
    width:100%;
  }
  .cyber-metrics-page .metrics-summary-grid,
  .cyber-metrics-page .metrics-navigation,
  .cyber-metrics-page .metrics-card-grid,
  .cyber-metrics-page .metrics-guideline-grid,
  .cyber-metrics-page .metrics-level-grid{
    grid-template-columns:1fr;
  }
  .cyber-metrics-page .metrics-data-notice{
    align-items:flex-start;
    flex-direction:column;
  }
  .cyber-metrics-page .metrics-category{
    padding:15px;
  }
  .cyber-metrics-page .metrics-category-head{
    flex-direction:column;
  }
  .cyber-metrics-page .metric-card{
    min-height:205px;
  }
  .cyber-metrics-page .metric-info-popover{
    position:fixed;
    inset:auto 14px 18px;
    width:auto;
    max-height:70vh;
    overflow:auto;
  }
  .cyber-metrics-page .metrics-reporting-guideline,
  .cyber-metrics-page .metrics-framework-note{
    padding:16px;
  }
}

@media print{
  .cyber-metrics-page .metrics-card-grid{
    grid-template-columns:repeat(3,1fr)!important;
  }
  .cyber-metrics-page .metric-card{
    break-inside:avoid;
    min-height:190px;
    box-shadow:none!important;
  }
  .cyber-metrics-page .metric-info-button{
    display:none!important;
  }
}

/* =========================================================
   Monthly cybersecurity metrics input
   ========================================================= */
.metrics-period-toolbar,
.manual-period-card{
display:flex;justify-content:space-between;align-items:center;gap:20px;
padding:16px 18px;border:1px solid var(--cc-line);border-radius:15px;
background:var(--cc-surface);box-shadow:var(--cc-shadow)
}
.metrics-period-toolbar>div span,
.manual-period-card>div span{display:block;font-size:9px;font-weight:900;letter-spacing:.13em;color:var(--cc-gold-700)}
.metrics-period-toolbar>div strong,
.manual-period-card>div strong{display:block;margin:4px 0 3px;font-size:17px;color:var(--cc-blue)}
.metrics-period-toolbar>div small,
.manual-period-card>div small{display:block;font-size:10px;color:var(--cc-muted)}
.metrics-period-toolbar form,
.manual-period-card form{display:flex;align-items:end;gap:8px}
.metrics-period-toolbar label,
.manual-period-card label{display:grid;gap:5px;font-size:9px;font-weight:800;color:var(--cc-muted)}
.metrics-period-toolbar input,
.manual-period-card input{min-height:40px;padding:8px 10px}

.metrics-manual-page{display:grid;gap:17px}
.metrics-manual-head{margin:0}
.manual-guidance{
display:flex;gap:12px;align-items:flex-start;padding:14px 16px;
border:1px solid color-mix(in srgb,var(--cc-gold) 40%,var(--cc-line));
border-radius:14px;background:linear-gradient(135deg,var(--cc-gold-050),var(--cc-surface))
}
.manual-guidance-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:var(--cc-gold-gradient);color:#17334b;font-weight:900}
.manual-guidance strong{display:block;font-size:12px}
.manual-guidance p{margin:3px 0 0;font-size:11px;line-height:1.5;color:var(--cc-muted)}

.manual-metrics-form{display:grid;gap:16px}
.manual-category{
padding:20px;border:1px solid var(--cc-line);border-radius:18px;
background:var(--cc-surface);box-shadow:var(--cc-shadow)
}
.manual-category>header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-bottom:14px;margin-bottom:15px;border-bottom:1px solid var(--cc-line)}
.manual-category>header span{font-size:9px;font-weight:900;letter-spacing:.12em;color:var(--cc-gold-700)}
.manual-category>header h2{margin:4px 0 0;font-size:21px;color:var(--cc-blue)}
.manual-category>header>div:last-child{padding:6px 9px;border-radius:999px;background:var(--cc-blue-050);font-size:9px;font-weight:800;color:var(--cc-blue)}
.manual-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.manual-metric-card{min-width:0;padding:16px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface-2)}
.manual-metric-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.manual-metric-title h3{margin:0 0 4px;font-size:14px}
.manual-metric-title p{margin:0;font-size:10px;line-height:1.45;color:var(--cc-muted)}
.manual-field-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:11px}
.manual-field-grid label{display:grid;gap:6px;font-size:10px;font-weight:800;color:var(--cc-text)}
.manual-field-grid input,.manual-field-grid textarea{width:100%;margin:0!important;padding:10px 11px!important;font-size:12px!important}
.manual-value-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--cc-line-strong);border-radius:11px;background:var(--cc-surface);overflow:hidden}
.manual-value-input input{border:0!important;border-radius:0!important}
.manual-value-input small{padding:0 10px;font-size:9px;color:var(--cc-muted)}
.manual-notes-field{grid-column:1/-1}
.manual-dummy-check{grid-column:1/-1;display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;padding:8px 10px;border:1px dashed var(--cc-line-strong);border-radius:10px;background:var(--cc-surface)}
.manual-dummy-check input{width:16px!important;height:16px!important;margin:0!important}
.manual-dummy-check span{font-size:10px;color:var(--cc-muted)}
.manual-form-actions{
position:sticky;bottom:12px;z-index:10;
display:flex;justify-content:space-between;align-items:center;gap:18px;
padding:14px 16px;border:1px solid var(--cc-line);border-radius:15px;
background:color-mix(in srgb,var(--cc-surface) 94%,transparent);
backdrop-filter:blur(12px);box-shadow:0 16px 38px rgba(15,39,71,.13)
}
.manual-form-actions strong,.manual-form-actions small{display:block}
.manual-form-actions strong{font-size:12px;color:var(--cc-blue)}
.manual-form-actions small{margin-top:2px;font-size:9px;color:var(--cc-muted)}

@media(max-width:960px){
.manual-metric-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
.metrics-period-toolbar,.manual-period-card{align-items:flex-start;flex-direction:column}
.metrics-period-toolbar form,.manual-period-card form{display:grid;grid-template-columns:1fr auto;width:100%}
.metrics-period-toolbar form label,.manual-period-card form label{grid-column:1/-1}
.metrics-period-toolbar input,.manual-period-card input{width:100%}
.manual-category{padding:15px}
.manual-field-grid{grid-template-columns:1fr}
.manual-notes-field,.manual-dummy-check{grid-column:auto}
.manual-form-actions{align-items:stretch;flex-direction:column;bottom:8px}
.manual-form-actions button{width:100%}
}

/* =========================================================
   Project milestones and calendar
   ========================================================= */
.project-milestone-workspace{margin-top:18px;padding:20px;border:1px solid var(--cc-line);border-radius:18px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.project-milestone-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:15px;margin-bottom:16px;border-bottom:1px solid var(--cc-line)}
.project-milestone-heading span,.project-calendar-card>header span,.project-calendar-agenda>header span{font-size:9px;font-weight:900;letter-spacing:.13em;color:var(--cc-gold-700)}
.project-milestone-heading h2,.project-calendar-card>header h2,.project-calendar-agenda>header h2{margin:4px 0 5px;font-size:22px;color:var(--cc-blue)}
.project-milestone-heading p{margin:0;font-size:11px;color:var(--cc-muted)}
.project-milestone-heading-actions{display:flex;align-items:center;gap:12px}
.project-milestone-heading-actions>div small,.project-milestone-heading-actions>div strong{display:block;text-align:right}
.project-milestone-heading-actions>div small{font-size:9px;color:var(--cc-muted)}
.project-milestone-heading-actions>div strong{font-size:20px;color:var(--cc-text)}
.project-milestone-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);gap:15px}
.project-milestone-list{display:grid;gap:10px;align-content:start}
.project-milestone-empty{padding:30px;border:1px dashed var(--cc-line-strong);border-radius:14px;text-align:center;font-size:11px;color:var(--cc-muted)}
.project-milestone-card{position:relative;padding:15px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface-2);overflow:hidden}
.project-milestone-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cc-blue)}
.project-milestone-card.status-at_risk:before{background:var(--cc-red)}
.project-milestone-card.status-completed:before{background:var(--cc-green)}
.project-milestone-card.status-planned:before{background:var(--cc-line-strong)}
.project-milestone-card>header{display:flex;justify-content:space-between;gap:14px}
.project-milestone-card>header span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.project-milestone-card>header h3{margin:4px 0 0;font-size:14px}
.project-milestone-card>header>strong{font-size:21px;color:var(--cc-blue)}
.project-milestone-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}
.project-milestone-dates>div{padding:9px 10px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface)}
.project-milestone-dates span,.project-milestone-dates strong{display:block}
.project-milestone-dates span{font-size:8px;text-transform:uppercase;color:var(--cc-muted)}
.project-milestone-dates strong{margin-top:3px;font-size:11px}
.project-milestone-progress i{display:block;height:8px;border-radius:999px;background:var(--cc-line);overflow:hidden}
.project-milestone-progress u{display:block;height:100%;border-radius:999px;background:var(--cc-gold-gradient);text-decoration:none}
.project-milestone-card>p{margin:11px 0 0;font-size:10px;line-height:1.5;color:var(--cc-muted)}
.project-milestone-card>footer{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
.project-milestone-card>footer form{margin:0}
.project-delete-button{min-height:38px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--cc-red) 40%,var(--cc-line));border-radius:10px;background:var(--cc-surface);color:var(--cc-red);font-size:11px;font-weight:800}
.project-milestone-form-card{position:sticky;top:72px;align-self:start;padding:18px;border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface-2)}
.project-milestone-form-card>div>span{font-size:9px;font-weight:900;letter-spacing:.12em;color:var(--cc-gold-700)}
.project-milestone-form-card h3{margin:4px 0 4px;font-size:17px;color:var(--cc-blue)}
.project-milestone-form-card>div>p{margin:0 0 15px;font-size:10px;color:var(--cc-muted)}
.project-milestone-form-card form{display:grid;gap:11px}
.project-milestone-form-card label{display:grid;gap:6px;font-size:10px;font-weight:800}
.project-milestone-form-card input,.project-milestone-form-card select,.project-milestone-form-card textarea{width:100%;margin:0!important;padding:10px 11px!important;font-size:12px!important}
.milestone-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.milestone-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}

.project-calendar-page{display:grid;gap:17px}
.project-calendar-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.project-calendar-summary>div{padding:15px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.project-calendar-summary span,.project-calendar-summary strong{display:block}
.project-calendar-summary span{font-size:9px;color:var(--cc-muted)}
.project-calendar-summary strong{margin-top:6px;font-size:16px}
.project-calendar-card{padding:18px;border:1px solid var(--cc-line);border-radius:18px;background:var(--cc-surface);box-shadow:var(--cc-shadow);overflow:auto}
.project-calendar-card>header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}
.project-calendar-card>header>div{text-align:center}
.project-calendar-card>header>a{padding:8px 10px;border:1px solid var(--cc-line);border-radius:10px;font-size:10px;font-weight:800;color:var(--cc-blue)}
.project-calendar-weekdays,.project-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:5px;min-width:790px}
.project-calendar-weekdays{margin-bottom:5px}
.project-calendar-weekdays span{padding:8px;text-align:center;font-size:9px;font-weight:900;color:var(--cc-muted)}
.calendar-day{min-height:112px;padding:8px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface-2)}
.calendar-day.empty{opacity:.35;background:transparent}
.calendar-day.today{border:2px solid var(--cc-gold)}
.calendar-day>strong{display:block;margin-bottom:6px;font-size:11px}
.calendar-events{display:grid;gap:4px}
.calendar-event{display:flex;justify-content:space-between;gap:6px;padding:5px 6px;border-left:3px solid var(--cc-blue);border-radius:6px;background:var(--cc-blue-050);font-size:8px}
.calendar-event.status-at_risk{border-color:var(--cc-red);background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface))}
.calendar-event.status-completed{border-color:var(--cc-green);background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface))}
.calendar-event.status-planned{border-color:var(--cc-line-strong);background:var(--cc-surface)}
.calendar-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-event small{font-size:8px;font-weight:800}
.calendar-more{font-size:8px;color:var(--cc-muted)}
.project-calendar-agenda{padding:18px;border:1px solid var(--cc-line);border-radius:18px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.project-calendar-agenda>header{margin-bottom:12px}
.project-calendar-agenda>div{display:grid;gap:7px}
.project-calendar-agenda article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.calendar-agenda-status{width:8px;height:8px;border-radius:50%;background:var(--cc-blue)}
.calendar-agenda-status.status-at_risk{background:var(--cc-red)}
.calendar-agenda-status.status-completed{background:var(--cc-green)}
.calendar-agenda-status.status-planned{background:var(--cc-line-strong)}
.project-calendar-agenda article strong,.project-calendar-agenda article small{display:block}
.project-calendar-agenda article strong{font-size:11px}
.project-calendar-agenda article small{margin-top:3px;font-size:9px;color:var(--cc-muted)}
.project-calendar-agenda article>b{font-size:13px;color:var(--cc-blue)}

@media(max-width:1050px){
.project-milestone-layout{grid-template-columns:1fr}
.project-milestone-form-card{position:static}
.project-calendar-summary{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
.project-milestone-workspace{padding:15px}
.project-milestone-heading{align-items:flex-start;flex-direction:column}
.project-milestone-heading-actions{width:100%;justify-content:space-between}
.project-milestone-dates,.milestone-date-fields{grid-template-columns:1fr}
.project-calendar-summary{grid-template-columns:1fr}
.project-calendar-card{padding:12px}
}

/* =========================================================
   Project list view and current stage
   ========================================================= */
.project-list-shell{
  padding:0;
  background:var(--cc-surface);
}
.project-list-table-wrap{
  width:100%;
  overflow:auto;
}
.project-list-table{
  width:100%;
  min-width:1180px;
  border-collapse:separate;
  border-spacing:0;
}
.project-list-table th{
  position:sticky;
  top:0;
  z-index:2;
  padding:13px 14px;
  background:var(--cc-surface-2)!important;
  border-bottom:1px solid var(--cc-line);
  color:var(--cc-muted)!important;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.project-list-table td{
  padding:14px;
  border-bottom:1px solid var(--cc-line);
  background:var(--cc-surface);
  vertical-align:middle;
}
.project-list-table tbody tr:hover td{
  background:color-mix(in srgb,var(--cc-blue-050) 45%,var(--cc-surface));
}
.project-name-cell{
  min-width:285px;
}
.project-name-cell>a{
  display:block;
  margin:3px 0 4px;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  color:var(--cc-blue);
}
.project-name-cell>small{
  display:block;
  max-width:360px;
  overflow:hidden;
  color:var(--cc-muted);
  font-size:9px;
  line-height:1.4;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.project-code{
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}
.project-stage{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 9px;
  border:1px solid color-mix(in srgb,var(--cc-blue) 24%,var(--cc-line));
  border-radius:999px;
  background:var(--cc-blue-050);
  color:var(--cc-blue);
  font-size:9px;
  font-weight:900;
  white-space:nowrap;
}
.project-stage.stage-bod-approval,
.project-stage.stage-budget-approval{
  border-color:color-mix(in srgb,var(--cc-gold) 40%,var(--cc-line));
  background:var(--cc-gold-050);
  color:var(--cc-gold-700);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-gold) 8%,transparent);
}
.project-stage.stage-on-hold{
  border-color:color-mix(in srgb,var(--cc-red) 28%,var(--cc-line));
  background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));
  color:var(--cc-red);
}
.project-stage.stage-completed{
  border-color:color-mix(in srgb,var(--cc-green) 28%,var(--cc-line));
  background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));
  color:var(--cc-green);
}
.project-owner{
  max-width:150px;
  overflow:hidden;
  font-size:10px;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.project-schedule-cell{
  min-width:175px;
  white-space:nowrap;
}
.project-schedule-cell span{
  font-size:9px;
  color:var(--cc-text);
}
.project-schedule-cell i{
  margin:0 5px;
  color:var(--cc-muted);
  font-style:normal;
}
.project-progress-cell{
  min-width:145px;
}
.project-progress-cell>div{
  display:flex;
  justify-content:flex-end;
  margin-bottom:6px;
}
.project-progress-cell strong{
  font-size:11px;
}
.project-progress-cell>i{
  display:block;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:var(--cc-line);
}
.project-progress-cell>i>u{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--cc-gold-gradient);
  text-decoration:none;
}
.project-health,
.project-priority{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 8px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
  white-space:nowrap;
}
.project-health{
  background:var(--cc-surface-2);
  color:var(--cc-muted);
  border:1px solid var(--cc-line);
}
.project-health.health-active,
.project-health.health-in-progress{
  background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));
  color:var(--cc-green);
}
.project-health.health-at-risk{
  background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));
  color:var(--cc-red);
}
.project-health.health-on-hold{
  background:var(--cc-gold-050);
  color:var(--cc-gold-700);
}
.project-health.health-completed{
  background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));
  color:var(--cc-green);
}
.project-priority{
  background:var(--cc-surface-2);
  color:var(--cc-muted);
}
.project-priority.priority-p1,
.project-priority.priority-critical,
.project-priority.priority-high{
  background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));
  color:var(--cc-red);
}
.project-priority.priority-p2,
.project-priority.priority-medium{
  background:var(--cc-gold-050);
  color:var(--cc-gold-700);
}
.project-priority.priority-p3,
.project-priority.priority-low{
  background:var(--cc-blue-050);
  color:var(--cc-blue);
}
.project-actions-column{
  min-width:190px;
}
.project-actions-cell{
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.project-actions-cell a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:7px 9px;
  border:1px solid var(--cc-line);
  border-radius:9px;
  background:var(--cc-surface);
  color:var(--cc-blue);
  font-size:9px;
  font-weight:800;
}
.project-actions-cell a:hover{
  border-color:var(--cc-blue);
  background:var(--cc-blue-050);
}

@media(max-width:760px){
  .project-list-table{
    min-width:1020px;
  }
}

/* =========================================================
   Project detail — high-level update, we are here, inline calendar
   ========================================================= */
.project-highlevel-update{
  margin-top:18px;
  padding:20px;
  border:1px solid var(--cc-line);
  border-radius:18px;
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.project-highlevel-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  padding-bottom:16px;
  margin-bottom:16px;
  border-bottom:1px solid var(--cc-line);
}
.project-highlevel-header>div:first-child>span,
.project-inline-calendar>header span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  color:var(--cc-gold-700);
}
.project-highlevel-header h2,
.project-inline-calendar>header h2{
  margin:4px 0 5px;
  font-size:23px;
  color:var(--cc-blue);
}
.project-highlevel-header p,
.project-inline-calendar>header p{
  margin:0;
  font-size:11px;
  color:var(--cc-muted);
}
.project-we-are-here{
  min-width:220px;
  padding:14px 16px;
  border:1px solid color-mix(in srgb,var(--cc-gold) 42%,var(--cc-line));
  border-radius:14px;
  background:linear-gradient(135deg,var(--cc-gold-050),var(--cc-surface));
}
.project-we-are-here small,
.project-we-are-here strong,
.project-we-are-here span{
  display:block;
}
.project-we-are-here small{
  font-size:8px;
  font-weight:900;
  letter-spacing:.15em;
  color:var(--cc-gold-700);
}
.project-we-are-here strong{
  margin:6px 0 4px;
  font-size:18px;
  color:var(--cc-blue);
}
.project-we-are-here span{
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}

.project-highlevel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
}
.project-highlight-card{
  min-width:0;
  min-height:125px;
  padding:15px;
  border:1px solid var(--cc-line);
  border-radius:14px;
  background:var(--cc-surface-2);
}
.project-highlight-card.primary-highlight{
  background:linear-gradient(135deg,#0A36AF,#082B86);
  border-color:#0A36AF;
}
.project-highlight-card>span,
.project-highlight-card>strong,
.project-highlight-card>small{
  display:block;
}
.project-highlight-card>span{
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}
.project-highlight-card>strong{
  margin:12px 0 7px;
  font-size:18px;
  line-height:1.25;
  color:var(--cc-text);
}
.project-highlight-card>small{
  font-size:9px;
  line-height:1.45;
  color:var(--cc-muted);
}
.project-highlight-card.primary-highlight>span,
.project-highlight-card.primary-highlight>small{
  color:rgba(255,255,255,.72);
}
.project-highlight-card.primary-highlight>strong{
  color:#fff;
  font-size:30px;
}
.project-highlight-progress i{
  display:block;
  height:8px;
  overflow:hidden;
  margin-bottom:9px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
}
.project-highlight-progress u{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--cc-gold-gradient);
  text-decoration:none;
}
.health-text.health-at-risk{color:var(--cc-red)!important}
.health-text.health-on-hold{color:var(--cc-gold-700)!important}
.health-text.health-completed{color:var(--cc-green)!important}

.project-position-track{
  position:relative;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(165px,1fr));
  gap:10px;
  margin-top:17px;
  padding-top:7px;
}
.project-position-line{
  position:absolute;
  left:18px;
  right:18px;
  top:25px;
  height:2px;
  background:var(--cc-line-strong);
}
.project-position-step{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:9px;
  padding:10px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
}
.project-position-node{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:3px solid var(--cc-surface);
  border-radius:50%;
  background:var(--cc-line-strong);
  box-shadow:0 0 0 1px var(--cc-line);
  color:var(--cc-muted);
  font-size:10px;
  font-weight:900;
}
.project-position-step.is-complete .project-position-node{
  background:var(--cc-green);
  color:#fff;
}
.project-position-step.is-current{
  border-color:color-mix(in srgb,var(--cc-gold) 52%,var(--cc-line));
  background:var(--cc-gold-050);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-gold) 8%,transparent);
}
.project-position-step.is-current .project-position-node{
  background:var(--cc-gold-gradient);
  color:#17334b;
}
.project-position-step span,
.project-position-step strong,
.project-position-step small{
  display:block;
}
.project-position-step span{
  font-size:7px;
  font-weight:900;
  letter-spacing:.08em;
  color:var(--cc-gold-700);
}
.project-position-step strong{
  margin:4px 0 3px;
  font-size:10px;
  line-height:1.3;
}
.project-position-step small{
  font-size:8px;
  color:var(--cc-muted);
}

.project-inline-calendar{
  margin-top:18px;
  padding:20px;
  border:1px solid var(--cc-line);
  border-radius:18px;
  background:var(--cc-surface);
  box-shadow:var(--cc-shadow);
}
.project-inline-calendar>header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  padding-bottom:15px;
  margin-bottom:14px;
  border-bottom:1px solid var(--cc-line);
}
.project-calendar-nav{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.project-calendar-nav a{
  min-height:36px;
  padding:8px 10px;
  font-size:9px;
}
.project-inline-calendar-scroll{
  overflow:auto;
}
.project-inline-weekdays,
.project-inline-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(105px,1fr));
  gap:5px;
  min-width:760px;
}
.project-inline-weekdays{
  margin-bottom:5px;
}
.project-inline-weekdays span{
  padding:7px;
  text-align:center;
  font-size:8px;
  font-weight:900;
  color:var(--cc-muted);
}
.project-inline-day{
  min-height:95px;
  padding:7px;
  border:1px solid var(--cc-line);
  border-radius:9px;
  background:var(--cc-surface-2);
}
.project-inline-day.empty{
  opacity:.25;
  background:transparent;
}
.project-inline-day.today{
  border:2px solid var(--cc-gold);
}
.project-inline-day>strong{
  display:block;
  margin-bottom:5px;
  font-size:10px;
}
.project-inline-day>div{
  display:grid;
  gap:4px;
}
.inline-calendar-event{
  display:block;
  overflow:hidden;
  padding:4px 5px;
  border-left:3px solid var(--cc-blue);
  border-radius:5px;
  background:var(--cc-blue-050);
  font-size:7px;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.inline-calendar-event.status-at_risk{
  border-color:var(--cc-red);
  background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));
}
.inline-calendar-event.status-completed{
  border-color:var(--cc-green);
  background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));
}
.inline-calendar-event.status-planned{
  border-color:var(--cc-line-strong);
  background:var(--cc-surface);
}
.project-inline-day small{
  font-size:7px;
  color:var(--cc-muted);
}

@media(max-width:1100px){
  .project-highlevel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .project-highlevel-update,
  .project-inline-calendar{padding:15px}
  .project-highlevel-header,
  .project-inline-calendar>header{
    align-items:flex-start;
    flex-direction:column;
  }
  .project-we-are-here{
    width:100%;
    min-width:0;
  }
  .project-highlevel-grid{grid-template-columns:1fr}
  .project-position-track{grid-template-columns:1fr}
  .project-position-line{display:none}
  .project-calendar-nav{width:100%}
  .project-calendar-nav a{flex:1}
}

/* =========================================================
   Risk Register detail — BOD executive show
   ========================================================= */
.risk-bod-show{display:grid;gap:16px;margin-top:18px}
.risk-bod-hero{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;
  align-items:center;padding:24px 26px;overflow:hidden;border:1px solid var(--cc-line);
  border-radius:18px;background:linear-gradient(135deg,#0A36AF,#082B86);box-shadow:var(--cc-shadow)
}
.risk-bod-hero:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--cc-gold-gradient)}
.risk-bod-hero.rating-red:before{background:var(--cc-red)}
.risk-bod-hero.rating-green:before{background:var(--cc-green)}
.risk-bod-hero>div{position:relative;z-index:1}
.risk-bod-hero>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.14em;color:#F0D77A}
.risk-bod-hero h2{margin:7px 0 8px;font-size:clamp(27px,3vw,39px);line-height:1.08;color:#fff!important}
.risk-bod-hero p{max-width:850px;margin:0;font-size:12px;line-height:1.6;color:rgba(255,255,255,.76)}
.risk-bod-rating{padding:16px;border:1px solid rgba(255,255,255,.24);border-radius:15px;background:rgba(255,255,255,.09);text-align:center}
.risk-bod-rating small,.risk-bod-rating strong,.risk-bod-rating span{display:block;color:#fff}
.risk-bod-rating small{font-size:8px;font-weight:900;letter-spacing:.13em;color:#F0D77A}
.risk-bod-rating strong{margin:7px 0 4px;font-size:28px}
.risk-bod-rating span{font-size:10px;color:rgba(255,255,255,.72)}

.risk-bod-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.risk-bod-kpis article{position:relative;min-height:120px;padding:16px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface);box-shadow:var(--cc-shadow);overflow:hidden}
.risk-bod-kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cc-blue)}
.risk-bod-kpis article.rating-red:before{background:var(--cc-red)}
.risk-bod-kpis article.rating-amber:before{background:var(--cc-gold)}
.risk-bod-kpis article.rating-green:before{background:var(--cc-green)}
.risk-bod-kpis span,.risk-bod-kpis strong,.risk-bod-kpis small{display:block}
.risk-bod-kpis span{font-size:9px;font-weight:800;color:var(--cc-muted)}
.risk-bod-kpis strong{margin:13px 0 7px;font-size:27px;line-height:1;color:var(--cc-text)}
.risk-bod-kpis small{font-size:9px;line-height:1.4;color:var(--cc-muted)}
.review-overdue{color:var(--cc-red)!important;font-size:19px!important}
.review-due-soon{color:var(--cc-gold-700)!important;font-size:19px!important}
.review-scheduled{color:var(--cc-green)!important;font-size:19px!important}
.review-not-scheduled{color:var(--cc-muted)!important;font-size:19px!important}

.risk-bod-main{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:14px}
.risk-bod-column{display:grid;gap:14px;align-content:start}
.risk-bod-card{padding:19px;border:1px solid var(--cc-line);border-radius:16px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.risk-bod-card>header{padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid var(--cc-line)}
.risk-bod-card>header span{font-size:8px;font-weight:900;letter-spacing:.14em;color:var(--cc-gold-700)}
.risk-bod-card>header h3{margin:4px 0 0;font-size:19px;color:var(--cc-blue)}
.risk-bod-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.risk-bod-facts>div{padding:12px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.risk-bod-facts span,.risk-bod-facts strong{display:block}
.risk-bod-facts span{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--cc-muted)}
.risk-bod-facts strong{margin-top:5px;font-size:11px}
.risk-status{display:inline-flex!important;width:max-content;padding:5px 8px;border-radius:999px;background:var(--cc-blue-050);color:var(--cc-blue)}
.risk-status.status-closed{background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));color:var(--cc-green)}
.risk-status.status-treatment,.risk-status.status-review{background:var(--cc-gold-050);color:var(--cc-gold-700)}

.risk-treatment-banner{padding:16px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface-2)}
.risk-treatment-banner small,.risk-treatment-banner strong{display:block}
.risk-treatment-banner small{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--cc-gold-700)}
.risk-treatment-banner strong{margin:6px 0 7px;font-size:20px;color:var(--cc-blue)}
.risk-treatment-banner p{margin:0;font-size:11px;line-height:1.55;color:var(--cc-muted)}
.risk-treatment-banner.strategy-accept{border-color:color-mix(in srgb,var(--cc-gold) 35%,var(--cc-line));background:var(--cc-gold-050)}
.risk-treatment-banner.strategy-avoid{border-color:color-mix(in srgb,var(--cc-red) 35%,var(--cc-line))}

.risk-decision-list{display:grid;gap:10px}
.risk-decision-list>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding:11px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.risk-decision-list i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--cc-gold-gradient);color:#17334b;font-style:normal;font-weight:900}
.risk-decision-list p{margin:0}
.risk-decision-list strong,.risk-decision-list span{display:block}
.risk-decision-list strong{font-size:10px}
.risk-decision-list span{margin-top:3px;font-size:9px;line-height:1.45;color:var(--cc-muted)}

.risk-score-journey{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:12px}
.risk-score-journey>div span,.risk-score-journey>div strong{display:block;text-align:center}
.risk-score-journey>div span{font-size:8px;color:var(--cc-muted)}
.risk-score-journey>div strong{margin-top:4px;font-size:22px}
.risk-score-journey>i{display:block;height:9px;border-radius:999px;background:var(--cc-line);overflow:hidden}
.risk-score-journey>i>u{display:block;height:100%;border-radius:999px;background:var(--cc-gold-gradient);text-decoration:none}
.risk-score-note{margin:12px 0 0;font-size:9px;line-height:1.5;color:var(--cc-muted);text-align:center}

.risk-technical-details{border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface);box-shadow:var(--cc-shadow);overflow:hidden}
.risk-technical-details summary{padding:14px 17px;cursor:pointer;font-size:10px;font-weight:800;color:var(--cc-blue);background:var(--cc-surface-2)}
.risk-technical-details .detail-grid{padding:17px}

@media(max-width:1050px){
  .risk-bod-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .risk-bod-main{grid-template-columns:1fr}
}
@media(max-width:700px){
  .risk-bod-hero{grid-template-columns:1fr;padding:20px}
  .risk-bod-rating{text-align:left}
  .risk-bod-kpis,.risk-bod-facts{grid-template-columns:1fr}
  .risk-bod-card{padding:15px}
}

/* =========================================================
   Risk Register — BOD professional table
   ========================================================= */
.risk-register-table-shell{padding:0;background:var(--cc-surface)}
.risk-register-table-wrap{width:100%;overflow:auto}
.risk-register-table{width:100%;min-width:1420px;border-collapse:separate;border-spacing:0}
.risk-register-table th{
  position:sticky;top:0;z-index:2;padding:13px 14px;
  background:var(--cc-surface-2)!important;border-bottom:1px solid var(--cc-line);
  color:var(--cc-muted)!important;font-size:9px;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase;white-space:nowrap
}
.risk-register-table td{
  padding:14px;border-bottom:1px solid var(--cc-line);
  background:var(--cc-surface);vertical-align:middle
}
.risk-register-table tbody tr:hover td{
  background:color-mix(in srgb,var(--cc-blue-050) 42%,var(--cc-surface))
}
.risk-row{position:relative}
.risk-row td:first-child{border-left:4px solid var(--cc-line-strong)}
.risk-row.residual-red td:first-child{border-left-color:var(--cc-red)}
.risk-row.residual-amber td:first-child{border-left-color:var(--cc-gold)}
.risk-row.residual-green td:first-child{border-left-color:var(--cc-green)}

.risk-name-cell{min-width:300px}
.risk-code{
  font-size:8px;font-weight:900;letter-spacing:.09em;color:var(--cc-gold-700)
}
.risk-name-cell>a{
  display:block;margin:3px 0 4px;font-size:13px;font-weight:800;
  line-height:1.35;color:var(--cc-blue)
}
.risk-name-cell>small{
  display:block;max-width:370px;overflow:hidden;font-size:9px;
  line-height:1.4;color:var(--cc-muted);text-overflow:ellipsis;white-space:nowrap
}
.risk-table-text,.risk-owner{
  display:block;max-width:160px;overflow:hidden;font-size:10px;
  text-overflow:ellipsis;white-space:nowrap
}
.risk-owner{font-weight:700}
.risk-category-pill{
  display:inline-flex;max-width:150px;padding:5px 8px;border:1px solid var(--cc-line);
  border-radius:999px;background:var(--cc-surface-2);font-size:8px;font-weight:800;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.risk-rating-cell{display:flex;align-items:center;gap:8px;min-width:88px}
.risk-rating-dot{
  width:10px;height:10px;border-radius:50%;background:var(--cc-line-strong);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--cc-line-strong) 18%,transparent)
}
.risk-rating-dot.rating-red{background:var(--cc-red);box-shadow:0 0 0 4px color-mix(in srgb,var(--cc-red) 12%,transparent)}
.risk-rating-dot.rating-amber{background:var(--cc-gold);box-shadow:0 0 0 4px color-mix(in srgb,var(--cc-gold) 13%,transparent)}
.risk-rating-dot.rating-green{background:var(--cc-green);box-shadow:0 0 0 4px color-mix(in srgb,var(--cc-green) 12%,transparent)}
.risk-rating-cell strong,.risk-rating-cell small{display:block}
.risk-rating-cell strong{font-size:9px}
.risk-rating-cell small{margin-top:2px;font-size:8px;color:var(--cc-muted)}

.risk-treatment,.risk-list-status{
  display:inline-flex;align-items:center;min-height:25px;padding:5px 8px;
  border-radius:999px;font-size:8px;font-weight:900;white-space:nowrap
}
.risk-treatment{
  background:var(--cc-blue-050);color:var(--cc-blue)
}
.risk-treatment.strategy-accept{background:var(--cc-gold-050);color:var(--cc-gold-700)}
.risk-treatment.strategy-avoid{background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));color:var(--cc-red)}
.risk-treatment.strategy-transfer{background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));color:var(--cc-green)}

.risk-review-date{min-width:125px}
.risk-review-date strong,.risk-review-date small{display:block}
.risk-review-date strong{font-size:9px}
.risk-review-date small{margin-top:3px;font-size:8px;color:var(--cc-muted)}
.risk-review-date.review-overdue strong{color:var(--cc-red)}
.risk-review-date.review-due-soon strong{color:var(--cc-gold-700)}
.risk-review-date.review-scheduled strong{color:var(--cc-green)}

.risk-list-status{
  border:1px solid var(--cc-line);background:var(--cc-surface-2);color:var(--cc-muted)
}
.risk-list-status.status-open,.risk-list-status.status-treatment{
  background:var(--cc-gold-050);color:var(--cc-gold-700)
}
.risk-list-status.status-closed{
  background:color-mix(in srgb,var(--cc-green) 10%,var(--cc-surface));color:var(--cc-green)
}
.risk-list-status.status-escalated{
  background:color-mix(in srgb,var(--cc-red) 10%,var(--cc-surface));color:var(--cc-red)
}

.risk-actions-column{min-width:145px}
.risk-list-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.risk-list-actions a{
  display:inline-flex;align-items:center;justify-content:center;min-height:32px;
  padding:7px 9px;border:1px solid var(--cc-line);border-radius:9px;
  background:var(--cc-surface);color:var(--cc-blue);font-size:9px;font-weight:800
}
.risk-list-actions a:hover{border-color:var(--cc-blue);background:var(--cc-blue-050)}

@media(max-width:760px){
  .risk-register-table{min-width:1220px}
}

/* =========================================================
   Risk Register table — final Enterprise UI v3 repair
   ========================================================= */
.risk-register-v3{background:var(--cc-surface)}
.risk-register-v3-head{
  display:flex;justify-content:space-between;align-items:center;gap:18px;
  padding:15px 17px;border-bottom:1px solid var(--cc-line);
  background:linear-gradient(135deg,var(--cc-surface),var(--cc-surface-2))
}
.risk-register-v3-head>div:first-child span,
.risk-register-v3-head>div:first-child strong,
.risk-register-v3-head>div:first-child small{display:block}
.risk-register-v3-head>div:first-child span{
  font-size:8px;font-weight:900;letter-spacing:.13em;color:var(--cc-gold-700)
}
.risk-register-v3-head>div:first-child strong{
  margin:4px 0 3px;font-size:15px;color:var(--cc-blue)
}
.risk-register-v3-head>div:first-child small{font-size:9px;color:var(--cc-muted)}
.risk-register-legend{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.risk-register-legend span{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:800;color:var(--cc-muted)}
.risk-register-legend i{width:8px;height:8px;border-radius:50%}
.risk-register-legend .legend-red{background:var(--cc-red)}
.risk-register-legend .legend-amber{background:var(--cc-gold)}
.risk-register-legend .legend-green{background:var(--cc-green)}

.risk-register-v3-scroll{width:100%;overflow:auto}
.risk-register-v3-table{
  width:100%;min-width:1040px;table-layout:fixed;border-collapse:separate;border-spacing:0
}
.risk-register-v3-table th{
  position:sticky;top:0;z-index:3;padding:12px 14px;
  border-bottom:1px solid var(--cc-line);background:var(--cc-surface-2)!important;
  color:var(--cc-muted)!important;font-size:8px;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase
}
.risk-register-v3-table th:nth-child(1){width:34%}
.risk-register-v3-table th:nth-child(2){width:18%}
.risk-register-v3-table th:nth-child(3){width:18%}
.risk-register-v3-table th:nth-child(4){width:19%}
.risk-register-v3-table th:nth-child(5){width:11%}
.risk-register-v3-table td{
  padding:15px 14px;border-bottom:1px solid var(--cc-line);
  background:var(--cc-surface);vertical-align:middle
}
.risk-register-v3-row:hover td{
  background:color-mix(in srgb,var(--cc-blue-050) 36%,var(--cc-surface))
}
.risk-register-v3-row td:first-child{border-left:4px solid var(--cc-line-strong)}
.risk-register-v3-row.residual-red td:first-child{border-left-color:var(--cc-red)}
.risk-register-v3-row.residual-amber td:first-child{border-left-color:var(--cc-gold)}
.risk-register-v3-row.residual-green td:first-child{border-left-color:var(--cc-green)}
.risk-register-v3-name{overflow:hidden}
.risk-register-v3-code{font-size:8px;font-weight:900;letter-spacing:.09em;color:var(--cc-gold-700)}
.risk-register-v3-name>a{
  display:block;margin:3px 0 4px;font-size:13px;font-weight:800;
  line-height:1.35;color:var(--cc-blue)
}
.risk-register-v3-name>p{
  max-width:100%;margin:0 0 8px;overflow:hidden;color:var(--cc-muted);
  font-size:9px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap
}
.risk-register-v3-meta{display:flex;flex-wrap:wrap;gap:5px}
.risk-register-v3-meta span{
  display:inline-flex;max-width:180px;padding:4px 7px;overflow:hidden;
  border:1px solid var(--cc-line);border-radius:999px;background:var(--cc-surface-2);
  color:var(--cc-muted);font-size:7.5px;font-weight:700;text-overflow:ellipsis;white-space:nowrap
}
.risk-exposure-journey{
  display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);
  align-items:center;gap:5px
}
.risk-exposure-journey>i{color:var(--cc-muted);font-style:normal;text-align:center}
.risk-exposure-point{display:flex;align-items:center;gap:7px;min-width:0}
.risk-exposure-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:var(--cc-line-strong)}
.risk-exposure-dot.rating-red{background:var(--cc-red)}
.risk-exposure-dot.rating-amber{background:var(--cc-gold)}
.risk-exposure-dot.rating-green{background:var(--cc-green)}
.risk-exposure-point p{min-width:0;margin:0}
.risk-exposure-point small,.risk-exposure-point strong,.risk-exposure-point b{display:block}
.risk-exposure-point small{font-size:7px;color:var(--cc-muted)}
.risk-exposure-point strong{margin:2px 0 1px;font-size:8px}
.risk-exposure-point b{font-size:11px;color:var(--cc-text)}
.risk-owner-treatment{display:grid;gap:10px}
.risk-owner-treatment>div span,.risk-owner-treatment>div strong{display:block}
.risk-owner-treatment>div span{
  font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--cc-muted)
}
.risk-owner-treatment>div strong{
  margin-top:3px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap
}
.risk-owner-treatment .risk-treatment{margin-top:4px}
.risk-review-status{display:grid;gap:9px;align-content:start}
.risk-review-date{min-width:0}
.risk-review-date span,.risk-review-date strong,.risk-review-date small{display:block}
.risk-review-date span{font-size:7px;font-weight:800;text-transform:uppercase;color:var(--cc-muted)}
.risk-review-date strong{margin-top:3px;font-size:10px}
.risk-review-date small{margin-top:2px;font-size:7.5px}
.risk-review-date.review-overdue strong,
.risk-review-date.review-overdue small{color:var(--cc-red)}
.risk-review-date.review-due-soon strong,
.risk-review-date.review-due-soon small{color:var(--cc-gold-700)}
.risk-review-date.review-scheduled strong{color:var(--cc-green)}
.risk-register-v3-actions{display:grid;gap:7px}
.risk-register-v3-actions a{
  display:flex;align-items:center;justify-content:center;min-height:34px;
  padding:7px 9px;border-radius:9px;font-size:8px;font-weight:800;white-space:nowrap
}
.risk-register-v3-actions .secondary{background:var(--cc-surface)!important}
@media(max-width:900px){
  .risk-register-v3-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:760px){
  .risk-register-v3-table{min-width:980px}
}


/* =========================================================
   Mobile light default and visible theme switch
   ========================================================= */
@media(max-width:960px){
  .app-sidebar-footer{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }

  .sidebar-footer-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
  }

  .theme-switch{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    padding:8px 10px!important;
  }

  .theme-switch-track{
    display:inline-flex!important;
    flex:0 0 auto!important;
  }

  .theme-switch-label{
    display:inline!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:hidden!important;
    font-size:10px!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

@media(max-width:760px){
  .app-sidebar-footer{
    padding:11px 12px 13px!important;
  }

  .sidebar-footer-actions{
    grid-template-columns:minmax(0,1fr) 42px!important;
  }

  .sidebar-logout{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    padding:0!important;
  }

  .sidebar-logout span{
    display:none!important;
  }
}


/* =========================================================
   Chrome mobile sidebar interaction fix
   ========================================================= */
.mobile-menu-toggle{
  position:relative!important;
  z-index:75!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
}

.app-sidebar-backdrop{
  pointer-events:none!important;
}

body.sidebar-open .app-sidebar-backdrop{
  pointer-events:auto!important;
}

@media(max-width:960px){
  .app-sidebar{
    will-change:transform!important;
    -webkit-transform:translateX(-102%)!important;
    transform:translateX(-102%)!important;
  }

  body.sidebar-open .app-sidebar{
    -webkit-transform:translateX(0)!important;
    transform:translateX(0)!important;
  }

  .app-sidebar-backdrop{
    -webkit-tap-highlight-color:transparent!important;
    touch-action:manipulation!important;
  }
}


/* =========================================================
   Mobile menu — Chrome and Safari final stacking fix
   ========================================================= */
@media(max-width:960px){
  .app-topbar{
    position:sticky!important;
    z-index:85!important;
    isolation:isolate!important;
  }

  .topbar-left{
    position:relative!important;
    z-index:2!important;
  }

  .mobile-menu-toggle{
    position:relative!important;
    z-index:100!important;
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    padding:0!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  .mobile-menu-toggle svg{
    pointer-events:none!important;
  }

  .app-sidebar-backdrop{
    z-index:70!important;
    display:block!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  body.sidebar-open .app-sidebar-backdrop{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .app-sidebar{
    z-index:95!important;
    visibility:visible!important;
    pointer-events:auto!important;
    -webkit-transform:translate3d(-102%,0,0)!important;
    transform:translate3d(-102%,0,0)!important;
  }

  body.sidebar-open .app-sidebar{
    -webkit-transform:translate3d(0,0,0)!important;
    transform:translate3d(0,0,0)!important;
  }
}


/* =========================================================
   Compact sidebar-to-content spacing
   ========================================================= */
:root{
  --cc-sidebar:248px;
  --cc-sidebar-gap:10px;
}

.app-sidebar{
  width:var(--cc-sidebar)!important;
}

.app-workspace{
  margin-left:calc(var(--cc-sidebar) + var(--cc-sidebar-gap))!important;
  width:calc(100% - var(--cc-sidebar) - var(--cc-sidebar-gap))!important;
  max-width:none!important;
}

.app-main{
  padding-left:14px!important;
  padding-right:18px!important;
}

.app-topbar{
  padding-left:14px!important;
  padding-right:18px!important;
}

@media(max-width:960px){
  :root{
    --cc-sidebar-gap:0px;
  }

  .app-workspace{
    margin-left:0!important;
    width:100%!important;
  }

  .app-main,
  .app-topbar{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

/* Issue Management scoped layout */
.issue-register-shell{display:grid;gap:14px}
.issue-register-intro{padding:15px 16px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface-2)}
.issue-register-intro>div{display:grid;gap:4px}
.issue-register-intro span{font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.issue-register-intro strong{font-size:16px;color:var(--cc-blue)}
.issue-register-intro small{font-size:10px;color:var(--cc-muted)}
.issue-register-scroll{width:100%;overflow:auto;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface)}
.issue-register-table{width:100%;min-width:1260px;table-layout:fixed;border-collapse:collapse}
.issue-register-table th{padding:13px 14px!important;font-size:10px!important;text-align:left;color:var(--cc-muted);background:var(--cc-surface-2);border-bottom:1px solid var(--cc-line)}
.issue-register-table td{padding:15px 14px!important;font-size:11px!important;vertical-align:middle;border-bottom:1px solid var(--cc-line)}
.issue-register-table th:nth-child(1){width:27%}.issue-register-table th:nth-child(2){width:13%}.issue-register-table th:nth-child(3){width:19%}.issue-register-table th:nth-child(4){width:14%}.issue-register-table th:nth-child(5){width:8%}.issue-register-table th:nth-child(6){width:12%}.issue-register-table th:nth-child(7){width:7%}
.issue-row td:first-child{border-left:4px solid var(--cc-line-strong)}.issue-row.severity-critical td:first-child{border-left-color:#D73535}.issue-row.severity-high td:first-child{border-left-color:#EF7B32}.issue-row.severity-medium td:first-child{border-left-color:#D9AD25}.issue-row.severity-low td:first-child{border-left-color:#4F9B67}.issue-row:hover td{background:var(--cc-surface-2)}
.issue-name-cell,.issue-source-cell,.issue-context-cell,.issue-owner-cell,.issue-risk-cell,.issue-target-cell{display:grid;gap:5px}
.issue-name-cell>span{font-size:9px;font-weight:900;letter-spacing:.07em;color:var(--cc-gold-700)}.issue-name-cell>a{font-size:13px;font-weight:800;color:var(--cc-blue)}
.issue-name-cell small,.issue-source-cell small,.issue-context-cell small,.issue-owner-cell small,.issue-risk-cell small{font-size:10px!important;color:var(--cc-muted)}
.issue-source-cell>b{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#E8EEFF;color:#164CB9;font-size:9px}
.issue-severity{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900}.issue-severity.severity-critical{background:#FBE7E7;color:#B72B2B}.issue-severity.severity-high{background:#FDEBDD;color:#B95416}.issue-severity.severity-medium{background:#FFF2C9;color:#866300}.issue-severity.severity-low{background:#DFF2E4;color:#2D7442}
.issue-risk-cell strong{font-size:20px!important;color:var(--cc-blue)}
.issue-target-cell{padding:9px 10px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}.issue-target-cell span{font-size:9px;color:var(--cc-muted)}.issue-target-cell.is-overdue{border-color:#EDB1B1;background:#FFF4F4}.issue-target-cell.is-closed{border-color:#B9DFC5;background:#F3FBF5}
.issue-actions-cell{display:grid;gap:6px}.issue-actions-cell a{display:flex;justify-content:center;padding:7px 8px!important;font-size:9px!important}
.comprehensive-issue-form{display:grid;gap:16px}.issue-form-section{padding:20px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface)}.issue-form-section>header{padding-bottom:13px;margin-bottom:15px;border-bottom:1px solid var(--cc-line)}.issue-form-section>header span{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}.issue-form-section>header h2{margin:5px 0;font-size:18px}.issue-form-section>header p{margin:0;font-size:10px;color:var(--cc-muted)}.issue-form-section .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.issue-form-section label{display:grid;gap:6px;font-size:10px!important;font-weight:700}.issue-form-section label.full{grid-column:1/-1}.issue-form-section input,.issue-form-section select,.issue-form-section textarea{width:100%;min-height:42px;padding:10px 11px!important;font-size:11px!important}.issue-form-section textarea{min-height:94px}.issue-form-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface)}
.issue-reference-warning{display:grid;gap:4px;padding:12px 14px;margin-bottom:14px;border:1px solid #E6C96F;border-radius:11px;background:#FFF8DF}.issue-reference-warning strong{font-size:11px}.issue-reference-warning span{font-size:10px}
@media(max-width:760px){.issue-form-section{padding:15px}.issue-form-section .form-grid{grid-template-columns:1fr}.issue-form-section label.full{grid-column:auto}}


/* =========================================================
   Final sidebar gap normalization
   Prevents duplicate legacy and modern shell offsets
   ========================================================= */
:root{
  --cc-sidebar:248px;
  --cc-sidebar-gap:0px;
}

html,
body{
  margin:0!important;
  padding-left:0!important;
}

.app-sidebar{
  left:0!important;
  width:var(--cc-sidebar)!important;
}

.app-workspace{
  margin-left:var(--cc-sidebar)!important;
  width:calc(100vw - var(--cc-sidebar))!important;
  max-width:none!important;
  padding-left:0!important;
}

.app-topbar{
  width:100%!important;
  max-width:none!important;
  padding-left:10px!important;
  padding-right:16px!important;
}

.app-main{
  width:100%!important;
  max-width:none!important;
  padding-left:10px!important;
  padding-right:16px!important;
}

.app-footer{
  width:100%!important;
  max-width:none!important;
}

@media(max-width:960px){
  html,
  body{
    padding-left:0!important;
  }

  .app-workspace{
    margin-left:0!important;
    width:100%!important;
  }

  .app-topbar,
  .app-main{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* Issue detail clean reading layout */
.issue-detail-clean{max-width:1180px;margin:0 auto;background:var(--cc-surface);border-top:4px solid var(--cc-blue)}
.issue-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:28px 30px 24px;border-bottom:1px solid var(--cc-line)}
.issue-detail-code{display:block;margin-bottom:7px;font-size:10px;font-weight:900;letter-spacing:.09em;color:var(--cc-gold-700)}
.issue-detail-header h1{max-width:850px;margin:0 0 10px;font-size:30px;line-height:1.18;letter-spacing:-.02em;color:var(--cc-blue)}
.issue-detail-header p{max-width:900px;margin:0;font-size:12px;line-height:1.7;color:var(--cc-muted)}
.issue-detail-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;min-width:145px}
.issue-detail-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 30px;border-bottom:1px solid var(--cc-line)}
.issue-detail-overview>div{padding:18px 18px 18px 0}.issue-detail-overview>div+div{padding-left:18px;border-left:1px solid var(--cc-line)}
.issue-detail-overview span,.issue-detail-overview small{display:block;font-size:10px;line-height:1.45;color:var(--cc-muted)}
.issue-detail-overview strong{display:block;margin:5px 0 3px;font-size:14px;line-height:1.4;color:var(--cc-text)}
.issue-text-overdue{color:#B72B2B!important;font-weight:800}
.issue-detail-section{padding:26px 30px;border-bottom:1px solid var(--cc-line)}
.issue-detail-section>header{display:flex;gap:13px;align-items:flex-start;margin-bottom:20px}
.issue-detail-section>header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--cc-blue);color:#fff;font-size:10px;font-weight:900;flex:0 0 auto}
.issue-detail-section>header h2{margin:0 0 4px;font-size:19px;line-height:1.3;color:var(--cc-blue)}
.issue-detail-section>header p{margin:0;font-size:11px;line-height:1.5;color:var(--cc-muted)}
.issue-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.issue-detail-list>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--cc-line)}
.issue-detail-list>div:nth-last-child(-n+2){border-bottom:0}
.issue-detail-list dt{font-size:10px;font-weight:800;line-height:1.5;color:var(--cc-muted)}
.issue-detail-list dd{margin:0;font-size:12px;font-weight:700;line-height:1.5;color:var(--cc-text)}
.issue-detail-scoreline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px;border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line)}
.issue-detail-scoreline>div{padding:15px 16px 15px 0}.issue-detail-scoreline>div+div{padding-left:16px;border-left:1px solid var(--cc-line)}
.issue-detail-scoreline span{display:block;font-size:10px;color:var(--cc-muted)}.issue-detail-scoreline strong{display:block;margin-top:5px;font-size:24px;line-height:1;color:var(--cc-blue)}
.issue-detail-narrative{display:grid;gap:20px}.issue-detail-narrative>div{padding-left:14px;border-left:3px solid var(--cc-line-strong)}
.issue-detail-narrative h3,.issue-detail-action-plan h3{margin:0 0 7px;font-size:13px;line-height:1.4;color:var(--cc-blue)}
.issue-detail-narrative p,.issue-detail-action-plan p{margin:0;font-size:12px;line-height:1.7;color:var(--cc-text)}
.issue-detail-action-plan{margin-top:20px;padding:18px 0 0;border-top:1px solid var(--cc-line)}
.issue-detail-footer{display:flex;justify-content:flex-end;gap:8px;padding:20px 30px 28px}
@media(max-width:900px){.issue-detail-overview,.issue-detail-scoreline{grid-template-columns:repeat(2,minmax(0,1fr))}.issue-detail-overview>div:nth-child(3),.issue-detail-scoreline>div:nth-child(3){border-left:0}.issue-detail-overview>div:nth-child(n+3),.issue-detail-scoreline>div:nth-child(n+3){border-top:1px solid var(--cc-line)}.issue-detail-list{grid-template-columns:1fr}.issue-detail-list>div:nth-last-child(-n+2){border-bottom:1px solid var(--cc-line)}.issue-detail-list>div:last-child{border-bottom:0}}
@media(max-width:640px){.issue-detail-header{flex-direction:column;padding:22px 18px}.issue-detail-header h1{font-size:25px}.issue-detail-status{justify-content:flex-start}.issue-detail-overview,.issue-detail-scoreline{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.issue-detail-overview>div,.issue-detail-overview>div+div,.issue-detail-scoreline>div,.issue-detail-scoreline>div+div{padding:13px 0;border-left:0;border-top:1px solid var(--cc-line)}.issue-detail-overview>div:first-child,.issue-detail-scoreline>div:first-child{border-top:0}.issue-detail-section{padding:22px 18px}.issue-detail-list>div{grid-template-columns:1fr;gap:3px}.issue-detail-footer{padding:18px;flex-direction:column-reverse}.issue-detail-footer a{justify-content:center}}

/* =========================================================
   CRQ stable recovery override
   Restored from the last validated CRQ production UI baseline
   ========================================================= */
/* =========================================================
   CRQ data-driven dashboard, simulation and detail
   ========================================================= */
.crq-data-page,.crq-form-page,.crq-detail-page{display:grid;gap:17px}
.crq-portfolio-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.crq-kpi{min-height:132px;padding:17px;border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.crq-kpi span,.crq-kpi strong,.crq-kpi small{display:block}
.crq-kpi span{font-size:9px;font-weight:800;color:var(--cc-muted)}
.crq-kpi strong{margin:15px 0 8px;font-size:25px;line-height:1;color:var(--cc-blue)}
.crq-kpi small{font-size:9px;line-height:1.45;color:var(--cc-muted)}
.crq-kpi.primary{background:linear-gradient(135deg,#0A36AF,#082B86);border-color:#0A36AF}
.crq-kpi.primary span,.crq-kpi.primary small{color:rgba(255,255,255,.72)}
.crq-kpi.primary strong{color:#fff}
.crq-dashboard-grid,.crq-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:14px}
.crq-panel{padding:19px;border:1px solid var(--cc-line);border-radius:17px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.crq-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid var(--cc-line)}
.crq-panel>header span{font-size:8px;font-weight:900;letter-spacing:.13em;color:var(--cc-gold-700)}
.crq-panel>header h2{margin:4px 0 3px;font-size:19px;color:var(--cc-blue)}
.crq-panel>header p{margin:0;font-size:9px;color:var(--cc-muted)}
.crq-distribution-chart{display:flex;align-items:flex-end;gap:6px;height:230px;padding:18px 12px 0;border-bottom:1px solid var(--cc-line);background:linear-gradient(to top,var(--cc-surface-2),transparent)}
.crq-distribution-chart i{position:relative;flex:1;min-height:3%;border-radius:6px 6px 0 0;background:var(--cc-gold-gradient)}
.crq-distribution-chart i span{position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);font-size:6px;color:var(--cc-muted)}
.crq-chart-labels{display:flex;justify-content:space-between;margin-top:23px;font-size:8px;color:var(--cc-muted)}
.crq-empty-chart{display:grid;place-items:center;height:230px;border:1px dashed var(--cc-line-strong);border-radius:12px;color:var(--cc-muted);font-size:10px}
.crq-leading-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:13px}
.crq-leading-grid>div{padding:11px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface-2)}
.crq-leading-grid span,.crq-leading-grid strong{display:block}
.crq-leading-grid span{font-size:7px;text-transform:uppercase;color:var(--cc-muted)}
.crq-leading-grid strong{margin-top:4px;font-size:10px}
.crq-panel-empty{font-size:10px;color:var(--cc-muted)}
.crq-record-count{font-size:9px;color:var(--cc-muted)}
.crq-table-scroll{overflow:auto}
.crq-record-table{width:100%;min-width:1380px;border-collapse:separate;border-spacing:0}
.crq-record-table th{padding:11px 12px;background:var(--cc-surface-2)!important;border-bottom:1px solid var(--cc-line);font-size:8px;text-transform:uppercase;color:var(--cc-muted)!important}
.crq-record-table td{padding:13px 12px;border-bottom:1px solid var(--cc-line);vertical-align:middle;font-size:9px}
.crq-record-table td>strong,.crq-record-table td>small{display:block}
.crq-record-table td>small{margin-top:3px;color:var(--cc-muted);font-size:7.5px}
.crq-scenario-cell{min-width:260px}
.crq-scenario-cell>span,.crq-scenario-cell>a,.crq-scenario-cell>small{display:block}
.crq-scenario-cell>span{font-size:7px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.crq-scenario-cell>a{margin:3px 0;font-size:11px;font-weight:800;color:var(--cc-blue)}
.crq-record-table .secondary{display:inline-flex;padding:7px 9px;font-size:8px}

.crq-simulation-form{display:grid;gap:14px}
.crq-form-section{padding:20px;border:1px solid var(--cc-line);border-radius:17px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.crq-form-section>header{padding-bottom:13px;margin-bottom:15px;border-bottom:1px solid var(--cc-line)}
.crq-form-section>header span{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--cc-gold-700)}
.crq-form-section>header h2{margin:4px 0 3px;font-size:19px;color:var(--cc-blue)}
.crq-form-section>header p{margin:0;font-size:9px;color:var(--cc-muted)}
.crq-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.crq-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.crq-form-grid label{display:grid;gap:6px;font-size:9px;font-weight:800}
.crq-form-grid label.full{grid-column:1/-1}
.crq-form-grid input,.crq-form-grid select,.crq-form-grid textarea{width:100%;padding:11px!important;font-size:11px!important}
.crq-guidance{margin-top:12px;padding:10px;border-left:3px solid var(--cc-gold);background:var(--cc-gold-050);font-size:9px;color:var(--cc-muted)}
.crq-money-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.crq-money-preview span{padding:9px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}
.crq-money-preview small,.crq-money-preview strong{display:block}
.crq-money-preview small{font-size:7px;color:var(--cc-muted)}
.crq-money-preview strong{margin-top:4px;font-size:9px}
.crq-form-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface)}

.crq-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px;align-items:center;padding:25px;border-radius:18px;background:linear-gradient(135deg,#0A36AF,#082B86);box-shadow:var(--cc-shadow)}
.crq-detail-hero>div:first-child>span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#F0D77A}
.crq-detail-hero h1{margin:6px 0 8px;font-size:clamp(28px,3vw,40px);color:#fff!important}
.crq-detail-hero p{margin:0;max-width:850px;font-size:11px;line-height:1.55;color:rgba(255,255,255,.72)}
.crq-detail-hero>div:last-child{padding:15px;border:1px solid rgba(255,255,255,.25);border-radius:14px;background:rgba(255,255,255,.09)}
.crq-detail-hero>div:last-child small,.crq-detail-hero>div:last-child strong,.crq-detail-hero>div:last-child span{display:block;color:#fff}
.crq-detail-hero>div:last-child small{font-size:8px;color:#F0D77A}
.crq-detail-hero>div:last-child strong{margin:7px 0 4px;font-size:24px}
.crq-detail-hero>div:last-child span{font-size:8px;color:rgba(255,255,255,.7)}
.crq-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.crq-detail-kpis article{padding:15px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.crq-detail-kpis span,.crq-detail-kpis strong,.crq-detail-kpis small{display:block}
.crq-detail-kpis span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}
.crq-detail-kpis strong{margin:9px 0 5px;font-size:18px;color:var(--cc-blue)}
.crq-detail-kpis small{font-size:8px;color:var(--cc-muted)}
.crq-distribution-chart.detail{height:250px}
.crq-percentile-line{position:relative;height:48px;margin-top:8px;border-top:1px solid var(--cc-line)}
.crq-percentile-line>div{position:absolute;top:0;transform:translateX(-50%);text-align:center}
.crq-percentile-line i{display:block;width:1px;height:11px;margin:auto;background:var(--cc-gold)}
.crq-percentile-line span{display:block;margin-top:3px;font-size:7px;color:var(--cc-muted);white-space:nowrap}
.crq-economics{display:grid;gap:8px}
.crq-economics>div{display:flex;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}
.crq-economics span{font-size:8px;color:var(--cc-muted)}
.crq-economics strong{font-size:10px}
.crq-economics strong.positive{color:var(--cc-green)}
.crq-economics strong.negative{color:var(--cc-red)}
.crq-reduction-bar{margin-top:13px}
.crq-reduction-bar i{display:block;height:9px;border-radius:999px;background:var(--cc-line);overflow:hidden}
.crq-reduction-bar u{display:block;height:100%;border-radius:999px;background:var(--cc-gold-gradient);text-decoration:none}
.crq-reduction-bar span{display:block;margin-top:6px;font-size:8px;color:var(--cc-muted)}
.crq-assumption-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.crq-assumption-grid>div{padding:11px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface-2)}
.crq-assumption-grid span,.crq-assumption-grid strong,.crq-assumption-grid small{display:block}
.crq-assumption-grid span{font-size:7px;text-transform:uppercase;color:var(--cc-muted)}
.crq-assumption-grid strong{margin-top:4px;font-size:10px}
.crq-assumption-grid small{margin-top:3px;font-size:7px;color:var(--cc-muted)}

@media(max-width:1050px){
  .crq-portfolio-kpis,.crq-detail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .crq-dashboard-grid,.crq-detail-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .crq-portfolio-kpis,.crq-detail-kpis,.crq-form-grid,.crq-form-grid.three,.crq-money-preview,.crq-assumption-grid{grid-template-columns:1fr}
  .crq-detail-hero{grid-template-columns:1fr;padding:20px}
  .crq-leading-grid{grid-template-columns:1fr}
  .crq-form-section{padding:15px}
}

.crq-executive-message,.crq-methodology{padding:20px;border:1px solid var(--cc-line);border-radius:17px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}
.crq-executive-message span,.crq-methodology>header span{font-size:8px;font-weight:900;letter-spacing:.13em;color:var(--cc-gold-700)}
.crq-executive-message h2,.crq-methodology h2{margin:4px 0 6px;color:var(--cc-blue)}
.crq-executive-message p,.crq-methodology>header p{margin:0;max-width:1100px;font-size:11px;line-height:1.65;color:var(--cc-muted)}
.crq-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}
.crq-method-grid article{display:grid;grid-template-columns:30px 1fr;gap:9px;padding:12px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.crq-method-grid b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--cc-gold-gradient)}
.crq-method-grid strong,.crq-method-grid p{display:block;margin:0}.crq-method-grid strong{font-size:10px}.crq-method-grid p{margin-top:4px;font-size:8px;color:var(--cc-muted)}
.crq-term-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.crq-term-grid>div{padding:11px;border:1px solid var(--cc-line);border-radius:10px}.crq-term-grid strong{font-size:9px}.crq-term-grid p{margin:4px 0 0;font-size:8px;color:var(--cc-muted)}
.crq-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:15px;align-items:start}.crq-editor-main{display:grid;gap:14px}.crq-editor-guide{position:sticky;top:72px;display:grid;gap:12px}.crq-editor-guide>div{padding:16px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface);box-shadow:var(--cc-shadow)}.crq-editor-guide span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.crq-editor-guide h2{margin:5px 0}.crq-editor-guide>div>strong{display:block;font-size:20px;color:var(--cc-blue)}.crq-editor-guide small,.crq-guide-list p{font-size:8px;line-height:1.5;color:var(--cc-muted)}.crq-guide-list h3{font-size:11px;color:var(--cc-blue)}.crq-range-group{padding:12px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2);margin-bottom:10px}.crq-range-group h3{margin:0 0 10px;font-size:11px}.crq-range-group button{margin-top:10px}
@media(max-width:1100px){.crq-method-grid{grid-template-columns:repeat(2,1fr)}.crq-term-grid{grid-template-columns:repeat(2,1fr)}.crq-editor-layout{grid-template-columns:1fr}.crq-editor-guide{position:static}}
@media(max-width:700px){.crq-method-grid,.crq-term-grid{grid-template-columns:1fr}}

/* CRQ deployment diagnostics */
.crq-tenant-context,
.crq-runtime-alert{
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 14px;
  border:1px solid var(--cc-line);
  border-radius:12px;
  background:var(--cc-surface);
}
.crq-tenant-context span,
.crq-runtime-alert strong{
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  color:var(--cc-gold-700);
}
.crq-tenant-context strong{
  font-size:10px;
  color:var(--cc-blue);
}
.crq-tenant-context small,
.crq-runtime-alert span{
  font-size:8px;
  color:var(--cc-muted);
}
.crq-runtime-alert{
  border-color:color-mix(in srgb,var(--cc-red) 35%,var(--cc-line));
  background:color-mix(in srgb,var(--cc-red) 7%,var(--cc-surface));
}
.crq-runtime-alert strong{color:var(--cc-red)}
@media(max-width:700px){
  .crq-tenant-context,.crq-runtime-alert{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
}


/* =========================================================
   CRQ production UI refinement
   ========================================================= */
.crq-data-page,
.crq-form-page,
.crq-detail-page{
  display:grid;
  gap:20px;
}

.crq-data-page .page-head,
.crq-form-page .page-head,
.crq-detail-page .page-head{
  margin-bottom:0;
}

.crq-data-page .page-head h1,
.crq-form-page .page-head h1{
  margin:6px 0 8px;
  font-size:clamp(28px,3vw,38px);
  line-height:1.12;
  letter-spacing:-.02em;
}

.crq-data-page .page-head p,
.crq-form-page .page-head p{
  max-width:900px;
  margin:0;
  font-size:12px;
  line-height:1.65;
}

.crq-executive-message{
  display:block;
  padding:22px 24px;
}

.crq-executive-message h2{
  margin:6px 0 10px;
  font-size:22px;
  line-height:1.25;
}

.crq-executive-message p{
  max-width:1080px;
  font-size:11px;
  line-height:1.7;
}

.crq-portfolio-kpis{
  gap:14px;
}

.crq-kpi{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:150px;
  padding:19px;
}

.crq-kpi span{
  min-height:34px;
  font-size:9px;
  line-height:1.45;
  letter-spacing:.01em;
}

.crq-kpi strong{
  margin:16px 0 10px;
  font-size:26px;
  line-height:1.08;
  letter-spacing:-.02em;
  white-space:normal;
}

.crq-kpi small{
  margin-top:auto;
  font-size:9px;
  line-height:1.5;
}

.crq-dashboard-grid{
  gap:16px;
}

.crq-panel{
  padding:22px;
}

.crq-panel>header{
  align-items:flex-start;
  padding-bottom:15px;
  margin-bottom:17px;
}

.crq-panel>header h2{
  margin:5px 0 5px;
  font-size:20px;
  line-height:1.25;
}

.crq-panel>header p{
  font-size:9px;
  line-height:1.5;
}

.crq-leading-grid{
  gap:10px;
}

.crq-leading-grid>div{
  min-height:76px;
  padding:12px;
}

.crq-leading-grid span{
  font-size:7px;
  line-height:1.35;
}

.crq-leading-grid strong{
  margin-top:6px;
  font-size:10px;
  line-height:1.45;
}

.crq-methodology{
  padding:22px 24px;
}

.crq-methodology>header{
  margin-bottom:18px;
}

.crq-methodology>header h2{
  margin:6px 0 8px;
  font-size:22px;
  line-height:1.25;
}

.crq-methodology>header p{
  font-size:11px;
  line-height:1.65;
}

.crq-method-grid{
  gap:12px;
  margin-top:0;
}

.crq-method-grid article{
  min-height:126px;
  padding:14px;
}

.crq-method-grid strong{
  font-size:10px;
  line-height:1.35;
}

.crq-method-grid p{
  margin-top:6px;
  font-size:8px;
  line-height:1.55;
}

.crq-term-grid{
  gap:10px;
  margin-top:14px;
}

.crq-term-grid>div{
  min-height:118px;
  padding:13px;
}

.crq-term-grid strong{
  display:block;
  font-size:9px;
  line-height:1.4;
}

.crq-term-grid p{
  margin-top:6px;
  font-size:8px;
  line-height:1.55;
}

.crq-record-workspace{
  overflow:hidden;
}

.crq-record-workspace .workspace-header{
  align-items:flex-start;
  gap:16px;
  padding-bottom:15px;
}

.crq-record-workspace .workspace-header h2{
  margin:0 0 5px;
  font-size:20px;
  line-height:1.25;
}

.crq-record-workspace .workspace-header p{
  margin:0;
  font-size:9px;
  line-height:1.5;
}

.crq-record-count{
  padding-top:3px;
  font-size:8px;
  white-space:nowrap;
}

.crq-record-table{
  min-width:1320px;
}

.crq-record-table th{
  padding:12px 13px;
  font-size:8px;
  line-height:1.3;
  white-space:normal;
}

.crq-record-table td{
  padding:14px 13px;
  font-size:9px;
  line-height:1.45;
}

.crq-record-table td>strong{
  font-size:9px;
  line-height:1.35;
}

.crq-record-table td>small{
  margin-top:4px;
  font-size:7px;
  line-height:1.4;
}

.crq-scenario-cell>a{
  margin:4px 0;
  font-size:11px;
  line-height:1.4;
}

.crq-scenario-cell>small{
  font-size:7px;
  line-height:1.4;
}

.crq-editor-layout{
  gap:18px;
}

.crq-editor-main{
  gap:16px;
}

.crq-form-section{
  padding:22px;
}

.crq-form-section>header{
  padding-bottom:15px;
  margin-bottom:17px;
}

.crq-form-section>header h2{
  margin:5px 0 5px;
  font-size:20px;
  line-height:1.25;
}

.crq-form-section>header p{
  font-size:9px;
  line-height:1.55;
}

.crq-form-grid{
  gap:14px;
}

.crq-form-grid label{
  gap:7px;
  font-size:9px;
  line-height:1.35;
}

.crq-form-grid label>span{
  display:block;
  min-height:18px;
}

.crq-form-grid input,
.crq-form-grid select,
.crq-form-grid textarea{
  min-height:42px;
  padding:11px 12px!important;
  font-size:10px!important;
  line-height:1.4!important;
}

.crq-range-group{
  padding:14px;
  margin-bottom:12px;
}

.crq-range-group h3{
  margin:0 0 12px;
  font-size:11px;
  line-height:1.4;
}

.crq-editor-guide{
  gap:14px;
}

.crq-editor-guide>div{
  padding:18px;
}

.crq-editor-guide h2{
  margin:6px 0 8px;
  font-size:18px;
  line-height:1.25;
}

.crq-editor-guide>div>strong{
  margin:6px 0 8px;
  font-size:21px;
  line-height:1.2;
}

.crq-editor-guide small,
.crq-guide-list p{
  font-size:8px;
  line-height:1.6;
}

.crq-guide-list h3{
  margin:0 0 8px;
  font-size:11px;
  line-height:1.4;
}

.crq-guide-list p{
  margin:0 0 9px;
}

.crq-form-actions{
  padding:16px;
}

.crq-runtime-alert{
  display:grid;
  gap:4px;
  padding:13px 15px;
}

.crq-runtime-alert strong{
  font-size:10px;
  line-height:1.35;
}

.crq-runtime-alert span{
  font-size:8px;
  line-height:1.5;
}

.crq-tenant-context{
  display:none!important;
}

@media(max-width:1050px){
  .crq-portfolio-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .crq-method-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .crq-term-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .crq-data-page,
  .crq-form-page,
  .crq-detail-page{
    gap:15px;
  }

  .crq-executive-message,
  .crq-methodology,
  .crq-form-section,
  .crq-panel{
    padding:16px;
  }

  .crq-portfolio-kpis,
  .crq-method-grid,
  .crq-term-grid{
    grid-template-columns:1fr;
  }

  .crq-kpi{
    min-height:132px;
  }

  .crq-kpi strong{
    font-size:23px;
  }

  .crq-record-workspace .workspace-header{
    flex-direction:column;
  }

  .crq-record-count{
    padding-top:0;
    white-space:normal;
  }
}



/* Issue inherent-to-residual risk calculation */
.issue-form-section input[readonly]{
  background:var(--cc-surface-2)!important;
  color:var(--cc-blue)!important;
  font-weight:800;
  cursor:not-allowed;
}

.issue-form-section input[data-rating="critical"]{color:#B72B2B!important}
.issue-form-section input[data-rating="high"]{color:#B95416!important}
.issue-form-section input[data-rating="medium"]{color:#866300!important}
.issue-form-section input[data-rating="low"]{color:#2D7442!important}

.issue-risk-comparison{
  display:grid;
  grid-template-columns:1.15fr .9fr 1.15fr .8fr;
  border-top:1px solid var(--cc-line);
  border-bottom:1px solid var(--cc-line);
  margin-bottom:20px;
}

.issue-risk-comparison>div{
  min-width:0;
  padding:17px 18px;
}

.issue-risk-comparison>div+div{
  border-left:1px solid var(--cc-line);
}

.issue-risk-comparison span,
.issue-risk-comparison small{
  display:block;
  font-size:9px;
  line-height:1.4;
  color:var(--cc-muted);
}

.issue-risk-comparison span{
  font-weight:900;
  letter-spacing:.07em;
}

.issue-risk-comparison strong{
  display:block;
  margin:7px 0 5px;
  font-size:26px;
  line-height:1;
  color:var(--cc-blue);
}

.issue-risk-comparison p{
  margin:6px 0 0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}

.issue-risk-control{
  background:var(--cc-surface-2);
}

.issue-risk-stage.residual strong{
  color:#2D7442;
}

.issue-risk-stage.linked strong{
  color:var(--cc-gold-700);
}

.issue-compensating-controls{
  margin-top:0!important;
  margin-bottom:20px;
}

@media(max-width:900px){
  .issue-risk-comparison{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .issue-risk-comparison>div:nth-child(3){
    border-left:0;
  }

  .issue-risk-comparison>div:nth-child(n+3){
    border-top:1px solid var(--cc-line);
  }
}

@media(max-width:560px){
  .issue-risk-comparison{
    grid-template-columns:1fr;
  }

  .issue-risk-comparison>div+div{
    border-left:0;
    border-top:1px solid var(--cc-line);
  }
}


/* Archer-style issue relationships */
.issue-inline-empty{
  padding:14px 0;
  font-size:11px;
  color:var(--cc-muted);
}

.issue-inline-empty a{
  margin-left:5px;
  font-weight:800;
  color:var(--cc-blue);
}

.issue-linked-risk-list{
  display:grid;
}

.issue-linked-risk-list>article{
  display:grid;
  grid-template-columns:minmax(270px,2fr) repeat(4,minmax(110px,1fr));
  align-items:center;
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--cc-line);
}

.issue-linked-risk-list>article:last-child{
  border-bottom:0;
}

.issue-linked-risk-list>article>div{
  min-width:0;
}

.issue-linked-risk-list span,
.issue-linked-risk-list small{
  display:block;
  font-size:9px;
  line-height:1.4;
  color:var(--cc-muted);
}

.issue-linked-risk-list strong{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.4;
}

.issue-linked-risk-main>span{
  font-weight:900;
  letter-spacing:.07em;
  color:var(--cc-gold-700);
}

.issue-linked-risk-main>a{
  display:block;
  margin:4px 0;
  font-size:12px;
  font-weight:800;
  line-height:1.4;
  color:var(--cc-blue);
}

.issue-linked-risk-main p{
  margin:0;
  font-size:10px;
  color:var(--cc-muted);
}

.issue-remediation-list{
  display:grid;
}

.issue-remediation-list>div{
  display:grid;
  grid-template-columns:minmax(280px,2fr) repeat(3,minmax(110px,1fr));
  align-items:center;
  gap:16px;
  padding:14px 0;
  border-bottom:1px solid var(--cc-line);
}

.issue-remediation-list>div:last-child{
  border-bottom:0;
}

.issue-remediation-list span,
.issue-remediation-list small{
  display:block;
  font-size:9px;
  color:var(--cc-muted);
}

.issue-remediation-list strong{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.4;
}

@media(max-width:960px){
  .issue-linked-risk-list>article,
  .issue-remediation-list>div{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .issue-linked-risk-main,
  .issue-remediation-list>div>div:first-child{
    grid-column:1/-1;
  }
}

@media(max-width:560px){
  .issue-linked-risk-list>article,
  .issue-remediation-list>div{
    grid-template-columns:1fr;
  }

  .issue-linked-risk-main,
  .issue-remediation-list>div>div:first-child{
    grid-column:auto;
  }
}


/* =========================================================
   Archer-aligned Issue Management sidebar submenu
   ========================================================= */
.menu-group-items .menu-section-label{
  padding:11px 13px 5px;
  margin-top:3px;
  font-size:9px;
  font-weight:900;
  line-height:1.3;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--cc-gold-700);
  pointer-events:none;
}

.menu-group-items .menu-section-label+ a{
  margin-top:0;
}

/* =========================================================
   Risk detail — clean reading layout
   ========================================================= */
.risk-detail-clean{
  max-width:1180px;
  margin:0 auto;
  background:var(--cc-surface);
  border-top:4px solid var(--cc-blue);
}

.risk-detail-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  padding:28px 30px 24px;
  border-bottom:1px solid var(--cc-line);
}

.risk-detail-code{
  display:block;
  margin-bottom:7px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}

.risk-detail-header h1{
  max-width:850px;
  margin:0 0 10px;
  font-size:30px;
  line-height:1.18;
  letter-spacing:-.02em;
  color:var(--cc-blue);
}

.risk-detail-header p{
  max-width:900px;
  margin:0;
  font-size:12px;
  line-height:1.7;
  color:var(--cc-muted);
}

.risk-detail-status{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
  min-width:145px;
}

.risk-rating{
  display:inline-flex;
  align-items:center;
  padding:6px 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
}

.risk-rating.rating-red{background:#FBE7E7;color:#B72B2B}
.risk-rating.rating-amber{background:#FFF2C9;color:#866300}
.risk-rating.rating-green{background:#DFF2E4;color:#2D7442}

.risk-detail-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  padding:0 30px;
  border-bottom:1px solid var(--cc-line);
}

.risk-detail-overview>div{
  padding:18px 18px 18px 0;
}

.risk-detail-overview>div+div{
  padding-left:18px;
  border-left:1px solid var(--cc-line);
}

.risk-detail-overview span,
.risk-detail-overview small{
  display:block;
  font-size:10px;
  line-height:1.45;
  color:var(--cc-muted);
}

.risk-detail-overview strong{
  display:block;
  margin:5px 0 3px;
  font-size:14px;
  line-height:1.4;
}

.risk-detail-section{
  padding:26px 30px;
  border-bottom:1px solid var(--cc-line);
}

.risk-detail-section>header{
  display:flex;
  gap:13px;
  align-items:flex-start;
  margin-bottom:20px;
}

.risk-detail-section>header>span{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:var(--cc-blue);
  color:#fff;
  font-size:10px;
  font-weight:900;
  flex:0 0 auto;
}

.risk-detail-section>header h2{
  margin:0 0 4px;
  font-size:19px;
  color:var(--cc-blue);
}

.risk-detail-section>header p{
  margin:0;
  font-size:11px;
  color:var(--cc-muted);
}

.risk-exposure-flow{
  display:grid;
  grid-template-columns:1.15fr .9fr 1.15fr .8fr;
  border-top:1px solid var(--cc-line);
  border-bottom:1px solid var(--cc-line);
}

.risk-exposure-flow>div{
  padding:18px;
}

.risk-exposure-flow>div+div{
  border-left:1px solid var(--cc-line);
}

.risk-exposure-flow span,
.risk-exposure-flow small{
  display:block;
  font-size:9px;
  color:var(--cc-muted);
}

.risk-exposure-flow span{
  font-weight:900;
  letter-spacing:.07em;
}

.risk-exposure-flow strong{
  display:block;
  margin:7px 0 5px;
  font-size:27px;
  line-height:1;
  color:var(--cc-blue);
}

.risk-exposure-flow .risk-exposure-arrow{
  background:var(--cc-surface-2);
}

.risk-exposure-flow .residual strong{
  color:#2D7442;
}

.risk-detail-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
}

.risk-detail-list>div{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid var(--cc-line);
}

.risk-detail-list dt{
  font-size:10px;
  font-weight:800;
  color:var(--cc-muted);
}

.risk-detail-list dd{
  margin:0;
  font-size:12px;
  font-weight:700;
}

.risk-inline-empty{
  padding:14px 0;
  font-size:11px;
  color:var(--cc-muted);
}

.risk-inline-empty a{
  margin-left:5px;
  font-weight:800;
  color:var(--cc-blue);
}

.risk-linked-issue-list{
  display:grid;
}

.risk-linked-issue-list>article{
  display:grid;
  grid-template-columns:minmax(280px,2fr) repeat(4,minmax(105px,1fr));
  align-items:center;
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--cc-line);
}

.risk-linked-issue-list>article:last-child{
  border-bottom:0;
}

.risk-linked-issue-list span,
.risk-linked-issue-list small{
  display:block;
  font-size:9px;
  color:var(--cc-muted);
}

.risk-linked-issue-list strong{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.4;
}

.risk-linked-issue-main>span{
  font-weight:900;
  letter-spacing:.07em;
  color:var(--cc-gold-700);
}

.risk-linked-issue-main>a{
  display:block;
  margin:4px 0;
  font-size:12px;
  font-weight:800;
  color:var(--cc-blue);
}

.risk-linked-issue-main p{
  margin:0;
  font-size:10px;
  color:var(--cc-muted);
}

.risk-linked-severity{
  display:inline-flex!important;
  width:max-content;
  padding:5px 8px;
  border-radius:999px;
  font-size:9px!important;
  font-weight:900;
}

.risk-linked-severity.severity-critical{background:#FBE7E7;color:#B72B2B}
.risk-linked-severity.severity-high{background:#FDEBDD;color:#B95416}
.risk-linked-severity.severity-medium{background:#FFF2C9;color:#866300}
.risk-linked-severity.severity-low{background:#DFF2E4;color:#2D7442}

.risk-detail-footer{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding:20px 30px 28px;
}

@media(max-width:900px){
  .risk-detail-overview,
  .risk-exposure-flow{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .risk-detail-list{
    grid-template-columns:1fr;
  }

  .risk-linked-issue-list>article{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .risk-linked-issue-main{
    grid-column:1/-1;
  }
}

@media(max-width:640px){
  .risk-detail-header{
    flex-direction:column;
    padding:22px 18px;
  }

  .risk-detail-header h1{
    font-size:25px;
  }

  .risk-detail-status{
    justify-content:flex-start;
  }

  .risk-detail-overview,
  .risk-exposure-flow{
    grid-template-columns:1fr;
    padding-left:18px;
    padding-right:18px;
  }

  .risk-detail-overview>div,
  .risk-detail-overview>div+div,
  .risk-exposure-flow>div,
  .risk-exposure-flow>div+div{
    padding:13px 0;
    border-left:0;
    border-top:1px solid var(--cc-line);
  }

  .risk-detail-section{
    padding:22px 18px;
  }

  .risk-detail-list>div{
    grid-template-columns:1fr;
    gap:3px;
  }

  .risk-linked-issue-list>article{
    grid-template-columns:1fr;
  }

  .risk-linked-issue-main{
    grid-column:auto;
  }

  .risk-detail-footer{
    padding:18px;
    flex-direction:column-reverse;
  }

  .risk-detail-footer a{
    justify-content:center;
  }
}


/* =========================================================
   Sidebar scroll fix for expanded Issue Management submenu
   ========================================================= */
.app-sidebar{
  display:flex!important;
  flex-direction:column!important;
  height:100vh!important;
  max-height:100vh!important;
  overflow:hidden!important;
}

.app-sidebar-brand{
  flex:0 0 auto!important;
}

.app-sidebar-scroll{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  padding-right:3px;
}

.app-sidebar-scroll::-webkit-scrollbar{
  width:6px;
}

.app-sidebar-scroll::-webkit-scrollbar-track{
  background:transparent;
}

.app-sidebar-scroll::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.22);
  border-radius:999px;
}

.app-sidebar-scroll::-webkit-scrollbar-thumb:hover{
  background:rgba(255,255,255,.34);
}

.app-menu{
  min-height:min-content!important;
  overflow:visible!important;
  padding-bottom:16px!important;
}

.app-sidebar-footer,
.sidebar-user-block,
.sidebar-bottom{
  flex:0 0 auto!important;
}

.menu-group{
  overflow:visible!important;
}

.menu-group[open] .menu-group-items{
  max-height:none!important;
  overflow:visible!important;
}

.menu-group-items{
  overflow:visible!important;
}

@media(max-width:960px){
  .app-sidebar{
    height:100dvh!important;
    max-height:100dvh!important;
  }

  .app-sidebar-scroll{
    -webkit-overflow-scrolling:touch;
    padding-bottom:18px;
  }
}


/* ISO/IEC 27005-style Risk Register */
.iso27005-risk-form{display:grid;gap:16px}
.risk-form-section{padding:20px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface)}
.risk-form-section>header{padding-bottom:13px;margin-bottom:15px;border-bottom:1px solid var(--cc-line)}
.risk-form-section>header span{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.risk-form-section>header h2{margin:5px 0;font-size:18px;color:var(--cc-blue)}
.risk-form-section>header p{margin:0;font-size:10px;color:var(--cc-muted)}
.risk-form-section .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.risk-form-section label{display:grid;gap:6px;font-size:10px!important;font-weight:700}
.risk-form-section label.full{grid-column:1/-1}
.risk-form-section input,.risk-form-section select,.risk-form-section textarea{width:100%;min-height:42px;padding:10px 11px!important;font-size:11px!important}
.risk-form-section textarea{min-height:94px}
.risk-form-section input[readonly]{background:var(--cc-surface-2)!important;color:var(--cc-blue)!important;font-weight:800}
.risk-form-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface)}

.iso-risk-register{display:grid;gap:14px}
.iso-risk-register-intro{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 16px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface-2)}
.iso-risk-register-intro>div{display:grid;gap:4px}.iso-risk-register-intro span{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}.iso-risk-register-intro strong{font-size:16px;color:var(--cc-blue)}.iso-risk-register-intro small{font-size:10px;color:var(--cc-muted)}
.iso-risk-table-scroll{overflow:auto;border:1px solid var(--cc-line);border-radius:13px}
.iso-risk-table{width:100%;min-width:1400px;table-layout:fixed;border-collapse:collapse;background:var(--cc-surface)}
.iso-risk-table th{padding:12px 13px!important;font-size:9px!important;text-align:left;color:var(--cc-muted);background:var(--cc-surface-2);border-bottom:1px solid var(--cc-line)}
.iso-risk-table td{padding:14px 13px!important;font-size:10px!important;vertical-align:middle;border-bottom:1px solid var(--cc-line)}
.iso-risk-table th:nth-child(1){width:26%}.iso-risk-table th:nth-child(2){width:14%}.iso-risk-table th:nth-child(3){width:13%}.iso-risk-table th:nth-child(4){width:8%}.iso-risk-table th:nth-child(5){width:8%}.iso-risk-table th:nth-child(6){width:9%}.iso-risk-table th:nth-child(7){width:13%}.iso-risk-table th:nth-child(8){width:9%}
.iso-risk-table td>strong,.iso-risk-table td>small{display:block}.iso-risk-table td>small{margin-top:4px;font-size:9px;color:var(--cc-muted)}
.iso-risk-name>span{display:block;font-size:9px;font-weight:900;color:var(--cc-gold-700)}.iso-risk-name>a{display:block;margin:4px 0;font-size:12px;font-weight:800;color:var(--cc-blue)}.iso-risk-name small{display:block;color:var(--cc-muted)}
.iso-risk-rating{display:inline-flex;width:max-content;margin-top:5px;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900}
.iso-risk-rating.rating-critical,.iso-risk-rating.rating-red{background:#FBE7E7;color:#B72B2B}.iso-risk-rating.rating-high{background:#FDEBDD;color:#B95416}.iso-risk-rating.rating-medium,.iso-risk-rating.rating-amber{background:#FFF2C9;color:#866300}.iso-risk-rating.rating-low,.iso-risk-rating.rating-green{background:#DFF2E4;color:#2D7442}

.iso-risk-detail{max-width:1180px;margin:0 auto;background:var(--cc-surface);border-top:4px solid var(--cc-blue)}
.iso-risk-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:28px 30px 24px;border-bottom:1px solid var(--cc-line)}
.iso-risk-detail-header>div:first-child>span{display:block;margin-bottom:7px;font-size:10px;font-weight:900;letter-spacing:.09em;color:var(--cc-gold-700)}
.iso-risk-detail-header h1{max-width:850px;margin:0 0 10px;font-size:30px;line-height:1.18;color:var(--cc-blue)}
.iso-risk-detail-header p{max-width:900px;margin:0;font-size:12px;line-height:1.7;color:var(--cc-muted)}
.iso-risk-detail-header>div:last-child{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;min-width:145px}
.iso-risk-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 30px;border-bottom:1px solid var(--cc-line)}
.iso-risk-summary>div{padding:18px 18px 18px 0}.iso-risk-summary>div+div{padding-left:18px;border-left:1px solid var(--cc-line)}
.iso-risk-summary span,.iso-risk-summary small{display:block;font-size:10px;color:var(--cc-muted)}.iso-risk-summary strong{display:block;margin:5px 0 3px;font-size:14px}
.iso-risk-section{padding:26px 30px;border-bottom:1px solid var(--cc-line)}
.iso-risk-section>header{display:flex;gap:13px;align-items:flex-start;margin-bottom:20px}
.iso-risk-section>header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--cc-blue);color:#fff;font-size:10px;font-weight:900;flex:0 0 auto}
.iso-risk-section>header h2{margin:0 0 4px;font-size:19px;color:var(--cc-blue)}.iso-risk-section>header p{margin:0;font-size:11px;color:var(--cc-muted)}
.iso-risk-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
.iso-risk-list>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--cc-line)}
.iso-risk-list dt{font-size:10px;font-weight:800;color:var(--cc-muted)}.iso-risk-list dd{margin:0;font-size:12px;font-weight:700;line-height:1.5}
.iso-risk-statement{display:grid;gap:18px;margin-bottom:20px}.iso-risk-statement>div{padding-left:14px;border-left:3px solid var(--cc-line-strong)}.iso-risk-statement h3,.iso-risk-controls h3{margin:0 0 7px;font-size:13px;color:var(--cc-blue)}.iso-risk-statement p,.iso-risk-controls p{margin:0;font-size:12px;line-height:1.7}
.iso-risk-exposure{display:grid;grid-template-columns:1.1fr .95fr 1.1fr 1fr;border-top:1px solid var(--cc-line);border-bottom:1px solid var(--cc-line);margin-bottom:20px}
.iso-risk-exposure>div{padding:17px 18px}.iso-risk-exposure>div+div{border-left:1px solid var(--cc-line)}.iso-risk-exposure span,.iso-risk-exposure small{display:block;font-size:9px;color:var(--cc-muted)}.iso-risk-exposure span{font-weight:900;letter-spacing:.07em}.iso-risk-exposure strong{display:block;margin:7px 0 5px;font-size:26px;color:var(--cc-blue)}.iso-risk-exposure p{margin:6px 0 0;font-size:10px;color:var(--cc-muted)}.iso-risk-exposure .controls{background:var(--cc-surface-2)}.iso-risk-exposure .residual strong{color:#2D7442}.iso-risk-exposure strong.decision{font-size:13px;line-height:1.4}
.iso-risk-controls{padding:18px 0 0;border-top:1px solid var(--cc-line)}.iso-risk-controls small{display:block;margin-top:8px;font-size:9px;color:var(--cc-muted)}
.iso-related-list,.iso-assessment-history{display:grid;margin-top:20px;border-top:1px solid var(--cc-line)}
.iso-related-list>div{display:grid;grid-template-columns:minmax(260px,2fr) repeat(4,minmax(100px,1fr));gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--cc-line)}
.iso-related-list span,.iso-related-list small,.iso-assessment-history span{display:block;font-size:9px;color:var(--cc-muted)}.iso-related-list strong{display:block;margin-top:4px;font-size:11px}
.iso-assessment-history>div{display:grid;grid-template-columns:160px repeat(3,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--cc-line);font-size:10px}

@media(max-width:900px){.risk-form-section .form-grid,.iso-risk-list{grid-template-columns:1fr}.iso-risk-summary,.iso-risk-exposure{grid-template-columns:repeat(2,minmax(0,1fr))}.iso-related-list>div{grid-template-columns:repeat(2,minmax(0,1fr))}.iso-related-list>div>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.risk-form-section{padding:15px}.risk-form-section .form-grid{grid-template-columns:1fr}.risk-form-section label.full{grid-column:auto}.iso-risk-register-intro{flex-direction:column;align-items:flex-start}.iso-risk-detail-header{flex-direction:column;padding:22px 18px}.iso-risk-detail-header h1{font-size:25px}.iso-risk-summary,.iso-risk-exposure{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.iso-risk-summary>div,.iso-risk-summary>div+div,.iso-risk-exposure>div,.iso-risk-exposure>div+div{padding:13px 0;border-left:0;border-top:1px solid var(--cc-line)}.iso-risk-section{padding:22px 18px}.iso-risk-list>div{grid-template-columns:1fr;gap:3px}.iso-related-list>div,.iso-assessment-history>div{grid-template-columns:1fr}.iso-related-list>div>div:first-child{grid-column:auto}}


/* Integrated Risk & Issue domain classification */
.risk-domain-badge{
  display:inline-flex;
  width:max-content;
  margin-bottom:5px;
  padding:5px 8px;
  border-radius:999px;
  background:#E8EEFF;
  color:#164CB9;
  font-size:9px;
  font-weight:900;
}

.risk-issue-metric strong{
  font-size:18px!important;
  color:var(--cc-blue);
}

.risk-linked-issues-heading{
  align-items:center!important;
}

.risk-linked-issue-summary{
  display:grid;
  grid-template-columns:auto auto;
  gap:2px 7px;
  margin-left:auto;
  padding-left:18px;
  border-left:1px solid var(--cc-line);
}

.risk-linked-issue-summary strong{
  font-size:15px;
  line-height:1;
  color:var(--cc-blue);
}

.risk-linked-issue-summary small{
  font-size:9px;
  color:var(--cc-muted);
}

@media(max-width:640px){
  .risk-linked-issues-heading{
    align-items:flex-start!important;
  }

  .risk-linked-issue-summary{
    width:100%;
    margin-left:41px;
    padding:10px 0 0;
    border-left:0;
    border-top:1px solid var(--cc-line);
  }
}


/* Integrated risk and issue executive summary */
.integrated-risk-dashboard{
  display:grid;
  gap:14px;
  margin-bottom:18px;
}

.integrated-risk-dashboard-header{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  padding:20px;
  border:1px solid var(--cc-line);
  border-radius:14px;
  background:var(--cc-surface);
}

.integrated-risk-dashboard-header>div:first-child>span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}

.integrated-risk-dashboard-header h2{
  margin:5px 0;
  font-size:22px;
  color:var(--cc-blue);
}

.integrated-risk-dashboard-header p{
  margin:0;
  font-size:10px;
  color:var(--cc-muted);
}

.integrated-summary-date{
  text-align:right;
}

.integrated-summary-date span,
.integrated-summary-date strong{
  display:block;
}

.integrated-summary-date span{
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-summary-date strong{
  margin-top:5px;
  font-size:13px;
}

.integrated-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}

.integrated-kpi-grid article{
  padding:15px;
  border:1px solid var(--cc-line);
  border-radius:12px;
  background:var(--cc-surface);
}

.integrated-kpi-grid article.attention{
  border-color:#E8B1A0;
  background:#FFF8F4;
}

.integrated-kpi-grid span,
.integrated-kpi-grid small{
  display:block;
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-kpi-grid strong{
  display:block;
  margin:7px 0 4px;
  font-size:25px;
  line-height:1;
  color:var(--cc-blue);
}

.integrated-kpi-grid article.attention strong{
  color:#B95416;
}

.integrated-chart-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:12px;
}

.integrated-chart-panel,
.integrated-due-panel{
  padding:18px;
  border:1px solid var(--cc-line);
  border-radius:14px;
  background:var(--cc-surface);
}

.integrated-chart-panel>header,
.integrated-due-panel>header{
  margin-bottom:16px;
}

.integrated-chart-panel h3,
.integrated-due-panel h3{
  margin:0 0 4px;
  font-size:15px;
  color:var(--cc-blue);
}

.integrated-chart-panel p,
.integrated-due-panel p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-bar-chart{
  display:grid;
  gap:14px;
}

.integrated-bar-row{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:14px;
  align-items:center;
}

.integrated-bar-row>div:first-child strong,
.integrated-bar-row>div:first-child span{
  display:block;
}

.integrated-bar-row>div:first-child strong{
  font-size:10px;
}

.integrated-bar-row>div:first-child span{
  margin-top:3px;
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-bar-track{
  height:11px;
  border-radius:999px;
  background:var(--cc-surface-2);
  overflow:hidden;
}

.integrated-bar-track>span{
  display:block;
  height:100%;
  border-radius:999px;
  background:#B9C7E8;
}

.integrated-bar-track i{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--cc-blue);
}

.integrated-donut-layout{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:20px;
  align-items:center;
}

.integrated-donut{
  width:145px;
  height:145px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:
    conic-gradient(
      #B72B2B 0 calc(var(--critical)*1%),
      #B95416 calc(var(--critical)*1%) calc((var(--critical) + var(--high))*1%),
      #D5A514 calc((var(--critical) + var(--high))*1%) calc((var(--critical) + var(--high) + var(--medium))*1%),
      #2D7442 calc((var(--critical) + var(--high) + var(--medium))*1%) 100%
    );
}

.integrated-donut::before{
  content:"";
  position:absolute;
  width:94px;
  height:94px;
  border-radius:50%;
  background:var(--cc-surface);
}

.integrated-donut{
  position:relative;
}

.integrated-donut>div{
  position:relative;
  z-index:1;
  text-align:center;
}

.integrated-donut strong,
.integrated-donut small{
  display:block;
}

.integrated-donut strong{
  font-size:25px;
  color:var(--cc-blue);
}

.integrated-donut small{
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-chart-legend{
  display:grid;
  gap:9px;
}

.integrated-chart-legend>div{
  display:grid;
  grid-template-columns:10px 1fr auto;
  gap:8px;
  align-items:center;
}

.integrated-chart-legend strong{
  font-size:10px;
}

.integrated-chart-legend small{
  font-size:10px;
  color:var(--cc-muted);
}

.rating-dot{
  width:8px;
  height:8px;
  border-radius:50%;
}

.rating-dot.rating-critical{background:#B72B2B}
.rating-dot.rating-high{background:#B95416}
.rating-dot.rating-medium{background:#D5A514}
.rating-dot.rating-low{background:#2D7442}
.rating-dot.rating-not-rated{background:#8993A4}

.integrated-due-list{
  display:grid;
}

.integrated-due-list>a{
  display:grid;
  grid-template-columns:115px minmax(0,1fr) 105px;
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.integrated-due-list>a:last-child{
  border-bottom:0;
}

.integrated-due-list>a>span{
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}

.integrated-due-list>a strong,
.integrated-due-list>a small{
  display:block;
}

.integrated-due-list>a strong{
  font-size:10px;
  color:var(--cc-blue);
}

.integrated-due-list>a small{
  margin-top:3px;
  font-size:9px;
  color:var(--cc-muted);
}

.integrated-due-list time{
  text-align:right;
  font-size:10px;
  font-weight:800;
}

.integrated-due-list>a.overdue time{
  color:#B72B2B;
}

@media(max-width:1100px){
  .integrated-kpi-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:850px){
  .integrated-chart-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .integrated-risk-dashboard-header{
    flex-direction:column;
  }

  .integrated-summary-date{
    text-align:left;
  }

  .integrated-kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .integrated-bar-row{
    grid-template-columns:1fr;
    gap:6px;
  }

  .integrated-donut-layout{
    grid-template-columns:1fr;
  }

  .integrated-due-list>a{
    grid-template-columns:1fr;
    gap:4px;
  }

  .integrated-due-list time{
    text-align:left;
  }
}


/* Reliable server-rendered summary charts */
.integrated-svg-chart{
  width:100%;
  min-height:160px;
  overflow-x:auto;
}

.integrated-svg-chart svg{
  display:block;
  width:100%;
  min-width:520px;
  height:auto;
}

.svg-chart-label{
  font-size:11px;
  font-weight:800;
  fill:#1F2D47;
}

.svg-chart-sub{
  font-size:9px;
  fill:#7A8496;
}

.svg-chart-track{
  fill:#E9EDF4;
}

.svg-chart-total{
  fill:#B9C7E8;
}

.svg-chart-elevated{
  fill:#184EAF;
}

.svg-chart-value{
  font-size:10px;
  font-weight:800;
  fill:#1F2D47;
}

.integrated-svg-donut{
  width:150px;
  height:150px;
}

.integrated-svg-donut svg{
  width:100%;
  height:100%;
  transform:rotate(-90deg);
}

.svg-donut-track,
.svg-donut-segment{
  fill:none;
  stroke-width:16;
}

.svg-donut-track{
  stroke:#E9EDF4;
}

.svg-donut-segment{
  transform-origin:70px 70px;
  stroke-linecap:butt;
}

.svg-donut-segment.rating-critical{stroke:#B72B2B}
.svg-donut-segment.rating-high{stroke:#B95416}
.svg-donut-segment.rating-medium{stroke:#D5A514}
.svg-donut-segment.rating-low{stroke:#2D7442}
.svg-donut-segment.rating-not-rated{stroke:#8993A4}

.svg-donut-total,
.svg-donut-caption{
  transform:rotate(90deg);
  transform-origin:70px 70px;
}

.svg-donut-total{
  font-size:25px;
  font-weight:900;
  fill:#123E82;
}

.svg-donut-caption{
  font-size:9px;
  fill:#7A8496;
}

/* Register pagination */
.register-pagination{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:18px;
  padding:13px 15px;
  border-top:1px solid var(--cc-line);
  font-size:10px;
  color:var(--cc-muted);
}

.register-pagination.single-page{
  justify-content:flex-start;
}

.register-pagination-links{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}

.register-pagination-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:32px;
  padding:0 10px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:var(--cc-surface);
  color:var(--cc-blue);
  font-size:10px;
  font-weight:800;
}

.register-pagination-links a:hover,
.register-pagination-links a.active{
  border-color:var(--cc-blue);
  background:var(--cc-blue);
  color:#fff;
}

.register-pagination-links a.disabled{
  opacity:.42;
  pointer-events:none;
}

@media(max-width:640px){
  .register-pagination{
    align-items:flex-start;
    flex-direction:column;
  }

  .register-pagination-links{
    width:100%;
  }

  .integrated-svg-donut{
    width:138px;
    height:138px;
  }
}


/* Integrated executive overview */
.overview-v4{display:grid;gap:14px}
.overview-v4-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px;border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface)}
.overview-v4-header>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.09em;color:var(--cc-gold-700)}
.overview-v4-header h1{margin:6px 0;font-size:28px;color:var(--cc-blue)}
.overview-v4-header p{margin:0;max-width:820px;font-size:11px;line-height:1.6;color:var(--cc-muted)}
.overview-v4-actions{display:flex;gap:8px;flex-wrap:wrap}
.overview-v4-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.overview-v4-kpis article{padding:15px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface)}
.overview-v4-kpis article.attention{border-color:#E8B1A0;background:#FFF8F4}
.overview-v4-kpis span,.overview-v4-kpis small{display:block;font-size:9px;color:var(--cc-muted)}
.overview-v4-kpis strong{display:block;margin:7px 0 4px;font-size:24px;line-height:1;color:var(--cc-blue)}
.overview-v4-chart-grid,.overview-v4-main-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}
.overview-v4-panel{padding:18px;border:1px solid var(--cc-line);border-radius:14px;background:var(--cc-surface)}
.overview-v4-panel>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}
.overview-v4-panel h2{margin:0 0 4px;font-size:16px;color:var(--cc-blue)}
.overview-v4-panel p{margin:0;font-size:9px;color:var(--cc-muted)}
.overview-v4-panel>header>a{font-size:9px;font-weight:800;color:var(--cc-blue)}
.overview-svg-bars{width:100%;overflow:auto}.overview-svg-bars svg{display:block;width:100%;min-width:560px;height:auto}
.ov-svg-label{font-size:11px;font-weight:800;fill:#1F2D47}.ov-svg-sub{font-size:9px;fill:#7A8496}.ov-svg-track{fill:#E9EDF4}.ov-svg-total{fill:#B9C7E8}.ov-svg-elevated{fill:#184EAF}.ov-svg-value{font-size:10px;font-weight:800;fill:#1F2D47}
.overview-donut-layout{display:grid;grid-template-columns:155px minmax(0,1fr);gap:20px;align-items:center}
.overview-svg-donut{width:150px;height:150px;transform:rotate(-90deg)}.ov-donut-track,.ov-donut-segment{fill:none;stroke-width:16}.ov-donut-track{stroke:#E9EDF4}.ov-donut-segment{transform-origin:70px 70px}.ov-donut-segment.rating-critical{stroke:#B72B2B}.ov-donut-segment.rating-high{stroke:#B95416}.ov-donut-segment.rating-medium{stroke:#D5A514}.ov-donut-segment.rating-low{stroke:#2D7442}.ov-donut-segment.rating-not-rated{stroke:#8993A4}
.ov-donut-total,.ov-donut-caption{transform:rotate(90deg);transform-origin:70px 70px}.ov-donut-total{font-size:25px;font-weight:900;fill:#123E82}.ov-donut-caption{font-size:9px;fill:#7A8496}
.overview-chart-legend{display:grid;gap:9px}.overview-chart-legend>div{display:grid;grid-template-columns:9px 1fr auto;gap:8px;align-items:center}.overview-chart-legend i{width:8px;height:8px;border-radius:50%}.overview-chart-legend i.rating-critical{background:#B72B2B}.overview-chart-legend i.rating-high{background:#B95416}.overview-chart-legend i.rating-medium{background:#D5A514}.overview-chart-legend i.rating-low{background:#2D7442}.overview-chart-legend i.rating-not-rated{background:#8993A4}.overview-chart-legend strong,.overview-chart-legend span{font-size:10px}
.overview-risk-list,.overview-action-list,.overview-programme-list{display:grid}
.overview-risk-list>a{display:grid;grid-template-columns:32px minmax(0,1fr) 75px 72px 42px;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--cc-line);color:inherit}
.overview-risk-list>a:last-child,.overview-action-list>a:last-child,.overview-programme-list>a:last-child{border-bottom:0}
.overview-risk-list .rank{font-size:10px;font-weight:900;color:var(--cc-gold-700)}.overview-risk-list div>strong,.overview-risk-list div>small{display:block}.overview-risk-list div>strong{font-size:10px;color:var(--cc-blue)}.overview-risk-list div>small{margin-top:3px;font-size:9px;color:var(--cc-muted)}
.overview-risk-issue-count{text-align:center}.overview-risk-issue-count strong{font-size:15px!important}.overview-rating{display:inline-flex;justify-content:center;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:900}.overview-rating.rating-critical,.overview-rating.rating-red{background:#FBE7E7;color:#B72B2B}.overview-rating.rating-high{background:#FDEBDD;color:#B95416}.overview-rating.rating-medium,.overview-rating.rating-amber{background:#FFF2C9;color:#866300}.overview-rating.rating-low,.overview-rating.rating-green{background:#DFF2E4;color:#2D7442}
.overview-action-list>a{display:grid;grid-template-columns:70px minmax(0,1fr) 90px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--cc-line);color:inherit}.overview-action-list>a>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.overview-action-list strong,.overview-action-list small{display:block}.overview-action-list strong{font-size:10px;color:var(--cc-blue)}.overview-action-list small{margin-top:3px;font-size:9px;color:var(--cc-muted)}.overview-action-list time{text-align:right;font-size:9px;font-weight:800}.overview-action-list a.overdue time{color:#B72B2B}
.overview-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.overview-control-grid>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;border:1px solid var(--cc-line);border-left:4px solid #D5A514;border-radius:11px;color:inherit}.overview-control-grid>a.rating-red{border-left-color:#B72B2B}.overview-control-grid>a.rating-green{border-left-color:#2D7442}.overview-control-grid span,.overview-control-grid strong{display:block}.overview-control-grid div>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.overview-control-grid div>strong{margin-top:4px;font-size:11px;color:var(--cc-blue)}.overview-control-grid>a>b{font-size:21px;color:var(--cc-blue)}
.overview-control-metrics{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(3,1fr);gap:6px;padding-top:9px;border-top:1px solid var(--cc-line)}.overview-control-metrics span{font-size:8px!important;color:var(--cc-muted)!important}.overview-control-metrics strong{display:inline!important;margin:0!important;font-size:10px!important}
.overview-programme-list>a{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(150px,1fr) 95px;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--cc-line);color:inherit}.overview-programme-list span,.overview-programme-list strong,.overview-programme-list small{display:block}.overview-programme-list> a>div:first-child>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.overview-programme-list> a>div:first-child>strong{margin:4px 0;font-size:10px;color:var(--cc-blue)}.overview-programme-list small{font-size:9px;color:var(--cc-muted)}
.overview-progress{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px;align-items:center}.overview-progress>span{height:7px;border-radius:999px;background:var(--cc-surface-2);overflow:hidden}.overview-progress i{display:block;height:100%;border-radius:999px;background:var(--cc-blue)}.overview-progress strong{font-size:9px!important;text-align:right}.overview-programme-list time{font-size:9px;font-weight:800;text-align:right}

/* Integrated control environment */
.integrated-environment-grid .environment-card{min-height:190px}.environment-metrics{grid-template-columns:repeat(4,1fr)!important}
.control-detail-v4{display:grid;gap:14px}.control-detail-header{display:flex;justify-content:space-between;gap:20px;padding:24px;border-top:4px solid var(--cc-blue);border-bottom:1px solid var(--cc-line);background:var(--cc-surface)}.control-detail-header>div:first-child>span{font-size:9px;font-weight:900;color:var(--cc-gold-700)}.control-detail-header h1{margin:6px 0;font-size:27px;color:var(--cc-blue)}.control-detail-header p{margin:0;max-width:800px;font-size:11px;color:var(--cc-muted)}.control-detail-header>div:last-child{display:grid;gap:6px;justify-items:end}.control-detail-header small{font-size:9px;color:var(--cc-muted)}
.control-detail-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.control-detail-kpis article{padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface)}.control-detail-kpis span{display:block;font-size:9px;color:var(--cc-muted)}.control-detail-kpis strong{display:block;margin-top:6px;font-size:17px;color:var(--cc-blue)}
.control-detail-section{padding:20px;border:1px solid var(--cc-line);border-radius:13px;background:var(--cc-surface)}.control-detail-section>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.control-detail-section h2{margin:0 0 4px;font-size:16px;color:var(--cc-blue)}.control-detail-section p{margin:0;font-size:9px;color:var(--cc-muted)}
.control-risk-list,.control-issue-list,.control-programme-list{display:grid}.control-risk-list>a,.control-issue-list>a,.control-programme-list>a{display:grid;grid-template-columns:minmax(0,1fr) 90px 90px;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--cc-line);color:inherit}.control-risk-list>a:last-child,.control-issue-list>a:last-child,.control-programme-list>a:last-child{border-bottom:0}.control-risk-list span,.control-risk-list strong,.control-risk-list small,.control-issue-list span,.control-issue-list strong,.control-issue-list small,.control-programme-list span,.control-programme-list strong,.control-programme-list small{display:block}.control-risk-list> a>div>span,.control-issue-list> a>div>span,.control-programme-list> a>div>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.control-risk-list> a>div>strong,.control-issue-list> a>div>strong,.control-programme-list> a>div>strong{margin:4px 0;font-size:10px;color:var(--cc-blue)}.control-risk-list small,.control-issue-list small,.control-programme-list small{font-size:9px;color:var(--cc-muted)}.control-issue-list time,.control-programme-list time{text-align:right;font-size:9px;font-weight:800}.control-issue-list a.overdue time{color:#B72B2B}
.control-assessment-form{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:1100px){.overview-v4-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-detail-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.overview-v4-chart-grid,.overview-v4-main-grid{grid-template-columns:1fr}.overview-control-grid{grid-template-columns:1fr}}
@media(max-width:640px){.overview-v4-header{flex-direction:column}.overview-v4-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-donut-layout{grid-template-columns:1fr}.overview-risk-list>a,.overview-action-list>a,.overview-programme-list>a,.control-risk-list>a,.control-issue-list>a,.control-programme-list>a{grid-template-columns:1fr}.overview-action-list time,.overview-programme-list time,.control-issue-list time,.control-programme-list time{text-align:left}.overview-control-grid{grid-template-columns:1fr}.control-detail-header{flex-direction:column}.control-detail-header>div:last-child{justify-items:start}.control-detail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.control-assessment-form{grid-template-columns:1fr}}


/* =========================================================
   BOD-level enterprise overview
   ========================================================= */
.bod-overview{
  display:grid;
  gap:14px;
}

.bod-overview-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  padding:26px;
  border:1px solid var(--cc-line);
  border-top:4px solid var(--cc-blue);
  border-radius:15px;
  background:var(--cc-surface);
}

.bod-overview-hero>div:first-child>span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}

.bod-overview-hero h1{
  margin:7px 0;
  font-size:30px;
  line-height:1.15;
  color:var(--cc-blue);
}

.bod-overview-hero p{
  max-width:850px;
  margin:0;
  font-size:12px;
  line-height:1.65;
  color:var(--cc-muted);
}

.bod-overview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.bod-executive-summary{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.bod-executive-summary article{
  padding:16px;
  border:1px solid var(--cc-line);
  border-radius:12px;
  background:var(--cc-surface);
}

.bod-executive-summary span,
.bod-executive-summary small{
  display:block;
  font-size:10px;
  color:var(--cc-muted);
}

.bod-executive-summary strong{
  display:block;
  margin:8px 0 5px;
  font-size:26px;
  line-height:1;
  color:var(--cc-blue);
}

.bod-highlight-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--cc-line);
  border-radius:12px;
  background:var(--cc-surface-2);
}

.bod-highlight-strip>div{
  padding:14px 16px;
}

.bod-highlight-strip>div+div{
  border-left:1px solid var(--cc-line);
}

.bod-highlight-strip span,
.bod-highlight-strip small{
  display:block;
  font-size:9px;
  color:var(--cc-muted);
}

.bod-highlight-strip strong{
  display:block;
  margin:5px 0 3px;
  font-size:19px;
  color:var(--cc-blue);
}

.bod-overview-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:12px;
}

.bod-panel{
  padding:20px;
  border:1px solid var(--cc-line);
  border-radius:14px;
  background:var(--cc-surface);
}

.bod-panel>header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:17px;
}

.bod-panel h2{
  margin:0 0 5px;
  font-size:17px;
  line-height:1.3;
  color:var(--cc-blue);
}

.bod-panel header p{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}

.bod-panel header>a{
  font-size:10px;
  font-weight:800;
  color:var(--cc-blue);
  white-space:nowrap;
}

.bod-control-heatmap{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.bod-control-heatmap>a{
  position:relative;
  min-height:112px;
  padding:13px;
  border:1px solid var(--cc-line);
  border-top:4px solid #D5A514;
  border-radius:10px;
  background:#FFFDF6;
  color:inherit;
}

.bod-control-heatmap>a.heat-red{
  border-top-color:#B72B2B;
  background:#FFF8F7;
}

.bod-control-heatmap>a.heat-green{
  border-top-color:#2D7442;
  background:#F7FCF8;
}

.bod-control-heatmap span,
.bod-control-heatmap strong,
.bod-control-heatmap small{
  display:block;
}

.bod-control-heatmap span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.bod-control-heatmap strong{
  max-width:80%;
  margin:5px 0;
  font-size:10px;
  line-height:1.4;
  color:var(--cc-blue);
}

.bod-control-heatmap b{
  position:absolute;
  top:12px;
  right:12px;
  font-size:20px;
  color:var(--cc-blue);
}

.bod-control-heatmap small{
  margin-top:10px;
  font-size:8px;
  line-height:1.4;
  color:var(--cc-muted);
}

.bod-donut-layout{
  display:grid;
  grid-template-columns:155px minmax(0,1fr);
  gap:20px;
  align-items:center;
}

.bod-svg-donut{
  width:150px;
  height:150px;
  transform:rotate(-90deg);
}

.bod-donut-track,
.bod-donut-segment{
  fill:none;
  stroke-width:16;
}

.bod-donut-track{stroke:#E9EDF4}
.bod-donut-segment.rating-critical{stroke:#B72B2B}
.bod-donut-segment.rating-high{stroke:#B95416}
.bod-donut-segment.rating-medium{stroke:#D5A514}
.bod-donut-segment.rating-low{stroke:#2D7442}
.bod-donut-segment.rating-not-rated{stroke:#8993A4}

.bod-donut-total,
.bod-donut-caption{
  transform:rotate(90deg);
  transform-origin:70px 70px;
}

.bod-donut-total{
  font-size:25px;
  font-weight:900;
  fill:#123E82;
}

.bod-donut-caption{
  font-size:9px;
  fill:#7A8496;
}

.bod-chart-legend{
  display:grid;
  gap:9px;
}

.bod-chart-legend>div{
  display:grid;
  grid-template-columns:9px 1fr auto;
  gap:8px;
  align-items:center;
}

.bod-chart-legend i{
  width:8px;
  height:8px;
  border-radius:50%;
}

.bod-chart-legend i.rating-critical{background:#B72B2B}
.bod-chart-legend i.rating-high{background:#B95416}
.bod-chart-legend i.rating-medium{background:#D5A514}
.bod-chart-legend i.rating-low{background:#2D7442}
.bod-chart-legend i.rating-not-rated{background:#8993A4}

.bod-chart-legend strong,
.bod-chart-legend span{
  font-size:10px;
}

.bod-risk-list,
.bod-action-list,
.bod-programme-table{
  display:grid;
}

.bod-risk-list>a{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 72px 42px;
  gap:12px;
  align-items:center;
  padding:13px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.bod-risk-list>a:last-child,
.bod-action-list>a:last-child,
.bod-programme-table>a:last-child{
  border-bottom:0;
}

.bod-risk-list>a>span{
  font-size:9px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.bod-risk-list div>strong,
.bod-risk-list div>small{
  display:block;
}

.bod-risk-list div>strong{
  font-size:10px;
  color:var(--cc-blue);
}

.bod-risk-list div>small{
  margin-top:3px;
  font-size:9px;
  color:var(--cc-muted);
}

.bod-risk-list em{
  display:inline-flex;
  justify-content:center;
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-style:normal;
  font-weight:900;
}

.bod-risk-list em.rating-critical,
.bod-risk-list em.rating-red{background:#FBE7E7;color:#B72B2B}
.bod-risk-list em.rating-high{background:#FDEBDD;color:#B95416}
.bod-risk-list em.rating-medium,
.bod-risk-list em.rating-amber{background:#FFF2C9;color:#866300}
.bod-risk-list em.rating-low,
.bod-risk-list em.rating-green{background:#DFF2E4;color:#2D7442}

.bod-action-list>a{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 92px;
  gap:12px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.bod-action-list>a>span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.bod-action-list strong,
.bod-action-list small{
  display:block;
}

.bod-action-list strong{
  font-size:10px;
  color:var(--cc-blue);
}

.bod-action-list small{
  margin-top:3px;
  font-size:9px;
  color:var(--cc-muted);
}

.bod-action-list time{
  text-align:right;
  font-size:9px;
  font-weight:800;
}

.bod-action-list a.overdue time{
  color:#B72B2B;
}

.bod-programme-table>a{
  display:grid;
  grid-template-columns:minmax(280px,1.5fr) minmax(180px,1fr) 100px;
  gap:16px;
  align-items:center;
  padding:14px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.bod-programme-table span,
.bod-programme-table strong,
.bod-programme-table small{
  display:block;
}

.bod-programme-table> a>div:first-child>span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.bod-programme-table> a>div:first-child>strong{
  margin:4px 0;
  font-size:10px;
  color:var(--cc-blue);
}

.bod-programme-table small{
  font-size:9px;
  color:var(--cc-muted);
}

.bod-progress{
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
  gap:8px;
  align-items:center;
}

.bod-progress>span{
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:var(--cc-surface-2);
}

.bod-progress i{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--cc-blue);
}

.bod-progress strong{
  font-size:9px!important;
  text-align:right;
}

.bod-programme-table time{
  text-align:right;
  font-size:9px;
  font-weight:800;
}

.bod-narrative>p{
  margin:0;
  font-size:12px;
  line-height:1.75;
  color:#354158;
}

/* =========================================================
   Overall Risk Register typography normalization
   ========================================================= */
.overall-risk-register{
  font-size:11px;
}

.overall-risk-register .iso-risk-register-intro{
  padding:17px 18px;
}

.overall-risk-register .iso-risk-register-intro span{
  font-size:9px;
  line-height:1.4;
}

.overall-risk-register .iso-risk-register-intro strong{
  margin-top:4px;
  font-size:17px;
  line-height:1.3;
}

.overall-risk-register .iso-risk-register-intro small{
  margin-top:4px;
  font-size:10px;
  line-height:1.5;
}

.overall-risk-register .iso-risk-table th{
  padding:12px!important;
  font-size:9px!important;
  line-height:1.35!important;
  letter-spacing:.02em;
}

.overall-risk-register .iso-risk-table td{
  padding:13px 12px!important;
  font-size:10px!important;
  line-height:1.45!important;
}

.overall-risk-register .iso-risk-name>span{
  font-size:8px!important;
  line-height:1.3;
}

.overall-risk-register .iso-risk-name>a{
  margin:4px 0;
  font-size:11px!important;
  line-height:1.4;
}

.overall-risk-register .iso-risk-name small,
.overall-risk-register td small{
  margin-top:3px;
  font-size:9px!important;
  line-height:1.4;
}

.overall-risk-register td strong{
  font-size:10px!important;
  line-height:1.4;
}

.overall-risk-register .risk-domain-badge,
.overall-risk-register .iso-risk-rating{
  padding:4px 7px;
  font-size:8px!important;
  line-height:1.2;
}

.overall-risk-register .risk-issue-metric strong{
  font-size:17px!important;
  line-height:1;
}

.overall-risk-register .risk-issue-metric small{
  font-size:8px!important;
}

@media(max-width:1050px){
  .bod-executive-summary{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .bod-highlight-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .bod-highlight-strip>div:nth-child(3){
    border-left:0;
    border-top:1px solid var(--cc-line);
  }

  .bod-highlight-strip>div:nth-child(4){
    border-top:1px solid var(--cc-line);
  }
}

@media(max-width:850px){
  .bod-overview-grid{
    grid-template-columns:1fr;
  }

  .bod-control-heatmap{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .bod-overview-hero{
    flex-direction:column;
    padding:20px 18px;
  }

  .bod-overview-hero h1{
    font-size:25px;
  }

  .bod-executive-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .bod-highlight-strip{
    grid-template-columns:1fr;
  }

  .bod-highlight-strip>div+div,
  .bod-highlight-strip>div:nth-child(3),
  .bod-highlight-strip>div:nth-child(4){
    border-left:0;
    border-top:1px solid var(--cc-line);
  }

  .bod-control-heatmap{
    grid-template-columns:1fr;
  }

  .bod-donut-layout{
    grid-template-columns:1fr;
  }

  .bod-risk-list>a,
  .bod-action-list>a,
  .bod-programme-table>a{
    grid-template-columns:1fr;
  }

  .bod-action-list time,
  .bod-programme-table time{
    text-align:left;
  }
}


/* Prototype-style executive monitor */
.executive-monitor-prototype{
  padding:8px 36px 24px;
}

.executive-monitor-screen{
  position:relative;
  max-width:980px;
  min-height:490px;
  margin:0 auto;
  padding:28px 30px 34px;
  border:12px solid #10182A;
  border-radius:34px;
  background:#F4F7FC;
  box-shadow:0 22px 55px rgba(25,45,80,.15);
}

.executive-monitor-screen>header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:22px;
}

.executive-monitor-screen>header strong{
  font-size:16px;
  color:var(--cc-blue);
}

.executive-monitor-screen>header span{
  font-size:11px;
  color:var(--cc-muted);
}

.executive-monitor-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.executive-monitor-grid>article{
  min-height:150px;
  padding:18px;
  border:1px solid #D9E2F0;
  border-radius:17px;
  background:#fff;
  box-shadow:0 8px 18px rgba(41,62,95,.05);
}

.executive-monitor-grid>article>span{
  display:block;
  margin-bottom:13px;
  font-size:10px;
  font-weight:800;
  color:#62708A;
}

.executive-monitor-grid>article>strong{
  display:block;
  margin-bottom:18px;
  font-size:32px;
  line-height:1;
  color:var(--cc-blue);
}

.monitor-progress{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  align-items:center;
}

.monitor-progress small{
  font-size:9px;
  color:#62708A;
}

.monitor-progress i,
.monitor-top-risks i{
  display:block;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#E8EDF7;
}

.monitor-progress u,
.monitor-top-risks u{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#1456D9,#D9A92E);
}

.monitor-top-risks>div{
  display:grid;
  grid-template-columns:100px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin-bottom:12px;
}

.monitor-top-risks small{
  font-size:9px;
  color:#48556D;
}

.monitor-heatmap{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:7px;
}

.monitor-heatmap i{
  aspect-ratio:1;
  border-radius:8px;
  background:#E6ECF8;
}

.monitor-heatmap i.medium{background:#F4DDA5}
.monitor-heatmap i.high{background:#F5C1C1}

.monitor-floating-card{
  position:absolute;
  min-width:150px;
  padding:18px;
  border:1px solid #E0E6F0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 35px rgba(33,53,84,.14);
}

.monitor-floating-card span,
.monitor-floating-card strong,
.monitor-floating-card small{
  display:block;
}

.monitor-floating-card span{
  font-size:10px;
  font-weight:800;
  color:#354158;
}

.monitor-floating-card strong{
  margin:8px 0;
  font-size:29px;
  color:var(--cc-blue);
}

.monitor-floating-card small{
  font-size:9px;
  color:#398A5D;
}

.monitor-incidents{
  top:34px;
  right:-70px;
}

.monitor-assessments{
  left:-70px;
  bottom:36px;
}

.monitor-assessments small{
  color:#354158;
}

/* Register guidelines */
.register-intro-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.issue-register-intro{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
}

.register-guideline-panel{
  margin:14px 0 18px;
  padding:18px;
  border:1px solid #D9E2F0;
  border-left:4px solid var(--cc-blue);
  border-radius:12px;
  background:#F8FAFD;
}

.register-guideline-panel[hidden]{
  display:none!important;
}

.register-guideline-panel>header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:15px;
}

.register-guideline-panel>header span{
  display:block;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  color:var(--cc-gold-700);
}

.register-guideline-panel h3{
  margin:4px 0 0;
  font-size:15px;
  color:var(--cc-blue);
}

.register-guideline-close{
  width:30px;
  height:30px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:#fff;
  font-size:18px;
  cursor:pointer;
}

.register-guideline-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.register-guideline-grid article{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  padding:12px;
  border:1px solid var(--cc-line);
  border-radius:10px;
  background:#fff;
}

.register-guideline-grid article>b{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:50%;
  background:var(--cc-blue);
  color:#fff;
  font-size:9px;
}

.register-guideline-grid strong{
  display:block;
  margin-bottom:4px;
  font-size:10px;
  color:var(--cc-blue);
}

.register-guideline-grid p{
  margin:0;
  font-size:9px;
  line-height:1.5;
  color:var(--cc-muted);
}

@media(max-width:1050px){
  .monitor-incidents{right:-25px}
  .monitor-assessments{left:-25px}
}

@media(max-width:760px){
  .executive-monitor-prototype{
    padding:0;
  }

  .executive-monitor-screen{
    min-height:auto;
    padding:20px;
    border-width:8px;
    border-radius:24px;
  }

  .executive-monitor-grid{
    grid-template-columns:1fr;
  }

  .monitor-floating-card{
    position:static;
    margin-top:12px;
  }

  .register-guideline-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .issue-register-intro{
    flex-direction:column;
  }

  .register-guideline-grid{
    grid-template-columns:1fr;
  }
}


/* Executive overview — five premium sections */
.executive-five-view{display:grid;gap:16px}
.executive-five-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding:26px;border:1px solid var(--cc-line);border-top:4px solid var(--cc-blue);border-radius:15px;background:var(--cc-surface)}
.executive-five-hero>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}
.executive-five-hero h1{margin:7px 0;font-size:30px;line-height:1.15;color:var(--cc-blue)}
.executive-five-hero p{margin:0;max-width:850px;font-size:12px;line-height:1.65;color:var(--cc-muted)}
.executive-five-hero>div:last-child{display:flex;gap:8px;flex-wrap:wrap}

.executive-section-card{padding:22px;border:1px solid var(--cc-line);border-radius:15px;background:var(--cc-surface);box-shadow:0 8px 24px rgba(26,48,84,.04)}
.executive-section-card>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.executive-section-card>header>div{display:flex;gap:12px;align-items:flex-start}
.executive-section-card>header>div>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--cc-blue);color:#fff;font-size:9px;font-weight:900;flex:0 0 auto}
.executive-section-card h2{margin:0 0 4px;font-size:18px;color:var(--cc-blue)}
.executive-section-card header p{margin:0;font-size:10px;color:var(--cc-muted)}
.executive-section-card header>a{font-size:9px;font-weight:800;color:var(--cc-blue);white-space:nowrap}

.executive-section-kpis,.executive-delivery-kpis,.executive-crq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.executive-section-kpis article,.executive-delivery-kpis article,.executive-crq-grid article{padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.executive-section-kpis span,.executive-section-kpis small,.executive-delivery-kpis span,.executive-delivery-kpis small,.executive-crq-grid span,.executive-crq-grid small{display:block;font-size:9px;color:var(--cc-muted)}
.executive-section-kpis strong,.executive-delivery-kpis strong,.executive-crq-grid strong{display:block;margin:7px 0 4px;font-size:23px;line-height:1;color:var(--cc-blue)}

.executive-section-grid,.executive-priority-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}
.executive-chart-card,.executive-priority-grid>div{padding:16px;border:1px solid var(--cc-line);border-radius:12px;background:#fff}
.executive-chart-card h3,.executive-priority-grid h3{margin:0 0 14px;font-size:13px;color:var(--cc-blue)}

.executive-domain-chart{overflow:auto}.executive-domain-chart svg{display:block;width:100%;min-width:560px;height:auto}
.exec-svg-label{font-size:11px;font-weight:800;fill:#1F2D47}.exec-svg-sub{font-size:9px;fill:#7A8496}.exec-svg-track{fill:#E9EDF4}.exec-svg-total{fill:#B9C7E8}.exec-svg-elevated{fill:#184EAF}
.executive-donut-layout{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center}
.executive-svg-donut{width:145px;height:145px;transform:rotate(-90deg)}.exec-donut-track,.exec-donut-segment{fill:none;stroke-width:16}.exec-donut-track{stroke:#E9EDF4}.exec-donut-segment.rating-critical{stroke:#B72B2B}.exec-donut-segment.rating-high{stroke:#B95416}.exec-donut-segment.rating-medium{stroke:#D5A514}.exec-donut-segment.rating-low{stroke:#2D7442}.exec-donut-segment.rating-not-rated{stroke:#8993A4}
.exec-donut-total,.exec-donut-caption{transform:rotate(90deg);transform-origin:70px 70px}.exec-donut-total{font-size:25px;font-weight:900;fill:#123E82}.exec-donut-caption{font-size:9px;fill:#7A8496}
.executive-chart-legend{display:grid;gap:8px}.executive-chart-legend>div{display:grid;grid-template-columns:9px 1fr auto;gap:8px;align-items:center}.executive-chart-legend i{width:8px;height:8px;border-radius:50%}.executive-chart-legend i.rating-critical{background:#B72B2B}.executive-chart-legend i.rating-high{background:#B95416}.executive-chart-legend i.rating-medium{background:#D5A514}.executive-chart-legend i.rating-low{background:#2D7442}.executive-chart-legend i.rating-not-rated{background:#8993A4}.executive-chart-legend strong,.executive-chart-legend span{font-size:9px}

.executive-control-health{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.executive-control-score{padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface-2)}
.executive-control-score>strong,.executive-control-score>span{display:block}.executive-control-score>strong{font-size:34px;color:var(--cc-blue)}.executive-control-score>span{margin:5px 0 14px;font-size:10px;color:var(--cc-muted)}
.executive-control-score>i{display:block;height:8px;overflow:hidden;border-radius:999px;background:#E5EAF3}.executive-control-score u{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1558D6,#D3A82F)}
.executive-control-rag{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.executive-control-rag article{display:grid;place-items:center;padding:16px;border-radius:12px}.executive-control-rag article.red{background:#FFF1F1;color:#B72B2B}.executive-control-rag article.amber{background:#FFF8E4;color:#866300}.executive-control-rag article.green{background:#EDF9F1;color:#2D7442}.executive-control-rag strong{font-size:24px}.executive-control-rag span{font-size:9px}
.executive-control-heatmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.executive-control-heatmap>a{position:relative;min-height:105px;padding:13px;border:1px solid var(--cc-line);border-top:4px solid #D5A514;border-radius:10px;background:#FFFDF7;color:inherit}.executive-control-heatmap>a.rating-red{border-top-color:#B72B2B;background:#FFF7F7}.executive-control-heatmap>a.rating-green{border-top-color:#2D7442;background:#F7FCF8}.executive-control-heatmap span,.executive-control-heatmap strong,.executive-control-heatmap small{display:block}.executive-control-heatmap span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.executive-control-heatmap strong{max-width:78%;margin:5px 0;font-size:10px;color:var(--cc-blue)}.executive-control-heatmap b{position:absolute;top:12px;right:12px;font-size:20px;color:var(--cc-blue)}.executive-control-heatmap small{margin-top:10px;font-size:8px;color:var(--cc-muted)}

.executive-risk-list,.executive-action-list,.executive-programme-list{display:grid}
.executive-risk-list>a{display:grid;grid-template-columns:28px minmax(0,1fr) 42px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--cc-line);color:inherit}.executive-risk-list>a:last-child,.executive-action-list>a:last-child,.executive-programme-list>a:last-child{border-bottom:0}.executive-risk-list>a>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.executive-risk-list strong,.executive-risk-list small{display:block}.executive-risk-list strong{font-size:10px;color:var(--cc-blue)}.executive-risk-list small{margin-top:3px;font-size:8px;color:var(--cc-muted)}
.executive-action-list>a{display:grid;grid-template-columns:68px minmax(0,1fr) 88px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--cc-line);color:inherit}.executive-action-list>a>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.executive-action-list strong,.executive-action-list small{display:block}.executive-action-list strong{font-size:9px;color:var(--cc-blue)}.executive-action-list small{margin-top:3px;font-size:8px;color:var(--cc-muted)}.executive-action-list time{font-size:8px;font-weight:800;text-align:right}

.executive-crq-section{background:linear-gradient(135deg,#F9FBFF,#FFFDF7)}
.executive-crq-scenario{padding:16px;border-left:4px solid var(--cc-gold-700);border-radius:8px;background:#fff}.executive-crq-scenario span,.executive-crq-scenario strong,.executive-crq-scenario small{display:block}.executive-crq-scenario span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.executive-crq-scenario strong{margin:5px 0;font-size:13px;color:var(--cc-blue)}.executive-crq-scenario small{font-size:9px;color:var(--cc-muted)}

.executive-programme-list>a{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(160px,1fr) 95px;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--cc-line);color:inherit}.executive-programme-list span,.executive-programme-list strong,.executive-programme-list small{display:block}.executive-programme-list> a>div:first-child>span{font-size:8px;font-weight:900;color:var(--cc-gold-700)}.executive-programme-list> a>div:first-child>strong{margin:4px 0;font-size:10px;color:var(--cc-blue)}.executive-programme-list small{font-size:8px;color:var(--cc-muted)}.executive-programme-list> a>div:nth-child(2){display:grid;grid-template-columns:1fr 38px;gap:8px;align-items:center}.executive-programme-list i{display:block;height:7px;overflow:hidden;border-radius:999px;background:#E7ECF4}.executive-programme-list u{display:block;height:100%;border-radius:999px;background:var(--cc-blue)}.executive-programme-list time{font-size:8px;font-weight:800;text-align:right}

.executive-five-summary{padding:22px;border:1px solid var(--cc-line);border-left:4px solid var(--cc-blue);border-radius:12px;background:var(--cc-surface-2)}.executive-five-summary>span{font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}.executive-five-summary p{margin:8px 0 0;font-size:11px;line-height:1.75;color:#354158}

@media(max-width:1000px){.executive-section-kpis,.executive-delivery-kpis,.executive-crq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.executive-control-heatmap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.executive-section-grid,.executive-priority-grid,.executive-control-health{grid-template-columns:1fr}}
@media(max-width:600px){.executive-five-hero{flex-direction:column;padding:20px 18px}.executive-five-hero h1{font-size:24px}.executive-section-card{padding:17px}.executive-section-card>header{flex-direction:column}.executive-section-kpis,.executive-delivery-kpis,.executive-crq-grid{grid-template-columns:1fr}.executive-control-heatmap{grid-template-columns:1fr}.executive-donut-layout{grid-template-columns:1fr}.executive-action-list>a,.executive-programme-list>a{grid-template-columns:1fr}.executive-action-list time,.executive-programme-list time{text-align:left}}


/* Compact and consistent Risk by Domain */
.compact-domain-card h3{
  font-size:13px!important;
  line-height:1.35;
}

.compact-domain-list{
  display:grid;
  gap:9px;
}

.compact-domain-list>a{
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px;
  gap:8px 12px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--cc-line);
  border-radius:10px;
  background:var(--cc-surface-2);
  color:inherit;
}

.compact-domain-list span,
.compact-domain-list small{
  display:block;
}

.compact-domain-list span{
  font-size:10px;
  font-weight:800;
  line-height:1.4;
  color:var(--cc-blue);
}

.compact-domain-list small{
  margin-top:3px;
  font-size:8px;
  color:var(--cc-muted);
}

.compact-domain-list strong{
  font-size:17px;
  text-align:right;
  color:var(--cc-blue);
}

.compact-domain-list i{
  grid-column:1/-1;
  display:block;
  height:6px;
  overflow:hidden;
  border-radius:999px;
  background:#E7ECF4;
}

.compact-domain-list u{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#1456D9,#D9A92E);
}

/* Residual risk heatmap */
.residual-heatmap-section>header>small{
  font-size:9px;
  color:var(--cc-muted);
}

.residual-heatmap-layout{
  display:grid;
  grid-template-columns:28px minmax(0,620px);
  gap:10px;
  align-items:center;
  justify-content:center;
}

.residual-heatmap-y-label{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  text-align:center;
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}

.residual-heatmap-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(58px,1fr));
  gap:7px;
}

.heatmap-cell{
  display:grid;
  place-items:center;
  min-height:68px;
  padding:8px;
  border-radius:10px;
  border:1px solid transparent;
  color:inherit;
  transition:transform .15s ease,box-shadow .15s ease;
}

.heatmap-cell:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 18px rgba(30,50,80,.12);
}

.heatmap-cell.low{background:#E8F4EB;color:#2D7442}
.heatmap-cell.medium{background:#FFF3CE;color:#866300}
.heatmap-cell.high{background:#FDE5D8;color:#B95416}
.heatmap-cell.critical{background:#F8D7D7;color:#B72B2B}

.heatmap-cell.empty{
  opacity:.48;
}

.heatmap-cell span{
  display:block;
  font-size:18px;
  font-weight:900;
}

.heatmap-cell small{
  display:block;
  margin-top:3px;
  font-size:8px;
  color:currentColor;
}

.residual-heatmap-x-label{
  grid-column:2;
  text-align:center;
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}

.residual-heatmap-legend{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:14px;
  margin-top:15px;
}

.residual-heatmap-legend span{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:9px;
  color:var(--cc-muted);
}

.residual-heatmap-legend i{
  width:9px;
  height:9px;
  border-radius:3px;
}

.residual-heatmap-legend i.low{background:#A9D3B3}
.residual-heatmap-legend i.medium{background:#EED47E}
.residual-heatmap-legend i.high{background:#EBA77E}
.residual-heatmap-legend i.critical{background:#DD7777}

/* Security incident */
.executive-incident-section{
  background:linear-gradient(135deg,#FBFCFF,#FFF8F7);
}

.incident-kpis{
  margin-bottom:14px;
}

.executive-incident-list{
  display:grid;
}

.executive-incident-list>a{
  display:grid;
  grid-template-columns:minmax(0,1fr) 72px 120px;
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.executive-incident-list>a:last-child{
  border-bottom:0;
}

.executive-incident-list span,
.executive-incident-list strong,
.executive-incident-list small{
  display:block;
}

.executive-incident-list span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.executive-incident-list strong{
  margin:4px 0;
  font-size:10px;
  color:var(--cc-blue);
}

.executive-incident-list small{
  font-size:8px;
  color:var(--cc-muted);
}

.executive-incident-list em{
  display:inline-flex;
  justify-content:center;
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-style:normal;
  font-weight:900;
}

.executive-incident-list em.severity-critical{background:#FBE7E7;color:#B72B2B}
.executive-incident-list em.severity-high{background:#FDEBDD;color:#B95416}
.executive-incident-list em.severity-medium{background:#FFF2C9;color:#866300}
.executive-incident-list em.severity-low{background:#DFF2E4;color:#2D7442}

.executive-incident-list time{
  text-align:right;
  font-size:8px;
  font-weight:800;
}

/* Heatmap filter in register */
.heatmap-filter-banner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin:0 0 14px;
  padding:13px 15px;
  border:1px solid #C9D8F4;
  border-left:4px solid var(--cc-blue);
  border-radius:10px;
  background:#F5F8FE;
}

.heatmap-filter-banner span,
.heatmap-filter-banner strong,
.heatmap-filter-banner small{
  display:block;
}

.heatmap-filter-banner span{
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  color:var(--cc-gold-700);
}

.heatmap-filter-banner strong{
  margin:4px 0;
  font-size:11px;
  color:var(--cc-blue);
}

.heatmap-filter-banner small{
  font-size:8px;
  color:var(--cc-muted);
}

.heatmap-highlight-row{
  background:#F9FBFF;
  box-shadow:inset 3px 0 0 var(--cc-blue);
}

@media(max-width:700px){
  .residual-heatmap-layout{
    grid-template-columns:20px minmax(0,1fr);
  }

  .residual-heatmap-grid{
    grid-template-columns:repeat(5,minmax(42px,1fr));
    gap:5px;
  }

  .heatmap-cell{
    min-height:54px;
    padding:5px;
  }

  .executive-incident-list>a{
    grid-template-columns:1fr;
  }

  .executive-incident-list time{
    text-align:left;
  }

  .heatmap-filter-banner{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* =========================================================
   Risk section — compact, clean, executive typography
   ========================================================= */
.executive-risk-section{
  padding:20px;
}

.executive-risk-section>header{
  margin-bottom:14px;
}

.executive-risk-section h2,
.residual-heatmap-section h2{
  font-size:16px!important;
  line-height:1.25!important;
}

.executive-risk-section header p,
.residual-heatmap-section header p{
  font-size:9px!important;
  line-height:1.45!important;
}

.executive-risk-section .executive-section-kpis{
  gap:8px;
  margin-bottom:12px;
}

.executive-risk-section .executive-section-kpis article{
  padding:12px 13px;
}

.executive-risk-section .executive-section-kpis span,
.executive-risk-section .executive-section-kpis small{
  font-size:8px!important;
  line-height:1.35!important;
}

.executive-risk-section .executive-section-kpis strong{
  margin:5px 0 3px;
  font-size:20px!important;
}

.executive-risk-section .executive-section-grid{
  gap:10px;
}

.executive-risk-section .executive-chart-card{
  padding:14px;
}

.executive-risk-section .executive-chart-card h3{
  margin-bottom:11px;
  font-size:11px!important;
  line-height:1.35!important;
}

.compact-domain-list{
  gap:7px;
}

.compact-domain-list>a{
  grid-template-columns:minmax(0,1fr) 30px;
  gap:6px 10px;
  padding:9px 10px;
  border-radius:8px;
}

.compact-domain-list span{
  font-size:9px!important;
  line-height:1.35!important;
}

.compact-domain-list small{
  margin-top:2px;
  font-size:7.5px!important;
  line-height:1.35!important;
}

.compact-domain-list strong{
  font-size:14px!important;
}

.compact-domain-list i{
  height:5px;
}

.executive-donut-layout{
  grid-template-columns:125px minmax(0,1fr);
  gap:14px;
}

.executive-svg-donut{
  width:120px;
  height:120px;
}

.exec-donut-total{
  font-size:22px;
}

.exec-donut-caption{
  font-size:8px;
}

.executive-chart-legend{
  gap:6px;
}

.executive-chart-legend strong,
.executive-chart-legend span{
  font-size:8px!important;
}

.executive-chart-legend i{
  width:7px;
  height:7px;
}

/* Heatmap + Top High Risks */
.clean-risk-heatmap{
  padding:20px;
}

.clean-risk-heatmap>header{
  margin-bottom:14px;
}

.clean-risk-heatmap>header>small{
  font-size:8px!important;
}

.residual-heatmap-summary-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:14px;
  align-items:start;
}

.residual-heatmap-panel{
  padding:14px;
  border:1px solid var(--cc-line);
  border-radius:11px;
  background:#fff;
}

.residual-heatmap-layout{
  grid-template-columns:22px minmax(0,1fr);
  gap:8px;
}

.residual-heatmap-y-label,
.residual-heatmap-x-label{
  font-size:8px!important;
}

.residual-heatmap-grid{
  gap:5px;
}

.heatmap-cell{
  min-height:54px;
  padding:6px;
  border-radius:8px;
}

.heatmap-cell span{
  font-size:15px;
}

.heatmap-cell small{
  margin-top:2px;
  font-size:7px!important;
}

.residual-heatmap-legend{
  gap:10px;
  margin-top:11px;
}

.residual-heatmap-legend span{
  gap:5px;
  font-size:8px!important;
}

.residual-heatmap-legend i{
  width:8px;
  height:8px;
}

.top-high-risk-summary{
  padding:14px;
  border:1px solid var(--cc-line);
  border-radius:11px;
  background:var(--cc-surface-2);
}

.top-high-risk-summary>header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-bottom:9px;
}

.top-high-risk-summary>header span{
  display:block;
  font-size:7px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}

.top-high-risk-summary h3{
  margin:3px 0 0;
  font-size:12px;
  line-height:1.35;
  color:var(--cc-blue);
}

.top-high-risk-summary>header>a{
  font-size:8px;
  font-weight:800;
  color:var(--cc-blue);
}

.top-high-risk-list{
  display:grid;
}

.top-high-risk-list>a{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) 62px;
  gap:9px;
  align-items:center;
  padding:10px 0;
  border-bottom:1px solid var(--cc-line);
  color:inherit;
}

.top-high-risk-list>a:last-child{
  border-bottom:0;
}

.top-high-risk-list>a>span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.top-high-risk-list strong,
.top-high-risk-list small{
  display:block;
}

.top-high-risk-list strong{
  font-size:9px;
  line-height:1.35;
  color:var(--cc-blue);
}

.top-high-risk-list small{
  margin-top:2px;
  font-size:7px;
  line-height:1.35;
  color:var(--cc-muted);
}

.top-high-risk-score{
  text-align:right;
}

.top-high-risk-score b{
  display:block;
  margin-bottom:4px;
  font-size:13px;
  color:var(--cc-blue);
}

.top-high-risk-score em{
  display:inline-flex;
  padding:3px 5px;
  border-radius:999px;
  font-size:6.5px;
  font-style:normal;
  font-weight:900;
}

.top-high-risk-score em.rating-critical,
.top-high-risk-score em.rating-red{
  background:#FBE7E7;
  color:#B72B2B;
}

.top-high-risk-score em.rating-high{
  background:#FDEBDD;
  color:#B95416;
}

/* Consistent compact executive typography across the page */
.executive-five-view .executive-section-card>header>div>span{
  width:27px;
  height:27px;
  font-size:8px;
}

.executive-five-view .executive-section-card h2{
  font-size:16px;
}

.executive-five-view .executive-section-card header p{
  font-size:9px;
}

.executive-five-view .executive-section-card header>a,
.executive-five-view .executive-section-card header>small{
  font-size:8px;
}

.executive-five-view .executive-section-kpis span,
.executive-five-view .executive-section-kpis small,
.executive-five-view .executive-delivery-kpis span,
.executive-five-view .executive-delivery-kpis small,
.executive-five-view .executive-crq-grid span,
.executive-five-view .executive-crq-grid small{
  font-size:8px!important;
}

.executive-five-view .executive-section-kpis strong,
.executive-five-view .executive-delivery-kpis strong,
.executive-five-view .executive-crq-grid strong{
  font-size:20px!important;
}

@media(max-width:900px){
  .residual-heatmap-summary-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:600px){
  .executive-donut-layout{
    grid-template-columns:1fr;
  }

  .residual-heatmap-panel,
  .top-high-risk-summary{
    padding:12px;
  }
}


/* =========================================================
   Executive Overview typography system — stronger/readable
   ========================================================= */
.executive-five-view{
  --overview-title:18px;
  --overview-subtitle:11px;
  --overview-card-title:13px;
  --overview-body:10px;
  --overview-meta:9px;
  --overview-kpi:24px;
}

.executive-five-hero h1{
  font-size:32px!important;
  font-weight:800;
  letter-spacing:-.025em;
}

.executive-five-hero p{
  font-size:12px!important;
  line-height:1.65!important;
}

.executive-five-view .executive-section-card{
  padding:24px;
}

.executive-five-view .executive-section-card>header{
  margin-bottom:20px;
}

.executive-five-view .executive-section-card h2{
  font-size:var(--overview-title)!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:-.015em;
}

.executive-five-view .executive-section-card header p{
  font-size:var(--overview-subtitle)!important;
  line-height:1.5!important;
}

.executive-five-view .executive-section-card>header>div>span{
  width:32px!important;
  height:32px!important;
  font-size:9px!important;
}

.executive-five-view .executive-section-card header>a,
.executive-five-view .executive-section-card header>small{
  font-size:9px!important;
}

.executive-five-view .executive-section-kpis article,
.executive-five-view .executive-delivery-kpis article,
.executive-five-view .executive-crq-grid article{
  padding:16px;
}

.executive-five-view .executive-section-kpis span,
.executive-five-view .executive-section-kpis small,
.executive-five-view .executive-delivery-kpis span,
.executive-five-view .executive-delivery-kpis small,
.executive-five-view .executive-crq-grid span,
.executive-five-view .executive-crq-grid small{
  font-size:var(--overview-meta)!important;
  line-height:1.45!important;
}

.executive-five-view .executive-section-kpis strong,
.executive-five-view .executive-delivery-kpis strong,
.executive-five-view .executive-crq-grid strong{
  font-size:var(--overview-kpi)!important;
  font-weight:800;
}

.executive-five-view .executive-chart-card h3,
.executive-five-view .executive-priority-grid h3{
  font-size:var(--overview-card-title)!important;
  font-weight:800;
}

.executive-five-view .compact-domain-list span,
.executive-five-view .top-high-risk-list strong,
.executive-five-view .executive-risk-list strong,
.executive-five-view .executive-action-list strong,
.executive-five-view .executive-programme-list> a>div:first-child>strong{
  font-size:var(--overview-body)!important;
}

.executive-five-view .compact-domain-list small,
.executive-five-view .top-high-risk-list small,
.executive-five-view .executive-risk-list small,
.executive-five-view .executive-action-list small,
.executive-five-view .executive-programme-list small{
  font-size:var(--overview-meta)!important;
}

.executive-five-view .heatmap-cell span{
  font-size:17px!important;
}

.executive-five-view .heatmap-cell small{
  font-size:8px!important;
}

/* =========================================================
   External Security Posture
   ========================================================= */
.external-posture-section{
  background:
    radial-gradient(circle at 95% 5%,rgba(20,86,217,.08),transparent 30%),
    linear-gradient(135deg,#FFFFFF,#F7FAFF);
}

.external-posture-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.external-posture-actions a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 11px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:#fff;
  color:var(--cc-blue);
  font-size:9px;
  font-weight:800;
}

.external-posture-actions .external-posture-primary{
  border-color:var(--cc-blue);
  background:var(--cc-blue);
  color:#fff;
}

.external-posture-grid{
  display:grid;
  grid-template-columns:.72fr 1.1fr 1fr;
  gap:12px;
}

.external-score-card,
.external-trend-card,
.external-factor-card{
  min-width:0;
  padding:18px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:#fff;
}

.external-score-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  border-top:4px solid #2D7442;
}

.external-score-card.grade-b{border-top-color:#D5A514}
.external-score-card.grade-c,
.external-score-card.grade-d{border-top-color:#B95416}
.external-score-card.grade-f{border-top-color:#B72B2B}

.external-score-card>div:first-child>span,
.external-score-card>div:first-child>strong,
.external-score-card>div:first-child>small{
  display:block;
}

.external-score-card>div:first-child>span{
  font-size:10px;
  font-weight:800;
  color:var(--cc-muted);
}

.external-score-card>div:first-child>strong{
  margin:9px 0 5px;
  font-size:46px;
  line-height:.9;
  color:var(--cc-blue);
}

.external-score-card>div:first-child>small{
  font-size:9px;
  color:var(--cc-muted);
}

.external-grade{
  display:grid;
  place-items:center;
  min-width:76px;
  min-height:82px;
  border-radius:13px;
  background:#EAF6EE;
  color:#2D7442;
}

.external-grade span{
  font-size:8px;
  font-weight:800;
}

.external-grade strong{
  font-size:38px;
  line-height:1;
}

.external-score-card footer{
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding-top:12px;
  border-top:1px solid var(--cc-line);
}

.external-score-card footer span,
.external-score-card footer b{
  font-size:8px;
}

.external-score-card footer b{
  font-weight:800;
}

.external-score-card footer b.improving{color:#2D7442}
.external-score-card footer b.declining{color:#B72B2B}

.external-trend-card>header,
.external-factor-card>header{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:15px;
}

.external-trend-card h3,
.external-factor-card h3{
  margin:0 0 4px;
  font-size:13px;
  color:var(--cc-blue);
}

.external-trend-card p,
.external-factor-card p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}

.external-trend-card>header>strong{
  font-size:18px;
  color:var(--cc-blue);
}

.external-trend-bars{
  display:flex;
  align-items:flex-end;
  gap:7px;
  min-height:145px;
  padding-top:8px;
}

.external-trend-bars>div{
  display:grid;
  grid-template-rows:105px auto auto;
  gap:4px;
  flex:1;
  min-width:22px;
  text-align:center;
}

.external-trend-bars i{
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  border-radius:6px 6px 3px 3px;
  background:#E9EEF7;
}

.external-trend-bars u{
  display:block;
  width:100%;
  min-height:2px;
  border-radius:6px 6px 3px 3px;
  background:linear-gradient(180deg,#1456D9,#D2AA37);
}

.external-trend-bars strong{
  font-size:8px;
  color:var(--cc-blue);
}

.external-trend-bars small{
  font-size:7px;
  color:var(--cc-muted);
}

.external-trend-empty{
  display:grid;
  place-items:center;
  min-height:145px;
  border:1px dashed #CCD6E7;
  border-radius:10px;
  background:#F9FBFF;
}

.external-trend-empty strong{
  font-size:34px;
  color:var(--cc-blue);
}

.external-trend-empty span{
  font-size:9px;
  color:var(--cc-muted);
}

.external-factor-card{
  display:grid;
  align-content:start;
}

.external-factor-row{
  display:grid;
  grid-template-columns:112px minmax(0,1fr) 28px;
  gap:8px;
  align-items:center;
  margin-bottom:11px;
}

.external-factor-row>span{
  font-size:8px;
  color:#4B5870;
}

.external-factor-row i{
  display:block;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#E8EDF5;
}

.external-factor-row u{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--cc-blue);
}

.external-factor-row strong{
  font-size:8px;
  text-align:right;
  color:var(--cc-blue);
}

@media(max-width:1050px){
  .external-posture-grid{
    grid-template-columns:1fr 1fr;
  }

  .external-factor-card{
    grid-column:1/-1;
  }
}

@media(max-width:700px){
  .executive-five-view{
    --overview-title:17px;
    --overview-subtitle:10px;
    --overview-kpi:22px;
  }

  .external-posture-grid{
    grid-template-columns:1fr;
  }

  .external-factor-card{
    grid-column:auto;
  }

  .external-posture-section>header{
    flex-direction:column;
  }
}


/* =========================================================
   Overview: use bar charts only
   ========================================================= */
.residual-rating-bar-card>p{
  margin:-6px 0 14px;
  font-size:9px;
  line-height:1.45;
  color:var(--cc-muted);
}

.residual-rating-bars{
  display:grid;
  gap:11px;
}

.residual-rating-row{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 28px;
  gap:10px;
  align-items:center;
}

.residual-rating-row>span,
.residual-rating-row>strong{
  font-size:9px;
}

.residual-rating-row>span{
  color:#4A566B;
}

.residual-rating-row>strong{
  text-align:right;
  color:var(--cc-blue);
}

.residual-rating-row>i{
  display:block;
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#E8EDF5;
}

.residual-rating-row u{
  display:block;
  height:100%;
  min-width:0;
  border-radius:999px;
}

.residual-rating-row u.critical{background:#B72B2B}
.residual-rating-row u.high{background:#D66A2B}
.residual-rating-row u.medium{background:#D5A514}
.residual-rating-row u.low{background:#2D7442}
.residual-rating-row u.not-rated{background:#8993A4}

/* =========================================================
   Overall Risk Register: clean summary hierarchy
   ========================================================= */
.risk-register-summary-clean{
  margin-bottom:14px;
  padding:18px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
}

.risk-register-summary-clean>header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:14px;
}

.risk-register-summary-clean>header>div:first-child>span,
.risk-actions-bottom>header span{
  display:block;
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--cc-gold-700);
}

.risk-register-summary-clean h2{
  margin:4px 0;
  font-size:17px;
  line-height:1.3;
  color:var(--cc-blue);
}

.risk-register-summary-clean>header p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}

.risk-summary-snapshot{
  text-align:right;
}

.risk-summary-snapshot span,
.risk-summary-snapshot strong{
  display:block;
}

.risk-summary-snapshot span{
  font-size:8px;
  color:var(--cc-muted);
}

.risk-summary-snapshot strong{
  margin-top:4px;
  font-size:10px;
  color:var(--cc-blue);
}

.risk-summary-primary{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--cc-line);
  border-radius:10px;
  background:var(--cc-surface-2);
}

.risk-summary-primary article{
  min-width:0;
  padding:13px 14px;
}

.risk-summary-primary article+article{
  border-left:1px solid var(--cc-line);
}

.risk-summary-primary span,
.risk-summary-primary small{
  display:block;
  font-size:8px;
  line-height:1.4;
  color:var(--cc-muted);
}

.risk-summary-primary strong{
  display:block;
  margin:6px 0 3px;
  font-size:20px;
  line-height:1;
  color:var(--cc-blue);
}

.risk-domain-summary-clean{
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin-top:12px;
}

.risk-domain-summary-clean>span{
  font-size:8px;
  font-weight:800;
  color:var(--cc-muted);
}

.risk-domain-summary-clean>div{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.risk-domain-summary-clean a{
  display:flex;
  gap:7px;
  align-items:center;
  padding:7px 9px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:#fff;
  color:inherit;
}

.risk-domain-summary-clean strong{
  font-size:9px;
  color:var(--cc-blue);
}

.risk-domain-summary-clean small{
  font-size:8px;
  color:var(--cc-muted);
}

.overall-risk-register{
  overflow:hidden;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
}

.overall-risk-register .iso-risk-register-intro{
  margin:0;
  border:0;
  border-bottom:1px solid var(--cc-line);
  border-radius:0;
  background:#fff;
}

.overall-risk-register .iso-risk-table-scroll{
  margin:0;
  border:0;
  border-radius:0;
}

.overall-risk-register .iso-risk-table{
  min-width:1180px;
  table-layout:fixed;
}

.overall-risk-register .iso-risk-table th:nth-child(1){width:25%}
.overall-risk-register .iso-risk-table th:nth-child(2){width:14%}
.overall-risk-register .iso-risk-table th:nth-child(3){width:10%}
.overall-risk-register .iso-risk-table th:nth-child(4){width:8%}
.overall-risk-register .iso-risk-table th:nth-child(5){width:8%}
.overall-risk-register .iso-risk-table th:nth-child(6){width:8%}
.overall-risk-register .iso-risk-table th:nth-child(7){width:9%}
.overall-risk-register .iso-risk-table th:nth-child(8){width:18%}

.overall-risk-register .iso-risk-table td{
  vertical-align:top;
  overflow-wrap:anywhere;
}

.overall-risk-register .iso-risk-name>a{
  display:block;
  max-width:100%;
}

.risk-actions-bottom{
  margin-top:14px;
  padding:18px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
}

.risk-actions-bottom>header{
  margin-bottom:12px;
}

.risk-actions-bottom h3{
  margin:4px 0;
  font-size:15px;
  color:var(--cc-blue);
}

.risk-actions-bottom p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}

.risk-actions-bottom .integrated-due-list{
  border-top:1px solid var(--cc-line);
}

@media(max-width:1050px){
  .risk-summary-primary{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .risk-summary-primary article:nth-child(4){
    border-left:0;
    border-top:1px solid var(--cc-line);
  }

  .risk-summary-primary article:nth-child(5){
    border-top:1px solid var(--cc-line);
  }
}

@media(max-width:680px){
  .risk-register-summary-clean>header{
    flex-direction:column;
  }

  .risk-summary-snapshot{
    text-align:left;
  }

  .risk-summary-primary{
    grid-template-columns:1fr 1fr;
  }

  .risk-summary-primary article:nth-child(odd){
    border-left:0;
  }

  .risk-summary-primary article:nth-child(n+3){
    border-top:1px solid var(--cc-line);
  }

  .risk-domain-summary-clean{
    grid-template-columns:1fr;
  }
}


/* Overview Risk composition — true 50:50 layout */
.executive-risk-section .executive-section-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch;
}

.executive-risk-section .executive-chart-card{
  min-width:0;
  height:100%;
}

.executive-risk-section .compact-domain-card,
.executive-risk-section .residual-rating-bar-card{
  display:flex;
  flex-direction:column;
}

.executive-risk-section .compact-domain-list,
.executive-risk-section .residual-rating-bars{
  flex:1;
}

/* Universal clickable data cards */
.executive-kpi-link,
.executive-control-rag>a,
.external-posture-grid>a{
  display:block;
  min-width:0;
  color:inherit;
  text-decoration:none;
}

.executive-kpi-link article,
.executive-control-rag>a article,
.executive-control-score,
.external-posture-grid>a,
.residual-rating-row,
.compact-domain-list>a,
.executive-control-heatmap>a,
.executive-risk-list>a,
.executive-action-list>a,
.executive-incident-list>a,
.executive-programme-list>a{
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease,
    background-color .16s ease;
}

.executive-kpi-link:hover article,
.executive-control-rag>a:hover article,
.executive-control-score:hover,
.external-posture-grid>a:hover,
.residual-rating-row:hover,
.compact-domain-list>a:hover,
.executive-control-heatmap>a:hover,
.executive-risk-list>a:hover,
.executive-action-list>a:hover,
.executive-incident-list>a:hover,
.executive-programme-list>a:hover{
  transform:translateY(-2px);
  border-color:#B9C9E7;
  box-shadow:0 9px 20px rgba(31,55,92,.09);
}

.residual-rating-row{
  color:inherit;
  text-decoration:none;
  padding:5px 0;
  border-radius:7px;
}

.executive-control-score{
  color:inherit;
  text-decoration:none;
}

.executive-control-rag>a{
  height:100%;
}

.executive-control-rag>a article{
  height:100%;
}

.external-posture-grid>a{
  height:100%;
}

@media(max-width:800px){
  .executive-risk-section .executive-section-grid{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   Stable Overview Risk Visuals
   Intentionally simple to avoid inherited layout conflicts
   ========================================================= */
.risk-overview-visuals{
  display:grid!important;
  grid-template-columns:minmax(260px,.42fr) minmax(0,.58fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
}

.risk-domain-summary-card,
.residual-composition-card{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:16px!important;
  overflow:hidden!important;
  border:1px solid var(--cc-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

.risk-domain-summary-card>header,
.residual-composition-card>header{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  align-items:flex-start!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

.risk-domain-summary-card h3,
.residual-composition-card h3{
  margin:0 0 4px!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:800!important;
  color:var(--cc-blue)!important;
}

.risk-domain-summary-card header p,
.residual-composition-card header p{
  margin:0!important;
  padding:0!important;
  font-size:9px!important;
  line-height:1.45!important;
  color:var(--cc-muted)!important;
}

.residual-composition-card>header>strong{
  flex:0 0 auto!important;
  font-size:22px!important;
  line-height:1!important;
  color:var(--cc-blue)!important;
}

.risk-domain-summary-list,
.residual-composition-list{
  display:grid!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
}

.risk-domain-summary-list>a{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:7px 10px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:10px!important;
  overflow:hidden!important;
  border:1px solid var(--cc-line)!important;
  border-radius:9px!important;
  background:var(--cc-surface-2)!important;
  color:inherit!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}

.risk-domain-summary-main{
  min-width:0!important;
}

.risk-domain-summary-main span,
.risk-domain-summary-main small{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.risk-domain-summary-main span{
  font-size:9px!important;
  line-height:1.35!important;
  font-weight:800!important;
  color:var(--cc-blue)!important;
}

.risk-domain-summary-main small{
  margin-top:3px!important;
  font-size:8px!important;
  line-height:1.35!important;
  color:var(--cc-muted)!important;
}

.risk-domain-summary-list>a>strong{
  font-size:15px!important;
  line-height:1!important;
  color:var(--cc-blue)!important;
}

.risk-domain-summary-meter{
  grid-column:1/-1!important;
  display:block!important;
  width:100%!important;
  height:6px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#E8EDF5!important;
}

.risk-domain-summary-meter i{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#1456D9,#D6AE3E)!important;
}

.residual-composition-item{
  display:grid!important;
  grid-template-columns:110px minmax(0,1fr) 30px!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:9px 10px!important;
  overflow:hidden!important;
  border:1px solid var(--cc-line)!important;
  border-radius:9px!important;
  background:#fff!important;
  color:inherit!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}

.residual-composition-label{
  min-width:0!important;
}

.residual-composition-label span,
.residual-composition-label small{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.residual-composition-label span{
  font-size:9px!important;
  line-height:1.3!important;
  font-weight:800!important;
  color:#3E4D65!important;
}

.residual-composition-label small{
  margin-top:2px!important;
  font-size:8px!important;
  line-height:1.3!important;
  color:var(--cc-muted)!important;
}

.residual-composition-meter{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:10px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#E8EDF5!important;
}

.residual-composition-meter i{
  display:block!important;
  height:100%!important;
  min-width:0!important;
  border-radius:999px!important;
}

.residual-composition-meter i.critical{background:#B72B2B!important}
.residual-composition-meter i.high{background:#D66A2B!important}
.residual-composition-meter i.medium{background:#D5A514!important}
.residual-composition-meter i.low{background:#2D7442!important}
.residual-composition-meter i.not-rated{background:#8993A4!important}

.residual-composition-item>strong{
  display:block!important;
  font-size:11px!important;
  line-height:1!important;
  text-align:right!important;
  color:var(--cc-blue)!important;
}

.risk-domain-summary-list>a:hover,
.residual-composition-item:hover{
  border-color:#BACAE7!important;
  background:#F8FAFE!important;
  box-shadow:0 5px 14px rgba(31,55,92,.06)!important;
}

/* Disable previous risk-card grid rules */
.executive-risk-section .executive-section-grid,
.executive-risk-section .compact-domain-card,
.executive-risk-section .residual-rating-bar-card,
.executive-risk-section .compact-domain-list,
.executive-risk-section .residual-rating-bars{
  all:unset;
}

.executive-risk-section .executive-section-grid,
.executive-risk-section .compact-domain-card,
.executive-risk-section .residual-rating-bar-card,
.executive-risk-section .compact-domain-list,
.executive-risk-section .residual-rating-bars{
  display:none!important;
}

@media(max-width:900px){
  .risk-overview-visuals{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:520px){
  .risk-domain-summary-card,
  .residual-composition-card{
    padding:13px!important;
  }

  .residual-composition-item{
    grid-template-columns:86px minmax(0,1fr) 24px!important;
    gap:8px!important;
    padding:8px!important;
  }

  .residual-composition-label small{
    display:none!important;
  }

  .risk-domain-summary-main span,
  .risk-domain-summary-main small{
    white-space:normal!important;
  }
}


/* =========================================================
   Readability Adjustment
   Overview + Overall Risk Register + Overall Issue Register
   ========================================================= */

/* ---------- Overview ---------- */
.executive-five-view{
  --overview-title:20px!important;
  --overview-subtitle:12px!important;
  --overview-card-title:14px!important;
  --overview-body:11px!important;
  --overview-meta:10px!important;
  --overview-kpi:26px!important;
}

.executive-five-hero h1{
  font-size:34px!important;
}

.executive-five-hero p{
  font-size:13px!important;
}

.executive-five-view .executive-section-card h2{
  font-size:20px!important;
}

.executive-five-view .executive-section-card header p{
  font-size:11px!important;
}

.executive-five-view .executive-section-card header>a,
.executive-five-view .executive-section-card header>small{
  font-size:10px!important;
}

.executive-five-view .executive-section-kpis span,
.executive-five-view .executive-section-kpis small,
.executive-five-view .executive-delivery-kpis span,
.executive-five-view .executive-delivery-kpis small,
.executive-five-view .executive-crq-grid span,
.executive-five-view .executive-crq-grid small{
  font-size:10px!important;
}

.executive-five-view .executive-section-kpis strong,
.executive-five-view .executive-delivery-kpis strong,
.executive-five-view .executive-crq-grid strong{
  font-size:26px!important;
}

.executive-five-view .risk-domain-summary-card h3,
.executive-five-view .residual-composition-card h3,
.executive-five-view .executive-chart-card h3,
.executive-five-view .executive-priority-grid h3,
.executive-five-view .external-trend-card h3,
.executive-five-view .external-factor-card h3{
  font-size:14px!important;
}

.executive-five-view .risk-domain-summary-card header p,
.executive-five-view .residual-composition-card header p,
.executive-five-view .external-trend-card p,
.executive-five-view .external-factor-card p{
  font-size:10px!important;
}

.executive-five-view .risk-domain-summary-main span,
.executive-five-view .residual-composition-label span,
.executive-five-view .top-high-risk-list strong,
.executive-five-view .executive-risk-list strong,
.executive-five-view .executive-action-list strong,
.executive-five-view .executive-programme-list strong,
.executive-five-view .executive-incident-list strong{
  font-size:11px!important;
}

.executive-five-view .risk-domain-summary-main small,
.executive-five-view .residual-composition-label small,
.executive-five-view .top-high-risk-list small,
.executive-five-view .executive-risk-list small,
.executive-five-view .executive-action-list small,
.executive-five-view .executive-programme-list small,
.executive-five-view .executive-incident-list small{
  font-size:9px!important;
}

.executive-five-view .risk-domain-summary-list>a>strong{
  font-size:17px!important;
}

.executive-five-view .residual-composition-item>strong{
  font-size:13px!important;
}

.executive-five-view .heatmap-cell span{
  font-size:18px!important;
}

.executive-five-view .heatmap-cell small{
  font-size:9px!important;
}

.executive-five-view .residual-heatmap-legend span{
  font-size:9px!important;
}

.executive-five-view .executive-control-heatmap span{
  font-size:9px!important;
}

.executive-five-view .executive-control-heatmap strong{
  font-size:11px!important;
}

.executive-five-view .executive-control-heatmap small{
  font-size:9px!important;
}

.executive-five-view .executive-control-heatmap b{
  font-size:22px!important;
}

.executive-five-view .external-score-card>div:first-child>span{
  font-size:11px!important;
}

.executive-five-view .external-score-card>div:first-child>small,
.executive-five-view .external-score-card footer span,
.executive-five-view .external-score-card footer b{
  font-size:9px!important;
}

.executive-five-view .external-factor-row>span,
.executive-five-view .external-factor-row strong{
  font-size:9px!important;
}

.executive-five-view .executive-five-summary p{
  font-size:12px!important;
}

/* ---------- Overall Risk Register ---------- */
.risk-register-summary-clean>header>div:first-child>span{
  font-size:9px!important;
}

.risk-register-summary-clean h2{
  font-size:20px!important;
}

.risk-register-summary-clean>header p{
  font-size:11px!important;
}

.risk-summary-snapshot span{
  font-size:9px!important;
}

.risk-summary-snapshot strong{
  font-size:11px!important;
}

.risk-summary-primary span,
.risk-summary-primary small{
  font-size:9px!important;
}

.risk-summary-primary strong{
  font-size:23px!important;
}

.risk-domain-summary-clean>span{
  font-size:9px!important;
}

.risk-domain-summary-clean strong{
  font-size:10px!important;
}

.risk-domain-summary-clean small{
  font-size:9px!important;
}

.overall-risk-register .iso-risk-register-intro>div:first-child>span{
  font-size:9px!important;
}

.overall-risk-register .iso-risk-register-intro>div:first-child>strong{
  font-size:18px!important;
}

.overall-risk-register .iso-risk-register-intro>div:first-child>small{
  font-size:10px!important;
}

.overall-risk-register .iso-risk-table th{
  font-size:10px!important;
  line-height:1.35!important;
}

.overall-risk-register .iso-risk-table td{
  font-size:10px!important;
  line-height:1.45!important;
}

.overall-risk-register .iso-risk-table td strong,
.overall-risk-register .iso-risk-name>a{
  font-size:11px!important;
}

.overall-risk-register .iso-risk-table td small,
.overall-risk-register .iso-risk-name>span,
.overall-risk-register .risk-domain-badge{
  font-size:9px!important;
}

.overall-risk-register .iso-risk-rating{
  font-size:8px!important;
}

/* ---------- Overall Issue Register ---------- */
.issue-register-shell .issue-register-intro>div>span{
  font-size:9px!important;
}

.issue-register-shell .issue-register-intro>div>strong{
  font-size:18px!important;
}

.issue-register-shell .issue-register-intro>div>small{
  font-size:10px!important;
}

.issue-register-table th{
  font-size:10px!important;
  line-height:1.35!important;
}

.issue-register-table td{
  font-size:10px!important;
  line-height:1.45!important;
}

.issue-register-table .issue-name-cell>a{
  font-size:11px!important;
}

.issue-register-table .issue-name-cell>span,
.issue-register-table .issue-name-cell>small,
.issue-register-table .issue-source-cell small,
.issue-register-table .issue-context-cell small,
.issue-register-table .issue-risk-link small,
.issue-register-table .issue-status-cell small{
  font-size:9px!important;
}

.issue-register-table .issue-source-cell b,
.issue-register-table .issue-context-cell strong,
.issue-register-table .issue-risk-link strong,
.issue-register-table .issue-status-cell strong{
  font-size:10px!important;
}

.issue-register-table .issue-severity,
.issue-register-table .register-status{
  font-size:8px!important;
}

.register-guideline-panel>header span{
  font-size:9px!important;
}

.register-guideline-panel h3{
  font-size:16px!important;
}

.register-guideline-grid strong{
  font-size:11px!important;
}

.register-guideline-grid p{
  font-size:9px!important;
}

/* ---------- Upcoming / overdue section ---------- */
.risk-actions-bottom>header span{
  font-size:9px!important;
}

.risk-actions-bottom h3{
  font-size:17px!important;
}

.risk-actions-bottom p{
  font-size:10px!important;
}

.integrated-due-list a>span,
.integrated-due-list a small,
.integrated-due-list time{
  font-size:9px!important;
}

.integrated-due-list a strong{
  font-size:10px!important;
}

@media(max-width:700px){
  .executive-five-view{
    --overview-title:18px!important;
    --overview-subtitle:11px!important;
    --overview-card-title:13px!important;
    --overview-body:10px!important;
    --overview-meta:9px!important;
    --overview-kpi:23px!important;
  }

  .overall-risk-register .iso-risk-table,
  .issue-register-table{
    font-size:9px!important;
  }
}


/* Risk form classification note */
.risk-classification-note{
  display:grid;
  gap:4px;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid #C9D6E8;
  border-left:4px solid var(--cc-blue);
  border-radius:9px;
  background:#F7FAFF;
}

.risk-classification-note strong{
  font-size:11px;
  color:var(--cc-blue);
}

.risk-classification-note span{
  font-size:9px;
  line-height:1.5;
  color:var(--cc-muted);
}

.risk-classification-note b{
  color:#33445E;
}


/* =========================================================
   Tooltip visibility hard fix
   Hidden by default; visible only on icon hover/focus
   ========================================================= */
.master-form .field-guidance .field-guidance-tooltip{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.master-form .field-guidance:hover .field-guidance-tooltip,
.master-form .field-guidance:focus-within .field-guidance-tooltip,
.master-form .field-guidance-trigger:hover + .field-guidance-tooltip,
.master-form .field-guidance-trigger:focus-visible + .field-guidance-tooltip{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
}

/* Prevent broad form label/span rules from exposing tooltip text */
.master-form label>.field-guidance-tooltip,
.master-form label>span.field-guidance-tooltip{
  display:none!important;
}

.master-form label>.field-guidance:hover .field-guidance-tooltip,
.master-form label>.field-guidance:focus-within .field-guidance-tooltip{
  display:block!important;
}

/* Visual indication for prefilled reference examples */
.master-form input:not([readonly]),
.master-form textarea,
.master-form select{
  background-color:#fff!important;
}

.risk-classification-note + .iso27005-risk-form::before{
  content:"Reference values are prefilled for guidance. Review and replace them before saving.";
  display:block;
  grid-column:1/-1;
  margin:0 0 12px;
  padding:9px 11px;
  border:1px dashed #B8C7DC;
  border-radius:8px;
  background:#FBFCFF;
  color:#5A6880;
  font-size:9px;
  line-height:1.45;
}


/* =========================================================
   Simple Info Tooltip — button only
   ========================================================= */
.master-form .field-guidance{
  position:relative!important;
  display:inline-block!important;
}

.master-form .field-guidance-tooltip{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.master-form .field-guidance:hover .field-guidance-tooltip,
.master-form .field-guidance:focus-within .field-guidance-tooltip,
.master-form label:hover .field-guidance-tooltip,
.master-form .field-label-row:hover .field-guidance-tooltip,
.master-form input:hover ~ .field-guidance-tooltip,
.master-form select:hover ~ .field-guidance-tooltip,
.master-form textarea:hover ~ .field-guidance-tooltip{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}

.master-form .field-guidance-trigger:hover + .field-guidance-tooltip,
.master-form .field-guidance-trigger:focus-visible + .field-guidance-tooltip{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}

.master-form .field-guidance-trigger{
  position:relative!important;
  z-index:2!important;
}

.master-form .field-guidance-tooltip{
  position:absolute!important;
  z-index:100!important;
  left:22px!important;
  top:-8px!important;
  bottom:auto!important;
  transform:none!important;
  width:280px!important;
  max-width:min(280px,calc(100vw - 48px))!important;
}

.master-form .field-guidance-tooltip::after{
  display:none!important;
}

@media(max-width:700px){
  .master-form .field-guidance-trigger:hover + .field-guidance-tooltip,
  .master-form .field-guidance-trigger:focus-visible + .field-guidance-tooltip{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    top:auto!important;
    bottom:18px!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* =========================================================
   Click-only Field Guidance
   ========================================================= */
.master-form .field-guidance{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
}

.master-form .field-guidance-trigger{
  display:inline-grid!important;
  place-items:center!important;
  width:20px!important;
  height:20px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #B7C4D7!important;
  border-radius:7px!important;
  background:#F8FAFD!important;
  color:#31558A!important;
  cursor:pointer!important;
  box-shadow:0 1px 2px rgba(31,55,92,.06)!important;
}

.master-form .field-guidance-trigger svg{
  width:14px!important;
  height:14px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.master-form .field-guidance-trigger:hover,
.master-form .field-guidance-trigger:focus-visible,
.master-form .field-guidance-trigger[aria-expanded="true"]{
  border-color:var(--cc-blue)!important;
  background:#EAF1FF!important;
  color:var(--cc-blue)!important;
  outline:none!important;
}

/* Hard-disable every hover/focus based tooltip rule */
.master-form .field-guidance-tooltip,
.master-form .field-guidance:hover .field-guidance-tooltip,
.master-form .field-guidance:focus-within .field-guidance-tooltip,
.master-form .field-label-row:hover .field-guidance-tooltip,
.master-form label:hover .field-guidance-tooltip,
.master-form input:hover ~ .field-guidance-tooltip,
.master-form select:hover ~ .field-guidance-tooltip,
.master-form textarea:hover ~ .field-guidance-tooltip,
.master-form .field-guidance-trigger:hover + .field-guidance-tooltip,
.master-form .field-guidance-trigger:focus-visible + .field-guidance-tooltip{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.master-form .field-guidance-tooltip:not([hidden]),
.master-form .field-guidance-trigger[aria-expanded="true"] + .field-guidance-tooltip{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  position:absolute!important;
  z-index:120!important;
  left:26px!important;
  top:-10px!important;
  bottom:auto!important;
  width:290px!important;
  max-width:min(290px,calc(100vw - 52px))!important;
  margin:0!important;
  padding:11px 12px!important;
  border:1px solid #C5D1E3!important;
  border-radius:10px!important;
  background:#152642!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:1.5!important;
  font-weight:400!important;
  text-align:left!important;
  white-space:normal!important;
  box-shadow:0 14px 32px rgba(18,38,70,.22)!important;
}

.master-form .field-guidance-tooltip[hidden]{
  display:none!important;
}

@media(max-width:700px){
  .master-form .field-guidance-tooltip:not([hidden]),
  .master-form .field-guidance-trigger[aria-expanded="true"] + .field-guidance-tooltip{
    position:fixed!important;
    z-index:999!important;
    left:16px!important;
    right:16px!important;
    top:auto!important;
    bottom:18px!important;
    width:auto!important;
    max-width:none!important;
  }
}

/* =========================================================
   Issue Folders Workspace Recovery
   ========================================================= */
.issue-folder-register{
  display:grid!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
}

.issue-folder-intro{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid var(--cc-line)!important;
  border-radius:12px!important;
  background:#F8FAFE!important;
  box-sizing:border-box!important;
}

.issue-folder-intro>div{
  min-width:0!important;
}

.issue-folder-intro span,
.issue-folder-intro strong,
.issue-folder-intro small{
  display:block!important;
}

.issue-folder-intro span{
  margin-bottom:5px!important;
  font-size:9px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  color:var(--cc-blue)!important;
}

.issue-folder-intro strong{
  margin-bottom:4px!important;
  font-size:19px!important;
  line-height:1.2!important;
  color:var(--cc-blue)!important;
}

.issue-folder-intro small{
  font-size:10px!important;
  line-height:1.45!important;
  color:var(--cc-muted)!important;
}

.issue-folder-list{
  display:grid!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}

.issue-folder-list>article{
  display:grid!important;
  grid-template-columns:minmax(240px,2fr) repeat(5,minmax(100px,.7fr))!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:14px!important;
  overflow:hidden!important;
  border:1px solid var(--cc-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(31,55,92,.04)!important;
  box-sizing:border-box!important;
}

.issue-folder-list>article:hover{
  border-color:#B9C9E2!important;
  box-shadow:0 8px 22px rgba(31,55,92,.07)!important;
}

.issue-folder-main{
  min-width:0!important;
  padding-right:10px!important;
  border-right:1px solid var(--cc-line)!important;
}

.issue-folder-main>span{
  display:block!important;
  margin-bottom:4px!important;
  font-size:8px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  color:#708099!important;
}

.issue-folder-main>a{
  display:block!important;
  overflow:hidden!important;
  margin-bottom:4px!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:800!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--cc-blue)!important;
  text-decoration:none!important;
}

.issue-folder-main>p{
  display:-webkit-box!important;
  overflow:hidden!important;
  margin:0!important;
  font-size:9px!important;
  line-height:1.45!important;
  color:var(--cc-muted)!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

.issue-folder-list>article>div:not(.issue-folder-main){
  min-width:0!important;
}

.issue-folder-list>article>div:not(.issue-folder-main)>span{
  display:block!important;
  overflow:hidden!important;
  margin-bottom:4px!important;
  font-size:8px!important;
  line-height:1.3!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#7A879A!important;
}

.issue-folder-list>article>div:not(.issue-folder-main)>strong{
  display:block!important;
  overflow:hidden!important;
  font-size:10px!important;
  line-height:1.35!important;
  font-weight:800!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#33445E!important;
}

@media(max-width:1180px){
  .issue-folder-list>article{
    grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(100px,.8fr))!important;
  }

  .issue-folder-list>article>div:nth-child(5),
  .issue-folder-list>article>div:nth-child(6){
    grid-column:auto!important;
  }
}

@media(max-width:850px){
  .issue-folder-list>article{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .issue-folder-main{
    grid-column:1/-1!important;
    padding-right:0!important;
    padding-bottom:10px!important;
    border-right:0!important;
    border-bottom:1px solid var(--cc-line)!important;
  }
}

@media(max-width:520px){
  .issue-folder-list>article{
    grid-template-columns:1fr!important;
  }

  .issue-folder-main{
    grid-column:auto!important;
  }

  .issue-folder-main>a,
  .issue-folder-list>article>div:not(.issue-folder-main)>span,
  .issue-folder-list>article>div:not(.issue-folder-main)>strong{
    white-space:normal!important;
  }
}


/* Click guidance execution fallback */
.master-form .field-guidance-tooltip.is-open{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}


/* =========================================================
   Smart viewport positioning for click guidance
   ========================================================= */
.master-form .field-guidance-tooltip.is-open{
  position:fixed!important;
  margin:0!important;
  transform:none!important;
}

.master-form .field-guidance-tooltip.is-open.opens-left{
  transform-origin:right top!important;
}

.master-form .field-guidance-tooltip.is-open.opens-right{
  transform-origin:left top!important;
}

.master-form .field-guidance-tooltip.is-open.opens-left::before,
.master-form .field-guidance-tooltip.is-open.opens-right::before{
  content:""!important;
  position:absolute!important;
  top:14px!important;
  width:9px!important;
  height:9px!important;
  background:#152642!important;
  transform:rotate(45deg)!important;
}

.master-form .field-guidance-tooltip.is-open.opens-left::before{
  right:-5px!important;
  border-top:1px solid #C5D1E3!important;
  border-right:1px solid #C5D1E3!important;
}

.master-form .field-guidance-tooltip.is-open.opens-right::before{
  left:-5px!important;
  border-left:1px solid #C5D1E3!important;
  border-bottom:1px solid #C5D1E3!important;
}

@media(max-width:700px){
  .master-form .field-guidance-tooltip.is-open{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    top:auto!important;
    bottom:18px!important;
    width:auto!important;
    max-width:none!important;
  }

  .master-form .field-guidance-tooltip.is-open::before{
    display:none!important;
  }
}


/* =========================================================
   Deterministic guidance direction
   Right-half icons always open left
   ========================================================= */
.master-form .field-guidance-tooltip.is-open{
  position:absolute!important;
  top:-10px!important;
  bottom:auto!important;
  width:290px!important;
  max-width:min(290px,calc(100vw - 48px))!important;
  margin:0!important;
  transform:none!important;
}

.master-form .field-guidance-tooltip.is-open.opens-left{
  left:auto!important;
  right:calc(100% + 10px)!important;
}

.master-form .field-guidance-tooltip.is-open.opens-right{
  left:calc(100% + 10px)!important;
  right:auto!important;
}

/* Override previous fixed-coordinate positioning */
.master-form .field-guidance-tooltip.is-open.opens-left,
.master-form .field-guidance-tooltip.is-open.opens-right{
  position:absolute!important;
}

@media(max-width:700px){
  .master-form .field-guidance-tooltip.is-open,
  .master-form .field-guidance-tooltip.is-open.opens-left,
  .master-form .field-guidance-tooltip.is-open.opens-right{
    position:fixed!important;
    left:16px!important;
    right:16px!important;
    top:auto!important;
    bottom:18px!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* =========================================================
   Strategy & Roadmap Builder
   ========================================================= */
.strategy-roadmap-builder,.strategy-profile-register{display:grid;gap:15px;min-width:0}
.roadmap-builder-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.roadmap-builder-summary article{
  padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:#fff;
  box-shadow:0 5px 16px rgba(31,55,92,.04)
}
.roadmap-builder-summary span,.roadmap-builder-summary small{display:block}
.roadmap-builder-summary span{font-size:9px;font-weight:800;color:#53647D}
.roadmap-builder-summary strong{display:block;margin:6px 0 4px;font-size:25px;color:var(--cc-blue)}
.roadmap-builder-summary small{font-size:8px;color:var(--cc-muted)}
.roadmap-builder-nav{
  display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:17px 19px;
  border:1px solid var(--cc-line);border-radius:12px;background:#F8FAFE
}
.roadmap-builder-nav>div:first-child{max-width:780px}
.roadmap-builder-nav>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.roadmap-builder-nav span{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--cc-blue)}
.roadmap-builder-nav h3{margin:5px 0;font-size:17px;color:var(--cc-blue)}
.roadmap-builder-nav p{margin:0;font-size:9px;line-height:1.5;color:var(--cc-muted)}
.roadmap-timeline-board{
  display:grid;grid-template-columns:repeat(4,minmax(230px,1fr));gap:10px;
  align-items:start;overflow-x:auto;padding-bottom:6px
}
.roadmap-horizon-column{
  min-width:230px;border:1px solid var(--cc-line);border-radius:11px;background:#F5F8FC;overflow:hidden
}
.roadmap-horizon-column>header{padding:12px 13px;border-bottom:1px solid var(--cc-line);background:#fff}
.roadmap-horizon-column>header span,.roadmap-horizon-column>header strong,.roadmap-horizon-column>header small{display:block}
.roadmap-horizon-column>header span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-blue)}
.roadmap-horizon-column>header strong{margin:4px 0;font-size:11px;color:#33445E}
.roadmap-horizon-column>header small{font-size:8px;color:var(--cc-muted)}
.roadmap-initiative-stack{display:grid;gap:8px;padding:9px;min-height:170px}
.roadmap-initiative-card{
  display:block;padding:11px;border:1px solid #D5DEEA;border-left:4px solid #7393BF;
  border-radius:9px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 3px 10px rgba(31,55,92,.04)
}
.roadmap-initiative-card.status-at_risk{border-left-color:#C58B18}
.roadmap-initiative-card.status-blocked{border-left-color:#B53C3C}
.roadmap-initiative-card.status-completed{border-left-color:#2D7442}
.roadmap-card-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}
.roadmap-card-top span{font-size:7px;font-weight:900;letter-spacing:.05em;color:#6F7E94}
.roadmap-card-top b{padding:2px 5px;border-radius:5px;background:#EAF0FA;font-size:7px;color:var(--cc-blue)}
.roadmap-initiative-card>strong{display:block;font-size:10px;line-height:1.35;color:#33445E}
.roadmap-initiative-card>small{display:block;margin-top:4px;font-size:8px;color:var(--cc-muted)}
.roadmap-owner{display:flex;justify-content:space-between;gap:8px;margin-top:9px;font-size:7px;color:#6F7E94}
.roadmap-owner span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.roadmap-owner time{white-space:nowrap}
.roadmap-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px;margin-top:8px}
.roadmap-progress i,.strategy-progress i{display:block;height:5px;border-radius:99px;background:#E4EAF3;overflow:hidden}
.roadmap-progress u,.strategy-progress u{display:block;height:100%;border-radius:inherit;background:var(--cc-blue)}
.roadmap-progress span{font-size:7px;font-weight:800;color:#53647D}
.roadmap-initiative-card>em{
  display:inline-flex;margin-top:7px;padding:3px 6px;border-radius:99px;background:#EEF2F7;
  font-size:7px;font-style:normal;font-weight:800;color:#5D6D84
}
.roadmap-empty{display:grid;place-items:center;min-height:115px;border:1px dashed #CCD6E5;border-radius:8px;font-size:8px;color:#8794A8}
.strategy-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.strategy-profile-grid>a{
  display:grid;gap:7px;padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:#fff;
  color:inherit;text-decoration:none;box-shadow:0 5px 16px rgba(31,55,92,.04)
}
.strategy-profile-grid>a>span{font-size:8px;font-weight:900;color:var(--cc-blue)}
.strategy-profile-grid h3{margin:0;font-size:14px;color:#33445E}
.strategy-profile-grid p{min-height:40px;margin:0;font-size:9px;line-height:1.5;color:var(--cc-muted)}
.strategy-profile-grid>a>div:not(.strategy-progress){display:grid;grid-template-columns:100px 1fr;gap:8px}
.strategy-profile-grid small{font-size:8px;color:#7B889C}
.strategy-profile-grid strong{font-size:9px;color:#42526A}
.strategy-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}
.strategy-progress b{font-size:8px;color:var(--cc-blue)}
.strategy-profile-grid em{justify-self:start;padding:3px 7px;border-radius:99px;background:#EEF2F7;font-size:7px;font-style:normal;font-weight:800;color:#5D6D84}
@media(max-width:1100px){
  .roadmap-builder-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .roadmap-timeline-board{grid-template-columns:repeat(2,minmax(230px,1fr))}
  .strategy-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .roadmap-builder-nav{flex-direction:column}
  .roadmap-builder-nav>div:last-child{justify-content:flex-start}
  .roadmap-builder-summary,.strategy-profile-grid{grid-template-columns:1fr}
  .roadmap-timeline-board{display:flex;overflow-x:auto}
  .roadmap-horizon-column{flex:0 0 84vw}
}


/* =========================================================
   Interactive Roadmap Builder
   ========================================================= */
.roadmap-initiative-card[draggable="true"]{cursor:grab}
.roadmap-initiative-card.is-dragging{
  opacity:.48!important;
  transform:rotate(1deg) scale(.99);
  cursor:grabbing
}
.roadmap-initiative-stack.is-drag-over{
  outline:2px dashed var(--cc-blue);
  outline-offset:-5px;
  background:#EAF2FF
}
.roadmap-drag-handle{
  display:inline-grid!important;
  place-items:center;
  width:22px;height:22px;
  margin-right:auto;
  border:1px solid #D3DCE9;
  border-radius:6px;
  background:#F8FAFD;
  color:#607493;
  cursor:grab
}
.roadmap-drag-handle svg{width:14px;height:14px;fill:currentColor}
.roadmap-card-title{
  display:block;
  font-size:10px;
  line-height:1.35;
  font-weight:800;
  color:#33445E;
  text-decoration:none
}
.roadmap-card-title:hover{color:var(--cc-blue)}
.roadmap-inline-edit{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin-top:9px;
  padding:8px;
  border-radius:8px;
  background:#F6F8FC
}
.roadmap-inline-edit label{display:grid;gap:4px;margin:0}
.roadmap-inline-edit label>span{font-size:7px;font-weight:800;color:#66758B}
.roadmap-inline-edit select{
  width:100%;
  min-height:28px;
  padding:4px 7px;
  border:1px solid #CFD8E6;
  border-radius:6px;
  background:#fff;
  font-size:8px;
  color:#3E4E66
}
.roadmap-progress-input{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px}
.roadmap-progress-input input{width:100%;margin:0}
.roadmap-progress-input output{min-width:30px;font-size:8px;font-weight:800;color:var(--cc-blue);text-align:right}
.roadmap-card-actions{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding-top:7px;
  border-top:1px solid #E4EAF2
}
.roadmap-card-actions>a{font-size:7px;font-weight:900;color:var(--cc-blue);text-decoration:none}
.roadmap-save-state{font-size:7px;color:#2D7442}
.roadmap-save-state.saving{color:#8A6815}
.roadmap-save-state.error{color:#AF3838}
.roadmap-toast{
  position:fixed;
  z-index:9999;
  right:22px;
  bottom:22px;
  min-width:230px;
  max-width:360px;
  padding:11px 13px;
  border-radius:9px;
  background:#173253;
  color:#fff;
  font-size:9px;
  box-shadow:0 14px 34px rgba(16,38,70,.25)
}
.roadmap-toast.error{background:#9E3636}
@media(max-width:700px){
  .roadmap-toast{left:16px;right:16px;bottom:16px;max-width:none}
}


/* =========================================================
   Roadmap View Preference
   ========================================================= */
.roadmap-view-actions{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.roadmap-view-toggle{
  display:inline-flex;
  align-items:center;
  padding:3px;
  border:1px solid #CCD6E4;
  border-radius:8px;
  background:#EEF3F9
}
.roadmap-view-toggle a{
  min-height:27px;
  padding:7px 10px;
  border-radius:6px;
  color:#5C6D84;
  font-size:8px;
  font-weight:800;
  text-decoration:none
}
.roadmap-view-toggle a.active{
  background:#fff;
  color:var(--cc-blue);
  box-shadow:0 2px 7px rgba(31,55,92,.12)
}

/* =========================================================
   Printable Cybersecurity Strategy Detail
   ========================================================= */
.strategy-detail-report{display:grid;gap:14px}
.strategy-detail-hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:18px;
  padding:22px 24px;border-radius:14px;background:linear-gradient(135deg,#092E78,#0C5BC8);color:#fff
}
.strategy-detail-hero>div:first-child{max-width:850px}
.strategy-detail-hero>div:first-child>span{font-size:8px;font-weight:900;letter-spacing:.12em;color:#E6CB68}
.strategy-detail-hero h1{margin:7px 0 8px;font-size:27px;line-height:1.2;color:#fff}
.strategy-detail-hero p{margin:0;font-size:10px;line-height:1.6;color:rgba(255,255,255,.8)}
.strategy-detail-status{display:grid;justify-items:end;gap:7px;min-width:150px}
.strategy-detail-status small{font-size:8px;color:rgba(255,255,255,.75)}
.strategy-executive-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;
  padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:#fff
}
.strategy-executive-strip span,.strategy-executive-strip strong{display:block}
.strategy-executive-strip span{font-size:8px;color:var(--cc-muted)}
.strategy-executive-strip strong{margin-top:4px;font-size:10px;line-height:1.4;color:#34445D}
.strategy-detail-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.strategy-detail-kpis article{padding:13px;border:1px solid var(--cc-line);border-radius:10px;background:#fff}
.strategy-detail-kpis span,.strategy-detail-kpis small{display:block}
.strategy-detail-kpis span{font-size:8px;font-weight:800;color:#5C6C84}
.strategy-detail-kpis strong{display:block;margin:6px 0 3px;font-size:23px;color:var(--cc-blue)}
.strategy-detail-kpis small{font-size:8px;color:var(--cc-muted)}
.strategy-detail-section{
  padding:17px 18px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;
  break-inside:avoid
}
.strategy-detail-section>header{
  display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--cc-line)
}
.strategy-detail-section>header>span{
  display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:#EAF1FC;
  font-size:8px;font-weight:900;color:var(--cc-blue)
}
.strategy-detail-section h2{margin:0;font-size:15px;color:var(--cc-blue)}
.strategy-detail-section header p{margin:3px 0 0;font-size:8px;color:var(--cc-muted)}
.strategy-narrative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.strategy-narrative-grid.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}
.strategy-narrative-grid article{padding:12px;border-radius:9px;background:#F7F9FC}
.strategy-narrative-grid h3{margin:0 0 6px;font-size:10px;color:#34445D}
.strategy-narrative-grid p{margin:0;font-size:9px;line-height:1.6;color:#5B6980}
.strategy-maturity-path{
  display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:13px;
  margin-top:12px;padding:12px;border-radius:9px;background:#F7F9FC
}
.strategy-maturity-path span,.strategy-maturity-path strong{display:block;text-align:center}
.strategy-maturity-path span{font-size:7px;color:#748197}
.strategy-maturity-path strong{margin-top:3px;font-size:18px;color:var(--cc-blue)}
.strategy-maturity-path i{height:7px;border-radius:99px;background:#DEE6F1;overflow:hidden}
.strategy-maturity-path u{display:block;height:100%;background:var(--cc-blue)}
.strategy-roadmap-periods{display:grid;gap:11px}
.strategy-roadmap-periods>section{
  border:1px solid #D7DFEA;border-radius:10px;overflow:hidden;break-inside:avoid
}
.strategy-roadmap-periods>section>header{
  display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#F1F5FA
}
.strategy-roadmap-periods>section>header strong{font-size:10px;color:var(--cc-blue)}
.strategy-roadmap-periods>section>header span{font-size:8px;color:#718096}
.strategy-roadmap-periods>section>div{display:grid;gap:8px;padding:9px}
.strategy-roadmap-periods article{
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,1fr);gap:12px;
  padding:11px;border:1px solid #E0E6EF;border-radius:8px;background:#fff
}
.strategy-roadmap-periods article>div>span{font-size:7px;font-weight:900;color:var(--cc-blue)}
.strategy-roadmap-periods h3{margin:4px 0;font-size:10px;color:#34445D}
.strategy-roadmap-periods p{margin:0;font-size:8px;line-height:1.45;color:#6A778B}
.strategy-roadmap-periods dl{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0
}
.strategy-roadmap-periods dl div{min-width:0}
.strategy-roadmap-periods dt{font-size:7px;color:#7A8799}
.strategy-roadmap-periods dd{margin:3px 0 0;font-size:8px;font-weight:700;color:#425169}
.strategy-approval-summary>div{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:14px}
.strategy-approval-summary>div>p{margin:0;font-size:9px;line-height:1.65;color:#536078}
.strategy-approval-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.strategy-approval-summary dl div{padding:9px;border-radius:8px;background:#F7F9FC}
.strategy-approval-summary dt{font-size:7px;color:#7A8799}
.strategy-approval-summary dd{margin:3px 0 0;font-size:8px;font-weight:800;color:#425169}

@media(max-width:1000px){
  .strategy-executive-strip,.strategy-detail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .strategy-narrative-grid,.strategy-narrative-grid.two-column{grid-template-columns:1fr}
  .strategy-roadmap-periods article{grid-template-columns:1fr}
}
@media(max-width:650px){
  .strategy-detail-hero{flex-direction:column}
  .strategy-detail-status{justify-items:start}
  .strategy-executive-strip,.strategy-detail-kpis{grid-template-columns:1fr}
  .strategy-approval-summary>div{grid-template-columns:1fr}
  .strategy-roadmap-periods dl{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media print{
  .strategy-detail-report{gap:9mm!important}
  .strategy-detail-hero{
    background:#fff!important;color:#000!important;border:1px solid #AEB8C5!important;box-shadow:none!important
  }
  .strategy-detail-hero h1,.strategy-detail-hero p,.strategy-detail-hero>div:first-child>span,
  .strategy-detail-status small{color:#000!important}
  .strategy-detail-section,.strategy-executive-strip,.strategy-detail-kpis article{
    box-shadow:none!important;border-color:#B8C1CC!important
  }
  .strategy-detail-section{break-inside:avoid-page!important}
  .strategy-roadmap-periods>section{break-inside:avoid-page!important}
  .strategy-roadmap-periods article{break-inside:avoid!important}
}


/* =========================================================
   Executive Command Center
   ========================================================= */
.executive-command-center,
.executive-command-center *{box-sizing:border-box}
.executive-command-center{display:grid;gap:16px;min-width:0}
.ecc-hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:20px;
  padding:25px;border-radius:16px;background:linear-gradient(135deg,#092E78,#0D58C7);
  color:#fff;box-shadow:0 14px 34px rgba(13,55,120,.18)
}
.ecc-hero>div:first-child{max-width:780px}
.ecc-hero span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#E2C766}
.ecc-hero h1{margin:7px 0 8px;font-size:29px;line-height:1.15;color:#fff}
.ecc-hero p{margin:0;font-size:11px;line-height:1.55;color:rgba(255,255,255,.78)}
.ecc-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.ecc-hero-actions a{white-space:nowrap}
.ecc-status-banner{
  display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,2fr);gap:14px;
  padding:17px 19px;border:1px solid var(--cc-line);border-radius:13px;background:#fff
}
.ecc-status-banner.attention{border-left:5px solid #C64A42}
.ecc-status-banner.stable{border-left:5px solid #2D7442}
.ecc-status-banner>div:first-child span,
.ecc-panel header span{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:#687894}
.ecc-status-banner>div:first-child strong{display:block;margin:5px 0;font-size:20px;color:var(--cc-blue)}
.ecc-status-banner>div:first-child small{font-size:9px;color:var(--cc-muted)}
.ecc-status-signals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ecc-status-signals article{padding:11px;border-radius:9px;background:var(--cc-surface-2)}
.ecc-status-signals span{display:block;font-size:8px;color:var(--cc-muted)}
.ecc-status-signals strong{display:block;margin-top:5px;font-size:20px;color:var(--cc-blue)}
.ecc-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.ecc-kpi-grid>a{
  min-width:0;padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:#fff;
  color:inherit;text-decoration:none;box-shadow:0 5px 16px rgba(31,55,92,.04)
}
.ecc-kpi-grid>a:hover{border-color:#B8C8E2;transform:translateY(-1px)}
.ecc-kpi-grid span,.ecc-kpi-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ecc-kpi-grid span{font-size:9px;font-weight:800;color:#51627D}
.ecc-kpi-grid strong{display:block;margin:7px 0 4px;font-size:25px;line-height:1;color:var(--cc-blue)}
.ecc-kpi-grid small{font-size:8px;color:var(--cc-muted)}
.ecc-main-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}
.ecc-secondary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ecc-panel{min-width:0;padding:17px;border:1px solid var(--cc-line);border-radius:12px;background:#fff}
.ecc-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px}
.ecc-panel h2{margin:4px 0 0;font-size:15px;color:var(--cc-blue)}
.ecc-panel header>a{font-size:9px;font-weight:800;color:var(--cc-blue);text-decoration:none}
.ecc-action-list,.ecc-risk-list{display:grid;gap:7px}
.ecc-action-list>a,.ecc-risk-list>a{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:10px;border:1px solid var(--cc-line);border-radius:8px;color:inherit;text-decoration:none
}
.ecc-action-list>a>span,.ecc-risk-list>a>span{
  display:grid;place-items:center;min-width:31px;height:27px;padding:0 7px;border-radius:7px;
  background:#EAF0FA;font-size:8px;font-weight:900;color:var(--cc-blue)
}
.ecc-action-list strong,.ecc-risk-list strong{display:block;font-size:10px;color:#34445D}
.ecc-action-list small,.ecc-risk-list small{display:block;margin-top:2px;font-size:8px;color:var(--cc-muted)}
.ecc-action-list time{font-size:8px;color:#6B7890;white-space:nowrap}
.ecc-risk-list b{font-size:15px;color:var(--cc-blue)}
.ecc-rag{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ecc-rag>a{padding:14px;border-radius:9px;text-align:center;text-decoration:none}
.ecc-rag strong,.ecc-rag span{display:block}
.ecc-rag strong{font-size:22px}.ecc-rag span{margin-top:3px;font-size:8px;font-weight:800}
.ecc-rag .red{background:#FCEBEC;color:#A63636}
.ecc-rag .amber{background:#FFF5D9;color:#99700A}
.ecc-rag .green{background:#EAF6EE;color:#2D7442}
.ecc-external-score{display:flex;align-items:center;gap:14px}
.ecc-external-score>strong{font-size:43px;line-height:1;color:var(--cc-blue)}
.ecc-external-score b,.ecc-external-score span{display:block}
.ecc-external-score b{font-size:12px;color:#33445D}
.ecc-external-score span{margin-top:4px;font-size:9px;color:var(--cc-muted)}
.ecc-delivery{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ecc-delivery article{padding:11px;border-radius:9px;background:var(--cc-surface-2)}
.ecc-delivery span,.ecc-delivery small{display:block;font-size:8px;color:var(--cc-muted)}
.ecc-delivery strong{display:block;margin:5px 0;font-size:19px;color:var(--cc-blue)}
.ecc-quick-links>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.ecc-quick-links a{padding:11px;border:1px solid var(--cc-line);border-radius:9px;color:inherit;text-decoration:none}
.ecc-quick-links strong,.ecc-quick-links span{display:block}
.ecc-quick-links strong{font-size:10px;color:var(--cc-blue)}
.ecc-quick-links span{margin-top:3px;font-size:8px;line-height:1.4;color:var(--cc-muted)}
.executive-command-menu .menu-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
@media(max-width:1200px){
  .ecc-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ecc-quick-links>div{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .ecc-hero{flex-direction:column}
  .ecc-status-banner,.ecc-main-grid,.ecc-secondary-grid{grid-template-columns:1fr}
  .ecc-status-signals{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .ecc-kpi-grid,.ecc-quick-links>div{grid-template-columns:1fr}
  .ecc-status-signals{grid-template-columns:1fr 1fr}
  .ecc-action-list>a,.ecc-risk-list>a{grid-template-columns:auto minmax(0,1fr)}
  .ecc-action-list time,.ecc-risk-list b{grid-column:2}
}


/* =========================================================
   Jira-Inspired Roadmap Board — readable typography
   ========================================================= */
.strategy-roadmap-builder{
  --jira-bg:#F4F5F7;
  --jira-column:#EBECF0;
  --jira-border:#DFE1E6;
  --jira-text:#172B4D;
  --jira-muted:#5E6C84;
  --jira-blue:#0C66E4;
}
.strategy-roadmap-builder .roadmap-builder-nav{
  background:#fff!important;
  border-color:var(--jira-border)!important;
  border-radius:10px!important;
}
.strategy-roadmap-builder .roadmap-builder-nav span{font-size:11px!important}
.strategy-roadmap-builder .roadmap-builder-nav h3{font-size:21px!important;line-height:1.25!important}
.strategy-roadmap-builder .roadmap-builder-nav p{font-size:13px!important;line-height:1.55!important}
.strategy-roadmap-builder .roadmap-builder-summary span{font-size:12px!important}
.strategy-roadmap-builder .roadmap-builder-summary strong{font-size:29px!important}
.strategy-roadmap-builder .roadmap-builder-summary small{font-size:11px!important}
.strategy-roadmap-builder .roadmap-timeline-board{
  gap:12px!important;
  padding:10px!important;
  border-radius:10px!important;
  background:var(--jira-bg)!important;
}
.strategy-roadmap-builder .roadmap-horizon-column{
  min-width:290px!important;
  border:0!important;
  border-radius:10px!important;
  background:var(--jira-column)!important;
  box-shadow:none!important;
}
.strategy-roadmap-builder .roadmap-horizon-column>header{
  padding:14px 14px 12px!important;
  background:transparent!important;
  border-bottom:0!important;
}
.strategy-roadmap-builder .roadmap-horizon-column>header span{
  font-size:13px!important;
  color:var(--jira-text)!important;
  letter-spacing:0!important;
}
.strategy-roadmap-builder .roadmap-horizon-column>header strong{
  margin-top:5px!important;
  font-size:12px!important;
  color:var(--jira-muted)!important;
}
.strategy-roadmap-builder .roadmap-horizon-column>header small{
  margin-top:4px!important;
  font-size:11px!important;
}
.strategy-roadmap-builder .roadmap-initiative-stack{
  gap:10px!important;
  min-height:220px!important;
  padding:8px!important;
}
.strategy-roadmap-builder .roadmap-initiative-card{
  padding:13px!important;
  border:1px solid var(--jira-border)!important;
  border-left:1px solid var(--jira-border)!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(9,30,66,.25)!important;
  cursor:grab!important;
}
.strategy-roadmap-builder .roadmap-initiative-card:hover{
  box-shadow:0 3px 7px rgba(9,30,66,.2)!important;
  transform:translateY(-1px);
}
.strategy-roadmap-builder .roadmap-initiative-card.status-at_risk{border-left:4px solid #E2B203!important}
.strategy-roadmap-builder .roadmap-initiative-card.status-blocked{border-left:4px solid #C9372C!important}
.strategy-roadmap-builder .roadmap-initiative-card.status-completed{border-left:4px solid #22A06B!important}
.strategy-roadmap-builder .roadmap-initiative-card.status-in_progress{border-left:4px solid #0C66E4!important}
.strategy-roadmap-builder .roadmap-card-top{
  display:grid!important;
  grid-template-columns:auto auto 1fr auto!important;
  align-items:center!important;
  gap:7px!important;
}
.strategy-roadmap-builder .roadmap-issue-type{
  display:grid!important;
  place-items:center!important;
  width:23px!important;height:23px!important;
  border-radius:5px!important;
  background:#E9F2FF!important;
  color:var(--jira-blue)!important;
}
.strategy-roadmap-builder .roadmap-issue-type svg{
  width:14px!important;height:14px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important
}
.strategy-roadmap-builder .roadmap-drag-handle{
  width:23px!important;height:23px!important;
  border:0!important;background:transparent!important;
}
.strategy-roadmap-builder .roadmap-card-top>span:not(.roadmap-drag-handle):not(.roadmap-issue-type){
  font-size:11px!important;
  font-weight:700!important;
  color:var(--jira-muted)!important;
}
.strategy-roadmap-builder .roadmap-card-top b{
  padding:4px 7px!important;
  font-size:10px!important;
}
.strategy-roadmap-builder .roadmap-card-title{
  margin-top:9px!important;
  font-size:14px!important;
  line-height:1.4!important;
  color:var(--jira-text)!important;
}
.strategy-roadmap-builder .roadmap-initiative-card>small{
  margin-top:6px!important;
  font-size:11px!important;
}
.strategy-roadmap-builder .roadmap-owner{
  margin-top:10px!important;
  font-size:10px!important;
}
.strategy-roadmap-builder .roadmap-inline-edit{
  margin-top:11px!important;
  padding:10px!important;
  background:#F7F8F9!important;
}
.strategy-roadmap-builder .roadmap-inline-edit label>span{font-size:10px!important}
.strategy-roadmap-builder .roadmap-inline-edit select{
  min-height:34px!important;
  font-size:12px!important;
}
.strategy-roadmap-builder .roadmap-progress-input output,
.strategy-roadmap-builder .roadmap-progress span,
.strategy-roadmap-builder .roadmap-save-state,
.strategy-roadmap-builder .roadmap-card-actions>a{font-size:10px!important}
.strategy-roadmap-builder .roadmap-card-actions{margin-top:10px!important;padding-top:9px!important}
.strategy-roadmap-builder .roadmap-empty{font-size:12px!important}
.roadmap-guidance{
  margin-top:10px;
  border:1px solid var(--jira-border);
  border-radius:7px;
  background:#FAFBFC;
  overflow:hidden
}
.roadmap-guidance summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:9px 10px;
  cursor:pointer;
  list-style:none;
  font-size:11px;
  font-weight:700;
  color:var(--jira-text)
}
.roadmap-guidance summary::-webkit-details-marker{display:none}
.roadmap-guidance summary svg{
  width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;
  transition:transform .18s ease
}
.roadmap-guidance[open] summary svg{transform:rotate(180deg)}
.roadmap-guidance>div{display:grid;gap:8px;padding:0 10px 10px}
.roadmap-guidance section{
  padding:9px;border-radius:6px;background:#fff;border:1px solid #EBECF0
}
.roadmap-guidance section.decision{background:#FFF7D6;border-color:#F5CD47}
.roadmap-guidance h4{margin:0 0 5px;font-size:11px;color:var(--jira-text)}
.roadmap-guidance p{margin:0;font-size:11px;line-height:1.5;color:var(--jira-muted)}
.roadmap-view-toggle a{font-size:11px!important;padding:8px 12px!important}
.strategy-roadmap-guidance{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:9px
}
.strategy-roadmap-guidance section{padding:9px;border-radius:7px;background:#F7F9FC}
.strategy-roadmap-guidance strong{display:block;font-size:8px;color:#34445D}
.strategy-roadmap-guidance p{margin:4px 0 0;font-size:8px;line-height:1.5;color:#657287}

@media(max-width:700px){
  .strategy-roadmap-builder .roadmap-horizon-column{min-width:86vw!important}
  .strategy-roadmap-guidance{grid-template-columns:1fr}
}


/* =========================================================
   Clean Cybersecurity Strategy Detail
   ========================================================= */
.strategy-detail-layout .master-content{
  max-width:1440px;
  margin:0 auto;
}

.strategy-detail-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.strategy-detail-toolbar>div{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.strategy-detail-report{
  gap:18px!important;
}

.strategy-detail-hero{
  padding:32px 34px!important;
  border-radius:16px!important;
}

.strategy-detail-hero h1{
  max-width:980px;
  margin:10px 0 12px!important;
  font-size:34px!important;
  line-height:1.18!important;
  letter-spacing:-.02em;
}

.strategy-detail-hero p{
  max-width:980px;
  font-size:14px!important;
  line-height:1.7!important;
}

.strategy-document-meta{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.2);
}

.strategy-document-meta span{
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  color:rgba(255,255,255,.72)!important;
}

.strategy-detail-status{
  min-width:190px!important;
}

.strategy-detail-status .register-status{
  min-height:29px;
  padding:7px 10px;
  font-size:10px!important;
}

.strategy-detail-status small{
  max-width:190px;
  font-size:10px!important;
  line-height:1.5;
  text-align:right;
}

.strategy-executive-strip{
  gap:12px!important;
  padding:18px!important;
}

.strategy-executive-strip>div{
  padding:12px 14px;
  border-left:3px solid #D7E2F3;
  border-radius:7px;
  background:#F8FAFD;
}

.strategy-executive-strip span{
  font-size:10px!important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.strategy-executive-strip strong{
  margin-top:7px!important;
  font-size:13px!important;
  line-height:1.5!important;
}

.strategy-detail-kpis{
  gap:12px!important;
}

.strategy-detail-kpis article{
  padding:17px!important;
  border-radius:11px!important;
}

.strategy-detail-kpis span{
  font-size:10px!important;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.strategy-detail-kpis strong{
  margin:9px 0 5px!important;
  font-size:30px!important;
}

.strategy-detail-kpis small{
  font-size:10px!important;
  line-height:1.45;
}

.strategy-detail-section{
  padding:24px 26px!important;
  border-radius:13px!important;
}

.strategy-detail-section>header{
  gap:13px!important;
  margin-bottom:18px!important;
  padding-bottom:14px!important;
}

.strategy-detail-section>header>span{
  flex-basis:34px!important;
  height:34px!important;
  border-radius:9px!important;
  font-size:11px!important;
}

.strategy-detail-section h2{
  font-size:19px!important;
  line-height:1.25;
}

.strategy-detail-section header p{
  margin-top:5px!important;
  font-size:11px!important;
  line-height:1.45;
}

.strategy-narrative-grid{
  gap:14px!important;
}

.strategy-narrative-grid article{
  padding:17px!important;
  border:1px solid #E2E8F0;
  background:#FAFBFD!important;
}

.strategy-narrative-grid h3{
  margin-bottom:9px!important;
  font-size:13px!important;
  line-height:1.35;
}

.strategy-narrative-grid p{
  font-size:12px!important;
  line-height:1.75!important;
  color:#4B5B72!important;
}

.strategy-maturity-path{
  margin-top:16px!important;
  padding:17px!important;
}

.strategy-maturity-path span{
  font-size:10px!important;
  font-weight:700;
  text-transform:uppercase;
}

.strategy-maturity-path strong{
  font-size:24px!important;
}

.strategy-roadmap-periods{
  gap:15px!important;
}

.strategy-roadmap-periods>section{
  border-radius:11px!important;
}

.strategy-roadmap-periods>section>header{
  padding:13px 15px!important;
}

.strategy-roadmap-periods>section>header strong{
  font-size:13px!important;
}

.strategy-roadmap-periods>section>header span{
  font-size:10px!important;
}

.strategy-roadmap-periods>section>div{
  gap:10px!important;
  padding:12px!important;
}

.strategy-roadmap-periods article{
  padding:15px!important;
  gap:16px!important;
}

.strategy-roadmap-periods article>div>span{
  font-size:9px!important;
}

.strategy-roadmap-periods h3{
  margin:6px 0!important;
  font-size:13px!important;
}

.strategy-roadmap-periods p{
  font-size:11px!important;
  line-height:1.6!important;
}

.strategy-roadmap-periods dt{
  font-size:9px!important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
}

.strategy-roadmap-periods dd{
  margin-top:5px!important;
  font-size:10px!important;
  line-height:1.4;
}

.strategy-roadmap-guidance{
  gap:10px!important;
  margin-top:12px!important;
}

.strategy-roadmap-guidance section{
  padding:12px!important;
  border:1px solid #E1E7EF;
  background:#F8FAFD!important;
}

.strategy-roadmap-guidance strong{
  font-size:10px!important;
}

.strategy-roadmap-guidance p{
  margin-top:6px!important;
  font-size:10px!important;
  line-height:1.55!important;
}

.strategy-approval-summary>div{
  gap:18px!important;
}

.strategy-approval-summary>div>p{
  font-size:12px!important;
  line-height:1.75!important;
}

.strategy-approval-summary dl{
  gap:10px!important;
}

.strategy-approval-summary dl div{
  padding:12px!important;
}

.strategy-approval-summary dt{
  font-size:9px!important;
}

.strategy-approval-summary dd{
  margin-top:5px!important;
  font-size:10px!important;
}

/* =========================================================
   Universal Detail Print Cleanup
   ========================================================= */
@media print{
  @page{
    size:A4 portrait;
    margin:14mm 13mm 14mm 13mm;
  }

  html,
  body{
    background:#fff!important;
  }

  body{
    margin:0!important;
    padding:0!important;
    font-family:Arial,Helvetica,sans-serif!important;
    color:#111827!important;
  }

  /* Hide every application/header/navigation element */
  .app-sidebar,
  .app-sidebar-backdrop,
  .app-topbar,
  .app-footer,
  .master-sidebar,
  .page-head,
  .detail-print-header,
  .detail-print-footer,
  .detail-page-actions,
  .strategy-detail-toolbar,
  .flash,
  .topbar-status,
  .topbar-action,
  .mobile-menu-toggle,
  nav,
  aside.app-sidebar{
    display:none!important;
  }

  .app-workspace,
  .app-main,
  .master-layout,
  .master-content,
  .premium-detail-content,
  .detail-export-layout{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  .detail-print-mode .master-content{
    margin:0!important;
    padding:0!important;
  }

  /* Strategy is the document; no duplicated header */
  .strategy-detail-report{
    gap:7mm!important;
  }

  .strategy-detail-hero{
    padding:9mm!important;
    border:1px solid #AEB8C5!important;
    border-radius:0!important;
    background:#fff!important;
    color:#111827!important;
    page-break-after:avoid!important;
  }

  .strategy-detail-hero h1{
    margin:3mm 0!important;
    font-size:22pt!important;
    color:#111827!important;
  }

  .strategy-detail-hero p{
    font-size:10pt!important;
    line-height:1.55!important;
    color:#374151!important;
  }

  .strategy-detail-hero>div:first-child>span,
  .strategy-detail-status small,
  .strategy-document-meta span{
    color:#374151!important;
  }

  .strategy-document-meta{
    border-color:#D1D5DB!important;
  }

  .strategy-executive-strip,
  .strategy-detail-kpis{
    gap:3mm!important;
  }

  .strategy-executive-strip>div,
  .strategy-detail-kpis article{
    padding:4mm!important;
    border:1px solid #C8D0DA!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  .strategy-detail-section{
    padding:6mm!important;
    border:1px solid #B8C1CC!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    break-inside:avoid-page!important;
    page-break-inside:avoid!important;
  }

  .strategy-detail-section h2{
    font-size:14pt!important;
  }

  .strategy-narrative-grid article,
  .strategy-roadmap-guidance section,
  .strategy-approval-summary dl div,
  .strategy-maturity-path{
    border:1px solid #D5DAE1!important;
    background:#fff!important;
  }

  .strategy-narrative-grid p,
  .strategy-approval-summary>div>p{
    font-size:9pt!important;
    line-height:1.55!important;
  }

  .strategy-roadmap-periods>section{
    border:1px solid #B8C1CC!important;
    border-radius:0!important;
    break-inside:avoid-page!important;
    page-break-inside:avoid!important;
  }

  .strategy-roadmap-periods>section>header{
    background:#F3F4F6!important;
  }

  .strategy-roadmap-periods article{
    grid-template-columns:1fr!important;
    border:1px solid #D5DAE1!important;
    border-radius:0!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  .strategy-roadmap-periods dl{
    grid-template-columns:repeat(3,1fr)!important;
  }

  a{
    color:inherit!important;
    text-decoration:none!important;
  }
}

@media(max-width:700px){
  .strategy-detail-toolbar{
    align-items:flex-start;
    flex-direction:column;
  }

  .strategy-detail-hero{
    padding:22px!important;
  }

  .strategy-detail-hero h1{
    font-size:27px!important;
  }

  .strategy-detail-hero p{
    font-size:13px!important;
  }
}


/* =========================================================
   Tenant Management
   ========================================================= */
.tenant-management{display:grid;gap:15px;min-width:0}
.tenant-admin-hero{
  display:flex;justify-content:space-between;align-items:flex-start;gap:20px;
  padding:25px;border-radius:15px;background:linear-gradient(135deg,#092E78,#0E5CC9);
  color:#fff;box-shadow:0 14px 34px rgba(13,55,120,.16)
}
.tenant-admin-hero>div:first-child{max-width:820px}
.tenant-admin-hero span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#E2C766}
.tenant-admin-hero h1{margin:7px 0 8px;font-size:28px;color:#fff}
.tenant-admin-hero p{margin:0;font-size:12px;line-height:1.55;color:rgba(255,255,255,.78)}
.tenant-admin-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.tenant-admin-tabs{
  display:flex;gap:4px;overflow-x:auto;padding:4px;border:1px solid var(--cc-line);
  border-radius:10px;background:#EFF3F8
}
.tenant-admin-tabs a{
  flex:0 0 auto;padding:9px 12px;border-radius:7px;color:#5E6C84;
  font-size:11px;font-weight:800;text-decoration:none
}
.tenant-admin-tabs a.active{background:#fff;color:var(--cc-blue);box-shadow:0 2px 7px rgba(31,55,92,.1)}
.tenant-admin-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.tenant-admin-kpis article{padding:14px;border:1px solid var(--cc-line);border-radius:10px;background:#fff}
.tenant-admin-kpis span,.tenant-admin-kpis small{display:block}
.tenant-admin-kpis span{font-size:10px;font-weight:800;color:#596A82}
.tenant-admin-kpis strong{display:block;margin:7px 0 4px;font-size:25px;color:var(--cc-blue)}
.tenant-admin-kpis small{font-size:9px;color:var(--cc-muted)}
.tenant-admin-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tenant-admin-panel{min-width:0;padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:#fff}
.tenant-admin-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.tenant-admin-panel>header span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#6A7890}
.tenant-admin-panel h2{margin:4px 0 0;font-size:16px;color:var(--cc-blue)}
.tenant-admin-panel>header>a{font-size:10px;font-weight:800;color:var(--cc-blue);text-decoration:none}
.tenant-admin-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}
.tenant-admin-summary div{padding:10px;border-radius:8px;background:#F7F9FC}
.tenant-admin-summary dt{font-size:9px;color:#79869A}
.tenant-admin-summary dd{margin:4px 0 0;font-size:11px;font-weight:800;color:#3F5068}
.tenant-policy-list{display:grid;gap:7px}
.tenant-policy-list article{display:flex;justify-content:space-between;gap:10px;padding:10px;border-radius:8px;background:#F7F9FC}
.tenant-policy-list span{font-size:10px;color:#5F6E84}
.tenant-policy-list strong{font-size:10px;color:#3D4D64}
.tenant-policy-list strong.enabled{color:#237A48}
.tenant-policy-list strong.disabled{color:#AD3B3B}
.tenant-admin-recent-users{grid-column:1/-1}
.tenant-admin-recent-users>div{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px;border-top:1px solid #E6EBF2}
.tenant-user-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#E7EEFA;color:var(--cc-blue);font-size:12px;font-weight:900}
.tenant-admin-recent-users strong,.tenant-admin-recent-users small{display:block}
.tenant-admin-recent-users strong{font-size:11px;color:#394A62}
.tenant-admin-recent-users small{margin-top:2px;font-size:9px;color:#7B889B}
.tenant-user-status{display:inline-flex;padding:4px 7px;border-radius:99px;background:#EDF1F6;font-size:8px;font-weight:900;color:#5F6E82}
.tenant-user-status.status-active{background:#E7F6EC;color:#287644}
.tenant-user-status.status-invited{background:#E8F1FD;color:#1767B0}
.tenant-user-status.status-disabled,.tenant-user-status.status-suspended{background:#FBE9E9;color:#A53636}
.tenant-users-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:12px;align-items:start}
.tenant-user-directory>header form{min-width:250px}
.tenant-user-directory input[type=search]{width:100%;min-height:35px;padding:7px 10px;border:1px solid #CBD5E2;border-radius:7px;font-size:11px}
.tenant-user-table-wrap{overflow:auto}
.tenant-user-table{width:100%;border-collapse:collapse;min-width:1000px}
.tenant-user-table th{padding:9px;border-bottom:1px solid #DCE3EC;text-align:left;font-size:9px;color:#738096}
.tenant-user-table td{padding:10px 9px;border-bottom:1px solid #E8EDF3;font-size:10px;color:#4A5A71;vertical-align:middle}
.tenant-user-table td>strong,.tenant-user-table td>small{display:block}
.tenant-user-table td>small{margin-top:2px;color:#8490A1}
.tenant-user-cell{display:flex;align-items:center;gap:9px}
.tenant-user-cell strong,.tenant-user-cell small{display:block}
.tenant-user-cell strong{font-size:10px;color:#33445B}
.tenant-user-cell small{margin-top:2px;font-size:9px;color:#7B889A}
.tenant-user-action{position:relative}
.tenant-user-action summary{cursor:pointer;list-style:none;font-size:9px;font-weight:800;color:var(--cc-blue)}
.tenant-user-action>div{position:absolute;z-index:20;right:0;top:24px;display:grid;min-width:150px;padding:6px;border:1px solid #D2DAE5;border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(25,44,75,.16)}
.tenant-user-action form{margin:0}
.tenant-user-action button{width:100%;padding:7px;border:0;background:transparent;text-align:left;font-size:9px;color:#45556C;cursor:pointer}
.tenant-user-action button:hover{background:#F0F4F9}
.tenant-user-form-panel{position:sticky;top:78px}
.tenant-user-form-panel form,.tenant-settings-form form,.tenant-domain-layout aside form{display:grid;gap:11px}
.tenant-user-form-panel label,.tenant-settings-form label,.tenant-domain-layout aside label{display:grid;gap:5px}
.tenant-user-form-panel label>span,.tenant-settings-form label>span,.tenant-domain-layout aside label>span{font-size:9px;font-weight:800;color:#596A81}
.tenant-user-form-panel input,.tenant-user-form-panel select,.tenant-settings-form input,.tenant-settings-form select,.tenant-settings-form textarea,.tenant-domain-layout aside input,.tenant-domain-layout aside select{width:100%;min-height:36px;padding:8px 9px;border:1px solid #CBD5E2;border-radius:7px;background:#fff;font-size:11px;color:#35465D}
.tenant-settings-form textarea{resize:vertical}
.tenant-user-form-panel label small,.tenant-settings-form label small{font-size:8px;color:#8490A1}
.tenant-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tenant-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:5px}
.tenant-settings-section{display:grid;gap:12px;padding:15px;border:1px solid #E0E6EF;border-radius:10px}
.tenant-settings-section h3{margin:0;font-size:13px;color:#34445D}
.tenant-domain-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:12px;align-items:start}
.tenant-domain-list{display:grid;gap:8px}
.tenant-domain-list article{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border:1px solid #E0E6EF;border-radius:9px}
.tenant-domain-list article>div:first-child strong,.tenant-domain-list article>div:first-child span{display:block}
.tenant-domain-list article>div:first-child strong{font-size:12px;color:#35465E}
.tenant-domain-list article>div:first-child span{margin-top:3px;font-size:9px;color:#7A879A}
.tenant-domain-list article>div:nth-child(2){display:flex;align-items:center;gap:7px}
.tenant-domain-list code{grid-column:1/-1;padding:7px;border-radius:6px;background:#F4F6F9;font-size:9px;color:#526278}
.tenant-domain-status{padding:4px 7px;border-radius:99px;font-size:8px;font-weight:900}
.tenant-domain-status.verified{background:#E7F6EC;color:#287644}
.tenant-domain-status.pending{background:#FFF3D2;color:#936A0A}
.tenant-domain-list button{border:0;background:transparent;font-size:8px;color:#A43C3C;cursor:pointer}
.tenant-checkbox{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}
.tenant-checkbox input{width:auto!important;min-height:auto!important}
.tenant-domain-guidance{margin-top:16px;padding:12px;border-radius:8px;background:#F4F7FB}
.tenant-domain-guidance h3{margin:0 0 5px;font-size:11px;color:#35465D}
.tenant-domain-guidance p{margin:0;font-size:9px;line-height:1.5;color:#67768A}
.tenant-security-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.tenant-security-options label{display:grid!important;grid-template-columns:auto 1fr!important;align-items:start!important;gap:9px!important;padding:12px;border:1px solid #E0E6EF;border-radius:9px}
.tenant-security-options input{width:auto!important;min-height:auto!important;margin-top:3px}
.tenant-security-options strong,.tenant-security-options span{display:block}
.tenant-security-options strong{font-size:11px;color:#35465D}
.tenant-security-options span{margin-top:3px;font-size:9px;line-height:1.4;color:#758297}
.tenant-activity-list{display:grid}
.tenant-activity-list article{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:11px;border-bottom:1px solid #E5EAF1}
.tenant-activity-list article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#E8EFFA;font-size:10px;font-weight:900;color:var(--cc-blue)}
.tenant-activity-list strong,.tenant-activity-list p,.tenant-activity-list small{display:block;margin:0}
.tenant-activity-list strong{font-size:10px;color:#34445B}
.tenant-activity-list p{margin-top:2px;font-size:10px;color:#586980}
.tenant-activity-list small{margin-top:2px;font-size:8px;color:#8490A1}
.tenant-activity-list time{font-size:8px;color:#7E8999}
.tenant-topbar-settings{display:inline-flex!important;align-items:center;gap:5px}
.tenant-topbar-settings svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
.tenant-settings-menu .menu-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.6!important}
@media(max-width:1200px){
  .tenant-admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tenant-users-layout,.tenant-domain-layout{grid-template-columns:1fr}
  .tenant-user-form-panel{position:static}
}
@media(max-width:800px){
  .tenant-admin-hero{flex-direction:column}
  .tenant-admin-overview-grid{grid-template-columns:1fr}
  .tenant-admin-recent-users{grid-column:auto}
  .tenant-form-grid,.tenant-security-options{grid-template-columns:1fr}
}
@media(max-width:560px){
  .tenant-admin-kpis{grid-template-columns:1fr 1fr}
  .tenant-admin-summary{grid-template-columns:1fr}
}


/* =========================================================
   Tenant Management Enterprise Sectional Settings
   ========================================================= */
.tenant-admin-panel>header p{
  margin:5px 0 0;
  max-width:760px;
  font-size:10px;
  line-height:1.5;
  color:#748197
}
.tenant-security-layout{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:12px;
  align-items:start
}
.tenant-brand-preview{
  margin-top:4px;
  padding:12px;
  border:1px dashed #C8D3E1;
  border-radius:9px;
  background:#F6F8FB
}
.tenant-brand-preview>div{
  padding:18px;
  border-radius:9px;
  background:linear-gradient(
    135deg,
    var(--tenant-primary),
    color-mix(in srgb,var(--tenant-primary) 80%,#fff)
  );
  color:#fff;
  box-shadow:inset 0 -4px 0 var(--tenant-accent)
}
.tenant-brand-preview span,
.tenant-brand-preview strong,
.tenant-brand-preview small{display:block}
.tenant-brand-preview span{
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  color:var(--tenant-accent)
}
.tenant-brand-preview strong{
  margin-top:6px;
  font-size:18px
}
.tenant-brand-preview small{
  margin-top:5px;
  font-size:9px;
  color:rgba(255,255,255,.75)
}
.tenant-form-span-2{grid-column:1/-1}
.tenant-security-setting{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:9px!important;
  align-items:start!important;
  padding:12px;
  border:1px solid #E0E6EF;
  border-radius:9px;
  background:#F9FAFC
}
.tenant-security-setting input{
  width:auto!important;
  min-height:auto!important;
  margin-top:3px
}
.tenant-security-setting strong,
.tenant-security-setting span{display:block}
.tenant-security-setting strong{
  font-size:11px;
  color:#35465D
}
.tenant-security-setting span{
  margin-top:3px;
  font-size:9px;
  line-height:1.45;
  color:#758297
}
@media(max-width:1000px){
  .tenant-security-layout{grid-template-columns:1fr}
}


/* =========================================================
   Authenticator MFA
   ========================================================= */
.mfa-settings-page{display:grid;gap:15px;max-width:1180px;margin:0 auto}
.mfa-settings-hero{display:flex;justify-content:space-between;gap:20px;padding:25px;border-radius:15px;background:linear-gradient(135deg,#092E78,#0E5CC9);color:#fff}
.mfa-settings-hero span:first-child{font-size:9px;font-weight:900;letter-spacing:.12em;color:#E2C766}
.mfa-settings-hero h1{margin:7px 0;font-size:28px;color:#fff}
.mfa-settings-hero p{margin:0;font-size:12px;color:rgba(255,255,255,.78)}
.mfa-state{align-self:flex-start;padding:7px 10px;border-radius:999px;font-size:9px;font-weight:900}
.mfa-state.enabled{background:#E7F6EC;color:#287644}
.mfa-state.disabled{background:#FFF3D2;color:#936A0A}
.mfa-panel,.mfa-recovery-panel{padding:20px;border:1px solid var(--cc-line);border-radius:12px;background:#fff}
.mfa-panel h2,.mfa-recovery-panel h2{margin:0 0 8px;font-size:17px;color:var(--cc-blue)}
.mfa-panel p,.mfa-panel li,.mfa-recovery-panel p{font-size:11px;line-height:1.6;color:#66758A}
.mfa-enrollment-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}
.mfa-panel label{display:grid;gap:5px;margin-top:12px;font-size:10px;font-weight:800;color:#51627A}
.mfa-panel input,.mfa-panel textarea{width:100%;padding:9px;border:1px solid #CBD5E2;border-radius:7px;font-size:12px}
.mfa-secret{display:flex;align-items:center;gap:7px;padding:10px;border:1px solid #CAD4E1;border-radius:8px;background:#F5F7FA}
.mfa-secret code{flex:1;overflow-wrap:anywhere;font-size:15px;letter-spacing:.08em;color:#223B63}
.mfa-secret button{border:0;background:transparent;font-size:10px;font-weight:800;color:var(--cc-blue);cursor:pointer}
.mfa-uri{margin-top:12px}.mfa-uri summary{cursor:pointer;font-size:10px;font-weight:800;color:var(--cc-blue)}
.mfa-uri textarea{min-height:90px;margin-top:8px;font-size:9px}
.mfa-qr-note{margin-top:13px;padding:12px;border-radius:8px;background:#F0F5FC}
.mfa-qr-note strong{font-size:11px;color:#34455E}
.mfa-code-form{display:grid;gap:10px}
.mfa-code-form input{font-size:25px!important;letter-spacing:.25em;text-align:center}
.mfa-recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:13px 0}
.mfa-recovery-codes code{padding:9px;border:1px solid #D8E0EA;border-radius:7px;background:#F7F9FC;font-size:12px;text-align:center}
.mfa-status-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.mfa-status-list div{padding:11px;border-radius:8px;background:#F7F9FC}
.mfa-status-list dt{font-size:9px;color:#7B8899}.mfa-status-list dd{margin:4px 0 0;font-size:11px;font-weight:800;color:#3E4E66}
.mfa-disable-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:15px}
.mfa-challenge-card{max-width:440px}
.mfa-challenge-icon{display:inline-flex;padding:7px 10px;border-radius:8px;background:#E7EEFA;color:#0B4AA2;font-size:10px;font-weight:900}
@media(max-width:800px){.mfa-enrollment-grid{grid-template-columns:1fr}.mfa-settings-hero{flex-direction:column}.mfa-status-list{grid-template-columns:1fr}.mfa-disable-form{grid-template-columns:1fr}}
@media print{.mfa-settings-hero,.mfa-panel{display:none!important}.mfa-recovery-panel{border:0!important}.mfa-recovery-panel button{display:none!important}}


/* =========================================================
   Local QR Authenticator Enrollment
   ========================================================= */
.mfa-qr-enrollment{
  display:grid;
  place-items:center;
  width:min(100%,310px);
  min-height:286px;
  margin:16px auto 12px;
  padding:13px;
  border:1px solid #CFD8E5;
  border-radius:13px;
  background:#fff;
  box-shadow:0 8px 24px rgba(32,54,86,.09);
}

.mfa-enrollment-qr-svg{
  display:block;
  width:min(260px,100%);
  height:auto;
  border-radius:7px;
}

.mfa-qr-loading,
.mfa-qr-error{
  padding:18px;
  font-size:11px;
  line-height:1.55;
  text-align:center;
  color:#66758A;
}

.mfa-qr-error{
  color:#A23A3A;
  background:#FCEBEB;
  border-radius:8px;
}

.mfa-qr-security-note{
  display:grid;
  gap:4px;
  margin-top:11px;
  padding:11px 12px;
  border:1px solid #CDE0D4;
  border-radius:8px;
  background:#EEF8F1;
}

.mfa-qr-security-note strong{
  font-size:10px;
  color:#25683E;
}

.mfa-qr-security-note p{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:#4E705B;
}

.mfa-manual-setup{
  margin-top:12px;
  border:1px solid #D8E0EA;
  border-radius:9px;
  background:#FAFBFD;
}

.mfa-manual-setup>summary{
  padding:11px 12px;
  cursor:pointer;
  font-size:10px;
  font-weight:800;
  color:var(--cc-blue);
}

.mfa-manual-setup>div{
  padding:0 12px 12px;
}

@media(max-width:600px){
  .mfa-qr-enrollment{
    min-height:250px;
    padding:10px;
  }

  .mfa-enrollment-qr-svg{
    width:min(230px,100%);
  }
}

@media print{
  .mfa-qr-enrollment,
  .mfa-qr-security-note,
  .mfa-manual-setup{
    display:none!important;
  }
}


/* Tenant user MFA enrollment status */
.tenant-mfa-status{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 8px;
  border-radius:999px;
  font-size:9px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}

.tenant-mfa-status i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
}

.tenant-mfa-status.active{
  background:#E7F6EC;
  color:#287644;
}

.tenant-mfa-status.pending{
  background:#FFF3D2;
  color:#936A0A;
}

.tenant-mfa-status.inactive{
  background:#EDF1F6;
  color:#68758A;
}

.tenant-mfa-detail{
  display:block;
  margin-top:5px;
  max-width:150px;
  font-size:8px;
  line-height:1.35;
  color:#7A8799;
}

.tenant-user-table{
  min-width:1120px!important;
}


/* =========================================================
   Comprehensive Risk Assessment
   ========================================================= */
.ra-page,.sp-page{display:grid;gap:14px}
.ra-hero,.sp-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px;border-radius:14px;background:linear-gradient(135deg,#092d72,#0b61c9);color:#fff}
.ra-hero.compact{padding:19px 22px}
.ra-hero span,.sp-hero span,.ra-panel-head span,.sp-panel-head span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#d9bb59}
.ra-hero h1,.sp-hero h1{margin:6px 0 5px;font-size:25px;color:#fff}
.ra-hero p,.sp-hero p{max-width:760px;margin:0;font-size:10px;line-height:1.55;color:rgba(255,255,255,.78)}
.ra-hero-actions{display:flex;gap:7px}
.ra-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.ra-kpis article,.ra-detail-kpis article,.sp-score-grid article{padding:13px;border:1px solid #dce3ed;border-radius:10px;background:#fff}
.ra-kpis span,.ra-detail-kpis span,.sp-score-grid article>span{display:block;font-size:8px;font-weight:800;color:#78869a}
.ra-kpis strong,.ra-detail-kpis strong,.sp-score-grid strong{display:block;margin:5px 0 3px;font-size:22px;color:#173962}
.ra-kpis small,.ra-detail-kpis small,.sp-score-grid small{font-size:8px;color:#8995a5}
.ra-kpis .critical{border-top:3px solid #a63232}.ra-kpis .high{border-top:3px solid #db792f}
.ra-panel,.sp-panel{padding:16px;border:1px solid #dce3ed;border-radius:11px;background:#fff}
.ra-panel-head,.sp-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ra-panel-head h2,.sp-panel-head h2{margin:3px 0 0;font-size:15px;color:#173962}
.ra-filter-grid{display:grid;grid-template-columns:2fr repeat(4,1fr) auto auto;gap:7px;align-items:end}
.ra-filter-grid label,.ra-form-grid label,.ra-score-grid label,.sp-snapshot-form label{display:grid;gap:4px}
.ra-filter-grid label span,.ra-form-grid label span,.ra-score-grid label span,.sp-snapshot-form label span{font-size:8px;font-weight:800;color:#617188}
.ra-filter-grid input,.ra-filter-grid select,.ra-form-grid input,.ra-form-grid select,.ra-form-grid textarea,.ra-score-grid select,.ra-status-form select,.sp-snapshot-form input,.sp-snapshot-form textarea{width:100%;padding:8px;border:1px solid #ccd6e3;border-radius:7px;background:#fff;font:inherit;font-size:10px;color:#34465f}
.ra-clear-filter{padding:8px;font-size:9px;color:#60728c}
.ra-table-wrap{overflow:auto}.ra-table{width:100%;min-width:1280px;border-collapse:collapse}.ra-table th{padding:8px;border-bottom:1px solid #dce3ed;font-size:8px;text-align:left;color:#708097}.ra-table td{padding:10px 8px;border-bottom:1px solid #edf0f5;vertical-align:top;font-size:9px;color:#52637a}.ra-table td a,.ra-table td strong,.ra-table td small{display:block}.ra-table td a{color:#153b6c}.ra-table td a span{display:block;margin-top:3px;max-width:220px}.ra-table td small{margin-top:4px;color:#8a96a6}
.ra-rating,.ra-appetite,.ra-status,.ra-priority{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900}.ra-rating.critical{background:#f9dddd;color:#9a2929}.ra-rating.high{background:#fde7d7;color:#a95318}.ra-rating.medium{background:#fff2c8;color:#8c6907}.ra-rating.low{background:#e3f4e8;color:#267042}.ra-appetite.inside{background:#e3f4e8;color:#267042}.ra-appetite.outside{background:#f9dddd;color:#9a2929}.ra-status{background:#e7eef9;color:#27528a}
.ra-empty{padding:35px;text-align:center;color:#69788d}.ra-empty.compact{padding:18px}.ra-empty strong,.ra-empty p{display:block;margin:0 0 8px}
.ra-assessment-form{display:grid;gap:12px}.ra-section-title{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}.ra-section-title>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#e8eef8;color:#174e96;font-size:9px;font-weight:900}.ra-section-title h2{margin:0;font-size:15px;color:#173962}.ra-section-title p{margin:3px 0 0;font-size:9px;color:#8490a1}
.ra-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.ra-form-grid .span-2{grid-column:span 2}.ra-form-grid .span-3{grid-column:1/-1}.ra-score-grid{display:grid;grid-template-columns:1fr 1fr .7fr;gap:10px;align-items:end}.ra-live-score{padding:10px;border-radius:9px;background:#f3f6fa;text-align:center}.ra-live-score span,.ra-live-score strong,.ra-live-score small{display:block}.ra-live-score span{font-size:8px;color:#7c899a}.ra-live-score strong{font-size:21px;color:#173962}.ra-live-score small{font-size:9px;font-weight:900;color:#b16e1b}.top-gap{margin-top:10px}.ra-form-actions{display:flex;justify-content:flex-end;gap:8px}
.ra-detail-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ra-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.75fr);gap:12px}.ra-detail-grid>div,.ra-detail-grid>aside{display:grid;gap:12px;align-content:start}.ra-description{padding:14px;border-left:3px solid #1a63ad;background:#f5f8fc;font-size:11px;line-height:1.65;color:#42536a}.ra-kv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:11px}.ra-kv-grid div{padding:9px;border-radius:7px;background:#f7f9fc}.ra-kv-grid span,.ra-kv-grid strong{display:block}.ra-kv-grid span{font-size:8px;color:#7f8b9b}.ra-kv-grid strong{margin-top:4px;font-size:9px;color:#34465f}.ra-narrative{margin-top:12px}.ra-narrative h3{margin:0 0 4px;font-size:10px;color:#334a68}.ra-narrative p{margin:0;font-size:10px;line-height:1.6;color:#647389}
.ra-treatment-list{display:grid;gap:7px}.ra-treatment-list article{display:grid;grid-template-columns:1fr .7fr;gap:12px;padding:11px;border:1px solid #e1e7ef;border-radius:8px}.ra-treatment-list h3{margin:5px 0 3px;font-size:11px;color:#334a68}.ra-treatment-list p{margin:0;font-size:9px;color:#718095}.ra-treatment-meta strong,.ra-treatment-meta small{display:block;text-align:right;font-size:9px}.ra-treatment-meta small{margin-top:4px;color:#7b8899}.ra-progress{height:5px;margin-top:8px;border-radius:999px;background:#e4e9f0;overflow:hidden}.ra-progress i{display:block;height:100%;background:#1a64ae}.ra-add-action{margin-top:11px}.ra-add-action summary{cursor:pointer;font-size:9px;font-weight:900;color:#16559d}.ra-status-form{display:grid;gap:7px}.ra-history{display:grid;gap:10px}.ra-history article{display:grid;grid-template-columns:auto 1fr;gap:8px}.ra-history i{width:8px;height:8px;margin-top:3px;border-radius:50%;background:#1764ad}.ra-history strong{font-size:9px;color:#3b4e68}.ra-history p,.ra-history small{margin:2px 0 0;font-size:8px;color:#7b8899}

/* =========================================================
   Security Posture
   ========================================================= */
.sp-score-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:8px}.sp-primary-score{background:linear-gradient(145deg,#102f5e,#0d579f)!important;color:#fff}.sp-primary-score span,.sp-primary-score strong,.sp-primary-score small{color:#fff!important}.sp-primary-score b{display:inline-flex;padding:4px 7px;border-radius:999px;background:#d8bd58;color:#17355c;font-size:9px}.sp-score-grid strong.date{font-size:13px}.sp-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.7fr);gap:12px}.sp-layout>div,.sp-layout>aside{display:grid;gap:12px;align-content:start}.sp-trend{display:flex;align-items:flex-end;gap:8px;height:220px;padding:20px 8px 0;border-bottom:1px solid #dce3ed}.sp-trend>div{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.sp-trend>div>span{position:relative;width:75%;min-height:8px;border-radius:5px 5px 0 0;background:linear-gradient(#2f7cc7,#164d8c)}.sp-trend b{position:absolute;top:-16px;width:100%;font-size:8px;text-align:center;color:#52637a}.sp-trend small{margin-top:5px;font-size:8px;color:#778599}.sp-domain-list{display:grid;gap:7px}.sp-domain-list article{display:grid;grid-template-columns:1fr 1.2fr;gap:12px;align-items:center;padding:10px;border:1px solid #e0e6ee;border-radius:8px}.sp-domain-list strong,.sp-domain-list small{display:block}.sp-domain-list strong{font-size:10px;color:#344a67}.sp-domain-list small{margin-top:3px;font-size:8px;color:#8390a0}.sp-domain-score{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center}.sp-domain-score>span{font-size:13px;font-weight:900;color:#174e8b}.sp-domain-score>div{height:6px;border-radius:999px;background:#e5eaf0;overflow:hidden}.sp-domain-score i{display:block;height:100%;background:#1764ad}.sp-copy{font-size:10px;line-height:1.55;color:#65758a}.sp-links{display:grid;gap:7px}.sp-links a{padding:11px;border:1px solid #dae2ec;border-radius:8px;color:#38516f}.sp-links strong,.sp-links span{display:block}.sp-links strong{font-size:10px}.sp-links span{margin-top:3px;font-size:8px;color:#8490a0}.sp-snapshot-form{display:grid;gap:8px}.sp-two{display:grid;grid-template-columns:1fr 1fr;gap:7px}

@media(max-width:1180px){.ra-kpis{grid-template-columns:repeat(3,1fr)}.ra-filter-grid{grid-template-columns:repeat(3,1fr)}.ra-filter-grid .wide{grid-column:span 2}.sp-score-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.ra-hero,.sp-hero{flex-direction:column}.ra-detail-grid,.sp-layout{grid-template-columns:1fr}.ra-form-grid{grid-template-columns:1fr}.ra-form-grid .span-2,.ra-form-grid .span-3{grid-column:auto}.ra-score-grid{grid-template-columns:1fr}.ra-detail-kpis,.ra-kv-grid{grid-template-columns:repeat(2,1fr)}.sp-score-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.ra-kpis,.ra-filter-grid,.ra-detail-kpis,.ra-kv-grid,.sp-score-grid{grid-template-columns:1fr}.ra-filter-grid .wide{grid-column:auto}.ra-treatment-list article,.sp-domain-list article{grid-template-columns:1fr}.ra-treatment-meta strong,.ra-treatment-meta small{text-align:left}}


/* Risk Assessment → Risk Register alignment */
.risk-process-flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  gap:8px;
  align-items:center;
  padding:13px;
  border:1px solid #dbe3ed;
  border-radius:11px;
  background:#fff;
}
.risk-process-flow article{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.risk-process-flow article>span{
  display:grid;
  place-items:center;
  flex:0 0 28px;
  width:28px;
  height:28px;
  border-radius:50%;
  background:#e7edf6;
  font-size:9px;
  font-weight:900;
  color:#31547f;
}
.risk-process-flow article.active>span{
  background:#135ca8;
  color:#fff;
}
.risk-process-flow strong,
.risk-process-flow small{
  display:block;
}
.risk-process-flow strong{
  font-size:9px;
  color:#344b68;
}
.risk-process-flow small{
  margin-top:2px;
  font-size:8px;
  line-height:1.35;
  color:#8591a1;
}
.risk-process-flow>i{
  width:23px;
  height:1px;
  background:#bfcbd9;
}
.assessment-alignment-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
}
.assessment-alignment-grid article{
  padding:12px;
  border:1px solid #dde5ef;
  border-radius:9px;
  background:#f8fafc;
}
.assessment-alignment-grid span,
.assessment-alignment-grid strong{
  display:block;
}
.assessment-alignment-grid span{
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  color:#1d63a8;
}
.assessment-alignment-grid strong{
  margin-top:5px;
  font-size:10px;
  color:#344b68;
}
.assessment-alignment-grid p{
  margin:5px 0 0;
  font-size:9px;
  line-height:1.55;
  color:#718096;
}
.assessment-stage{
  display:inline-flex;
  padding:4px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
}
.assessment-stage.assessment{
  background:#edf1f6;
  color:#617087;
}
.assessment-stage.registered{
  background:#e3f4e8;
  color:#267042;
}
.risk-register-id{
  display:inline-flex!important;
  margin-top:5px;
  padding:4px 6px;
  border-radius:6px;
  background:#e8eff9;
  font-size:8px!important;
  font-weight:900;
  color:#1b568f!important;
}
.risk-register-hero{
  background:linear-gradient(135deg,#16365f,#0b7167);
}
.risk-register-rule{
  display:flex;
  gap:7px;
  align-items:center;
  padding:10px 12px;
  border:1px solid #cde1d5;
  border-radius:9px;
  background:#eef8f1;
  font-size:9px;
  color:#4d6d59;
}
.risk-register-rule strong{
  color:#27653d;
}
.register-progress{
  width:90px;
  height:5px;
  margin-top:5px;
  overflow:hidden;
  border-radius:999px;
  background:#e3e8ef;
}
.register-progress i{
  display:block;
  height:100%;
  background:#167161;
}
.assessment-promotion-note{
  padding:15px;
  border:1px dashed #d4b66b;
  border-radius:9px;
  background:#fff9e9;
}
.assessment-promotion-note strong{
  display:block;
  font-size:10px;
  color:#7c5b0b;
}
.assessment-promotion-note p{
  margin:5px 0 0;
  font-size:9px;
  line-height:1.5;
  color:#806c3a;
}
.field-note{
  font-size:8px;
  line-height:1.4;
  color:#7d8999;
}
@media(max-width:900px){
  .risk-process-flow{
    grid-template-columns:1fr;
  }
  .risk-process-flow>i{
    width:1px;
    height:13px;
    margin-left:14px;
  }
  .assessment-alignment-grid{
    grid-template-columns:1fr;
  }
}


/* Risk ↔ Issue Register alignment */
.assessment-alignment-grid{
  grid-template-columns:repeat(4,1fr);
}
.risk-issue-guidance{
  margin:-3px 0 12px;
  font-size:9px;
  line-height:1.55;
  color:#728096;
}
.issue-register-shortcut{
  font-size:8px;
  font-weight:900;
  color:#1a5da1;
}
.risk-linked-issue-list{
  display:grid;
  gap:7px;
}
.risk-linked-issue-list article{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:center;
  padding:9px;
  border:1px solid #dfe6ef;
  border-radius:8px;
}
.risk-linked-issue-list article>div{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 7px;
  align-items:center;
}
.risk-linked-issue-list a{
  font-size:9px;
  color:#314b6c;
}
.risk-linked-issue-list a strong{
  margin-right:5px;
  color:#175b9d;
}
.risk-linked-issue-list small{
  grid-column:2;
  font-size:8px;
  color:#7d8999;
}
.issue-severity-pill{
  grid-row:1/3;
  display:inline-flex;
  padding:4px 6px;
  border-radius:999px;
  font-size:7px;
  font-weight:900;
}
.issue-severity-pill.critical{background:#f9dddd;color:#992b2b}
.issue-severity-pill.high{background:#fde7d7;color:#a5531b}
.issue-severity-pill.medium{background:#fff2c8;color:#876708}
.issue-severity-pill.low{background:#e3f4e8;color:#287044}
.link-danger{
  border:0;
  background:transparent;
  font-size:8px;
  font-weight:800;
  color:#a13b3b;
  cursor:pointer;
}
.risk-issue-link-form{
  display:grid;
  gap:7px;
  margin-top:10px;
}
.risk-issue-link-form label{
  display:grid;
  gap:4px;
}
.risk-issue-link-form label span{
  font-size:8px;
  font-weight:800;
  color:#65748a;
}
.risk-issue-link-form select,
.risk-issue-link-form textarea{
  width:100%;
  padding:7px;
  border:1px solid #cdd7e4;
  border-radius:7px;
  font-size:9px;
}
@media(max-width:1100px){
  .assessment-alignment-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  .assessment-alignment-grid{grid-template-columns:1fr}
}


/* =========================================================
   Risk Management Readability & Issue Alignment Recovery
   ========================================================= */
.risk-assessment-page,
.risk-register-page,
.risk-assessment-form-page,
.risk-assessment-detail-page{
  font-size:13px;
  line-height:1.55;
}

.risk-assessment-page .ra-hero h1,
.risk-register-page .ra-hero h1,
.risk-assessment-form-page .ra-hero h1,
.risk-assessment-detail-page .ra-hero h1{
  font-size:30px!important;
  line-height:1.15!important;
}

.risk-assessment-page .ra-hero p,
.risk-register-page .ra-hero p,
.risk-assessment-form-page .ra-hero p,
.risk-assessment-detail-page .ra-hero p{
  font-size:13px!important;
  line-height:1.65!important;
}

.risk-assessment-page .ra-hero span,
.risk-register-page .ra-hero span,
.risk-assessment-form-page .ra-hero span,
.risk-assessment-detail-page .ra-hero span{
  font-size:10px!important;
}

.risk-assessment-page .ra-panel,
.risk-register-page .ra-panel,
.risk-assessment-form-page .ra-panel,
.risk-assessment-detail-page .ra-panel{
  padding:20px!important;
  border-radius:14px!important;
  box-shadow:0 5px 18px rgba(23,57,98,.055);
}

.risk-assessment-page .ra-panel-head h2,
.risk-register-page .ra-panel-head h2,
.risk-assessment-form-page .ra-panel-head h2,
.risk-assessment-detail-page .ra-panel-head h2{
  font-size:19px!important;
  line-height:1.3!important;
}

.risk-assessment-page .ra-panel-head span,
.risk-register-page .ra-panel-head span,
.risk-assessment-form-page .ra-panel-head span,
.risk-assessment-detail-page .ra-panel-head span{
  font-size:9px!important;
}

.risk-assessment-page .ra-kpis article,
.risk-register-page .ra-kpis article,
.risk-assessment-detail-page .ra-detail-kpis article{
  padding:17px!important;
  min-height:112px;
}

.risk-assessment-page .ra-kpis span,
.risk-register-page .ra-kpis span,
.risk-assessment-detail-page .ra-detail-kpis span{
  font-size:10px!important;
}

.risk-assessment-page .ra-kpis strong,
.risk-register-page .ra-kpis strong,
.risk-assessment-detail-page .ra-detail-kpis strong{
  font-size:28px!important;
}

.risk-assessment-page .ra-kpis small,
.risk-register-page .ra-kpis small,
.risk-assessment-detail-page .ra-detail-kpis small{
  font-size:10px!important;
  line-height:1.45;
}

.risk-assessment-page .risk-process-flow strong{
  font-size:12px!important;
}
.risk-assessment-page .risk-process-flow small{
  font-size:10px!important;
}
.risk-assessment-page .assessment-alignment-grid strong{
  font-size:13px!important;
}
.risk-assessment-page .assessment-alignment-grid p{
  font-size:11px!important;
  line-height:1.6!important;
}

.risk-assessment-page .ra-filter-grid label span,
.risk-register-page .ra-filter-grid label span,
.risk-assessment-form-page .ra-form-grid label span,
.risk-assessment-form-page .ra-score-grid label span,
.risk-assessment-detail-page .risk-issue-link-form label span{
  font-size:10px!important;
}

.risk-assessment-page .ra-filter-grid input,
.risk-assessment-page .ra-filter-grid select,
.risk-register-page .ra-filter-grid input,
.risk-register-page .ra-filter-grid select,
.risk-assessment-form-page .ra-form-grid input,
.risk-assessment-form-page .ra-form-grid select,
.risk-assessment-form-page .ra-form-grid textarea,
.risk-assessment-form-page .ra-score-grid select,
.risk-assessment-detail-page .risk-issue-link-form select,
.risk-assessment-detail-page .risk-issue-link-form textarea{
  min-height:40px;
  padding:10px 11px!important;
  font-size:12px!important;
}

.risk-assessment-form-page .ra-section-title h2{
  font-size:18px!important;
}
.risk-assessment-form-page .ra-section-title p{
  font-size:11px!important;
}
.risk-assessment-form-page .field-note{
  font-size:10px!important;
}
.risk-assessment-form-page .ra-live-score strong{
  font-size:28px!important;
}

.risk-assessment-page .ra-table,
.risk-register-page .ra-table{
  min-width:1320px!important;
}
.risk-assessment-page .ra-table th,
.risk-register-page .ra-table th{
  padding:12px 10px!important;
  font-size:10px!important;
  background:#f6f8fb;
}
.risk-assessment-page .ra-table td,
.risk-register-page .ra-table td{
  padding:14px 10px!important;
  font-size:11px!important;
  line-height:1.45!important;
}
.risk-assessment-page .ra-table td strong,
.risk-register-page .ra-table td strong{
  font-size:12px!important;
}
.risk-assessment-page .ra-table td small,
.risk-register-page .ra-table td small{
  font-size:10px!important;
}

.risk-assessment-detail-page .ra-detail-grid{
  grid-template-columns:minmax(0,1.8fr) minmax(320px,.75fr)!important;
  gap:16px!important;
}
.risk-assessment-detail-page .ra-description{
  padding:18px!important;
  font-size:13px!important;
  line-height:1.75!important;
}
.risk-assessment-detail-page .ra-kv-grid div{
  padding:13px!important;
}
.risk-assessment-detail-page .ra-kv-grid span{
  font-size:10px!important;
}
.risk-assessment-detail-page .ra-kv-grid strong{
  font-size:12px!important;
}
.risk-assessment-detail-page .ra-narrative h3{
  font-size:13px!important;
}
.risk-assessment-detail-page .ra-narrative p{
  font-size:12px!important;
  line-height:1.7!important;
}
.risk-assessment-detail-page .ra-treatment-list h3{
  font-size:13px!important;
}
.risk-assessment-detail-page .ra-treatment-list p,
.risk-assessment-detail-page .ra-treatment-meta strong,
.risk-assessment-detail-page .ra-treatment-meta small{
  font-size:10px!important;
}

.risk-assessment-detail-page .risk-issue-panel{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
}
.risk-assessment-detail-page .risk-issue-guidance{
  margin:-2px 0 16px!important;
  font-size:11px!important;
  line-height:1.65!important;
}
.risk-assessment-detail-page .issue-register-shortcut{
  display:inline-flex!important;
  padding:7px 10px;
  border:1px solid #cdd9e8;
  border-radius:8px;
  background:#f7f9fc;
  font-size:10px!important;
}
.risk-assessment-detail-page .risk-linked-issue-list{
  display:grid!important;
  gap:10px!important;
}
.risk-assessment-detail-page .risk-linked-issue-list article{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:13px!important;
  border:1px solid #d9e2ed!important;
  border-radius:10px!important;
  background:#fff!important;
}
.risk-assessment-detail-page .risk-linked-issue-list article>div{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:5px 9px!important;
}
.risk-assessment-detail-page .risk-linked-issue-list a{
  font-size:11px!important;
  line-height:1.45!important;
}
.risk-assessment-detail-page .risk-linked-issue-list small{
  font-size:10px!important;
}
.risk-assessment-detail-page .issue-severity-pill{
  padding:5px 8px!important;
  font-size:8px!important;
}
.risk-assessment-detail-page .link-danger{
  padding:7px 9px;
  border:1px solid #ebcaca!important;
  border-radius:7px;
  background:#fff8f8!important;
  font-size:9px!important;
}

.risk-assessment-detail-page .ra-history strong{
  font-size:11px!important;
}
.risk-assessment-detail-page .ra-history p,
.risk-assessment-detail-page .ra-history small{
  font-size:10px!important;
  line-height:1.5;
}

.risk-assessment-page .primary,
.risk-assessment-page .secondary,
.risk-register-page .primary,
.risk-register-page .secondary,
.risk-assessment-form-page .primary,
.risk-assessment-form-page .secondary,
.risk-assessment-detail-page .primary,
.risk-assessment-detail-page .secondary{
  min-height:39px;
  padding:9px 13px!important;
  font-size:11px!important;
}

@media(max-width:1100px){
  .risk-assessment-detail-page .ra-detail-grid{
    grid-template-columns:1fr!important;
  }
}


/* AI-Assisted Issue Register */
.ai-issue-launch{display:inline-flex;align-items:center;gap:7px;min-height:39px;padding:8px 13px;border:1px solid #b9cce2;border-radius:8px;background:#edf4fc;color:#164f8e;font-size:11px;font-weight:800;cursor:pointer}
.ai-issue-launch span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#d8bb56;color:#173962;font-size:9px;font-weight:900}
.ai-issue-assistant{margin-bottom:14px;padding:20px;border:1px solid #bad0e8;border-radius:14px;background:linear-gradient(135deg,#ebf4fd,#fbfdff);box-shadow:0 10px 28px rgba(23,79,139,.1)}
.ai-issue-assistant[hidden],.ai-issue-assumptions[hidden]{display:none!important}
.ai-issue-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:15px}
.ai-issue-head span,.ai-issue-assumptions>span{font-size:9px;font-weight:900;letter-spacing:.11em;color:#9a7417}
.ai-issue-head h2{margin:4px 0 5px;font-size:20px;color:#173962}
.ai-issue-head p{max-width:760px;margin:0;font-size:11px;line-height:1.6;color:#66768c}
.ai-issue-head>button{width:34px;height:34px;border:1px solid #c8d5e4;border-radius:8px;background:#fff;font-size:20px;color:#60738c;cursor:pointer}
.ai-issue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ai-issue-grid label{display:grid;gap:5px}.ai-issue-grid .wide{grid-column:1/-1}
.ai-issue-grid label span{font-size:10px;font-weight:800;color:#526981}
.ai-issue-grid input,.ai-issue-grid select,.ai-issue-grid textarea{width:100%;min-height:42px;padding:10px 11px;border:1px solid #c6d4e4;border-radius:8px;background:#fff;font:inherit;font-size:12px;color:#344a65}
.ai-issue-safety{display:flex;gap:6px;margin-top:12px;padding:10px 12px;border:1px solid #ead9a6;border-radius:8px;background:#fff9e8;font-size:10px;line-height:1.5;color:#756024}
.ai-issue-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:13px}
.ai-issue-actions>span{margin-right:auto;font-size:10px;color:#65758b}.ai-issue-actions .success{color:#257044}.ai-issue-actions .error{color:#a03838}.ai-issue-actions .working{color:#275e98}
.ai-issue-assumptions{margin:14px 0;padding:16px 18px;border:1px solid #e4d6aa;border-radius:10px;background:#fffbef}
.ai-issue-assumptions h3{margin:4px 0 7px;font-size:15px;color:#173962}.ai-issue-assumptions li{font-size:11px;line-height:1.5;color:#685d42}
@media(max-width:850px){.ai-issue-grid{grid-template-columns:1fr}.ai-issue-grid .wide{grid-column:auto}.ai-issue-actions{align-items:stretch;flex-direction:column}}


/* Issue Register save error */
.issue-save-error{
  display:grid;
  gap:4px;
  margin-bottom:14px;
  padding:13px 15px;
  border:1px solid #efc3c3;
  border-radius:10px;
  background:#fff4f4;
}
.issue-save-error strong{
  font-size:12px;
  color:#932f2f;
}
.issue-save-error span{
  font-size:11px;
  line-height:1.5;
  color:#7a4747;
}


/* =========================================================
   Issue Detail A4 Print + Issue Register Summary
   ========================================================= */
.issue-detail-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.issue-detail-toolbar>div{
  display:flex;
  gap:8px;
}

.issue-summary-dashboard{
  display:grid;
  gap:12px;
  margin-bottom:14px;
}
.issue-summary-primary{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
.issue-summary-primary article{
  min-height:102px;
  padding:15px;
  border:1px solid #dce4ee;
  border-radius:11px;
  background:#fff;
  box-shadow:0 3px 12px rgba(26,61,103,.045);
}
.issue-summary-primary article.critical{
  border-top:3px solid #b93636;
}
.issue-summary-primary article.high{
  border-top:3px solid #dd7b2d;
}
.issue-summary-primary article.overdue{
  border-top:3px solid #9a3c63;
}
.issue-summary-primary span,
.issue-summary-primary strong,
.issue-summary-primary small{
  display:block;
}
.issue-summary-primary span{
  font-size:10px;
  font-weight:800;
  color:#6c7c91;
}
.issue-summary-primary strong{
  margin:7px 0 5px;
  font-size:27px;
  line-height:1;
  color:#173962;
}
.issue-summary-primary small{
  font-size:9px;
  line-height:1.4;
  color:#8995a5;
}
.issue-summary-secondary{
  display:grid;
  grid-template-columns:1.1fr 1.1fr .8fr;
  gap:9px;
}
.issue-summary-secondary>article{
  padding:14px 15px;
  border:1px solid #dce4ee;
  border-radius:11px;
  background:#fff;
}
.issue-summary-secondary header{
  margin-bottom:10px;
  padding-bottom:8px;
  border-bottom:1px solid #e7ebf1;
}
.issue-summary-secondary header span{
  font-size:10px;
  font-weight:900;
  color:#294766;
}
.issue-summary-breakdown{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:7px;
}
.issue-summary-breakdown.two-column{
  grid-template-columns:repeat(2,1fr);
}
.issue-summary-breakdown>div{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:6px;
  align-items:center;
  padding:7px;
  border-radius:7px;
  background:#f6f8fb;
}
.issue-summary-breakdown i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#7590ad;
}
.issue-summary-breakdown i.critical{background:#b93636}
.issue-summary-breakdown i.high{background:#dd7b2d}
.issue-summary-breakdown i.medium{background:#d0a51d}
.issue-summary-breakdown i.low{background:#2f8a55}
.issue-summary-breakdown i.linked{background:#2467a8}
.issue-summary-breakdown i.unlinked{background:#9aa6b5}
.issue-summary-breakdown span{
  font-size:9px;
  color:#65758a;
}
.issue-summary-breakdown strong{
  font-size:11px;
  color:#294766;
}

@media(max-width:1180px){
  .issue-summary-primary{
    grid-template-columns:repeat(3,1fr);
  }
  .issue-summary-secondary{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .issue-summary-primary{
    grid-template-columns:repeat(2,1fr);
  }
  .issue-summary-breakdown{
    grid-template-columns:repeat(2,1fr);
  }
  .issue-detail-toolbar{
    align-items:stretch;
    flex-direction:column;
  }
  .issue-detail-toolbar>div{
    flex-wrap:wrap;
  }
}

/* A4 print/export layout */
@page{
  size:A4 portrait;
  margin:10mm;
}
@media print{
  html,body{
    width:210mm!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    color:#17253a!important;
  }

  .app-sidebar,
  .app-sidebar-backdrop,
  .app-topbar,
  .master-sidebar,
  .page-head,
  .no-print,
  .issue-detail-toolbar,
  .issue-detail-footer{
    display:none!important;
  }

  .app-workspace,
  .app-main,
  .master-layout,
  .master-content,
  .premium-detail-content{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  .issue-detail-clean{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  .issue-detail-header{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:8mm!important;
    margin:0 0 5mm!important;
    padding:0 0 4mm!important;
    border-bottom:1.5px solid #254a74!important;
    background:#fff!important;
    color:#17253a!important;
    break-inside:avoid;
  }

  .issue-detail-header h1{
    margin:2mm 0 1.5mm!important;
    font-size:18pt!important;
    line-height:1.2!important;
    color:#173962!important;
  }

  .issue-detail-header p{
    margin:0!important;
    font-size:8.8pt!important;
    line-height:1.45!important;
    color:#46586e!important;
  }

  .issue-detail-code{
    font-size:8pt!important;
    color:#3b6696!important;
  }

  .issue-detail-overview{
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:2.5mm!important;
    margin-bottom:4mm!important;
    break-inside:avoid;
  }

  .issue-detail-overview>div{
    min-height:0!important;
    padding:2.8mm!important;
    border:1px solid #d4dbe5!important;
    box-shadow:none!important;
    background:#fff!important;
  }

  .issue-detail-overview span,
  .issue-detail-overview small{
    font-size:7pt!important;
  }
  .issue-detail-overview strong{
    margin:1mm 0!important;
    font-size:8.4pt!important;
  }

  .issue-detail-section{
    margin:0 0 4mm!important;
    padding:3.5mm!important;
    border:1px solid #d4dbe5!important;
    border-radius:2mm!important;
    box-shadow:none!important;
    background:#fff!important;
    break-inside:auto;
  }

  .issue-detail-section>header{
    margin-bottom:3mm!important;
    padding-bottom:2mm!important;
    border-bottom:1px solid #dbe1e9!important;
    break-after:avoid;
  }

  .issue-detail-section>header>span{
    width:7mm!important;
    height:7mm!important;
    font-size:7.5pt!important;
  }

  .issue-detail-section h2{
    font-size:11pt!important;
    line-height:1.25!important;
  }

  .issue-detail-section header p{
    font-size:7.5pt!important;
  }

  .issue-detail-list{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:2mm!important;
  }

  .issue-detail-list>div{
    min-height:0!important;
    padding:2.3mm!important;
    break-inside:avoid;
  }

  .issue-detail-list dt{
    font-size:6.8pt!important;
  }
  .issue-detail-list dd{
    margin-top:1mm!important;
    font-size:8pt!important;
    line-height:1.35!important;
    overflow-wrap:anywhere;
  }

  .issue-risk-comparison{
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
    break-inside:avoid;
  }

  .issue-risk-stage,
  .issue-risk-control{
    min-height:0!important;
    padding:2.5mm!important;
    box-shadow:none!important;
  }

  .issue-risk-stage>span,
  .issue-risk-control>span,
  .issue-risk-stage small,
  .issue-risk-control small,
  .issue-risk-stage p{
    font-size:6.8pt!important;
  }

  .issue-risk-stage strong,
  .issue-risk-control strong{
    font-size:14pt!important;
  }

  .issue-detail-action-plan{
    margin-top:3mm!important;
    padding:3mm!important;
    break-inside:avoid;
  }

  .issue-detail-action-plan h3,
  .issue-detail-narrative h3{
    font-size:8.5pt!important;
  }

  .issue-detail-action-plan p,
  .issue-detail-narrative p{
    font-size:7.8pt!important;
    line-height:1.45!important;
  }

  .issue-detail-narrative{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:2.5mm!important;
  }

  .issue-detail-narrative>div{
    padding:2.7mm!important;
    break-inside:avoid;
  }

  a{
    color:inherit!important;
    text-decoration:none!important;
  }
}


/* =========================================================
   Third-Party Risk & SaaS Security Assessment
   ========================================================= */
.vendor-assessment-page{
  display:grid;
  gap:16px;
  min-width:0;
}
.vendor-assessment-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:24px;
  border-radius:15px;
  background:linear-gradient(135deg,#0a36af,#082b86);
  color:#fff;
  box-shadow:0 12px 28px rgba(10,54,175,.16);
}
.vendor-assessment-hero.compact{
  padding:21px 24px;
}
.vendor-assessment-hero span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.11em;
  color:#f0d77a;
}
.vendor-assessment-hero h1{
  margin:5px 0 6px;
  font-size:29px;
  line-height:1.15;
  color:#fff;
}
.vendor-assessment-hero p{
  max-width:850px;
  margin:0;
  font-size:12px;
  line-height:1.6;
  color:rgba(255,255,255,.78);
}
.vendor-assessment-hero .secondary{
  border-color:rgba(255,255,255,.35)!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
}
.vendor-kpis{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
.vendor-kpis article{
  min-height:105px;
  padding:15px;
  border:1px solid var(--cc-line);
  border-radius:11px;
  background:var(--cc-surface);
  box-shadow:0 4px 14px rgba(20,55,96,.045);
}
.vendor-kpis article.critical{border-top:3px solid #b93636}
.vendor-kpis article.high{border-top:3px solid #dd7b2d}
.vendor-kpis span,
.vendor-kpis strong,
.vendor-kpis small{
  display:block;
}
.vendor-kpis span{
  font-size:10px;
  font-weight:800;
  color:var(--cc-muted);
}
.vendor-kpis strong{
  margin:7px 0 5px;
  font-size:28px;
  line-height:1;
  color:var(--cc-blue);
}
.vendor-kpis small{
  font-size:9px;
  line-height:1.4;
  color:var(--cc-muted);
}
.vendor-panel{
  padding:19px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
  box-shadow:0 5px 18px rgba(20,55,96,.045);
}
.vendor-panel-head{
  margin-bottom:13px;
}
.vendor-panel-head span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
  color:var(--cc-gold-700);
}
.vendor-panel-head h2{
  margin:4px 0 0;
  font-size:18px;
  color:var(--cc-blue);
}
.vendor-filter-grid{
  display:grid;
  grid-template-columns:2fr repeat(4,1fr) auto;
  gap:9px;
  align-items:end;
}
.vendor-filter-grid label{
  display:grid;
  gap:5px;
}
.vendor-filter-grid label>span,
.assessment-form-grid label>span,
.assessment-score-grid label>span{
  font-size:10px;
  font-weight:800;
  color:var(--cc-muted);
}
.vendor-filter-grid input,
.vendor-filter-grid select,
.assessment-form-grid input,
.assessment-form-grid select,
.assessment-form-grid textarea,
.assessment-score-grid input{
  width:100%;
  min-height:40px;
  padding:9px 10px;
  border:1px solid var(--cc-line-strong);
  border-radius:8px;
  font-size:11px;
}
.vendor-filter-actions{
  display:flex;
  gap:6px;
}
.vendor-register-scroll{
  overflow-x:auto;
}
.vendor-register-table{
  width:100%;
  min-width:1320px;
  border-collapse:collapse;
}
.vendor-register-table th{
  padding:11px 9px;
  text-align:left;
  font-size:9px;
  letter-spacing:.03em;
}
.vendor-register-table td{
  padding:13px 9px;
  border-bottom:1px solid var(--cc-line);
  vertical-align:top;
  font-size:10px;
}
.vendor-register-table td strong,
.vendor-register-table td small{
  display:block;
}
.vendor-register-table td strong{
  font-size:11px;
}
.vendor-register-table td small{
  margin-top:4px;
  color:var(--cc-muted);
  line-height:1.4;
}
.vendor-name a{
  font-size:11px;
  font-weight:850;
  color:var(--cc-blue);
}
.data-exposure-cell{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:3px 7px;
}
.data-exposure-cell span{
  font-size:8px;
  color:var(--cc-muted);
}
.data-exposure-cell strong{
  font-size:9px!important;
}
.assessment-rating{
  display:inline-flex!important;
  padding:5px 8px;
  border-radius:999px;
  font-size:9px!important;
  font-weight:900;
}
.assessment-rating.critical{background:#f9dddd;color:#992b2b}
.assessment-rating.high{background:#fde7d7;color:#a5531b}
.assessment-rating.medium{background:#fff2c8;color:#876708}
.assessment-rating.low{background:#e3f4e8;color:#287044}
.compact-button{
  min-height:33px!important;
  padding:7px 10px!important;
  font-size:9px!important;
}

.vendor-assessment-form{
  display:grid;
  gap:14px;
}
.assessment-section-title{
  display:flex;
  gap:11px;
  align-items:flex-start;
  margin-bottom:15px;
}
.assessment-section-title>span{
  display:grid;
  place-items:center;
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:9px;
  background:var(--cc-blue-050);
  color:var(--cc-blue);
  font-size:11px;
  font-weight:900;
}
.assessment-section-title h2{
  margin:0 0 3px;
  font-size:18px;
  color:var(--cc-blue);
}
.assessment-section-title p{
  margin:0;
  font-size:10px;
  line-height:1.5;
  color:var(--cc-muted);
}
.assessment-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.assessment-form-grid label{
  display:grid;
  align-content:start;
  gap:5px;
}
.assessment-form-grid .span-2{grid-column:span 2}
.assessment-form-grid .span-3{grid-column:1/-1}
.classification-selector{
  padding:14px;
  border:1px solid #c9d9e9;
  border-radius:10px;
  background:#f5f9fd;
}
.classification-selector.stored{
  border-color:#dfd2a4;
  background:#fffbef;
}
.classification-selector header{
  display:grid;
  gap:3px;
  margin-bottom:10px;
}
.classification-selector header strong{
  font-size:12px;
  color:#234a73;
}
.classification-selector header small{
  font-size:9px;
  color:#6e7e91;
}
.classification-selector>div{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
}
.classification-selector label{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:37px;
  padding:7px 9px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:var(--cc-surface);
}
.classification-selector input{
  width:auto!important;
  min-height:auto!important;
}
.classification-selector label span{
  font-size:9px;
  color:var(--cc-text);
}
.assessment-score-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr) 1.3fr;
  gap:10px;
}
.assessment-score-grid label{
  display:grid;
  gap:5px;
}
.assessment-score-preview{
  padding:13px;
  border:1px solid #d9e2ed;
  border-radius:9px;
  background:var(--cc-surface-2);
}
.assessment-score-preview span,
.assessment-score-preview strong,
.assessment-score-preview small{
  display:block;
}
.assessment-score-preview span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-gold-700);
}
.assessment-score-preview strong{
  margin:4px 0;
  font-size:12px;
  color:var(--cc-blue);
}
.assessment-score-preview small{
  font-size:9px;
  color:var(--cc-muted);
}
.assessment-form-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.assessment-error{
  display:grid;
  gap:4px;
  padding:13px 15px;
  border:1px solid #efc3c3;
  border-radius:10px;
  background:#fff4f4;
}
.assessment-error strong{font-size:12px;color:#932f2f}
.assessment-error span{font-size:11px;color:#7a4747}

.assessment-detail-toolbar{
  display:flex;
  justify-content:space-between;
  gap:10px;
}
.assessment-detail-toolbar>div{
  display:flex;
  gap:7px;
}
.assessment-detail-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:25px;
  align-items:center;
  padding:23px;
  border-radius:14px;
  background:linear-gradient(135deg,#0a36af,#082b86);
  color:#fff;
}
.assessment-detail-hero>div:first-child>span{
  font-size:9px;
  font-weight:900;
  color:#f0d77a;
}
.assessment-detail-hero h1{
  margin:5px 0 7px;
  font-size:28px;
  color:#fff;
}
.assessment-detail-hero p{
  max-width:850px;
  margin:0;
  font-size:11px;
  line-height:1.6;
  color:rgba(255,255,255,.8);
}
.assessment-detail-hero>div:last-child{
  text-align:center;
}
.assessment-detail-hero>div:last-child strong,
.assessment-detail-hero>div:last-child small{
  display:block;
  margin-top:5px;
  color:#fff;
}
.assessment-detail-hero>div:last-child strong{
  font-size:22px;
}
.assessment-detail-hero>div:last-child small{
  font-size:9px;
  color:rgba(255,255,255,.7);
}
.assessment-detail-kpis{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:9px;
}
.assessment-detail-kpis article{
  padding:14px;
  border:1px solid var(--cc-line);
  border-radius:10px;
  background:var(--cc-surface);
}
.assessment-detail-kpis span,
.assessment-detail-kpis strong,
.assessment-detail-kpis small{
  display:block;
}
.assessment-detail-kpis span{
  font-size:9px;
  color:var(--cc-muted);
}
.assessment-detail-kpis strong{
  margin:5px 0;
  font-size:14px;
  color:var(--cc-blue);
}
.assessment-detail-kpis small{
  font-size:9px;
  color:var(--cc-muted);
}
.assessment-detail-section{
  padding:19px;
  border:1px solid var(--cc-line);
  border-radius:13px;
  background:var(--cc-surface);
}
.assessment-detail-section>header{
  display:flex;
  gap:10px;
  margin-bottom:14px;
  padding-bottom:11px;
  border-bottom:1px solid var(--cc-line);
}
.assessment-detail-section>header>span{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:8px;
  background:var(--cc-blue-050);
  color:var(--cc-blue);
  font-size:10px;
  font-weight:900;
}
.assessment-detail-section h2{
  margin:0 0 3px;
  font-size:17px;
  color:var(--cc-blue);
}
.assessment-detail-section header p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}
.assessment-detail-list{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin:0;
}
.assessment-detail-list>div{
  padding:11px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:var(--cc-surface-2);
}
.assessment-detail-list dt{
  font-size:8px;
  font-weight:850;
  color:var(--cc-muted);
}
.assessment-detail-list dd{
  margin:5px 0 0;
  font-size:10px;
  line-height:1.45;
  color:var(--cc-text);
  overflow-wrap:anywhere;
}
.data-classification-comparison{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
  margin-bottom:11px;
}
.data-classification-comparison article{
  padding:15px;
  border:1px solid #c9d9e9;
  border-radius:10px;
  background:#f5f9fd;
}
.data-classification-comparison article:last-child{
  border-color:#dfd2a4;
  background:#fffbef;
}
.data-classification-comparison span,
.data-classification-comparison strong,
.data-classification-comparison p,
.data-classification-comparison small{
  display:block;
}
.data-classification-comparison span{
  font-size:8px;
  font-weight:900;
  color:#6d7c8f;
}
.data-classification-comparison strong{
  margin:5px 0;
  font-size:17px;
  color:#173962;
}
.data-classification-comparison p{
  margin:0 0 7px;
  font-size:9px;
  font-weight:700;
}
.data-classification-comparison small{
  font-size:9px;
  line-height:1.5;
  color:#68778b;
}
.assessment-narrative-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin-top:11px;
}
.assessment-narrative-grid article{
  padding:12px;
  border:1px solid var(--cc-line);
  border-radius:8px;
  background:var(--cc-surface-2);
}
.assessment-narrative-grid h3{
  margin:0 0 6px;
  font-size:11px;
  color:var(--cc-blue);
}
.assessment-narrative-grid p{
  margin:0;
  font-size:9px;
  line-height:1.55;
  color:var(--cc-text);
}
.assessment-risk-comparison{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:9px;
}
.assessment-risk-comparison article{
  padding:14px;
  border:1px solid var(--cc-line);
  border-radius:9px;
  background:var(--cc-surface-2);
  text-align:center;
}
.assessment-risk-comparison span,
.assessment-risk-comparison strong,
.assessment-risk-comparison small,
.assessment-risk-comparison p{
  display:block;
}
.assessment-risk-comparison span{
  font-size:8px;
  font-weight:900;
  color:var(--cc-muted);
}
.assessment-risk-comparison strong{
  margin:6px 0;
  font-size:24px;
  color:var(--cc-blue);
}
.assessment-risk-comparison small,
.assessment-risk-comparison p{
  margin:0;
  font-size:9px;
  color:var(--cc-muted);
}

@media(max-width:1180px){
  .vendor-kpis{grid-template-columns:repeat(3,1fr)}
  .vendor-filter-grid{grid-template-columns:repeat(2,1fr)}
  .assessment-detail-list{grid-template-columns:repeat(2,1fr)}
  .assessment-detail-kpis{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .vendor-assessment-hero,
  .assessment-detail-hero{
    grid-template-columns:1fr;
    display:grid;
    align-items:start;
  }
  .vendor-kpis,
  .assessment-detail-kpis{
    grid-template-columns:repeat(2,1fr);
  }
  .assessment-form-grid,
  .assessment-score-grid,
  .classification-selector>div,
  .assessment-narrative-grid,
  .assessment-risk-comparison,
  .data-classification-comparison{
    grid-template-columns:1fr;
  }
  .assessment-form-grid .span-2,
  .assessment-form-grid .span-3{
    grid-column:auto;
  }
  .assessment-detail-list{
    grid-template-columns:1fr;
  }
}

@page{
  size:A4 portrait;
  margin:9mm;
}
@media print{
  .assessment-detail-page .no-print,
  .assessment-detail-toolbar,
  .app-sidebar,
  .app-sidebar-backdrop,
  .app-topbar{
    display:none!important;
  }
  .assessment-detail-page{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    gap:4mm!important;
  }
  .assessment-detail-hero{
    padding:4mm!important;
    border:1px solid #264e79!important;
    background:#fff!important;
    color:#17253a!important;
    break-inside:avoid;
  }
  .assessment-detail-hero h1,
  .assessment-detail-hero strong,
  .assessment-detail-hero small{
    color:#173962!important;
  }
  .assessment-detail-hero p{
    color:#46586e!important;
  }
  .assessment-detail-kpis{
    grid-template-columns:repeat(5,1fr)!important;
    gap:2mm!important;
  }
  .assessment-detail-kpis article{
    padding:2.5mm!important;
  }
  .assessment-detail-section{
    margin:0 0 3mm!important;
    padding:3.5mm!important;
    break-inside:auto;
  }
  .assessment-detail-list{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
  }
  .assessment-detail-list>div{
    padding:2.2mm!important;
    break-inside:avoid;
  }
  .assessment-narrative-grid{
    grid-template-columns:repeat(3,1fr)!important;
    gap:2mm!important;
  }
  .assessment-narrative-grid article{
    padding:2.5mm!important;
    break-inside:avoid;
  }
  .assessment-risk-comparison{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
  }
  .data-classification-comparison{
    grid-template-columns:repeat(2,1fr)!important;
    gap:2mm!important;
  }
}


/* Third-Party Risk Management navigation group */
.classified-menu .menu-group-items .menu-section-label{
  margin:8px 10px 3px;
  padding-top:8px;
  border-top:1px solid var(--cc-line);
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--cc-gold-700);
}


/* =========================================================
   Third-Party Risk Overview
   ========================================================= */
.third-party-overview-page{display:grid;gap:16px;min-width:0}
.third-party-overview-hero{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:24px;border-radius:15px;
  background:linear-gradient(135deg,#0a36af,#082b86);
  box-shadow:0 12px 28px rgba(10,54,175,.16)
}
.third-party-overview-hero span{font-size:9px;font-weight:900;letter-spacing:.11em;color:#f0d77a}
.third-party-overview-hero h1{margin:5px 0 6px;font-size:30px;color:#fff}
.third-party-overview-hero p{max-width:800px;margin:0;font-size:12px;line-height:1.6;color:rgba(255,255,255,.78)}
.third-party-hero-actions{display:flex;gap:8px}
.third-party-overview-hero .secondary{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.3)!important;color:#fff!important}

.third-party-summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}
.third-party-summary-grid article{
  min-height:105px;padding:15px;border:1px solid var(--cc-line);
  border-radius:11px;background:var(--cc-surface);
  box-shadow:0 4px 14px rgba(20,55,96,.045)
}
.third-party-summary-grid article.critical{border-top:3px solid #b93636}
.third-party-summary-grid article.high{border-top:3px solid #dd7b2d}
.third-party-summary-grid article.overdue{border-top:3px solid #9a3c63}
.third-party-summary-grid span,.third-party-summary-grid strong,.third-party-summary-grid small{display:block}
.third-party-summary-grid span{font-size:10px;font-weight:800;color:var(--cc-muted)}
.third-party-summary-grid strong{margin:7px 0 5px;font-size:28px;line-height:1;color:var(--cc-blue)}
.third-party-summary-grid small{font-size:9px;line-height:1.4;color:var(--cc-muted)}

.third-party-overview-grid{display:grid;grid-template-columns:1.8fr .9fr;gap:12px}
.third-party-panel{
  padding:18px;border:1px solid var(--cc-line);border-radius:13px;
  background:var(--cc-surface);box-shadow:0 5px 18px rgba(20,55,96,.045)
}
.third-party-panel-head{display:flex;justify-content:space-between;gap:14px;margin-bottom:13px}
.third-party-panel-head span{font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}
.third-party-panel-head h2{margin:4px 0 3px;font-size:18px;color:var(--cc-blue)}
.third-party-panel-head p{margin:0;font-size:10px;color:var(--cc-muted)}

.third-party-risk-list{display:grid;gap:8px}
.third-party-risk-list article{
  display:grid;grid-template-columns:84px minmax(0,1fr) 180px;gap:13px;
  align-items:center;padding:12px;border:1px solid var(--cc-line);
  border-radius:10px;background:var(--cc-surface-2)
}
.third-party-risk-rank{text-align:center}
.third-party-risk-rank strong{display:inline-block;margin-top:6px;font-size:19px;color:var(--cc-blue)}
.third-party-risk-rank small{font-size:8px;color:var(--cc-muted)}
.third-party-risk-main a{font-size:12px;font-weight:850;color:var(--cc-blue)}
.third-party-risk-main p{margin:4px 0 6px;font-size:10px;line-height:1.45;color:var(--cc-muted)}
.third-party-risk-main>div{display:flex;gap:6px;flex-wrap:wrap}
.third-party-risk-main>div span{padding:3px 6px;border-radius:999px;background:#edf2f8;font-size:8px;color:#52677f}
.third-party-risk-main>div .is-overdue{background:#fde7ed;color:#9a3559}
.third-party-risk-owner span,.third-party-risk-owner strong,.third-party-risk-owner small{display:block}
.third-party-risk-owner span{font-size:8px;color:var(--cc-muted)}
.third-party-risk-owner strong{margin:4px 0;font-size:10px}
.third-party-risk-owner small{font-size:8px;color:var(--cc-muted)}

.third-party-distribution{display:grid;gap:7px}
.risk-distribution-row{display:flex;justify-content:space-between;align-items:center;padding:8px 9px;border-radius:8px;background:var(--cc-surface-2)}
.risk-distribution-row span{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--cc-muted)}
.risk-distribution-row i{width:9px;height:9px;border-radius:50%}
.risk-distribution-row i.critical{background:#b93636}.risk-distribution-row i.high{background:#dd7b2d}.risk-distribution-row i.medium{background:#d0a51d}.risk-distribution-row i.low{background:#2f8a55}
.risk-distribution-row strong{font-size:12px;color:var(--cc-blue)}
.third-party-governance-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px}
.third-party-governance-summary div{padding:9px;border:1px solid var(--cc-line);border-radius:8px}
.third-party-governance-summary span,.third-party-governance-summary strong{display:block}
.third-party-governance-summary span{font-size:8px;color:var(--cc-muted)}
.third-party-governance-summary strong{margin-top:3px;font-size:15px;color:var(--cc-blue)}
.third-party-average-risk{margin-top:10px;padding:12px;border-radius:9px;background:linear-gradient(135deg,#edf4fc,#f9fbfe)}
.third-party-average-risk span,.third-party-average-risk strong,.third-party-average-risk small{display:block}
.third-party-average-risk span{font-size:8px;font-weight:850;color:#60758d}
.third-party-average-risk strong{margin:5px 0;font-size:23px;color:#173962}
.third-party-average-risk small{font-size:8px;color:#7c8998}

.register-head>strong{font-size:11px;color:var(--cc-muted)}
.third-party-register-scroll{overflow-x:auto}
.third-party-register-table{width:100%;min-width:1340px;border-collapse:collapse}
.third-party-register-table th{padding:10px 9px;text-align:left;font-size:9px}
.third-party-register-table td{padding:12px 9px;border-bottom:1px solid var(--cc-line);vertical-align:top;font-size:10px}
.third-party-register-table td strong,.third-party-register-table td small{display:block}
.third-party-register-table td small{margin-top:4px;font-size:8px;color:var(--cc-muted)}
.vendor-highlight-cell>span{display:block;font-size:8px;font-weight:850;color:var(--cc-gold-700)}
.vendor-highlight-cell>a{display:block;margin:3px 0;font-size:11px;font-weight:850;color:var(--cc-blue)}
.vendor-risk-score{margin-top:5px;font-size:9px!important}
.vendor-data-summary{display:grid;grid-template-columns:auto 1fr;gap:3px 6px}
.vendor-data-summary span{font-size:8px;color:var(--cc-muted)}
.vendor-data-summary strong{font-size:9px!important}
.vendor-data-summary small{grid-column:1/-1;color:#9a3559!important}
.third-party-register-table .is-overdue strong,.third-party-register-table .is-overdue small{color:#9a3559}
.third-party-register-table tr.vendor-overdue{background:rgba(154,53,89,.025)}

@media(max-width:1180px){
  .third-party-summary-grid{grid-template-columns:repeat(3,1fr)}
  .third-party-overview-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .third-party-overview-hero{align-items:flex-start;flex-direction:column}
  .third-party-summary-grid{grid-template-columns:repeat(2,1fr)}
  .third-party-risk-list article{grid-template-columns:70px 1fr}
  .third-party-risk-owner{grid-column:2}
}


/* =========================================================
   Third-Party & SaaS Readability Enhancement
   ========================================================= */
.third-party-overview-page,
.vendor-assessment-page{
  font-size:15px;
}

.third-party-overview-hero span,
.vendor-assessment-hero span{
  font-size:11px!important;
}

.third-party-overview-hero h1,
.vendor-assessment-hero h1{
  font-size:32px!important;
}

.third-party-overview-hero p,
.vendor-assessment-hero p{
  font-size:13px!important;
  line-height:1.65!important;
}

.third-party-summary-grid span,
.vendor-kpis span{
  font-size:11px!important;
}

.third-party-summary-grid strong,
.vendor-kpis strong{
  font-size:31px!important;
}

.third-party-summary-grid small,
.vendor-kpis small{
  font-size:10px!important;
}

.third-party-panel-head span,
.vendor-panel-head span{
  font-size:10px!important;
}

.third-party-panel-head h2,
.vendor-panel-head h2{
  font-size:20px!important;
}

.third-party-panel-head p,
.vendor-panel-head p{
  font-size:11px!important;
}

.third-party-risk-main a{
  font-size:14px!important;
}

.third-party-risk-main p{
  font-size:11px!important;
}

.third-party-risk-main>div span{
  font-size:9px!important;
}

.third-party-risk-owner span,
.third-party-risk-owner small{
  font-size:9px!important;
}

.third-party-risk-owner strong{
  font-size:11px!important;
}

.risk-distribution-row span{
  font-size:11px!important;
}

.risk-distribution-row strong{
  font-size:14px!important;
}

.third-party-governance-summary span{
  font-size:9px!important;
}

.third-party-governance-summary strong{
  font-size:17px!important;
}

.third-party-average-risk span,
.third-party-average-risk small{
  font-size:9px!important;
}

.third-party-average-risk strong{
  font-size:26px!important;
}

.third-party-register-table th,
.vendor-register-table th{
  font-size:10px!important;
  padding:12px 10px!important;
}

.third-party-register-table td,
.vendor-register-table td{
  font-size:11px!important;
  padding:14px 10px!important;
}

.third-party-register-table td strong,
.vendor-register-table td strong{
  font-size:12px!important;
}

.third-party-register-table td small,
.vendor-register-table td small{
  font-size:9px!important;
}

.vendor-highlight-cell>a,
.vendor-name a{
  font-size:13px!important;
}

.vendor-highlight-cell>span{
  font-size:9px!important;
}

.vendor-data-summary span,
.data-exposure-cell span{
  font-size:9px!important;
}

.vendor-data-summary strong,
.data-exposure-cell strong{
  font-size:10px!important;
}

.assessment-section-title h2,
.assessment-detail-section h2{
  font-size:20px!important;
}

.assessment-section-title p,
.assessment-detail-section header p{
  font-size:11px!important;
}

.assessment-form-grid label>span,
.assessment-score-grid label>span,
.vendor-filter-grid label>span{
  font-size:11px!important;
}

.assessment-form-grid input,
.assessment-form-grid select,
.assessment-form-grid textarea,
.assessment-score-grid input,
.vendor-filter-grid input,
.vendor-filter-grid select{
  font-size:12px!important;
  min-height:42px!important;
}

.classification-selector header strong{
  font-size:13px!important;
}

.classification-selector header small,
.classification-selector label span{
  font-size:10px!important;
}

.assessment-detail-kpis span{
  font-size:10px!important;
}

.assessment-detail-kpis strong{
  font-size:16px!important;
}

.assessment-detail-kpis small{
  font-size:10px!important;
}

.assessment-detail-list dt{
  font-size:9px!important;
}

.assessment-detail-list dd{
  font-size:11px!important;
}

.assessment-narrative-grid h3{
  font-size:12px!important;
}

.assessment-narrative-grid p,
.data-classification-comparison small{
  font-size:10px!important;
}

.data-classification-comparison span{
  font-size:9px!important;
}

.data-classification-comparison strong{
  font-size:19px!important;
}

.data-classification-comparison p{
  font-size:10px!important;
}

.assessment-risk-comparison span{
  font-size:9px!important;
}

.assessment-risk-comparison strong{
  font-size:27px!important;
}

.assessment-risk-comparison small,
.assessment-risk-comparison p{
  font-size:10px!important;
}


/* =========================================================
   Third-Party Assessment Detail — Issue Detail Style
   ========================================================= */
.third-party-detail-page{
  display:grid;
  gap:14px;
  max-width:1480px;
  margin:0 auto;
}

.third-party-detail-page .assessment-detail-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:0;
}

.third-party-detail-page .assessment-detail-toolbar>div{
  display:flex;
  gap:8px;
}

.third-party-detail-page .assessment-detail-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:24px;
  align-items:center;
  padding:24px 26px;
  border-radius:14px;
  background:
    linear-gradient(135deg,rgba(10,54,175,.98),rgba(8,43,134,.98));
  box-shadow:0 12px 28px rgba(10,54,175,.14);
}

.third-party-detail-page .assessment-detail-hero h1{
  margin:5px 0 7px;
  font-size:29px!important;
  line-height:1.2;
}

.third-party-detail-page .assessment-detail-hero p{
  max-width:900px;
  font-size:12px!important;
  line-height:1.6!important;
}

.third-party-detail-page .assessment-detail-hero>div:last-child{
  padding:14px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  background:rgba(255,255,255,.08);
}

.third-party-detail-page .assessment-detail-meta{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.third-party-detail-page .assessment-detail-meta>div{
  padding:12px 14px;
  border:1px solid var(--cc-line);
  border-radius:9px;
  background:var(--cc-surface);
}

.third-party-detail-page .assessment-detail-meta span,
.third-party-detail-page .assessment-detail-meta strong{
  display:block;
}

.third-party-detail-page .assessment-detail-meta span{
  font-size:9px;
  font-weight:800;
  color:var(--cc-muted);
}

.third-party-detail-page .assessment-detail-meta strong{
  margin-top:4px;
  font-size:11px;
  color:var(--cc-blue);
}

.third-party-detail-page .assessment-detail-kpis{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}

.third-party-detail-page .assessment-detail-kpis article{
  min-height:92px;
  padding:13px 14px;
  border-radius:10px;
  box-shadow:none;
}

.third-party-detail-page .assessment-detail-kpis span{
  font-size:9px!important;
  font-weight:800;
}

.third-party-detail-page .assessment-detail-kpis strong{
  margin:6px 0 4px;
  font-size:15px!important;
  line-height:1.2;
}

.third-party-detail-page .assessment-detail-kpis small{
  font-size:9px!important;
}

.third-party-detail-page .assessment-detail-section{
  padding:18px;
  border-radius:12px;
  box-shadow:0 4px 14px rgba(20,55,96,.035);
}

.third-party-detail-page .assessment-detail-section>header{
  align-items:flex-start;
  margin-bottom:13px;
  padding-bottom:10px;
}

.third-party-detail-page .assessment-detail-section>header>span{
  width:34px;
  height:34px;
  flex:0 0 34px;
}

.third-party-detail-page .assessment-detail-section h2{
  font-size:18px!important;
}

.third-party-detail-page .assessment-detail-section header p{
  font-size:10px!important;
}

.third-party-detail-page .assessment-detail-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.third-party-detail-page .assessment-detail-list>div{
  min-height:76px;
  padding:10px 11px;
}

.third-party-detail-page .assessment-detail-list dt{
  font-size:8px!important;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.third-party-detail-page .assessment-detail-list dd{
  margin-top:5px;
  font-size:10px!important;
  line-height:1.45;
}

.third-party-detail-page .data-classification-comparison{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-bottom:10px;
}

.third-party-detail-page .data-classification-comparison article{
  padding:14px;
  min-height:155px;
}

.third-party-detail-page .data-classification-comparison strong{
  font-size:18px!important;
}

.third-party-detail-page .data-classification-comparison p{
  font-size:9px!important;
  line-height:1.45;
}

.third-party-detail-page .data-classification-comparison small{
  font-size:9px!important;
  line-height:1.5;
}

.third-party-detail-page .assessment-narrative-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}

.third-party-detail-page .assessment-narrative-grid article{
  min-height:120px;
  padding:11px;
}

.third-party-detail-page .assessment-narrative-grid h3{
  font-size:11px!important;
}

.third-party-detail-page .assessment-narrative-grid p{
  font-size:9px!important;
  line-height:1.55;
}

.third-party-detail-page .assessment-risk-summary-note{
  display:grid;
  grid-template-columns:180px 220px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin-bottom:10px;
  padding:12px 14px;
  border:1px solid #d8e3ef;
  border-radius:10px;
  background:linear-gradient(135deg,#f3f7fc,#fbfdff);
}

.third-party-detail-page .assessment-risk-summary-note span,
.third-party-detail-page .assessment-risk-summary-note strong,
.third-party-detail-page .assessment-risk-summary-note small{
  display:block;
}

.third-party-detail-page .assessment-risk-summary-note span{
  font-size:9px;
  font-weight:900;
  color:var(--cc-gold-700);
}

.third-party-detail-page .assessment-risk-summary-note strong{
  font-size:14px;
  color:var(--cc-blue);
}

.third-party-detail-page .assessment-risk-summary-note small{
  font-size:9px;
  line-height:1.5;
  color:var(--cc-muted);
}

.third-party-detail-page .assessment-risk-comparison{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.third-party-detail-page .assessment-risk-comparison article{
  min-height:118px;
  padding:13px 10px;
}

.third-party-detail-page .assessment-risk-comparison strong{
  font-size:24px!important;
}

.third-party-detail-page .assessment-risk-comparison span{
  font-size:8px!important;
}

.third-party-detail-page .assessment-risk-comparison small,
.third-party-detail-page .assessment-risk-comparison p{
  font-size:9px!important;
}

@media(max-width:1100px){
  .third-party-detail-page .assessment-detail-meta,
  .third-party-detail-page .assessment-detail-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .third-party-detail-page .assessment-detail-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .third-party-detail-page .assessment-detail-toolbar{
    align-items:stretch;
    flex-direction:column;
  }

  .third-party-detail-page .assessment-detail-toolbar>div{
    flex-wrap:wrap;
  }

  .third-party-detail-page .assessment-detail-hero,
  .third-party-detail-page .assessment-detail-meta,
  .third-party-detail-page .assessment-detail-kpis,
  .third-party-detail-page .assessment-detail-list,
  .third-party-detail-page .data-classification-comparison,
  .third-party-detail-page .assessment-narrative-grid,
  .third-party-detail-page .assessment-risk-comparison,
  .third-party-detail-page .assessment-risk-summary-note{
    grid-template-columns:1fr;
  }
}

/* A4 print layout aligned with Issue Detail */
@page{
  size:A4 portrait;
  margin:9mm;
}

@media print{
  .third-party-detail-page{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  .third-party-detail-page .assessment-detail-toolbar,
  .third-party-detail-page .no-print,
  .app-sidebar,
  .app-sidebar-backdrop,
  .app-topbar{
    display:none!important;
  }

  .app-workspace,
  .app-main{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  .third-party-detail-page .assessment-detail-hero{
    grid-template-columns:minmax(0,1fr) 42mm!important;
    gap:5mm!important;
    padding:4mm!important;
    border:1.5px solid #244d78!important;
    border-radius:2mm!important;
    background:#fff!important;
    color:#17253a!important;
    box-shadow:none!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-detail-hero h1{
    margin:1.5mm 0!important;
    font-size:17pt!important;
    color:#173962!important;
  }

  .third-party-detail-page .assessment-detail-hero p{
    font-size:8.4pt!important;
    color:#46586e!important;
  }

  .third-party-detail-page .assessment-detail-hero>div:first-child>span{
    color:#8a6a16!important;
  }

  .third-party-detail-page .assessment-detail-hero>div:last-child{
    padding:3mm!important;
    border:1px solid #d4dce6!important;
    background:#f7f9fc!important;
  }

  .third-party-detail-page .assessment-detail-hero>div:last-child strong,
  .third-party-detail-page .assessment-detail-hero>div:last-child small{
    color:#173962!important;
  }

  .third-party-detail-page .assessment-detail-meta{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
    margin:3mm 0!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-detail-meta>div{
    padding:2.5mm!important;
  }

  .third-party-detail-page .assessment-detail-kpis{
    grid-template-columns:repeat(5,1fr)!important;
    gap:2mm!important;
    margin-bottom:3mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-detail-kpis article{
    min-height:0!important;
    padding:2.5mm!important;
  }

  .third-party-detail-page .assessment-detail-kpis span,
  .third-party-detail-page .assessment-detail-kpis small{
    font-size:6.8pt!important;
  }

  .third-party-detail-page .assessment-detail-kpis strong{
    font-size:8.5pt!important;
  }

  .third-party-detail-page .assessment-detail-section{
    margin:0 0 3mm!important;
    padding:3.3mm!important;
    border:1px solid #d5dde7!important;
    border-radius:2mm!important;
    box-shadow:none!important;
    break-inside:auto;
  }

  .third-party-detail-page .assessment-detail-section>header{
    margin-bottom:2.5mm!important;
    padding-bottom:2mm!important;
    break-after:avoid;
  }

  .third-party-detail-page .assessment-detail-section>header>span{
    width:7mm!important;
    height:7mm!important;
    flex-basis:7mm!important;
    font-size:7pt!important;
  }

  .third-party-detail-page .assessment-detail-section h2{
    font-size:10.5pt!important;
  }

  .third-party-detail-page .assessment-detail-section header p{
    font-size:7pt!important;
  }

  .third-party-detail-page .assessment-detail-list{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
  }

  .third-party-detail-page .assessment-detail-list>div{
    min-height:0!important;
    padding:2.2mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-detail-list dt{
    font-size:6.2pt!important;
  }

  .third-party-detail-page .assessment-detail-list dd{
    font-size:7.4pt!important;
    line-height:1.35!important;
  }

  .third-party-detail-page .data-classification-comparison{
    grid-template-columns:repeat(2,1fr)!important;
    gap:2mm!important;
    margin-bottom:2.5mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .data-classification-comparison article{
    min-height:0!important;
    padding:2.8mm!important;
  }

  .third-party-detail-page .data-classification-comparison strong{
    font-size:10pt!important;
  }

  .third-party-detail-page .data-classification-comparison p,
  .third-party-detail-page .data-classification-comparison small{
    font-size:6.8pt!important;
  }

  .third-party-detail-page .assessment-narrative-grid{
    grid-template-columns:repeat(3,1fr)!important;
    gap:2mm!important;
    margin-top:2.5mm!important;
  }

  .third-party-detail-page .assessment-narrative-grid article{
    min-height:0!important;
    padding:2.4mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-narrative-grid h3{
    font-size:7.7pt!important;
  }

  .third-party-detail-page .assessment-narrative-grid p{
    font-size:6.8pt!important;
    line-height:1.4!important;
  }

  .third-party-detail-page .assessment-risk-summary-note{
    grid-template-columns:35mm 42mm 1fr!important;
    gap:2mm!important;
    margin-bottom:2.5mm!important;
    padding:2.5mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-risk-summary-note span,
  .third-party-detail-page .assessment-risk-summary-note small{
    font-size:6.5pt!important;
  }

  .third-party-detail-page .assessment-risk-summary-note strong{
    font-size:8pt!important;
  }

  .third-party-detail-page .assessment-risk-comparison{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
    break-inside:avoid;
  }

  .third-party-detail-page .assessment-risk-comparison article{
    min-height:0!important;
    padding:2.5mm!important;
  }

  .third-party-detail-page .assessment-risk-comparison strong{
    font-size:13pt!important;
  }

  .third-party-detail-page .assessment-risk-comparison span,
  .third-party-detail-page .assessment-risk-comparison small,
  .third-party-detail-page .assessment-risk-comparison p{
    font-size:6.5pt!important;
  }
}


/* Third-Party detail larger typography */
.third-party-detail-page .assessment-detail-hero h1{font-size:34px!important}
.third-party-detail-page .assessment-detail-hero p{font-size:14px!important}
.third-party-detail-page .assessment-detail-meta span{font-size:11px!important}
.third-party-detail-page .assessment-detail-meta strong{font-size:13px!important}
.third-party-detail-page .assessment-detail-kpis span{font-size:11px!important}
.third-party-detail-page .assessment-detail-kpis strong{font-size:18px!important}
.third-party-detail-page .assessment-detail-kpis small{font-size:10px!important}
.third-party-detail-page .assessment-detail-section h2{font-size:21px!important}
.third-party-detail-page .assessment-detail-section header p{font-size:12px!important}
.third-party-detail-page .assessment-detail-list dt{font-size:10px!important}
.third-party-detail-page .assessment-detail-list dd{font-size:12px!important}
.third-party-detail-page .data-classification-comparison strong{font-size:21px!important}
.third-party-detail-page .data-classification-comparison p,
.third-party-detail-page .data-classification-comparison small{font-size:11px!important}
.third-party-detail-page .assessment-narrative-grid h3{font-size:13px!important}
.third-party-detail-page .assessment-narrative-grid p{font-size:11px!important}
.third-party-detail-page .assessment-risk-summary-note span,
.third-party-detail-page .assessment-risk-summary-note small{font-size:11px!important}
.third-party-detail-page .assessment-risk-summary-note strong{font-size:16px!important}
.third-party-detail-page .assessment-risk-comparison span{font-size:10px!important}
.third-party-detail-page .assessment-risk-comparison strong{font-size:29px!important}
.third-party-detail-page .assessment-risk-comparison small,
.third-party-detail-page .assessment-risk-comparison p{font-size:11px!important}

/* Excel import/export and pagination */
.vendor-assessment-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.vendor-assessment-hero .vendor-assessment-actions .secondary{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.30)!important;
  color:#fff!important;
}
.assessment-import-panel{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:16px 18px;border:1px solid #bcd0e5;border-radius:11px;
  background:linear-gradient(135deg,#edf5fd,#fbfdff)
}
.assessment-import-panel[hidden]{display:none!important}
.assessment-import-panel strong{font-size:14px;color:#173962}
.assessment-import-panel p{margin:3px 0 0;font-size:11px;color:#697a8f}
.assessment-import-panel form{display:flex;align-items:center;gap:8px}
.assessment-import-panel input[type=file]{
  max-width:310px;padding:8px;border:1px solid var(--cc-line-strong);
  border-radius:8px;background:var(--cc-surface);font-size:11px
}
.saas-website-cell a{
  display:block;max-width:210px;overflow:hidden;text-overflow:ellipsis;
  white-space:nowrap;color:var(--cc-blue);font-weight:750
}
.assessment-pagination{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:14px;padding-top:13px;border-top:1px solid var(--cc-line)
}
.assessment-pagination>span{font-size:10px;color:var(--cc-muted)}
.assessment-pagination>div{display:flex;gap:5px;flex-wrap:wrap}
.assessment-pagination a{min-width:34px;text-align:center;padding:7px 9px!important;font-size:10px!important}
@media(max-width:760px){
  .assessment-import-panel{align-items:stretch;flex-direction:column}
  .assessment-import-panel form{align-items:stretch;flex-direction:column}
  .assessment-pagination{align-items:flex-start;flex-direction:column}
}


/* =========================================================
   SaaS Assessment Detail — readable screen layout
   ========================================================= */
.saas-detail-page{
  display:grid;
  gap:14px;
  max-width:1480px;
  margin:0 auto;
}

.saas-detail-page .assessment-detail-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.saas-detail-page .assessment-detail-toolbar>div{
  display:flex;
  gap:8px;
}

.saas-detail-page .assessment-detail-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:24px;
  align-items:center;
  padding:25px 27px;
  border-radius:14px;
  background:linear-gradient(135deg,#0a36af,#082b86);
  box-shadow:0 12px 28px rgba(10,54,175,.14);
}

.saas-detail-page .assessment-detail-hero h1{
  margin:6px 0 8px;
  font-size:34px!important;
  line-height:1.18;
}

.saas-detail-page .assessment-detail-hero p{
  max-width:920px;
  font-size:14px!important;
  line-height:1.65!important;
}

.saas-detail-page .assessment-detail-hero>div:last-child{
  padding:15px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:12px;
  background:rgba(255,255,255,.09);
}

.saas-detail-page .assessment-detail-meta,
.third-party-detail-page .assessment-detail-meta{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}

.saas-detail-page .assessment-detail-meta article,
.third-party-detail-page .assessment-detail-meta article{
  min-height:78px;
  padding:14px 15px;
  border:1px solid var(--cc-line);
  border-radius:10px;
  background:var(--cc-surface);
  box-shadow:0 3px 10px rgba(20,55,96,.035);
}

.saas-detail-page .assessment-detail-meta span,
.saas-detail-page .assessment-detail-meta strong,
.third-party-detail-page .assessment-detail-meta span,
.third-party-detail-page .assessment-detail-meta strong{
  display:block;
}

.saas-detail-page .assessment-detail-meta span,
.third-party-detail-page .assessment-detail-meta span{
  margin-bottom:7px;
  font-size:11px!important;
  font-weight:850;
  letter-spacing:.02em;
  color:var(--cc-muted);
}

.saas-detail-page .assessment-detail-meta strong,
.third-party-detail-page .assessment-detail-meta strong{
  font-size:14px!important;
  line-height:1.35;
  color:var(--cc-blue);
  overflow-wrap:anywhere;
}

.saas-detail-page .assessment-detail-kpis{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
}

.saas-detail-page .assessment-detail-kpis article{
  min-height:96px;
  padding:14px 15px;
}

.saas-detail-page .assessment-detail-kpis span{
  font-size:11px!important;
  font-weight:800;
}

.saas-detail-page .assessment-detail-kpis strong{
  margin:7px 0 5px;
  font-size:18px!important;
  line-height:1.25;
}

.saas-detail-page .assessment-detail-kpis small{
  font-size:10px!important;
}

.saas-detail-page .assessment-detail-section{
  padding:19px;
  border-radius:12px;
  box-shadow:0 4px 14px rgba(20,55,96,.035);
}

.saas-detail-page .assessment-detail-section h2{
  font-size:21px!important;
}

.saas-detail-page .assessment-detail-section header p{
  font-size:12px!important;
}

.saas-detail-page .assessment-detail-list{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}

.saas-detail-page .assessment-detail-list>div{
  min-height:80px;
  padding:11px 12px;
}

.saas-detail-page .assessment-detail-list dt{
  font-size:10px!important;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.saas-detail-page .assessment-detail-list dd{
  margin-top:6px;
  font-size:12px!important;
  line-height:1.5;
}

.saas-detail-page .data-classification-comparison{
  gap:10px;
}

.saas-detail-page .data-classification-comparison article{
  min-height:165px;
  padding:15px;
}

.saas-detail-page .data-classification-comparison span{
  font-size:10px!important;
}

.saas-detail-page .data-classification-comparison strong{
  font-size:22px!important;
}

.saas-detail-page .data-classification-comparison p,
.saas-detail-page .data-classification-comparison small{
  font-size:11px!important;
  line-height:1.55;
}

.saas-detail-page .assessment-narrative-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.saas-detail-page .assessment-narrative-grid article{
  min-height:125px;
  padding:12px;
}

.saas-detail-page .assessment-narrative-grid h3{
  font-size:13px!important;
}

.saas-detail-page .assessment-narrative-grid p{
  font-size:11px!important;
  line-height:1.6;
}

.saas-detail-page .assessment-risk-summary-note{
  grid-template-columns:190px 230px minmax(0,1fr);
  gap:11px;
  padding:13px 15px;
}

.saas-detail-page .assessment-risk-summary-note span,
.saas-detail-page .assessment-risk-summary-note small{
  font-size:11px!important;
}

.saas-detail-page .assessment-risk-summary-note strong{
  font-size:16px!important;
}

.saas-detail-page .assessment-risk-comparison{
  gap:9px;
}

.saas-detail-page .assessment-risk-comparison article{
  min-height:122px;
  padding:14px 11px;
}

.saas-detail-page .assessment-risk-comparison span{
  font-size:10px!important;
}

.saas-detail-page .assessment-risk-comparison strong{
  font-size:29px!important;
}

.saas-detail-page .assessment-risk-comparison small,
.saas-detail-page .assessment-risk-comparison p{
  font-size:11px!important;
}

@media(max-width:1100px){
  .saas-detail-page .assessment-detail-meta,
  .saas-detail-page .assessment-detail-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .saas-detail-page .assessment-detail-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .saas-detail-page .assessment-detail-toolbar{
    align-items:stretch;
    flex-direction:column;
  }

  .saas-detail-page .assessment-detail-toolbar>div{
    flex-wrap:wrap;
  }

  .saas-detail-page .assessment-detail-hero,
  .saas-detail-page .assessment-detail-meta,
  .saas-detail-page .assessment-detail-kpis,
  .saas-detail-page .assessment-detail-list,
  .saas-detail-page .data-classification-comparison,
  .saas-detail-page .assessment-narrative-grid,
  .saas-detail-page .assessment-risk-summary-note,
  .saas-detail-page .assessment-risk-comparison{
    grid-template-columns:1fr;
  }
}

/* Print remains compact and A4-fit despite larger screen typography */
@media print{
  .saas-detail-page{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  .saas-detail-page .assessment-detail-toolbar,
  .saas-detail-page .no-print{
    display:none!important;
  }

  .saas-detail-page .assessment-detail-hero{
    grid-template-columns:minmax(0,1fr) 42mm!important;
    gap:5mm!important;
    padding:4mm!important;
    border:1.5px solid #244d78!important;
    border-radius:2mm!important;
    background:#fff!important;
    color:#17253a!important;
    box-shadow:none!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-detail-hero h1{
    margin:1.5mm 0!important;
    font-size:17pt!important;
    color:#173962!important;
  }

  .saas-detail-page .assessment-detail-hero p{
    font-size:8.4pt!important;
    line-height:1.4!important;
    color:#46586e!important;
  }

  .saas-detail-page .assessment-detail-hero>div:last-child{
    padding:3mm!important;
    border:1px solid #d4dce6!important;
    background:#f7f9fc!important;
  }

  .saas-detail-page .assessment-detail-meta{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
    margin:3mm 0!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-detail-meta article{
    min-height:0!important;
    padding:2.5mm!important;
    box-shadow:none!important;
  }

  .saas-detail-page .assessment-detail-meta span{
    margin-bottom:1mm!important;
    font-size:6.5pt!important;
  }

  .saas-detail-page .assessment-detail-meta strong{
    font-size:7.8pt!important;
  }

  .saas-detail-page .assessment-detail-kpis{
    grid-template-columns:repeat(5,1fr)!important;
    gap:2mm!important;
    margin-bottom:3mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-detail-kpis article{
    min-height:0!important;
    padding:2.5mm!important;
  }

  .saas-detail-page .assessment-detail-kpis span,
  .saas-detail-page .assessment-detail-kpis small{
    font-size:6.8pt!important;
  }

  .saas-detail-page .assessment-detail-kpis strong{
    font-size:8.5pt!important;
  }

  .saas-detail-page .assessment-detail-section{
    margin:0 0 3mm!important;
    padding:3.3mm!important;
    border:1px solid #d5dde7!important;
    border-radius:2mm!important;
    box-shadow:none!important;
  }

  .saas-detail-page .assessment-detail-section h2{
    font-size:10.5pt!important;
  }

  .saas-detail-page .assessment-detail-section header p{
    font-size:7pt!important;
  }

  .saas-detail-page .assessment-detail-list{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
  }

  .saas-detail-page .assessment-detail-list>div{
    min-height:0!important;
    padding:2.2mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-detail-list dt{
    font-size:6.2pt!important;
  }

  .saas-detail-page .assessment-detail-list dd{
    font-size:7.4pt!important;
    line-height:1.35!important;
  }

  .saas-detail-page .data-classification-comparison{
    grid-template-columns:repeat(2,1fr)!important;
    gap:2mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .data-classification-comparison article{
    min-height:0!important;
    padding:2.8mm!important;
  }

  .saas-detail-page .data-classification-comparison strong{
    font-size:10pt!important;
  }

  .saas-detail-page .data-classification-comparison p,
  .saas-detail-page .data-classification-comparison small{
    font-size:6.8pt!important;
  }

  .saas-detail-page .assessment-narrative-grid{
    grid-template-columns:repeat(3,1fr)!important;
    gap:2mm!important;
  }

  .saas-detail-page .assessment-narrative-grid article{
    min-height:0!important;
    padding:2.4mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-narrative-grid h3{
    font-size:7.7pt!important;
  }

  .saas-detail-page .assessment-narrative-grid p{
    font-size:6.8pt!important;
    line-height:1.4!important;
  }

  .saas-detail-page .assessment-risk-summary-note{
    grid-template-columns:35mm 42mm 1fr!important;
    gap:2mm!important;
    padding:2.5mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-risk-summary-note span,
  .saas-detail-page .assessment-risk-summary-note small{
    font-size:6.5pt!important;
  }

  .saas-detail-page .assessment-risk-summary-note strong{
    font-size:8pt!important;
  }

  .saas-detail-page .assessment-risk-comparison{
    grid-template-columns:repeat(4,1fr)!important;
    gap:2mm!important;
    break-inside:avoid;
  }

  .saas-detail-page .assessment-risk-comparison article{
    min-height:0!important;
    padding:2.5mm!important;
  }

  .saas-detail-page .assessment-risk-comparison strong{
    font-size:13pt!important;
  }

  .saas-detail-page .assessment-risk-comparison span,
  .saas-detail-page .assessment-risk-comparison small,
  .saas-detail-page .assessment-risk-comparison p{
    font-size:6.5pt!important;
  }
}


/* =========================================================
   Third-Party & SaaS Detail Typography Consistency
   ========================================================= */
.third-party-detail-page,
.saas-detail-page{
  --assessment-heading:#173962;
  --assessment-label:#5f7085;
  --assessment-value:#24364c;
  --assessment-muted:#6f7f92;
  --assessment-card-bg:#f7f9fc;
  --assessment-card-border:#dbe3ed;
}

/* Section heading */
.third-party-detail-page .assessment-detail-section h2,
.saas-detail-page .assessment-detail-section h2{
  color:var(--assessment-heading)!important;
  font-weight:800!important;
}

.third-party-detail-page .assessment-detail-section header p,
.saas-detail-page .assessment-detail-section header p{
  color:var(--assessment-muted)!important;
  font-weight:400!important;
}

/* Small key-value cards */
.third-party-detail-page .assessment-detail-list>div,
.saas-detail-page .assessment-detail-list>div{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .assessment-detail-list dt,
.saas-detail-page .assessment-detail-list dt{
  color:var(--assessment-label)!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1.3!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}

.third-party-detail-page .assessment-detail-list dd,
.saas-detail-page .assessment-detail-list dd{
  color:var(--assessment-value)!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.5!important;
}

.third-party-detail-page .assessment-detail-list dd a,
.saas-detail-page .assessment-detail-list dd a{
  color:var(--assessment-value)!important;
  font-weight:600!important;
  text-decoration:underline;
  text-decoration-color:#aab6c5;
  text-underline-offset:2px;
}

/* Narrative cards */
.third-party-detail-page .assessment-narrative-grid article,
.saas-detail-page .assessment-narrative-grid article{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .assessment-narrative-grid h3,
.saas-detail-page .assessment-narrative-grid h3{
  margin:0 0 7px!important;
  color:var(--assessment-label)!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.35!important;
}

.third-party-detail-page .assessment-narrative-grid p,
.saas-detail-page .assessment-narrative-grid p{
  color:var(--assessment-value)!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.58!important;
}

/* Metadata cards */
.third-party-detail-page .assessment-detail-meta article,
.saas-detail-page .assessment-detail-meta article{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .assessment-detail-meta span,
.saas-detail-page .assessment-detail-meta span{
  color:var(--assessment-label)!important;
  font-size:10px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}

.third-party-detail-page .assessment-detail-meta strong,
.saas-detail-page .assessment-detail-meta strong{
  color:var(--assessment-value)!important;
  font-size:14px!important;
  font-weight:700!important;
}

/* KPI cards */
.third-party-detail-page .assessment-detail-kpis article,
.saas-detail-page .assessment-detail-kpis article{
  border-color:var(--assessment-card-border)!important;
  background:var(--cc-surface)!important;
}

.third-party-detail-page .assessment-detail-kpis span,
.saas-detail-page .assessment-detail-kpis span{
  color:var(--assessment-label)!important;
  font-size:10px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.03em!important;
}

.third-party-detail-page .assessment-detail-kpis strong,
.saas-detail-page .assessment-detail-kpis strong{
  color:var(--assessment-value)!important;
  font-weight:700!important;
}

.third-party-detail-page .assessment-detail-kpis small,
.saas-detail-page .assessment-detail-kpis small{
  color:var(--assessment-muted)!important;
}

/* Data classification cards */
.third-party-detail-page .data-classification-comparison article,
.saas-detail-page .data-classification-comparison article{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .data-classification-comparison article:last-child,
.saas-detail-page .data-classification-comparison article:last-child{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .data-classification-comparison span,
.saas-detail-page .data-classification-comparison span{
  color:var(--assessment-label)!important;
  font-weight:800!important;
}

.third-party-detail-page .data-classification-comparison strong,
.saas-detail-page .data-classification-comparison strong{
  color:var(--assessment-value)!important;
}

.third-party-detail-page .data-classification-comparison p,
.third-party-detail-page .data-classification-comparison small,
.saas-detail-page .data-classification-comparison p,
.saas-detail-page .data-classification-comparison small{
  color:var(--assessment-muted)!important;
}

/* Risk and outcome cards */
.third-party-detail-page .assessment-risk-summary-note,
.saas-detail-page .assessment-risk-summary-note{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .assessment-risk-summary-note span,
.saas-detail-page .assessment-risk-summary-note span{
  color:var(--assessment-label)!important;
}

.third-party-detail-page .assessment-risk-summary-note strong,
.saas-detail-page .assessment-risk-summary-note strong{
  color:var(--assessment-value)!important;
}

.third-party-detail-page .assessment-risk-summary-note small,
.saas-detail-page .assessment-risk-summary-note small{
  color:var(--assessment-muted)!important;
}

.third-party-detail-page .assessment-risk-comparison article,
.saas-detail-page .assessment-risk-comparison article{
  border-color:var(--assessment-card-border)!important;
  background:var(--assessment-card-bg)!important;
}

.third-party-detail-page .assessment-risk-comparison span,
.saas-detail-page .assessment-risk-comparison span{
  color:var(--assessment-label)!important;
  font-weight:800!important;
}

.third-party-detail-page .assessment-risk-comparison strong,
.saas-detail-page .assessment-risk-comparison strong{
  color:var(--assessment-value)!important;
}

.third-party-detail-page .assessment-risk-comparison small,
.third-party-detail-page .assessment-risk-comparison p,
.saas-detail-page .assessment-risk-comparison small,
.saas-detail-page .assessment-risk-comparison p{
  color:var(--assessment-muted)!important;
}

/* Preserve compact print typography */
@media print{
  .third-party-detail-page .assessment-detail-list dt,
  .saas-detail-page .assessment-detail-list dt{
    font-size:6.2pt!important;
  }

  .third-party-detail-page .assessment-detail-list dd,
  .saas-detail-page .assessment-detail-list dd{
    font-size:7.4pt!important;
  }

  .third-party-detail-page .assessment-narrative-grid h3,
  .saas-detail-page .assessment-narrative-grid h3{
    font-size:7.7pt!important;
  }

  .third-party-detail-page .assessment-narrative-grid p,
  .saas-detail-page .assessment-narrative-grid p{
    font-size:6.8pt!important;
  }

  .third-party-detail-page .assessment-detail-meta span,
  .saas-detail-page .assessment-detail-meta span{
    font-size:6.5pt!important;
  }

  .third-party-detail-page .assessment-detail-meta strong,
  .saas-detail-page .assessment-detail-meta strong{
    font-size:7.8pt!important;
  }

  .third-party-detail-page .assessment-detail-kpis span,
  .third-party-detail-page .assessment-detail-kpis small,
  .saas-detail-page .assessment-detail-kpis span,
  .saas-detail-page .assessment-detail-kpis small{
    font-size:6.8pt!important;
  }

  .third-party-detail-page .assessment-detail-kpis strong,
  .saas-detail-page .assessment-detail-kpis strong{
    font-size:8.5pt!important;
  }
}


/* AI-assisted SaaS assessment from URL */
.saas-ai-url-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);
  gap:15px 22px;
  padding:20px;
  border:1px solid #bad0e8;
  border-radius:13px;
  background:linear-gradient(135deg,#edf5fd,#fbfdff);
  box-shadow:0 7px 20px rgba(23,79,139,.07);
}
.saas-ai-url-copy>span{
  font-size:9px;font-weight:900;letter-spacing:.1em;color:#9a7417
}
.saas-ai-url-copy h2{
  margin:5px 0;font-size:19px;color:#173962
}
.saas-ai-url-copy p{
  margin:0;max-width:680px;font-size:11px;line-height:1.55;color:#66778c
}
.saas-ai-url-input{display:flex;align-items:end;gap:9px}
.saas-ai-url-input label{display:grid;flex:1;gap:5px}
.saas-ai-url-input label>span{font-size:10px;font-weight:800;color:#526981}
.saas-ai-url-input input{
  width:100%;min-height:43px;padding:10px 11px;border:1px solid #c5d4e4;
  border-radius:8px;background:#fff;font-size:12px;color:#2f435b
}
.saas-ai-url-notice{
  grid-column:1/-1;display:flex;gap:6px;padding:9px 11px;
  border:1px solid #e7d7a8;border-radius:8px;background:#fff9e8;
  font-size:10px;line-height:1.5;color:#715e25
}
.saas-ai-url-status{grid-column:1/-1;min-height:18px;font-size:10px}
.saas-ai-url-status.working{color:#275e98}
.saas-ai-url-status.success{color:#257044}
.saas-ai-url-status.error{color:#a03838}
.saas-ai-assumptions{
  grid-column:1/-1;padding:12px 14px;border:1px solid #e0d3aa;
  border-radius:9px;background:#fffbef
}
.saas-ai-assumptions[hidden]{display:none!important}
.saas-ai-assumptions strong{font-size:11px;color:#715b1a}
.saas-ai-assumptions ul{margin:7px 0 0;padding-left:18px}
.saas-ai-assumptions li{font-size:10px;line-height:1.5;color:#685d42}
@media(max-width:850px){
  .saas-ai-url-panel{grid-template-columns:1fr}
  .saas-ai-url-input{align-items:stretch;flex-direction:column}
}


/* =========================================================
   Stable Sidebar Readability — scoped only to sidebar
   ========================================================= */
.app-sidebar .classified-menu .menu-home,
.app-sidebar .classified-menu .menu-group>summary{
  min-height:46px;
}

.app-sidebar .classified-menu .menu-home b,
.app-sidebar .classified-menu .menu-group>summary b{
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:720!important;
}

.app-sidebar .classified-menu .menu-group-items a{
  min-height:35px!important;
  padding-top:9px!important;
  padding-bottom:9px!important;
  font-size:11px!important;
  line-height:1.45!important;
}

.app-sidebar .classified-menu .menu-section-label{
  margin-top:10px!important;
  margin-bottom:4px!important;
  padding-top:8px!important;
  padding-bottom:4px!important;
  font-size:9px!important;
  line-height:1.35!important;
  font-weight:850!important;
  letter-spacing:.075em!important;
}

.app-sidebar .classified-menu .menu-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 21px!important;
  width:21px!important;
  height:21px!important;
}

.app-sidebar .classified-menu .menu-icon svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.app-sidebar .classified-menu .menu-group-items{
  gap:3px!important;
}

@media(max-width:960px){
  .app-sidebar .classified-menu .menu-home b,
  .app-sidebar .classified-menu .menu-group>summary b{
    font-size:12px!important;
  }

  .app-sidebar .classified-menu .menu-group-items a{
    font-size:11px!important;
  }

  .app-sidebar .classified-menu .menu-section-label{
    font-size:9px!important;
  }
}


/* =========================================================
   Default UI Scale 125% — sidebar-safe layout
   Sidebar remains unscaled; only workspace content is enlarged.
   ========================================================= */
@media screen and (min-width:1100px){
  :root{
    --cc-default-ui-scale:1.25;
    --cc-default-ui-inverse:80%;
  }

  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  body{
    zoom:1!important;
  }

  /* Keep sidebar at its original stable dimensions */
  .app-sidebar{
    zoom:1!important;
    width:var(--cc-sidebar,260px)!important;
    max-width:var(--cc-sidebar,260px)!important;
  }

  /* Workspace starts after the actual sidebar width */
  .app-workspace{
    zoom:1!important;
    width:calc(100% - var(--cc-sidebar,260px))!important;
    max-width:calc(100% - var(--cc-sidebar,260px))!important;
    margin-left:var(--cc-sidebar,260px)!important;
    overflow-x:hidden!important;
  }

  /*
   * Scale workspace children only.
   * Width is compensated to keep the rendered result inside the viewport.
   */
  .app-topbar,
  .app-main{
    width:var(--cc-default-ui-inverse)!important;
    max-width:var(--cc-default-ui-inverse)!important;
    min-width:0!important;
    zoom:var(--cc-default-ui-scale);
    box-sizing:border-box;
  }

  .app-topbar{
    margin-left:0!important;
  }

  .app-main{
    overflow-x:hidden!important;
  }

  .app-main>*,
  .app-main section,
  .app-main article,
  .app-main form,
  .app-main div{
    min-width:0;
    max-width:100%;
  }

  .app-main .table-wrap,
  .app-main .table-responsive,
  .app-main .responsive-table,
  .app-main [class*="table-wrap"],
  .app-main [class*="table-scroll"]{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
  }

  .app-main img,
  .app-main svg,
  .app-main canvas{
    max-width:100%;
  }
}

@media screen and (max-width:1099px){
  .app-sidebar,
  .app-workspace,
  .app-topbar,
  .app-main{
    zoom:1!important;
  }

  .app-workspace,
  .app-topbar,
  .app-main{
    width:auto!important;
    max-width:none!important;
  }
}

@media print{
  .app-sidebar,
  .app-workspace,
  .app-topbar,
  .app-main{
    zoom:1!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* =========================================================
   Full-Width Topbar + Risk Register Navy-Gold Alignment
   ========================================================= */
@media screen and (min-width:1100px){
  /* Keep the blue topbar full width inside the workspace */
  .app-topbar{
    width:100%!important;
    max-width:100%!important;
    zoom:1!important;
    transform:none!important;
  }

  /* Preserve readable topbar typography without shrinking its width */
  .app-topbar .topbar-product strong{
    font-size:15px!important;
  }

  .app-topbar .topbar-product span,
  .app-topbar .topbar-status,
  .app-topbar .topbar-action{
    font-size:12px!important;
  }

  /* Continue scaling only the content area */
  .app-main{
    width:var(--cc-default-ui-inverse)!important;
    max-width:var(--cc-default-ui-inverse)!important;
    zoom:var(--cc-default-ui-scale);
  }
}

/* Risk Register — unified navy/gold visual language */
@media screen{
  .risk-register-page{
    --rr-navy:#0a2f66;
    --rr-navy-deep:#071f48;
    --rr-navy-soft:#eaf1fb;
    --rr-gold:#d7b04a;
    --rr-gold-soft:#fff6d8;
    --rr-text:#24364c;
    --rr-muted:#66778c;
    --rr-line:#d6e0ec;
  }

  .risk-register-page .ra-hero,
  .risk-register-page .risk-register-hero{
    background:
      radial-gradient(circle at top right,rgba(215,176,74,.18),transparent 34%),
      linear-gradient(135deg,var(--rr-navy),var(--rr-navy-deep))!important;
    border-color:rgba(215,176,74,.28)!important;
    color:#fff!important;
  }

  .risk-register-page .ra-hero span,
  .risk-register-page .risk-register-hero span{
    color:#f0d476!important;
  }

  .risk-register-page .ra-hero h1,
  .risk-register-page .risk-register-hero h1,
  .risk-register-page .ra-hero p,
  .risk-register-page .risk-register-hero p{
    color:#fff!important;
  }

  .risk-register-page .ra-hero .primary,
  .risk-register-page .risk-register-hero .primary{
    background:var(--rr-gold)!important;
    border-color:var(--rr-gold)!important;
    color:#15243a!important;
  }

  .risk-register-page .ra-hero .secondary,
  .risk-register-page .risk-register-hero .secondary{
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.34)!important;
    color:#fff!important;
  }

  .risk-register-page .risk-register-rule{
    border:1px solid rgba(215,176,74,.42)!important;
    border-left:4px solid var(--rr-gold)!important;
    background:var(--rr-gold-soft)!important;
    color:var(--rr-text)!important;
  }

  .risk-register-page .risk-register-rule strong{
    color:var(--rr-navy)!important;
  }

  .risk-register-page .ra-kpis article,
  .risk-register-page .register-kpis article{
    border-color:var(--rr-line)!important;
    background:#fff!important;
  }

  .risk-register-page .ra-kpis article::before,
  .risk-register-page .register-kpis article::before{
    background:var(--rr-gold)!important;
  }

  .risk-register-page .ra-kpis article span,
  .risk-register-page .register-kpis article span{
    color:var(--rr-muted)!important;
  }

  .risk-register-page .ra-kpis article strong,
  .risk-register-page .register-kpis article strong{
    color:var(--rr-navy)!important;
  }

  .risk-register-page .ra-kpis article small,
  .risk-register-page .register-kpis article small{
    color:var(--rr-muted)!important;
  }

  /* Remove green emphasis from register KPI cards */
  .risk-register-page .ra-kpis article.high,
  .risk-register-page .ra-kpis article.critical,
  .risk-register-page .register-kpis article.high,
  .risk-register-page .register-kpis article.critical{
    background:#fff!important;
    border-color:var(--rr-line)!important;
  }

  .risk-register-page .ra-kpis article.high::before,
  .risk-register-page .ra-kpis article.critical::before,
  .risk-register-page .register-kpis article.high::before,
  .risk-register-page .register-kpis article.critical::before{
    background:var(--rr-gold)!important;
  }

  .risk-register-page .ra-panel,
  .risk-register-page .ra-register{
    border-color:var(--rr-line)!important;
    background:#fff!important;
  }

  .risk-register-page .ra-panel-head span{
    color:#a77f18!important;
  }

  .risk-register-page .ra-panel-head h2{
    color:var(--rr-navy)!important;
  }

  .risk-register-page .ra-filter-grid label span{
    color:var(--rr-text)!important;
  }

  .risk-register-page .ra-filter-grid input,
  .risk-register-page .ra-filter-grid select{
    border-color:#c8d5e4!important;
    background:#fff!important;
    color:var(--rr-text)!important;
  }

  .risk-register-page .ra-filter-grid input:focus,
  .risk-register-page .ra-filter-grid select:focus{
    border-color:var(--rr-navy)!important;
    box-shadow:0 0 0 3px rgba(10,47,102,.10)!important;
  }

  .risk-register-page .ra-filter-grid .secondary,
  .risk-register-page .ra-clear-filter{
    border-color:var(--rr-navy)!important;
    color:var(--rr-navy)!important;
    background:#fff!important;
  }

  .risk-register-page table thead th{
    background:var(--rr-navy)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.10)!important;
  }

  .risk-register-page table tbody tr:hover{
    background:var(--rr-navy-soft)!important;
  }

  .risk-register-page table a{
    color:var(--rr-navy)!important;
  }

  .risk-register-page .badge,
  .risk-register-page .pill,
  .risk-register-page [class*="rating"],
  .risk-register-page [class*="status"]{
    border-color:rgba(215,176,74,.40)!important;
    background:var(--rr-gold-soft)!important;
    color:#74580e!important;
  }

  .risk-register-page .ra-empty{
    border-color:var(--rr-line)!important;
    background:var(--rr-navy-soft)!important;
  }

  .risk-register-page .ra-empty strong{
    color:var(--rr-navy)!important;
  }
}


/* =========================================================
   Dashboard Header Cleanup + Reduced Content Gutters
   ========================================================= */
@media screen{
  /* Use more of the available workspace without changing UI scale */
  .app-main{
    padding-left:8px!important;
    padding-right:10px!important;
  }

  .executive-command-center,
  .executive-overview,
  .overview-page,
  .overview-v4-page{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  /* Hero no longer reserves space for removed header buttons */
  .executive-command-center .ecc-hero{
    grid-template-columns:minmax(0,1fr)!important;
  }

  .executive-command-center .ecc-hero>div:first-child{
    width:100%!important;
    max-width:none!important;
  }

  .executive-command-center .ecc-hero-actions{
    display:none!important;
  }
}

@media screen and (max-width:1099px){
  .app-main{
    padding-left:10px!important;
    padding-right:10px!important;
  }
}


/* =========================================================
   Topbar Company Identity + Risk Header Alignment
   ========================================================= */
@media screen{
  .topbar-company{
    display:inline-flex;
    align-items:center;
    gap:7px;
    max-width:260px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px;
    font-weight:800;
    color:rgba(255,255,255,.92);
  }

  .topbar-company svg{
    width:17px;
    height:17px;
    flex:0 0 auto;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  /* Risk Register header uses the exact Risk Assessment visual style */
  .risk-register-page .ra-hero,
  .risk-register-page .risk-register-hero{
    background:linear-gradient(135deg,#092d72,#0b61c9)!important;
    border-color:transparent!important;
    color:#fff!important;
  }

  .risk-register-page .ra-hero span,
  .risk-register-page .risk-register-hero span{
    color:#d9bb59!important;
  }

  .risk-register-page .ra-hero h1,
  .risk-register-page .risk-register-hero h1{
    color:#fff!important;
  }

  .risk-register-page .ra-hero p,
  .risk-register-page .risk-register-hero p{
    color:rgba(255,255,255,.78)!important;
  }

  .risk-register-page .ra-hero .primary,
  .risk-register-page .risk-register-hero .primary{
    background:#fff!important;
    border-color:#fff!important;
    color:#092d72!important;
  }

  .risk-register-page .ra-hero .secondary,
  .risk-register-page .risk-register-hero .secondary{
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.34)!important;
    color:#fff!important;
  }
}

@media screen and (max-width:760px){
  .topbar-company{
    max-width:150px;
  }
}


/* =========================================================
   Six-point refinement: gutters, pagination, CRQ header
   ========================================================= */
@media screen{
  /* Slightly reduce remaining left/right content gaps */
  .app-main{
    padding-left:4px!important;
    padding-right:6px!important;
  }

  /* CRQ header follows Risk Assessment header exactly */
  .crq-data-page .crq-ra-hero{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:20px!important;
    padding:24px!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#092d72,#0b61c9)!important;
    color:#fff!important;
  }

  .crq-data-page .crq-ra-hero .eyebrow{
    color:#d9bb59!important;
  }

  .crq-data-page .crq-ra-hero h1{
    color:#fff!important;
  }

  .crq-data-page .crq-ra-hero p{
    color:rgba(255,255,255,.78)!important;
  }

  .crq-data-page .crq-ra-hero .primary{
    background:#fff!important;
    border-color:#fff!important;
    color:#092d72!important;
  }

  .crq-data-page .crq-ra-hero .secondary{
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.34)!important;
    color:#fff!important;
  }

  .ra-pagination{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:6px;
    margin-top:14px;
  }

  .ra-pagination a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:32px;
    min-height:32px;
    padding:6px 10px;
    border:1px solid #cbd7e6;
    border-radius:7px;
    background:#fff;
    color:#092d72;
    font-size:10px;
    font-weight:800;
    text-decoration:none;
  }

  .ra-pagination a:hover,
  .ra-pagination a.active{
    border-color:#092d72;
    background:#092d72;
    color:#fff;
  }
}

@media screen and (max-width:850px){
  .crq-data-page .crq-ra-hero{
    flex-direction:column!important;
  }

  .ra-pagination{
    justify-content:flex-start;
  }
}

/* =========================================================
   Issue Folder Detail — executive clean restyle
   ========================================================= */
@media screen{
  body.resource-issue_folders .premium-detail-content{
    display:grid!important;
    gap:14px!important;
  }

  body.resource-issue_folders .issue-folder-detail{
    display:grid!important;
    gap:14px!important;
    min-width:0!important;
  }

  body.resource-issue_folders .issue-folder-detail-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 150px!important;
    gap:18px!important;
    align-items:center!important;
    padding:22px 24px!important;
    border:1px solid var(--cc-line)!important;
    border-left:5px solid var(--cc-gold)!important;
    border-radius:14px!important;
    background:var(--cc-surface)!important;
    box-shadow:0 6px 18px rgba(20,55,96,.055)!important;
  }

  body.resource-issue_folders .issue-folder-detail-header>div:first-child>span{
    display:block!important;
    margin-bottom:5px!important;
    color:var(--cc-gold-700)!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.10em!important;
  }

  body.resource-issue_folders .issue-folder-detail-header h1{
    margin:0 0 6px!important;
    color:var(--cc-blue)!important;
    font-size:27px!important;
    line-height:1.18!important;
  }

  body.resource-issue_folders .issue-folder-detail-header p{
    max-width:840px!important;
    margin:0!important;
    color:var(--cc-muted)!important;
    font-size:11px!important;
    line-height:1.6!important;
  }

  body.resource-issue_folders .issue-folder-detail-header>div:last-child{
    display:grid!important;
    place-items:center!important;
    min-height:105px!important;
    padding:14px!important;
    border:1px solid var(--cc-line)!important;
    border-radius:12px!important;
    background:var(--cc-surface-2)!important;
    text-align:center!important;
  }

  body.resource-issue_folders .issue-folder-detail-header>div:last-child strong{
    color:var(--cc-blue)!important;
    font-size:30px!important;
    line-height:1!important;
  }

  body.resource-issue_folders .issue-folder-detail-header>div:last-child small{
    margin-top:6px!important;
    color:var(--cc-muted)!important;
    font-size:9px!important;
    font-weight:700!important;
  }

  body.resource-issue_folders .issue-folder-detail-meta{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }

  body.resource-issue_folders .issue-folder-detail-meta>div{
    padding:14px!important;
    border:1px solid var(--cc-line)!important;
    border-radius:11px!important;
    background:var(--cc-surface)!important;
  }

  body.resource-issue_folders .issue-folder-detail-meta span,
  body.resource-issue_folders .issue-folder-detail-meta strong{
    display:block!important;
  }

  body.resource-issue_folders .issue-folder-detail-meta span{
    color:var(--cc-muted)!important;
    font-size:9px!important;
    font-weight:800!important;
  }

  body.resource-issue_folders .issue-folder-detail-meta strong{
    margin-top:5px!important;
    color:var(--cc-blue)!important;
    font-size:12px!important;
  }

  body.resource-issue_folders .issue-folder-detail-section{
    padding:18px!important;
    border:1px solid var(--cc-line)!important;
    border-radius:13px!important;
    background:var(--cc-surface)!important;
    box-shadow:0 5px 16px rgba(20,55,96,.04)!important;
  }

  body.resource-issue_folders .issue-folder-detail-section>header{
    display:flex!important;
    justify-content:space-between!important;
    gap:16px!important;
    align-items:flex-end!important;
    margin-bottom:13px!important;
    padding-bottom:12px!important;
    border-bottom:1px solid var(--cc-line)!important;
  }

  body.resource-issue_folders .issue-folder-detail-section h2{
    margin:0 0 3px!important;
    color:var(--cc-blue)!important;
    font-size:18px!important;
  }

  body.resource-issue_folders .issue-folder-detail-section header p{
    margin:0!important;
    color:var(--cc-muted)!important;
    font-size:10px!important;
  }

  body.resource-issue_folders .issue-folder-issues-table{
    min-width:1050px!important;
  }

  body.resource-issue_folders .issue-folder-detail-footer{
    display:flex!important;
    justify-content:flex-end!important;
    gap:8px!important;
    padding-top:2px!important;
  }
}

/* =========================================================
   IT Governance Register — four-column card layout
   ========================================================= */
@media screen and (min-width:1300px){
  body.page-it-governance-register .responsive-data-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:stretch!important;
  }

  body.page-it-governance-register .data-record-card{
    min-width:0!important;
    height:100%!important;
  }
}

@media screen and (min-width:900px) and (max-width:1299px){
  body.page-it-governance-register .responsive-data-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media screen and (max-width:899px){
  body.page-it-governance-register .responsive-data-grid{
    grid-template-columns:1fr!important;
  }

  body.resource-issue_folders .issue-folder-detail-header,
  body.resource-issue_folders .issue-folder-detail-meta{
    grid-template-columns:1fr!important;
  }

  body.resource-issue_folders .issue-folder-detail-footer{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
}


/* =========================================================
   Professional Register Table Standard
   Balanced readability, hierarchy, density, and status clarity.
   ========================================================= */
@media screen{
  body.table-ui-risk-register-standard{
    --tbl-navy:#0b2f63;
    --tbl-navy-soft:#eef3f9;
    --tbl-line:#d9e1ea;
    --tbl-row:#ffffff;
    --tbl-row-hover:#f4f7fb;
    --tbl-text:#27384d;
    --tbl-muted:#6d7d91;
  }

  body.table-ui-risk-register-standard .app-main table{
    width:100%!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    border:1px solid var(--tbl-line)!important;
    border-radius:10px!important;
    overflow:hidden!important;
    background:var(--tbl-row)!important;
    box-shadow:0 2px 8px rgba(24,52,88,.035)!important;
  }

  body.table-ui-risk-register-standard .app-main table thead th{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    padding:10px 11px!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.08)!important;
    background:var(--tbl-navy)!important;
    color:#fff!important;
    font-size:9px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
    text-align:left!important;
    vertical-align:middle!important;
    white-space:normal!important;
  }

  body.table-ui-risk-register-standard .app-main table thead th:last-child{
    border-right:0!important;
  }

  body.table-ui-risk-register-standard .app-main table tbody td{
    padding:10px 11px!important;
    border:0!important;
    border-bottom:1px solid var(--tbl-line)!important;
    background:var(--tbl-row)!important;
    color:var(--tbl-text)!important;
    font-size:10px!important;
    font-weight:400!important;
    line-height:1.45!important;
    vertical-align:top!important;
  }

  body.table-ui-risk-register-standard .app-main table tbody tr:last-child td{
    border-bottom:0!important;
  }

  body.table-ui-risk-register-standard .app-main table tbody tr:hover td{
    background:var(--tbl-row-hover)!important;
  }

  body.table-ui-risk-register-standard .app-main table td strong,
  body.table-ui-risk-register-standard .app-main table td b{
    display:block!important;
    color:var(--tbl-text)!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.4!important;
  }

  body.table-ui-risk-register-standard .app-main table td small{
    display:block!important;
    margin-top:3px!important;
    color:var(--tbl-muted)!important;
    font-size:8.5px!important;
    line-height:1.4!important;
  }

  body.table-ui-risk-register-standard .app-main table td a{
    color:var(--tbl-navy)!important;
    font-size:inherit!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  body.table-ui-risk-register-standard .app-main table td a:hover{
    text-decoration:underline!important;
  }

  body.table-ui-risk-register-standard .app-main table .badge,
  body.table-ui-risk-register-standard .app-main table .pill,
  body.table-ui-risk-register-standard .app-main table .status,
  body.table-ui-risk-register-standard .app-main table [class*="badge"],
  body.table-ui-risk-register-standard .app-main table [class*="pill"],
  body.table-ui-risk-register-standard .app-main table [class*="rating"],
  body.table-ui-risk-register-standard .app-main table [class*="stage"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:22px!important;
    padding:3px 7px!important;
    border-radius:999px!important;
    font-size:8.5px!important;
    font-weight:800!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  body.table-ui-risk-register-standard .app-main table .critical,
  body.table-ui-risk-register-standard .app-main table [class*="critical"]{
    background:#f9dddd!important;
    color:#992b2b!important;
  }

  body.table-ui-risk-register-standard .app-main table .high,
  body.table-ui-risk-register-standard .app-main table [class*="high"]{
    background:#fde7d7!important;
    color:#a5531b!important;
  }

  body.table-ui-risk-register-standard .app-main table .medium,
  body.table-ui-risk-register-standard .app-main table [class*="medium"]{
    background:#fff2c8!important;
    color:#876708!important;
  }

  body.table-ui-risk-register-standard .app-main table .low,
  body.table-ui-risk-register-standard .app-main table [class*="low"]{
    background:#e3f4e8!important;
    color:#287044!important;
  }

  body.table-ui-risk-register-standard .app-main .ra-table-wrap,
  body.table-ui-risk-register-standard .app-main .table-wrap,
  body.table-ui-risk-register-standard .app-main .table-responsive,
  body.table-ui-risk-register-standard .app-main .responsive-table,
  body.table-ui-risk-register-standard .app-main [class*="table-wrap"],
  body.table-ui-risk-register-standard .app-main [class*="table-scroll"]{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    border-radius:10px!important;
    -webkit-overflow-scrolling:touch;
  }

  body.table-ui-risk-register-standard .app-main table button,
  body.table-ui-risk-register-standard .app-main table .btn,
  body.table-ui-risk-register-standard .app-main table .button{
    min-height:28px!important;
    padding:5px 8px!important;
    font-size:9px!important;
  }
}

@media print{
  body.table-ui-risk-register-standard .app-main table,
  body.table-ui-risk-register-standard .app-main table th,
  body.table-ui-risk-register-standard .app-main table td{
    box-shadow:none!important;
  }
}


/* =========================================================
   Transparent Table Header + High-Contrast Table Actions
   ========================================================= */
@media screen{
  body.table-ui-risk-register-standard .app-main table{
    border-color:var(--tbl-line)!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.table-ui-risk-register-standard .app-main table thead th{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    padding:10px 11px!important;
    border-right:0!important;
    border-bottom:1px solid #cfd8e3!important;
    background:rgba(238,243,249,.72)!important;
    backdrop-filter:blur(6px)!important;
    -webkit-backdrop-filter:blur(6px)!important;
    color:#52657b!important;
    font-size:9px!important;
    font-weight:850!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
  }

  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table thead th{
    background:rgba(20,34,54,.76)!important;
    border-bottom-color:rgba(255,255,255,.12)!important;
    color:#c9d5e3!important;
  }

  body.table-ui-risk-register-standard .app-main table tbody td{
    background:rgba(255,255,255,.86)!important;
  }

  body.table-ui-risk-register-standard .app-main table tbody tr:hover td{
    background:#f2f6fb!important;
  }

  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table tbody td{
    background:rgba(16,28,45,.84)!important;
  }

  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table tbody tr:hover td{
    background:rgba(31,50,75,.94)!important;
  }

  /* Default table action: white surface, navy text */
  body.table-ui-risk-register-standard .app-main table a.primary,
  body.table-ui-risk-register-standard .app-main table button.primary,
  body.table-ui-risk-register-standard .app-main table .btn-primary,
  body.table-ui-risk-register-standard .app-main table .button-primary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:29px!important;
    padding:5px 9px!important;
    border:1px solid #0b2f63!important;
    border-radius:7px!important;
    background:#0b2f63!important;
    color:#fff!important;
    font-size:9px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }

  body.table-ui-risk-register-standard .app-main table a.primary:hover,
  body.table-ui-risk-register-standard .app-main table button.primary:hover,
  body.table-ui-risk-register-standard .app-main table .btn-primary:hover,
  body.table-ui-risk-register-standard .app-main table .button-primary:hover{
    background:#071f48!important;
    border-color:#071f48!important;
    color:#fff!important;
    text-decoration:none!important;
  }

  /* Secondary action: white background, clearly visible navy text */
  body.table-ui-risk-register-standard .app-main table a.secondary,
  body.table-ui-risk-register-standard .app-main table button.secondary,
  body.table-ui-risk-register-standard .app-main table .btn-secondary,
  body.table-ui-risk-register-standard .app-main table .button-secondary,
  body.table-ui-risk-register-standard .app-main table a.compact-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:29px!important;
    padding:5px 9px!important;
    border:1px solid #b9c7d8!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#0b2f63!important;
    font-size:9px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }

  body.table-ui-risk-register-standard .app-main table a.secondary:hover,
  body.table-ui-risk-register-standard .app-main table button.secondary:hover,
  body.table-ui-risk-register-standard .app-main table .btn-secondary:hover,
  body.table-ui-risk-register-standard .app-main table .button-secondary:hover,
  body.table-ui-risk-register-standard .app-main table a.compact-button:hover{
    background:#eef3f9!important;
    border-color:#0b2f63!important;
    color:#071f48!important;
    text-decoration:none!important;
  }

  /* Generic action links that do not carry a button class */
  body.table-ui-risk-register-standard .app-main table td:last-child>a:not(.primary):not(.secondary),
  body.table-ui-risk-register-standard .app-main table .action-cell>a:not(.primary):not(.secondary),
  body.table-ui-risk-register-standard .app-main table [class*="action"]>a:not(.primary):not(.secondary){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:27px!important;
    padding:4px 8px!important;
    border:1px solid #b9c7d8!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#0b2f63!important;
    font-size:8.5px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-decoration:none!important;
  }

  body.table-ui-risk-register-standard .app-main table td:last-child>a:not(.primary):not(.secondary):hover,
  body.table-ui-risk-register-standard .app-main table .action-cell>a:not(.primary):not(.secondary):hover,
  body.table-ui-risk-register-standard .app-main table [class*="action"]>a:not(.primary):not(.secondary):hover{
    background:#0b2f63!important;
    border-color:#0b2f63!important;
    color:#fff!important;
    text-decoration:none!important;
  }

  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table a.secondary,
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table button.secondary,
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table .btn-secondary,
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table .button-secondary,
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table a.compact-button,
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table td:last-child>a:not(.primary):not(.secondary),
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table .action-cell>a:not(.primary):not(.secondary),
  html[data-theme="dark"]
  body.table-ui-risk-register-standard .app-main table [class*="action"]>a:not(.primary):not(.secondary){
    background:#172b45!important;
    border-color:#536b88!important;
    color:#f4f7fb!important;
  }
}


/* =========================================================
   Risk Assessment vs Risk Register Detail Separation
   ========================================================= */
@media screen{
  .reassessment-source-banner,
  .risk-register-authority-note{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:13px 15px;
    border:1px solid #e4cf85;
    border-left:4px solid #d9bb59;
    border-radius:10px;
    background:#fff9e8;
    color:#425166;
  }

  .reassessment-source-banner{
    margin-bottom:14px;
  }

  .reassessment-source-banner strong,
  .risk-register-authority-note strong{
    color:#0b2f63;
    font-size:11px;
    white-space:nowrap;
  }

  .reassessment-source-banner span,
  .risk-register-authority-note span{
    font-size:10px;
    line-height:1.5;
  }

  .risk-register-detail-page{
    display:grid;
    gap:14px;
  }

  .risk-register-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1.8fr) minmax(290px,.7fr);
    gap:14px;
    align-items:start;
  }

  .risk-register-detail-grid>main,
  .risk-register-detail-grid>aside{
    display:grid;
    gap:14px;
    min-width:0;
  }

  .register-detail-kpis{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }

  .register-position-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin-top:12px;
  }

  .register-position-grid>div,
  .register-side-list>div{
    padding:11px;
    border:1px solid var(--cc-line);
    border-radius:9px;
    background:var(--cc-surface-2);
  }

  .register-position-grid span,
  .register-position-grid strong,
  .register-side-list span,
  .register-side-list strong{
    display:block;
  }

  .register-position-grid span,
  .register-side-list span{
    color:var(--cc-muted);
    font-size:8.5px;
    font-weight:800;
  }

  .register-position-grid strong,
  .register-side-list strong{
    margin-top:4px;
    color:var(--cc-blue);
    font-size:10.5px;
  }

  .register-side-list,
  .register-version-list{
    display:grid;
    gap:8px;
  }

  .register-version-list a{
    display:grid;
    gap:3px;
    padding:10px;
    border:1px solid var(--cc-line);
    border-radius:9px;
    background:var(--cc-surface-2);
    text-decoration:none;
  }

  .register-version-list a.current{
    border-left:4px solid var(--cc-gold);
    background:#fff9e8;
  }

  .register-version-list strong{
    color:var(--cc-blue);
    font-size:10px;
  }

  .register-version-list span,
  .register-version-list small{
    color:var(--cc-muted);
    font-size:8.5px;
  }
}

@media screen and (max-width:1200px){
  .register-detail-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .register-position-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media screen and (max-width:850px){
  .risk-register-detail-grid{
    grid-template-columns:1fr;
  }

  .register-detail-kpis,
  .register-position-grid{
    grid-template-columns:1fr!important;
  }

  .reassessment-source-banner,
  .risk-register-authority-note{
    flex-direction:column;
  }
}


/* =========================================================
   Dedicated Risk Assessment and Risk Register routes
   ========================================================= */
@media screen{
  .assessment-workspace-detail .ra-hero{
    background:linear-gradient(135deg,#092d72,#0b61c9)!important;
  }

  .assessment-workspace-detail .ra-panel{
    border-left:3px solid transparent;
  }

  .assessment-workspace-detail .ra-panel:hover{
    border-left-color:#0b61c9;
  }

  .risk-register-detail-page .risk-register-detail-hero{
    background:
      radial-gradient(
        circle at top right,
        rgba(217,187,89,.18),
        transparent 34%
      ),
      linear-gradient(135deg,#071f48,#0b2f63)!important;
  }

  .risk-register-detail-page .risk-register-authority-note{
    border-left-color:#d9bb59!important;
    background:#fff9e8!important;
  }

  .risk-register-detail-page .register-side-list strong,
  .risk-register-detail-page .register-position-grid strong{
    color:#0b2f63!important;
  }
}

@media screen{
.treatment-execution-builder{margin-top:13px}
.treatment-execution-builder>summary{cursor:pointer;color:var(--cc-blue);font-size:10px;font-weight:850}
.treatment-execution-builder [hidden]{display:none!important}
.treatment-execution-guidance{padding:10px 12px;border:1px solid var(--cc-line);border-left:3px solid var(--cc-gold);border-radius:8px;background:var(--cc-surface-2);color:var(--cc-muted);font-size:9px}
.treatment-title-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.treatment-execution-type{display:inline-flex;padding:3px 7px;border:1px solid #c7d4e4;border-radius:999px;background:#eef3f9;color:#0b2f63;font-size:8px;font-weight:850}
.treatment-reference-link{display:inline-flex;margin:5px 0 2px;color:#0b61c9;font-size:9px;font-weight:800;text-decoration:none}
.treatment-reference-link:hover{text-decoration:underline}
}

@media screen{
.ai-risk-launch,.ai-rating-toolbar button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 11px;border:1px solid #d9bb59;border-radius:8px;background:#fff9e8;color:#0b2f63;font-size:10px;font-weight:850}
.ai-risk-launch span,.ai-rating-toolbar button span{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#0b2f63;color:#fff;font-size:8px}
.ai-risk-assistant{padding:18px;border:1px solid #d9bb59;border-radius:12px;background:#fff9e8}
.ai-risk-assistant-head{display:flex;justify-content:space-between;gap:12px}
.ai-risk-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.ai-risk-input-grid .wide{grid-column:span 2}
.ai-risk-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px}
.ai-rating-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ai-rating-toolbar small{color:var(--cc-muted);font-size:9px}
.linked-control-selector{padding:14px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface-2)}
.linked-control-selector header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.linked-control-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto}
.linked-control-options label{display:flex!important;gap:8px;padding:9px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface)}
.linked-control-options input{width:auto!important;min-height:0!important}
.linked-control-options strong,.linked-control-options small{display:block}.linked-control-options strong{font-size:10px}.linked-control-options small{font-size:8.5px;color:var(--cc-muted)}
.control-inventory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.control-inventory-card{display:grid;gap:8px;padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface);color:inherit;text-decoration:none}
.control-inventory-card header{display:flex;justify-content:space-between}.control-inventory-card h2{font-size:14px;color:var(--cc-blue)}.control-inventory-card p{font-size:9px;color:var(--cc-muted)}
.control-inventory-card div span,.control-inventory-card div strong{display:block}.control-inventory-card div span{font-size:8px;color:var(--cc-muted)}.control-inventory-card div strong{font-size:10px}
.control-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.control-form-grid .span-2{grid-column:span 2}.control-form-grid .span-3{grid-column:span 3}
.control-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.control-detail-grid div{padding:13px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface)}.control-detail-grid span,.control-detail-grid strong{display:block}.control-detail-grid span{font-size:8.5px;color:var(--cc-muted)}.control-detail-grid strong{margin-top:4px;font-size:11px;color:var(--cc-blue)}
.linked-control-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.linked-control-list a{display:grid;gap:3px;padding:10px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface-2);text-decoration:none}.linked-control-list span{font-size:8px;color:var(--cc-gold-700)}.linked-control-list strong{font-size:10px;color:var(--cc-blue)}.linked-control-list small{font-size:8.5px;color:var(--cc-muted)}
}
@media(max-width:900px){.control-inventory-grid,.control-detail-grid,.linked-control-list,.linked-control-options,.control-form-grid,.ai-risk-input-grid{grid-template-columns:1fr!important}.control-form-grid .span-2,.control-form-grid .span-3,.ai-risk-input-grid .wide{grid-column:auto}}

/* =========================================================
   Risk Assessment AI Modal, Control Multi-select,
   and Risk Register Threat/Vulnerability Highlight
   ========================================================= */
@media screen{
body.modal-open{overflow:hidden}
.ai-risk-modal[hidden]{display:none!important}
.ai-risk-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:22px}
.ai-risk-modal-backdrop{position:absolute;inset:0;background:rgba(5,18,38,.62);backdrop-filter:blur(4px)}
.ai-risk-modal-card{position:relative;z-index:1;width:min(920px,96vw);max-height:90vh;overflow:auto;padding:22px;border:1px solid rgba(217,187,89,.75);border-radius:16px;background:var(--cc-surface);box-shadow:0 30px 80px rgba(0,0,0,.25)}
.ai-risk-modal-card>header{display:flex;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid var(--cc-line)}
.ai-risk-modal-card>header span{font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}
.ai-risk-modal-card>header h2{margin:5px 0;font-size:23px;color:var(--cc-blue)}
.ai-risk-modal-card>header p{margin:0;max-width:700px;font-size:10px;line-height:1.55;color:var(--cc-muted)}
.ai-risk-modal-card>header button{width:34px;height:34px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface-2);color:var(--cc-blue);font-size:20px}
.ai-risk-modal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:16px}
.ai-risk-modal-grid .wide{grid-column:span 2}
.ai-risk-modal-grid label{display:grid;gap:5px}.ai-risk-modal-grid label>span{font-size:9px;font-weight:800;color:var(--cc-muted)}
.ai-risk-modal-grid input,.ai-risk-modal-grid select,.ai-risk-modal-grid textarea{width:100%;padding:10px;border:1px solid var(--cc-line-strong);border-radius:8px;background:var(--cc-surface);font-size:11px}
.ai-risk-modal-safety{display:flex;gap:8px;margin-top:13px;padding:11px;border-left:3px solid var(--cc-gold);background:#fff9e8;font-size:9px;color:#5e6878}
.ai-risk-modal-card>footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:16px}
.ai-risk-modal-card>footer>span{font-size:9px;color:var(--cc-muted)}

.control-multiselect-shell{padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface-2)}
.control-multiselect-shell header{display:flex;justify-content:space-between;gap:14px;margin-bottom:10px}
.control-multiselect-shell header span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.control-multiselect-shell header strong{display:block;margin-top:3px;font-size:13px;color:var(--cc-blue)}
.control-multiselect-shell header p{margin:3px 0 0;font-size:9px;color:var(--cc-muted)}
.control-multiselect-shell input[type=search]{width:100%;margin-bottom:8px;padding:9px 10px;border:1px solid var(--cc-line-strong);border-radius:8px;font-size:10px}
.control-multiselect-shell select[multiple]{width:100%;min-height:230px;padding:4px;border:1px solid var(--cc-line-strong);border-radius:8px;background:var(--cc-surface);font-size:10px;line-height:1.45}
.control-multiselect-shell select[multiple] option{padding:8px;border-bottom:1px solid var(--cc-line)}
.control-multiselect-shell select[multiple] option:checked{background:#0b61c9 linear-gradient(0deg,#0b61c9,#0b61c9);color:#fff}
.control-multiselect-shell>small{display:block;margin-top:7px;font-size:8.5px;color:var(--cc-muted)}

.threat-vulnerability-form-section{border-top:3px solid #d9bb59!important}
.risk-analysis-highlight-grid,.register-tv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.risk-analysis-highlight-grid article,.register-tv-grid article{padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface)}
.risk-analysis-highlight-grid article.threat,.register-tv-grid .threat-card{border-left:4px solid #b52d2d}
.risk-analysis-highlight-grid article.vulnerability,.register-tv-grid .vulnerability-card{border-left:4px solid #d49a18}
.risk-analysis-highlight-grid article.consequence,.register-tv-grid .consequence-card{border-left:4px solid #0b61c9}
.risk-analysis-highlight-grid span,.register-tv-grid article>span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-muted)}
.risk-analysis-highlight-grid strong,.register-tv-grid h3{display:block;margin:5px 0;color:var(--cc-blue);font-size:13px}
.risk-analysis-highlight-grid p,.register-tv-grid p{margin:0;font-size:9.5px;line-height:1.55;color:var(--cc-muted)}

.register-threat-vulnerability{padding:18px;border:1px solid #d8c57b;border-radius:13px;background:linear-gradient(135deg,#fffdf6,#fff9e8)}
.register-threat-vulnerability>header{margin-bottom:13px}.register-threat-vulnerability>header span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#8b6a0c}.register-threat-vulnerability>header h2{margin:4px 0;font-size:19px;color:#0b2f63}.register-threat-vulnerability>header p{margin:0;font-size:9.5px;color:#6f7885}
.register-position-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:900px){
.ai-risk-modal-grid,.risk-analysis-highlight-grid,.register-tv-grid{grid-template-columns:1fr!important}
.ai-risk-modal-grid .wide{grid-column:auto}
.register-position-grid{grid-template-columns:1fr!important}
}


/* =========================================================
   Assessment Code, Residual AI, and Control Inventory Popup
   ========================================================= */
@media screen{
  input[readonly][name="assessment_code_display"]{
    background:var(--cc-surface-2)!important;
    color:var(--cc-muted)!important;
    cursor:not-allowed;
  }

  .residual-ai-toolbar{
    padding:10px 12px;
    border:1px solid #c7d4e4;
    border-left:3px solid #0b61c9;
    border-radius:9px;
    background:#f4f8fd;
  }

  .control-inventory-popup-launch{
    min-height:30px;
    padding:6px 10px;
    border:1px solid #0b2f63;
    border-radius:7px;
    background:#fff;
    color:#0b2f63;
    font-size:9px;
    font-weight:850;
  }

  .control-inventory-modal[hidden]{
    display:none!important;
  }

  .control-inventory-modal{
    position:fixed;
    inset:0;
    z-index:10000;
    display:grid;
    place-items:center;
    padding:22px;
  }

  .control-inventory-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(5,18,38,.62);
    backdrop-filter:blur(4px);
  }

  .control-inventory-modal-card{
    position:relative;
    z-index:1;
    width:min(1050px,96vw);
    max-height:90vh;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    gap:12px;
    padding:20px;
    border:1px solid rgba(217,187,89,.72);
    border-radius:16px;
    background:var(--cc-surface);
    box-shadow:0 30px 80px rgba(0,0,0,.25);
  }

  .control-inventory-modal-card>header{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding-bottom:12px;
    border-bottom:1px solid var(--cc-line);
  }

  .control-inventory-modal-card>header span{
    font-size:8px;
    font-weight:900;
    letter-spacing:.1em;
    color:var(--cc-gold-700);
  }

  .control-inventory-modal-card>header h2{
    margin:4px 0;
    color:var(--cc-blue);
    font-size:21px;
  }

  .control-inventory-modal-card>header p{
    margin:0;
    color:var(--cc-muted);
    font-size:9.5px;
  }

  .control-inventory-modal-card>header button{
    width:34px;
    height:34px;
    border:1px solid var(--cc-line);
    border-radius:8px;
    background:var(--cc-surface-2);
    color:var(--cc-blue);
    font-size:20px;
  }

  .control-inventory-modal-card>input[type=search]{
    width:100%;
    padding:10px;
    border:1px solid var(--cc-line-strong);
    border-radius:8px;
    font-size:10px;
  }

  .control-inventory-popup-list{
    min-height:0;
    overflow:auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    padding-right:4px;
  }

  .control-inventory-popup-list label{
    display:flex;
    gap:9px;
    padding:11px;
    border:1px solid var(--cc-line);
    border-radius:9px;
    background:var(--cc-surface-2);
  }

  .control-inventory-popup-list label:hover{
    border-color:#0b61c9;
    background:#f4f8fd;
  }

  .control-inventory-popup-list input{
    width:auto!important;
    min-height:0!important;
    margin-top:2px;
  }

  .control-inventory-popup-list strong,
  .control-inventory-popup-list small,
  .control-inventory-popup-list em{
    display:block;
  }

  .control-inventory-popup-list strong{
    color:var(--cc-blue);
    font-size:10px;
  }

  .control-inventory-popup-list small{
    margin-top:3px;
    color:var(--cc-muted);
    font-size:8.5px;
  }

  .control-inventory-popup-list em{
    margin-top:4px;
    color:var(--cc-gold-700);
    font-size:8px;
    font-style:normal;
  }

  .control-inventory-modal-card>footer{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:9px;
    padding-top:12px;
    border-top:1px solid var(--cc-line);
  }

  .control-inventory-modal-card>footer>span{
    margin-right:auto;
    color:var(--cc-muted);
    font-size:9px;
  }
}

@media screen and (max-width:800px){
  .control-inventory-popup-list{
    grid-template-columns:1fr;
  }
}

@media screen{
.issue-panel-actions{display:flex;gap:7px}.issue-panel-actions a{font-size:8.5px;font-weight:800;color:#0b61c9;text-decoration:none}
.risk-linked-issue-list.detailed article{align-items:flex-start}
.linked-issue-main{min-width:0;flex:1}.linked-issue-title{display:flex;align-items:flex-start;gap:8px}
.issue-mapping-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:9px}
.issue-mapping-grid>div{padding:8px;border:1px solid var(--cc-line);border-radius:7px;background:var(--cc-surface-2)}
.issue-mapping-grid .wide{grid-column:span 2}.issue-mapping-grid span,.issue-mapping-grid strong{display:block}.issue-mapping-grid span{font-size:7.5px;color:var(--cc-muted)}.issue-mapping-grid strong{margin-top:3px;font-size:9px;color:var(--cc-blue)}
.issue-mapping-builder .risk-issue-link-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}
.issue-mapping-builder .span-2{grid-column:span 2}.issue-mapping-builder .span-3{grid-column:span 3}
.ai-issue-map-button{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:6px 9px;border:1px solid #d9bb59;border-radius:7px;background:#fff9e8;color:#0b2f63;font-size:9px;font-weight:850}
.ai-issue-map-button span{display:grid;place-items:center;width:20px;height:20px;border-radius:5px;background:#0b2f63;color:#fff;font-size:7px}
.inline-check{display:flex!important;align-items:center;gap:8px}.inline-check input{width:auto!important;min-height:0!important}
.common-issue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:14px}
.common-issue-grid>a{display:grid;gap:7px;padding:14px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface);color:inherit;text-decoration:none}
.common-issue-grid span{font-size:8px;font-weight:850;color:var(--cc-gold-700)}.common-issue-grid h2{font-size:13px;color:var(--cc-blue)}.common-issue-grid p{font-size:9px;color:var(--cc-muted)}.common-issue-grid div strong,.common-issue-grid div small{display:block}.common-issue-grid div strong{font-size:9px}.common-issue-grid div small{font-size:8px;color:var(--cc-muted)}
.common-issue-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.common-issue-form .span-2{grid-column:span 2}.common-issue-form .span-3{grid-column:span 3}
}
@media(max-width:900px){.issue-mapping-grid,.issue-mapping-builder .risk-issue-link-form,.common-issue-grid,.common-issue-form{grid-template-columns:1fr!important}.issue-mapping-grid .wide,.issue-mapping-builder .span-2,.issue-mapping-builder .span-3,.common-issue-form .span-2,.common-issue-form .span-3{grid-column:auto}}


/* =========================================================
   Issue Evidence Layout Refinement
   ========================================================= */
@media screen{
  .risk-issue-panel{
    overflow:visible;
  }

  .risk-issue-panel .ra-panel-head{
    align-items:flex-start;
  }

  .issue-panel-actions{
    flex-wrap:wrap;
    justify-content:flex-end;
  }

  .issue-panel-actions a{
    display:inline-flex;
    align-items:center;
    min-height:29px;
    padding:5px 9px;
    border:1px solid var(--cc-line);
    border-radius:7px;
    background:var(--cc-surface);
    color:#0b2f63;
    font-size:8.5px;
    font-weight:850;
  }

  .issue-evidence-list{
    display:grid;
    gap:12px;
  }

  .issue-evidence-card{
    display:grid!important;
    gap:0;
    padding:0!important;
    overflow:hidden;
    border:1px solid var(--cc-line)!important;
    border-radius:11px!important;
    background:var(--cc-surface)!important;
  }

  .issue-evidence-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    padding:13px 14px;
    border-bottom:1px solid var(--cc-line);
    background:linear-gradient(180deg,var(--cc-surface-2),var(--cc-surface));
  }

  .issue-evidence-identity{
    display:flex;
    align-items:flex-start;
    gap:9px;
    min-width:0;
  }

  .issue-evidence-identity a{
    display:grid;
    gap:3px;
    min-width:0;
    color:inherit;
    text-decoration:none;
  }

  .issue-evidence-identity a strong{
    color:var(--cc-gold-700);
    font-size:8.5px;
    letter-spacing:.04em;
  }

  .issue-evidence-identity a span{
    color:var(--cc-blue);
    font-size:11px;
    font-weight:850;
    line-height:1.35;
  }

  .issue-evidence-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    border-bottom:1px solid var(--cc-line);
  }

  .issue-evidence-summary>div{
    min-width:0;
    padding:10px 12px;
    border-right:1px solid var(--cc-line);
  }

  .issue-evidence-summary>div:last-child{
    border-right:0;
  }

  .issue-evidence-summary span,
  .issue-evidence-summary strong{
    display:block;
  }

  .issue-evidence-summary span{
    color:var(--cc-muted);
    font-size:7.5px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
  }

  .issue-evidence-summary strong{
    margin-top:4px;
    color:var(--cc-blue);
    font-size:9px;
    line-height:1.35;
  }

  .issue-evidence-summary strong.included{
    color:#2d7442;
  }

  .issue-evidence-summary strong.reference{
    color:#7b8797;
  }

  .issue-evidence-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);
    gap:10px;
    padding:12px;
  }

  .issue-evidence-detail{
    min-width:0;
    padding:12px;
    border:1px solid var(--cc-line);
    border-radius:9px;
    background:var(--cc-surface-2);
  }

  .issue-evidence-detail.vulnerability-detail{
    border-left:4px solid #d49a18;
  }

  .issue-evidence-detail.control-detail{
    border-left:4px solid #0b61c9;
  }

  .issue-evidence-detail.rationale-detail{
    border-left:4px solid #7b8797;
  }

  .issue-evidence-detail.full-width{
    grid-column:1/-1;
  }

  .issue-evidence-detail span{
    display:block;
    color:var(--cc-muted);
    font-size:7.5px;
    font-weight:850;
    letter-spacing:.05em;
    text-transform:uppercase;
  }

  .issue-evidence-detail p,
  .issue-evidence-detail strong{
    display:block;
    margin:5px 0 0;
    color:var(--cc-blue);
    font-size:9.5px;
    line-height:1.5;
  }

  .issue-evidence-detail small{
    display:block;
    margin-top:4px;
    color:var(--cc-muted);
    font-size:8.5px;
  }

  .issue-evidence-card .link-danger{
    min-height:28px;
    padding:5px 8px;
    border:1px solid #e4b7b7;
    border-radius:7px;
    background:#fff7f7;
    color:#a63232;
    font-size:8px;
    font-weight:850;
  }

  .register-issue-evidence-list{
    display:grid!important;
    gap:10px;
  }

  .register-issue-evidence-card{
    display:grid!important;
    gap:0!important;
    padding:0!important;
    overflow:hidden;
    border:1px solid var(--cc-line)!important;
    border-radius:10px!important;
    background:var(--cc-surface)!important;
  }

  .register-issue-topline{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:12px;
    padding:12px 13px;
    border-bottom:1px solid var(--cc-line);
    background:var(--cc-surface-2);
  }

  .register-issue-identity{
    display:flex;
    align-items:flex-start;
    gap:8px;
    min-width:0;
  }

  .register-issue-identity a{
    display:grid;
    gap:2px;
    min-width:0;
    text-decoration:none;
  }

  .register-issue-identity a strong{
    color:var(--cc-gold-700);
    font-size:8px;
  }

  .register-issue-identity a span{
    color:var(--cc-blue);
    font-size:10.5px;
    font-weight:850;
    line-height:1.35;
  }

  .register-issue-analysis{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:23px;
    padding:4px 7px;
    border-radius:999px;
    font-size:7.5px;
    font-weight:850;
    white-space:nowrap;
  }

  .register-issue-analysis.included{
    border:1px solid #b7d6c0;
    background:#f1faf4;
    color:#2d7442;
  }

  .register-issue-analysis.reference{
    border:1px solid #d3dbe4;
    background:#f6f8fa;
    color:#6f7c8c;
  }

  .register-issue-meta{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    padding:9px 12px 0;
  }

  .register-issue-meta span{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:3px 7px;
    border:1px solid var(--cc-line);
    border-radius:999px;
    background:var(--cc-surface-2);
    color:var(--cc-muted);
    font-size:7.5px;
    font-weight:800;
  }

  .register-issue-mapping{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(240px,.7fr);
    gap:9px;
    padding:10px 12px 12px;
  }

  .register-issue-mapping section{
    min-width:0;
    padding:10px 11px;
    border:1px solid var(--cc-line);
    border-radius:8px;
    background:var(--cc-surface-2);
  }

  .register-issue-mapping section:first-child{
    border-left:4px solid #d49a18;
  }

  .register-issue-mapping section:last-child{
    border-left:4px solid #0b61c9;
  }

  .register-issue-mapping span{
    display:block;
    color:var(--cc-muted);
    font-size:7.5px;
    font-weight:850;
    letter-spacing:.05em;
    text-transform:uppercase;
  }

  .register-issue-mapping p,
  .register-issue-mapping strong{
    display:block;
    margin:5px 0 0;
    color:var(--cc-blue);
    font-size:9px;
    line-height:1.5;
  }

  .register-issue-mapping small{
    display:block;
    margin-top:4px;
    color:var(--cc-muted);
    font-size:8px;
  }
}

@media screen and (max-width:980px){
  .issue-evidence-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .issue-evidence-summary>div:nth-child(2){
    border-right:0;
  }

  .issue-evidence-summary>div:nth-child(-n+2){
    border-bottom:1px solid var(--cc-line);
  }

  .issue-evidence-detail-grid,
  .register-issue-mapping{
    grid-template-columns:1fr;
  }
}

@media screen and (max-width:640px){
  .issue-evidence-card-head,
  .register-issue-topline{
    flex-direction:column;
  }

  .issue-evidence-summary{
    grid-template-columns:1fr;
  }

  .issue-evidence-summary>div{
    border-right:0;
    border-bottom:1px solid var(--cc-line);
  }

  .issue-evidence-summary>div:last-child{
    border-bottom:0;
  }

  .register-issue-analysis{
    white-space:normal;
  }
}

@media screen{
.issue-evidence-form-section{border-top:3px solid #d49a18!important}
.issue-evidence-form-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px;padding:12px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}
.issue-evidence-form-toolbar strong,.issue-evidence-form-toolbar small{display:block}.issue-evidence-form-toolbar strong{font-size:11px;color:var(--cc-blue)}.issue-evidence-form-toolbar small{margin-top:3px;font-size:8.5px;color:var(--cc-muted)}
.issue-evidence-form-list{display:grid;gap:11px}.issue-evidence-form-row{overflow:hidden;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface)}
.issue-evidence-form-row>header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--cc-line);background:var(--cc-surface-2)}.issue-evidence-form-row>header strong{font-size:10px;color:var(--cc-blue)}
.issue-evidence-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:12px}.issue-evidence-form-grid .span-2{grid-column:span 2}.issue-evidence-form-grid .span-3{grid-column:span 3}
.issue-evidence-form-grid label{display:grid;gap:4px}.issue-evidence-form-grid label>span{font-size:8.5px;font-weight:800;color:var(--cc-muted)}
.issue-evidence-form-grid select,.issue-evidence-form-grid textarea{width:100%;padding:9px;border:1px solid var(--cc-line-strong);border-radius:7px;background:var(--cc-surface);font-size:10px}
.ai-issue-form-action{display:grid;align-content:end;gap:4px}.ai-issue-form-action small{min-height:14px;font-size:8px;color:var(--cc-muted)}
.issue-evidence-form-empty{padding:22px;border:1px dashed var(--cc-line-strong);border-radius:10px;text-align:center;background:var(--cc-surface-2)}.issue-evidence-form-empty strong{display:block;font-size:11px;color:var(--cc-blue)}.issue-evidence-form-empty p{margin:5px 0 0;font-size:9px;color:var(--cc-muted)}
}
@media(max-width:850px){.issue-evidence-form-toolbar{flex-direction:column}.issue-evidence-form-grid{grid-template-columns:1fr}.issue-evidence-form-grid .span-2,.issue-evidence-form-grid .span-3{grid-column:auto}}


/* =========================================================
   Clean Issue Evidence Cards + Unified Risk Header
   ========================================================= */
@media screen{
.risk-register-detail-page .ra-hero.compact.assessment-workspace-hero{
  background:linear-gradient(135deg,#092d72,#0b61c9)!important;
  color:#fff!important;
}
.risk-register-detail-page .ra-hero.compact.assessment-workspace-hero h1,
.risk-register-detail-page .ra-hero.compact.assessment-workspace-hero p,
.risk-register-detail-page .ra-hero.compact.assessment-workspace-hero>div>span{
  color:#fff!important;
}
.risk-register-detail-page .ra-hero.compact.assessment-workspace-hero .secondary{
  border-color:rgba(255,255,255,.38)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.issue-evidence-list.compact,.register-issue-evidence-list.compact{display:grid!important;gap:10px!important}
.issue-evidence-card.compact,.register-issue-evidence-card.compact{
  display:grid!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid var(--cc-line)!important;
  border-radius:11px!important;
  background:var(--cc-surface)!important;
}
.issue-evidence-card.compact .issue-evidence-card-head,
.register-issue-evidence-card.compact .register-issue-topline{
  padding:12px 13px!important;
  background:linear-gradient(180deg,var(--cc-surface-2),var(--cc-surface))!important;
}
.issue-evidence-summary.compact{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  border:0!important;
}
.issue-evidence-summary.compact>div{
  min-width:0;
  padding:11px 12px!important;
  border-right:1px solid var(--cc-line)!important;
}
.issue-evidence-summary.compact>div:last-child{border-right:0!important}
.issue-evidence-rationale,.register-issue-rationale{
  margin:0 12px 12px;
  padding:10px 11px;
  border:1px solid var(--cc-line);
  border-left:4px solid #7b8797;
  border-radius:8px;
  background:var(--cc-surface-2);
}
.issue-evidence-rationale span,.register-issue-rationale span{
  display:block;
  color:var(--cc-muted);
  font-size:7.5px;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.issue-evidence-rationale p,.register-issue-rationale p{
  margin:5px 0 0;
  color:var(--cc-blue);
  font-size:9px;
  line-height:1.5;
}
.register-issue-evidence-card.compact .register-issue-meta{padding:9px 12px 11px!important}
.risk-issue-panel .ra-panel-head{align-items:flex-start!important}
.issue-panel-actions{display:flex!important;flex-direction:column!important;gap:7px!important;min-width:128px}
.issue-panel-actions a{width:100%;justify-content:center}
}
@media screen and (max-width:900px){
.issue-evidence-summary.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.issue-evidence-summary.compact>div:nth-child(2){border-right:0!important}
.issue-evidence-summary.compact>div:nth-child(-n+2){border-bottom:1px solid var(--cc-line)!important}
}
@media screen and (max-width:640px){
.issue-panel-actions{width:100%;flex-direction:row!important;flex-wrap:wrap}
.issue-panel-actions a{width:auto}
.issue-evidence-summary.compact{grid-template-columns:1fr!important}
.issue-evidence-summary.compact>div{border-right:0!important;border-bottom:1px solid var(--cc-line)!important}
.issue-evidence-summary.compact>div:last-child{border-bottom:0!important}
}

@media screen{
.risk-workflow-process{margin:13px 0 16px;padding:16px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface);box-shadow:0 7px 20px rgba(8,35,73,.05)}
.risk-workflow-process>header{display:flex;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--cc-line)}
.risk-workflow-process>header span{font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}
.risk-workflow-process>header h2{margin:4px 0 2px;font-size:18px;color:var(--cc-blue)}
.risk-workflow-process>header p{margin:0;font-size:9px;color:var(--cc-muted)}
.risk-workflow-process>header>strong{display:grid;place-items:center;min-width:48px;height:31px;border:1px solid var(--cc-line);border-radius:999px;background:var(--cc-surface-2);font-size:9px;color:var(--cc-blue)}
.risk-workflow-track{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:18px 0 15px}
.risk-workflow-track:before{content:"";position:absolute;top:33px;left:7%;right:7%;height:2px;background:#d8e0ea}
.risk-workflow-step{position:relative;z-index:1;display:grid;justify-items:center;gap:7px;text-align:center}
.risk-workflow-node{display:grid;place-items:center;width:31px;height:31px;border:2px solid #c7d2df;border-radius:50%;background:#fff}
.risk-workflow-node span{font-size:9px;font-weight:900;color:#7d8998}
.risk-workflow-step.complete .risk-workflow-node{border-color:#2d7442;background:#2d7442}.risk-workflow-step.complete .risk-workflow-node span{color:#fff}
.risk-workflow-step.current .risk-workflow-node{border-color:#0b61c9;background:#0b61c9;box-shadow:0 0 0 5px rgba(11,97,201,.12)}.risk-workflow-step.current .risk-workflow-node span{color:#fff}
.risk-workflow-step strong{display:block;font-size:8.5px;color:#667487}.risk-workflow-step.current strong{color:#0b61c9}.risk-workflow-step.complete strong{color:#2d7442}
.risk-workflow-step small{display:block;max-width:135px;margin:3px auto 0;font-size:7.5px;line-height:1.35;color:var(--cc-muted)}
.risk-workflow-process>footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--cc-line)}
.risk-workflow-process>footer span,.risk-workflow-process>footer strong{display:block}.risk-workflow-process>footer span{font-size:8px;color:var(--cc-muted)}.risk-workflow-process>footer strong{margin-top:3px;font-size:10px;color:var(--cc-blue)}
.workflow-complete-badge{display:inline-flex!important;padding:6px 9px;border:1px solid #b7d6c0;border-radius:999px;background:#f1faf4;color:#2d7442!important;font-size:8px!important;font-weight:850}
.risk-workflow-register-state{text-align:right}
.workflow-status-note{padding:11px;border:1px solid var(--cc-line);border-left:3px solid #0b61c9;border-radius:8px;background:var(--cc-surface-2)}.workflow-status-note span,.workflow-status-note strong{display:block}.workflow-status-note span{font-size:8px;color:var(--cc-muted)}.workflow-status-note strong{margin-top:3px;font-size:11px;color:var(--cc-blue)}.workflow-status-note p{margin:4px 0 0;font-size:8.5px;color:var(--cc-muted)}
}
@media(max-width:1000px){.risk-workflow-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 0}.risk-workflow-track:before{display:none}}
@media(max-width:650px){.risk-workflow-track{grid-template-columns:1fr}.risk-workflow-step{grid-template-columns:32px 1fr;justify-items:start;align-items:center;text-align:left}.risk-workflow-step small{max-width:none;margin-left:0}.risk-workflow-process>footer{flex-direction:column;align-items:flex-start}}

/* =========================================================
   Separate Risk Register Lifecycle + Governance Stage Gates
   ========================================================= */
@media screen{
.governance-workflow-gate{border-top:3px solid #7b8797!important}
.governance-stage-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.governance-stage-guide>div{padding:13px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}
.governance-stage-guide span{font-size:7.5px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.governance-stage-guide strong{display:block;margin-top:4px;font-size:10px;color:var(--cc-blue)}
.governance-stage-guide p{margin:5px 0 0;font-size:8.5px;line-height:1.45;color:var(--cc-muted)}

.assessment-governance-stage:empty{display:none}
.assessment-governance-stage{margin:0 0 16px;padding:15px;border:1px solid var(--cc-line);border-left:4px solid #7b8797;border-radius:10px;background:var(--cc-surface)}
.assessment-governance-stage header span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.assessment-governance-stage header h2{margin:4px 0;font-size:16px;color:var(--cc-blue)}
.assessment-governance-stage header p{margin:0;font-size:9px;color:var(--cc-muted)}
.assessment-stage-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.assessment-stage-form .wide{grid-column:1/-1}
.assessment-stage-form label{display:grid;gap:4px}.assessment-stage-form label span{font-size:8.5px;font-weight:800;color:var(--cc-muted)}
.assessment-stage-form input,.assessment-stage-form textarea{width:100%;padding:9px;border:1px solid var(--cc-line-strong);border-radius:7px;background:var(--cc-surface)}

.register-lifecycle-process{margin:13px 0 16px;padding:16px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface);box-shadow:0 7px 20px rgba(8,35,73,.05)}
.register-lifecycle-process>header{display:flex;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--cc-line)}
.register-lifecycle-process>header>div>span{font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--cc-gold-700)}
.register-lifecycle-process>header h2{margin:4px 0 2px;font-size:18px;color:var(--cc-blue)}
.register-lifecycle-process>header p{margin:0;font-size:9px;color:var(--cc-muted)}
.register-lifecycle-status{text-align:right}.register-lifecycle-status span,.register-lifecycle-status strong{display:block}.register-lifecycle-status span{font-size:8px;color:var(--cc-muted)}.register-lifecycle-status strong{margin-top:4px;font-size:11px;color:var(--cc-blue)}

.register-lifecycle-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:18px 0}
.register-lifecycle-step{position:relative;display:grid;justify-items:center;gap:7px;text-align:center}
.register-lifecycle-step:not(:last-child):after{content:"";position:absolute;top:15px;left:58%;width:84%;height:2px;background:#d8e0ea}
.register-lifecycle-step i{position:relative;z-index:1;display:grid;place-items:center;width:31px;height:31px;border:2px solid #c7d2df;border-radius:50%;background:#fff;color:#7d8998;font-size:9px;font-style:normal;font-weight:900}
.register-lifecycle-step.complete i{border-color:#2d7442;background:#2d7442;color:#fff}
.register-lifecycle-step.current i{border-color:#0b61c9;background:#0b61c9;color:#fff;box-shadow:0 0 0 5px rgba(11,97,201,.12)}
.register-lifecycle-step strong{display:block;font-size:8.5px;color:#667487}.register-lifecycle-step.current strong{color:#0b61c9}.register-lifecycle-step.complete strong{color:#2d7442}
.register-lifecycle-step small{display:block;max-width:145px;margin:3px auto 0;font-size:7.5px;line-height:1.35;color:var(--cc-muted)}

.register-lifecycle-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--cc-line);border-radius:9px;overflow:hidden}
.register-lifecycle-summary>div{padding:10px 11px;border-right:1px solid var(--cc-line);background:var(--cc-surface-2)}.register-lifecycle-summary>div:last-child{border-right:0}
.register-lifecycle-summary span,.register-lifecycle-summary strong{display:block}.register-lifecycle-summary span{font-size:7.5px;color:var(--cc-muted)}.register-lifecycle-summary strong{margin-top:4px;font-size:9.5px;color:var(--cc-blue)}

.register-lifecycle-action{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid var(--cc-line)}
.register-lifecycle-action label{display:grid;gap:4px}.register-lifecycle-action label span{font-size:8.5px;font-weight:800;color:var(--cc-muted)}
.register-lifecycle-action input,.register-lifecycle-action select,.register-lifecycle-action textarea{width:100%;padding:9px;border:1px solid var(--cc-line-strong);border-radius:7px;background:var(--cc-surface)}
.register-lifecycle-action .wide{grid-column:span 2}
.register-lifecycle-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.danger-soft{min-height:32px;padding:6px 10px;border:1px solid #e4b7b7;border-radius:7px;background:#fff7f7;color:#a63232;font-size:9px;font-weight:850}
}
@media(max-width:900px){
.governance-stage-guide,.register-lifecycle-summary,.register-lifecycle-action{grid-template-columns:1fr}
.register-lifecycle-track{grid-template-columns:1fr;gap:10px}.register-lifecycle-step{grid-template-columns:32px 1fr;justify-items:start;align-items:center;text-align:left}.register-lifecycle-step:not(:last-child):after{display:none}.register-lifecycle-step small{max-width:none;margin-left:0}
.assessment-stage-form{grid-template-columns:1fr}.assessment-stage-form .wide,.register-lifecycle-action .wide{grid-column:auto}
.register-lifecycle-process>header{flex-direction:column}.register-lifecycle-status{text-align:left}
}


/* =========================================================
   AI Assisted Review + Register Audit Trail Fix
   ========================================================= */
@media screen{
  .assessment-stage-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
  }

  .ai-review-assist-button{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:33px;
    padding:6px 10px;
    border:1px solid #d9bb59;
    border-radius:8px;
    background:#fff9e8;
    color:#0b2f63;
    font-size:9px;
    font-weight:850;
  }

  .ai-review-assist-button span{
    display:grid;
    place-items:center;
    width:21px;
    height:21px;
    border-radius:6px;
    background:#0b2f63;
    color:#fff;
    font-size:7px;
  }

  .ai-review-assist-status{
    min-height:16px;
    margin-top:8px;
    color:var(--cc-muted);
    font-size:8.5px;
  }

  .audit-trail-head{
    align-items:center!important;
  }

  .register-audit-trail-list,
  .risk-register-detail-page .ra-history-list,
  .risk-register-detail-page .register-history-list{
    display:grid!important;
    gap:8px!important;
    margin-top:10px!important;
  }

  .register-audit-trail-list article,
  .risk-register-detail-page .ra-history-list article,
  .risk-register-detail-page .register-history-list article{
    display:grid!important;
    grid-template-columns:minmax(130px,.32fr) minmax(0,1fr)!important;
    gap:12px!important;
    align-items:start!important;
    padding:11px 12px!important;
    border:1px solid var(--cc-line)!important;
    border-left:3px solid #0b61c9!important;
    border-radius:8px!important;
    background:var(--cc-surface-2)!important;
  }

  .register-audit-trail-list article>div:first-child,
  .risk-register-detail-page .ra-history-list article>div:first-child,
  .risk-register-detail-page .register-history-list article>div:first-child{
    color:var(--cc-muted)!important;
    font-size:8px!important;
    line-height:1.45!important;
  }

  .register-audit-trail-list article strong,
  .risk-register-detail-page .ra-history-list article strong,
  .risk-register-detail-page .register-history-list article strong{
    display:block!important;
    color:var(--cc-blue)!important;
    font-size:9.5px!important;
  }

  .register-audit-trail-list article p,
  .risk-register-detail-page .ra-history-list article p,
  .risk-register-detail-page .register-history-list article p{
    margin:4px 0 0!important;
    color:var(--cc-muted)!important;
    font-size:8.5px!important;
    line-height:1.5!important;
  }

  .issue-evidence-rationale,
  .register-issue-rationale{
    display:none!important;
  }
}

@media screen and (max-width:700px){
  .assessment-stage-head{
    flex-direction:column;
  }

  .register-audit-trail-list article,
  .risk-register-detail-page .ra-history-list article,
  .risk-register-detail-page .register-history-list article{
    grid-template-columns:1fr!important;
  }
}

@media screen{
.workflow-table-status{display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border:1px solid var(--cc-line);border-radius:999px;background:var(--cc-surface-2);color:var(--cc-blue);font-size:8px;font-weight:850;white-space:nowrap}
.status-under-review,.status-pending-approval,.status-response-planning,.status-review-due{border-color:#e6cc83;background:#fff9e8;color:#765600}
.status-approved,.status-registered,.status-monitoring,.status-accepted{border-color:#b7d6c0;background:#f1faf4;color:#2d7442}
.status-escalated{border-color:#e4b7b7;background:#fff7f7;color:#a63232}

.workflow-dashboard-page,.command-center-v5{display:grid;gap:14px}
.workflow-dashboard-hero,.command-center-v5-hero{display:flex;justify-content:space-between;gap:20px;padding:22px;border-radius:14px;background:linear-gradient(135deg,#092d72,#0b61c9);color:#fff}
.workflow-dashboard-hero span,.command-center-v5-hero span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#e8c96b}
.workflow-dashboard-hero h1,.command-center-v5-hero h1{margin:5px 0;font-size:25px;color:#fff}
.workflow-dashboard-hero p,.command-center-v5-hero p{margin:0;max-width:800px;font-size:10px;color:rgba(255,255,255,.82)}
.workflow-dashboard-hero>div:last-child,.command-center-live{text-align:right}.workflow-dashboard-hero small,.workflow-dashboard-hero strong,.command-center-live span,.command-center-live strong{display:block}.workflow-dashboard-hero small,.command-center-live span{font-size:8px;color:rgba(255,255,255,.7)}.workflow-dashboard-hero strong,.command-center-live strong{margin-top:4px;font-size:10px;color:#fff}
.command-center-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#70d28b}

.workflow-dashboard-kpis,.command-center-decision-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.workflow-dashboard-kpis article,.command-center-decision-strip article{padding:13px;border:1px solid var(--cc-line);border-radius:10px;background:var(--cc-surface)}
.workflow-dashboard-kpis span,.command-center-decision-strip span{display:block;font-size:8px;color:var(--cc-muted)}
.workflow-dashboard-kpis strong,.command-center-decision-strip strong{display:block;margin-top:5px;font-size:21px;color:var(--cc-blue)}
.workflow-dashboard-kpis small,.command-center-decision-strip small{display:block;margin-top:4px;font-size:8px;color:var(--cc-muted)}
.command-center-decision-strip article.attention{border-top:3px solid #b74343}

.workflow-dashboard-grid,.command-center-v5-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.workflow-dashboard-panel,.command-center-card{padding:15px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface)}
.workflow-dashboard-panel>header,.command-center-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}
.workflow-dashboard-panel header span,.command-center-card header span{font-size:7.5px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.workflow-dashboard-panel h2,.command-center-card h2{margin:3px 0 0;font-size:14px;color:var(--cc-blue)}
.workflow-dashboard-panel header a,.command-center-card>a{font-size:8.5px;font-weight:800;color:#0b61c9;text-decoration:none}

.workflow-stage-bars{display:grid;gap:8px}.workflow-stage-bars>div{display:grid;grid-template-columns:120px minmax(0,1fr) 28px;align-items:center;gap:8px}.workflow-stage-bars span{font-size:8px;color:var(--cc-muted)}.workflow-stage-bars i{height:8px;border-radius:999px;background:#edf1f6;overflow:hidden}.workflow-stage-bars b{display:block;height:100%;border-radius:999px;background:#0b61c9}.workflow-stage-bars.register b{background:#c58e17}.workflow-stage-bars strong{font-size:9px;color:var(--cc-blue);text-align:right}

.workflow-top-risk-list{display:grid}.workflow-top-risk-list>a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--cc-line);text-decoration:none}.workflow-top-risk-list>a:last-child{border-bottom:0}.workflow-top-risk-list strong,.workflow-top-risk-list small{display:block}.workflow-top-risk-list strong{font-size:9.5px;color:var(--cc-blue)}.workflow-top-risk-list small{margin-top:3px;font-size:8px;color:var(--cc-muted)}

.command-process{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.command-process.register{grid-template-columns:repeat(5,minmax(0,1fr))}.command-process>div{display:grid;justify-items:center;gap:5px;padding:9px 5px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface-2);text-align:center}.command-process i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#0b61c9;color:#fff;font-size:8px;font-style:normal;font-weight:850}.command-process.register i{background:#c58e17}.command-process strong{font-size:7.5px;color:var(--cc-blue)}.command-process span{font-size:13px;font-weight:900;color:var(--cc-blue)}

.command-risk-table{display:grid}.command-risk-table>div,.command-risk-table>a{display:grid;grid-template-columns:1.45fr .65fr .8fr 1fr .8fr .7fr;gap:9px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--cc-line);text-decoration:none}.command-risk-table .head{background:var(--cc-surface-2);font-size:7.5px;font-weight:900;color:var(--cc-muted);text-transform:uppercase}.command-risk-table>a span{font-size:8.5px;color:var(--cc-blue)}.command-risk-table>a strong,.command-risk-table>a small{display:block}.command-risk-table>a strong{font-size:8px;color:var(--cc-gold-700)}.command-risk-table>a small{margin-top:3px;font-size:8.5px;color:var(--cc-blue)}

.command-center-crq{display:grid;grid-template-columns:minmax(0,1fr) 180px 180px auto;gap:14px;align-items:center;padding:17px;border:1px solid var(--cc-line);border-radius:11px;background:var(--cc-surface)}.command-center-crq span{display:block;font-size:8px;color:var(--cc-muted)}.command-center-crq h2{margin:3px 0;font-size:14px;color:var(--cc-blue)}.command-center-crq p{margin:0;font-size:8.5px;color:var(--cc-muted)}.command-center-crq strong{display:block;margin-top:4px;font-size:13px;color:var(--cc-blue)}
}
@media(max-width:1050px){.workflow-dashboard-kpis,.command-center-decision-strip{grid-template-columns:repeat(3,1fr)}.command-risk-table>div,.command-risk-table>a{grid-template-columns:1.4fr .7fr 1fr 1fr}.command-risk-table>div span:nth-child(5),.command-risk-table>div span:nth-child(6),.command-risk-table>a>span:nth-child(5),.command-risk-table>a>span:nth-child(6){display:none}.command-center-crq{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.workflow-dashboard-hero,.command-center-v5-hero{flex-direction:column}.workflow-dashboard-hero>div:last-child,.command-center-live{text-align:left}.workflow-dashboard-kpis,.command-center-decision-strip,.workflow-dashboard-grid,.command-center-v5-grid{grid-template-columns:1fr}.command-process,.command-process.register{grid-template-columns:repeat(2,1fr)}.workflow-stage-bars>div{grid-template-columns:100px 1fr 25px}.command-risk-table .head{display:none}.command-risk-table>a{grid-template-columns:1fr}.command-center-crq{grid-template-columns:1fr}}


/* Dashboard rollback + executive prototypes */
.dash-shell,.proto-dashboard{display:grid;gap:14px}
.dash-page-nav{display:flex;flex-wrap:wrap;gap:8px}
.dash-page-nav a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--cc-line);border-radius:999px;background:#fff;color:var(--cc-blue);font-size:9px;font-weight:800;text-decoration:none}
.dash-page-nav a.active{background:#0b61c9;border-color:#0b61c9;color:#fff}
.dash-hero-simple,.dash-hero-exec{display:flex;justify-content:space-between;gap:18px;padding:20px 22px;border:1px solid var(--cc-line);border-radius:16px;background:linear-gradient(135deg,#fff,#f7fbff)}
.dash-hero-simple span,.dash-hero-exec span{display:block;font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}
.dash-hero-simple h1,.dash-hero-exec h1{margin:4px 0 6px;font-size:26px;color:var(--cc-blue)}
.dash-hero-simple p,.dash-hero-exec p{margin:0;max-width:760px;font-size:9px;color:var(--cc-muted)}
.dash-timestamp,.dash-hero-actions{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:8px}
.dash-timestamp small{font-size:8px;color:var(--cc-muted)} .dash-timestamp strong{font-size:10px;color:var(--cc-blue)}
.dash-primary-btn,.dash-ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 14px;border-radius:10px;font-size:9px;font-weight:800;text-decoration:none}.dash-primary-btn{background:#0b61c9;color:#fff}.dash-ghost-btn{background:#fff;border:1px solid var(--cc-line);color:var(--cc-blue)}
.dash-kpi-grid{display:grid;gap:12px}.dash-kpi-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-kpi-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}
.dash-kpi-card,.proto-card{padding:16px;border:1px solid var(--cc-line);border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(23,42,89,.04)}
.dash-kpi-card{display:flex;gap:12px;align-items:center}.dash-kpi-icon,.proto-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#f7f9fc;border:1px solid #edf1f6;font-size:24px;flex:0 0 52px}
.dash-kpi-card span{display:block;font-size:8px;color:var(--cc-muted)} .dash-kpi-card strong{display:block;margin-top:4px;font-size:28px;line-height:1;color:var(--cc-blue)} .dash-kpi-card small,.dash-kpi-card em{display:block;margin-top:5px;font-size:8px;font-style:normal;color:var(--cc-muted)} .dash-kpi-card small.increasing{color:#d64545}.dash-kpi-card small.decreasing{color:#2d9b52}
.dash-two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.dash-three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dash-panel{padding:16px;border:1px solid var(--cc-line);border-radius:14px;background:#fff}.dash-panel.compact{padding:14px}
.dash-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}.dash-panel header span{display:block;font-size:7.5px;font-weight:900;letter-spacing:.08em;color:var(--cc-gold-700)}.dash-panel h2{margin:2px 0 0;font-size:15px;color:var(--cc-blue)}.dash-panel header>a{font-size:8.5px;font-weight:800;color:#1b5cff;text-decoration:none}
.dash-chart-svg{width:100%;height:180px}.dash-chart-labels{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:6px}.dash-chart-labels span{font-size:7px;color:var(--cc-muted)}
.dash-risk-list,.proto-risk-rows{display:grid}.dash-risk-list a,.proto-risk-rows a{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--cc-line);text-decoration:none}.dash-risk-list a:last-child,.proto-risk-rows a:last-child{border-bottom:0}.dash-risk-list b,.proto-risk-rows b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#0d2d73;color:#fff;font-size:9px}.dash-risk-list strong,.proto-risk-rows strong{display:block;font-size:9.5px;color:var(--cc-blue)}.dash-risk-list small,.proto-risk-rows small{display:block;margin-top:3px;font-size:8px;color:var(--cc-muted)}
.dash-chip{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:6px 10px;border-radius:10px;background:#edf1f6;color:#0d2d73;font-size:8px;font-weight:900}.dash-chip.low{background:#eef7ef;color:#2d9b52}.dash-chip.medium{background:#fff6df;color:#b37a02}.dash-chip.high{background:#fff0e2;color:#cf7014}.dash-chip.critical{background:#fff0f0;color:#d64545}
.dash-mini-bars,.dash-progress-list{display:grid;gap:10px}.dash-mini-bars>div,.dash-progress-list>div,.prog{display:grid;grid-template-columns:140px 1fr 42px;align-items:center;gap:10px}.dash-mini-bars span,.dash-progress-list span,.prog span{font-size:8px;color:var(--cc-muted)}.dash-mini-bars i,.dash-progress-list i,.prog i{height:9px;border-radius:999px;background:#edf1f6;overflow:hidden}.dash-mini-bars i b,.dash-progress-list i b,.prog i b{display:block;height:100%;background:#1b5cff;border-radius:999px}.dash-mini-bars.gold i b{background:#d89d1d}.dash-mini-bars strong,.dash-progress-list strong,.prog em{font-size:8.5px;color:var(--cc-blue);font-style:normal;text-align:right}.dash-progress-list.condensed>div{grid-template-columns:120px 1fr 36px}
.dash-list-metric{display:grid;gap:10px}.dash-list-metric>div,.metric-slim{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--cc-line)}.dash-list-metric>div:last-child,.metric-slim:last-child{border-bottom:0}.dash-list-metric span,.metric-slim span{font-size:8px;color:var(--cc-muted)}.dash-list-metric strong,.metric-slim b{font-size:9px;color:var(--cc-blue)}
.dash-process-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.dash-process-flow.register{grid-template-columns:repeat(5,minmax(0,1fr))}.dash-process-flow>div{display:grid;gap:5px;justify-items:center;padding:12px 8px;border:1px solid var(--cc-line);border-radius:10px;background:#f8fbff;text-align:center}.dash-process-flow strong{font-size:8px;color:var(--cc-blue)}.dash-process-flow span{font-size:16px;font-weight:900;color:#1b5cff}
.dash-table-like{display:grid}.dash-table-like .head,.dash-table-like>a{display:grid;grid-template-columns:1.5fr .45fr .8fr .65fr;gap:10px;align-items:center;padding:10px;border-bottom:1px solid var(--cc-line)}.dash-table-like .head{font-size:7.5px;font-weight:900;color:var(--cc-muted);text-transform:uppercase;background:#f8fbff}.dash-table-like a{text-decoration:none}.dash-table-like a strong,.dash-table-like a small{display:block}.dash-table-like a strong{font-size:9px;color:var(--cc-blue)}.dash-table-like a small,.dash-table-like a span{font-size:8px;color:var(--cc-muted)}
.proto-note{font-size:8px;color:var(--cc-muted)}
.proto-one-grid{display:grid;grid-template-columns:320px 1.45fr 1.2fr 340px;gap:12px;align-items:start}.proto-stack{display:grid;gap:12px}.proto-stack.right{grid-column:4;grid-row:1/span 2}.proto-card header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.proto-card header h2{margin:0;font-size:15px;color:var(--cc-blue)}.proto-card header span{font-size:8px;color:var(--cc-muted)}
.proto-card.stat{display:flex;gap:12px;align-items:center}.proto-card.stat h3{margin:0;font-size:9px;color:var(--cc-blue)}.proto-card.stat strong{display:block;margin-top:4px;font-size:28px;line-height:1;color:var(--cc-blue)}.proto-card.stat small{display:block;margin-top:4px;font-size:8px;color:var(--cc-muted)}.proto-card.stat b{display:block;margin-top:4px;font-size:11px}.proto-card.stat b.low{color:#2d9b52}.proto-card.stat b.medium{color:#b37a02}.proto-card.stat b.high{color:#cf7014}.proto-card.stat b.critical{color:#d64545}
.heatmap-card{grid-column:2;grid-row:1}.top-risks-card{grid-column:3;grid-row:1}.trend-card{grid-column:2/span 2;grid-row:2}.categories-card{grid-column:3;grid-row:2}.heatmap-wrap{display:grid;grid-template-columns:24px 1fr;grid-template-rows:1fr 20px;gap:8px}.heatmap-axis{display:grid;place-items:center;font-size:8px;font-weight:800;color:var(--cc-blue)}.heatmap-axis.y{writing-mode:vertical-rl;transform:rotate(180deg)}.heatmap-grid{grid-column:2;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,56px);gap:2px}.heatmap-grid .cell{border-radius:2px}.heatmap-grid .level-1{background:#4fba6f}.heatmap-grid .level-2{background:#79c66a}.heatmap-grid .level-3{background:#f1d56b}.heatmap-grid .level-4{background:#f7a34d}.heatmap-grid .level-5{background:#ef5a45}.heat-point{display:grid;place-items:center;align-self:center;justify-self:center;width:28px;height:28px;border-radius:50%;background:#0d2d73;color:#fff;font-size:10px;font-weight:900;box-shadow:0 4px 10px rgba(13,45,115,.22)}
.top-risks-card .proto-risk-rows a{grid-template-columns:30px 1fr 46px}.top-risks-card .proto-risk-rows em{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:6px 8px;border-radius:8px;background:#fff2ef;color:#e45441;font-size:11px;font-weight:900;font-style:normal}
.impact-card .impact-level{display:block;font-size:22px;font-weight:900}.impact-card .impact-level.high{color:#d64545}.impact-card .impact-level.medium{color:#cf7014}.impact-card .impact-level.low{color:#2d9b52}.impact-card small{display:block;margin:4px 0 8px;font-size:8px;color:var(--cc-muted)}
.donut{width:110px;height:110px;border-radius:50%;margin:0 auto 12px;position:relative}.donut::after{content:'';position:absolute;inset:24px;border-radius:50%;background:#fff}.legend-list{display:grid;gap:8px}.legend-list>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center}.legend-list i{display:block;width:10px;height:10px;border-radius:50%}.legend-list span{font-size:8px;color:var(--cc-muted)}.legend-list b{font-size:8.5px;color:var(--cc-blue)}
.ownership-card .prog{margin-bottom:10px}.ownership-card .prog:last-child{margin-bottom:0}
.proto-two-wrap{display:grid;gap:12px}.proto-title-row{display:flex;justify-content:space-between;align-items:center;padding:6px 2px 2px}.proto-title-row h1{margin:0;font-size:20px;color:var(--cc-blue)}.filters{display:flex;gap:10px}.filters span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--cc-line);border-radius:10px;background:#fff;color:var(--cc-blue);font-size:8px;font-weight:700}
.proto-two-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.proto-two-kpis .proto-card{display:flex;gap:12px;align-items:center}.proto-two-kpis h3{margin:0;font-size:9px;color:var(--cc-blue)}.proto-two-kpis strong{display:block;margin-top:4px;font-size:26px;color:var(--cc-blue)}.proto-two-kpis small,.proto-two-kpis em{display:block;margin-top:4px;font-size:8px;color:var(--cc-muted);font-style:normal}
.ring{--pct:70;position:relative;width:58px;height:58px;border-radius:50%;background:conic-gradient(#1b5cff 0 calc(var(--pct)*1%), #edf1f6 0 100%)}.ring::after{content:'';position:absolute;inset:8px;border-radius:50%;background:#fff}
.proto-two-mid{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:12px}.trend-large .dash-chart-svg{height:220px}.top-risks-small .proto-risk-rows a{grid-template-columns:1fr auto}.board-summary-card .board-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.board-summary-grid>div{padding:10px 6px;border-right:1px solid var(--cc-line)}.board-summary-grid>div:last-child{border-right:0}.board-summary-grid span{display:block;font-size:8px;color:var(--cc-muted)}.board-summary-grid strong{display:block;margin-top:4px;font-size:16px;color:var(--cc-blue)}.board-summary-grid small{display:block;margin-top:3px;font-size:8px;color:var(--cc-muted)}
@media (max-width:1400px){.proto-one-grid{grid-template-columns:280px 1fr 1fr;}.proto-stack.right{grid-column:1/span 3;grid-row:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.heatmap-card{grid-column:2}.top-risks-card{grid-column:3}.trend-card{grid-column:2/span 2}.categories-card{grid-column:3}.dash-kpi-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1100px){.dash-kpi-grid.four,.proto-two-kpis,.dash-three-col,.proto-two-mid,.board-summary-card .board-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-two-col{grid-template-columns:1fr}.dash-process-flow,.dash-process-flow.register{grid-template-columns:repeat(3,minmax(0,1fr))}.proto-one-grid{grid-template-columns:1fr}.heatmap-card,.top-risks-card,.trend-card,.categories-card,.proto-stack.right{grid-column:auto;grid-row:auto}.proto-stack.right{grid-template-columns:1fr}.dash-kpi-grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.dash-hero-simple,.dash-hero-exec,.proto-title-row{flex-direction:column;align-items:flex-start}.dash-timestamp,.dash-hero-actions{align-items:flex-start}.dash-kpi-grid.four,.dash-kpi-grid.six,.proto-two-kpis,.dash-three-col,.proto-two-mid,.board-summary-card .board-summary-grid{grid-template-columns:1fr}.dash-kpi-card,.proto-two-kpis .proto-card,.proto-card.stat{align-items:flex-start}.dash-mini-bars>div,.dash-progress-list>div,.prog{grid-template-columns:100px 1fr 40px}.dash-process-flow,.dash-process-flow.register{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{flex-wrap:wrap}}

/* Dashboard navigation, click targets, and domain dashboards */
.clickable,[data-dashboard-href],.clickable-panel{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.clickable:hover,[data-dashboard-href]:hover,.clickable-panel:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(13,45,115,.09);border-color:#b8cbe6!important}
.clickable:focus-visible,[data-dashboard-href]:focus-visible,.clickable-panel:focus-visible{outline:3px solid rgba(27,92,255,.22);outline-offset:2px}
a.dash-kpi-card{color:inherit;text-decoration:none}
.dash-domain-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px;border-radius:16px;background:linear-gradient(135deg,#0b2f63,#0b61c9);color:#fff}
.dash-domain-hero.control{background:linear-gradient(135deg,#173d6a,#1f6e8d)}
.dash-domain-hero.crq{background:linear-gradient(135deg,#35235f,#6551a8)}
.dash-domain-hero>div:first-child>span{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:#e8c96b}
.dash-domain-hero h1{margin:5px 0 6px;font-size:25px;color:#fff}
.dash-domain-hero p{margin:0;max-width:820px;font-size:9.5px;line-height:1.55;color:rgba(255,255,255,.82)}
.dash-two-col.equal{grid-template-columns:repeat(2,minmax(0,1fr))}
.dash-empty-state{padding:18px;border:1px dashed var(--cc-line);border-radius:10px;background:var(--cc-surface-2);font-size:9px;color:var(--cc-muted);text-align:center}
.dash-kpi-card.attention{border-top:3px solid #d64545}
.delivery-programme-list{display:grid}
.delivery-programme-list>a{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.7fr) auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--cc-line);text-decoration:none}
.delivery-programme-list>a:last-child{border-bottom:0}.delivery-programme-list strong,.delivery-programme-list small{display:block}.delivery-programme-list strong{font-size:9px;color:var(--cc-blue)}.delivery-programme-list small{margin-top:3px;font-size:8px;color:var(--cc-muted)}
.delivery-progress{display:grid;grid-template-columns:35px 1fr;align-items:center;gap:7px}.delivery-progress span{font-size:8px;font-weight:800;color:var(--cc-blue)}.delivery-progress i,.table-progress{display:block;height:7px;border-radius:999px;background:#edf1f6;overflow:hidden}.delivery-progress i b,.table-progress b{display:block;height:100%;border-radius:999px;background:#1b5cff}
.delivery-status-chart,.control-component-bars,.crq-exposure-bars{display:grid;gap:10px}.delivery-status-chart>a,.control-component-bars>a,.crq-exposure-bars>a{display:grid;grid-template-columns:130px 1fr 70px;align-items:center;gap:10px;text-decoration:none}.delivery-status-chart span,.control-component-bars span,.crq-exposure-bars span{font-size:8px;color:var(--cc-muted)}.delivery-status-chart i,.control-component-bars i,.crq-exposure-bars i{height:10px;border-radius:999px;background:#edf1f6;overflow:hidden}.delivery-status-chart i b,.control-component-bars i b,.crq-exposure-bars i b{display:block;height:100%;border-radius:999px;background:#1b5cff}.control-component-bars i b{background:#1f6e8d}.crq-exposure-bars i b{background:#6551a8}.delivery-status-chart strong,.control-component-bars strong,.crq-exposure-bars strong{font-size:8.5px;color:var(--cc-blue);text-align:right}
.delivery-priority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.delivery-priority-grid>a{display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2);text-decoration:none}.delivery-priority-grid span{font-size:8px;color:var(--cc-muted)}.delivery-priority-grid strong{font-size:14px;color:var(--cc-blue)}
.delivery-table .head,.delivery-table>a{grid-template-columns:1.35fr .8fr .7fr .7fr .7fr .65fr}
.delivery-table>a>span{min-width:0}.delivery-table .table-progress{margin-top:5px}
.control-rag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.control-rag-grid>a{padding:16px;border-radius:11px;text-decoration:none}.control-rag-grid>a.red{background:#fff1f1;border:1px solid #f0c3c3}.control-rag-grid>a.amber{background:#fff8e8;border:1px solid #ead49c}.control-rag-grid>a.green{background:#eff9f1;border:1px solid #bfdec6}.control-rag-grid span,.control-rag-grid strong,.control-rag-grid small{display:block}.control-rag-grid span{font-size:8px;font-weight:850;color:var(--cc-muted)}.control-rag-grid strong{margin-top:5px;font-size:27px;color:var(--cc-blue)}.control-rag-grid small{margin-top:4px;font-size:8px;color:var(--cc-muted)}
.control-environment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.control-environment-card{display:grid;gap:10px;padding:14px;border:1px solid var(--cc-line);border-left:4px solid #d89d1d;border-radius:11px;background:#fff;text-decoration:none}.control-environment-card.red{border-left-color:#d64545}.control-environment-card.green{border-left-color:#2d9b52}.control-environment-card>header{display:flex;justify-content:space-between;gap:10px}.control-environment-card header span{font-size:7.5px;font-weight:850;color:var(--cc-gold-700)}.control-environment-card h3{margin:3px 0 0;font-size:11px;color:var(--cc-blue)}.control-environment-card header>strong{font-size:18px;color:var(--cc-blue)}.control-score-line{height:8px;border-radius:999px;background:#edf1f6;overflow:hidden}.control-score-line b{display:block;height:100%;background:#d89d1d}.control-environment-card.red .control-score-line b{background:#d64545}.control-environment-card.green .control-score-line b{background:#2d9b52}.control-environment-card footer{display:flex;flex-wrap:wrap;gap:6px}.control-environment-card footer span{padding:4px 7px;border-radius:999px;background:var(--cc-surface-2);font-size:7.5px;color:var(--cc-muted)}
.crq-ratio-card{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:14px;border:1px solid var(--cc-line);border-radius:10px;background:#faf8ff}.crq-ratio-card span,.crq-ratio-card small{font-size:8px;color:var(--cc-muted)}.crq-ratio-card strong{font-size:23px;color:#6551a8}
.crq-scenario-list{display:grid}.crq-scenario-list>a{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,.8fr) minmax(180px,.6fr);align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--cc-line);text-decoration:none}.crq-scenario-list>a:last-child{border-bottom:0}.crq-scenario-list strong,.crq-scenario-list small,.crq-scenario-list span{display:block}.crq-scenario-list> a>div:first-child strong{font-size:9px;color:var(--cc-blue)}.crq-scenario-list small,.crq-scenario-list span{margin-top:3px;font-size:8px;color:var(--cc-muted)}.crq-scenario-list> a>div:last-child{text-align:right}.crq-scenario-list> a>div:last-child strong{margin-top:4px;font-size:10px;color:#6551a8}.crq-scenario-bar{height:9px;border-radius:999px;background:#edf1f6;overflow:hidden}.crq-scenario-bar b{display:block;height:100%;border-radius:999px;background:#6551a8}
@media(max-width:1100px){.dash-two-col.equal,.control-environment-grid{grid-template-columns:1fr}.delivery-table .head,.delivery-table>a{grid-template-columns:1.4fr .8fr .7fr .7fr}.delivery-table .head span:nth-child(5),.delivery-table .head span:nth-child(6),.delivery-table>a>span:nth-child(5),.delivery-table>a>span:nth-child(6){display:none}.crq-scenario-list>a{grid-template-columns:1.2fr .8fr}.crq-scenario-list>a>div:last-child{display:none}}
@media(max-width:720px){.dash-domain-hero{align-items:flex-start;flex-direction:column}.delivery-programme-list>a,.delivery-status-chart>a,.control-component-bars>a,.crq-exposure-bars>a,.crq-scenario-list>a{grid-template-columns:1fr}.delivery-priority-grid,.control-rag-grid{grid-template-columns:1fr}.delivery-table .head{display:none}.delivery-table>a{grid-template-columns:1fr}.delivery-table>a>span{display:block!important}.crq-scenario-list>a>div:last-child{display:block;text-align:left}}

/* =========================================================
   BOD, consolidated, analytics and security posture dashboards
   + Prototype 1 overlap correction
   ========================================================= */
@media screen{
.board-dashboard-hero{display:flex;justify-content:space-between;gap:18px;padding:22px;border-radius:15px;background:linear-gradient(135deg,#08275f,#0b61c9);color:#fff}
.board-dashboard-hero span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#e9c968}.board-dashboard-hero h1{margin:5px 0;font-size:25px;color:#fff}.board-dashboard-hero p{margin:0;max-width:800px;font-size:9px;color:rgba(255,255,255,.82)}.board-dashboard-hero>div:last-child{text-align:right}.board-dashboard-hero small,.board-dashboard-hero strong{display:block}.board-dashboard-hero small{font-size:8px;color:rgba(255,255,255,.7)}.board-dashboard-hero strong{margin-top:4px;font-size:10px;color:#fff}
.board-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.board-kpi-grid article{padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:#fff;cursor:pointer}.board-kpi-grid span,.board-kpi-grid strong,.board-kpi-grid small{display:block}.board-kpi-grid span{font-size:8px;color:var(--cc-muted)}.board-kpi-grid strong{margin-top:5px;font-size:22px;color:var(--cc-blue)}.board-kpi-grid small{margin-top:4px;font-size:8px;color:var(--cc-muted)}
.board-main-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:12px}.board-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.board-risk-list{display:grid}.board-risk-list a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--cc-line);text-decoration:none}.board-risk-list a:last-child{border-bottom:0}.board-risk-list strong,.board-risk-list small{display:block}.board-risk-list strong{font-size:9px;color:var(--cc-blue)}.board-risk-list small{margin-top:3px;font-size:8px;color:var(--cc-muted)}
.board-lifecycle{display:grid;gap:8px}.board-lifecycle>div{display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface-2)}.board-lifecycle span{font-size:8px;color:var(--cc-muted)}.board-lifecycle strong{font-size:15px;color:var(--cc-blue)}
.metric-stack{display:grid}.metric-stack>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--cc-line)}.metric-stack>div:last-child{border-bottom:0}.metric-stack span{font-size:8px;color:var(--cc-muted)}.metric-stack strong{font-size:10px;color:var(--cc-blue)}
.consolidated-matrix{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.consolidated-matrix>a{padding:14px;border:1px solid var(--cc-line);border-radius:11px;background:#fff;text-decoration:none}.consolidated-matrix span,.consolidated-matrix strong,.consolidated-matrix small{display:block}.consolidated-matrix span{font-size:8px;color:var(--cc-muted)}.consolidated-matrix strong{margin-top:4px;font-size:22px;color:var(--cc-blue)}.consolidated-matrix small{margin-top:4px;font-size:8px;color:var(--cc-muted)}
.consolidated-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.chart-only-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chart-bars-vertical{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:8px;height:220px}.chart-bars-vertical>div{display:grid;grid-template-rows:22px 1fr 18px;justify-items:center;gap:5px;min-width:0}.chart-bars-vertical span{font-size:7px;color:var(--cc-muted);text-align:center;line-height:1.2}.chart-bars-vertical i{display:flex;align-items:flex-end;width:100%;height:150px;border-radius:7px;background:#edf1f6;overflow:hidden}.chart-bars-vertical b{display:block;width:100%;min-height:3px;border-radius:7px 7px 0 0;background:#1b5cff}.chart-bars-vertical.gold b{background:#d89d1d}.chart-bars-vertical strong{font-size:9px;color:var(--cc-blue)}.chart-donut-layout{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:20px}.donut.large{width:140px;height:140px}.donut.large::after{inset:34px}
.security-posture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.domain-score-list{display:grid;gap:9px}.domain-score-list>div{display:grid;grid-template-columns:150px minmax(0,1fr) 42px 70px;align-items:center;gap:9px}.domain-score-list span{font-size:8px;color:var(--cc-muted)}.domain-score-list i{height:9px;border-radius:999px;background:#edf1f6;overflow:hidden}.domain-score-list i b{display:block;height:100%;border-radius:999px;background:#1b5cff}.domain-score-list strong{font-size:8.5px;color:var(--cc-blue);text-align:right}.domain-score-list small{font-size:7.5px;color:var(--cc-muted);text-align:right}.security-status-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.security-status-split section{padding:12px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2)}.security-status-split h3{margin:0 0 8px;font-size:10px;color:var(--cc-blue)}.security-status-split section>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--cc-line)}.security-status-split section>div:last-child{border-bottom:0}.security-status-split span{font-size:8px;color:var(--cc-muted)}.security-status-split strong{font-size:9px;color:var(--cc-blue)}

/* Prototype 1: predictable grid areas and no clipping */
.proto-one{min-width:0;overflow:visible}.proto-one-grid{display:grid!important;grid-template-columns:minmax(240px,.72fr) minmax(420px,1.25fr) minmax(350px,1fr)!important;grid-template-areas:"stats heat risks" "stats trend side" "categories trend side"!important;gap:12px!important;align-items:stretch!important;min-width:0}.proto-one-grid>*{min-width:0!important;max-width:100%!important}.proto-one-grid>.proto-stack:first-child{grid-area:stats!important}.proto-one-grid>.heatmap-card{grid-area:heat!important}.proto-one-grid>.top-risks-card{grid-area:risks!important}.proto-one-grid>.proto-stack.right{grid-area:side!important;display:grid!important;grid-template-columns:1fr!important;align-content:start!important}.proto-one-grid>.trend-card{grid-area:trend!important}.proto-one-grid>.categories-card{grid-area:categories!important}.proto-one .proto-card{overflow:hidden!important}.proto-one .heatmap-grid{grid-template-rows:repeat(5,minmax(42px,1fr))!important;min-height:250px!important}.proto-one .dash-chart-svg{display:block;width:100%!important;max-width:100%!important;height:190px!important}.proto-one .proto-risk-rows a{min-width:0}.proto-one .proto-risk-rows a>div{min-width:0}.proto-one .proto-risk-rows strong,.proto-one .proto-risk-rows small{overflow-wrap:anywhere}.proto-one .legend-list{min-width:0}.proto-one .legend-list>div{grid-template-columns:10px minmax(0,1fr) auto!important}.proto-one .donut{flex:0 0 auto}.proto-one .categories-card{align-self:start}
}
@media screen and (max-width:1450px){.board-kpi-grid,.consolidated-matrix{grid-template-columns:repeat(3,minmax(0,1fr))}.proto-one-grid{grid-template-columns:minmax(220px,.7fr) minmax(380px,1.2fr)!important;grid-template-areas:"stats heat" "stats risks" "trend trend" "categories side"!important}.proto-one-grid>.proto-stack.right{grid-template-columns:repeat(3,minmax(0,1fr))!important}.proto-one-grid>.categories-card{align-self:stretch}}
@media screen and (max-width:1050px){.board-main-grid,.consolidated-grid,.chart-only-grid,.security-posture-grid{grid-template-columns:1fr}.board-three-grid{grid-template-columns:1fr}.proto-one-grid{grid-template-columns:1fr!important;grid-template-areas:"stats" "heat" "risks" "trend" "categories" "side"!important}.proto-one-grid>.proto-stack.right{grid-template-columns:1fr!important}.chart-bars-vertical{grid-template-columns:repeat(3,minmax(0,1fr));height:auto}.chart-bars-vertical i{height:110px}.chart-donut-layout{grid-template-columns:1fr}.domain-score-list>div{grid-template-columns:110px minmax(0,1fr) 40px}.domain-score-list small{display:none}}
@media screen and (max-width:700px){.board-dashboard-hero{flex-direction:column}.board-dashboard-hero>div:last-child{text-align:left}.board-kpi-grid,.consolidated-matrix{grid-template-columns:1fr}.security-status-split{grid-template-columns:1fr}.chart-bars-vertical{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Executive menu consolidation, Issue Dashboard and AI Governance Dashboard */
.dash-page-nav.grouped{display:grid;gap:8px;padding:10px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-surface)}
.dash-nav-section{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;align-items:start}
.dash-nav-section>span{padding-top:8px;font-size:7.5px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-gold-700)}
.dash-nav-section>div{display:flex;flex-wrap:wrap;gap:7px}
.dash-nav-section.reports{padding-top:8px;border-top:1px solid var(--cc-line)}
.dash-nav-section.reports a{background:var(--cc-surface-2)}

.issue-filter-panel{padding:12px}
.issue-dashboard-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto auto auto;gap:9px;align-items:end}
.issue-dashboard-filters label{display:grid;gap:4px}.issue-dashboard-filters label>span{font-size:8px;font-weight:800;color:var(--cc-muted)}
.issue-dashboard-filters select{width:100%;min-height:34px;padding:7px 9px;border:1px solid var(--cc-line-strong);border-radius:8px;background:var(--cc-surface);font-size:9px;color:var(--cc-blue)}
.issue-dashboard-filters .issue-overdue-check{display:flex;align-items:center;gap:7px;min-height:34px;padding:0 9px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-surface-2)}
.issue-dashboard-filters .issue-overdue-check input{width:auto}.issue-dashboard-filters .issue-overdue-check span{white-space:nowrap}
.metric-row-link{display:grid!important;grid-template-columns:120px minmax(0,1fr) 36px!important;align-items:center;gap:9px;text-decoration:none;padding:5px 0;border-radius:6px}
.metric-row-link:hover{background:var(--cc-surface-2)}
.metric-row-link.simple{grid-template-columns:minmax(0,1fr) auto!important;padding:9px 6px;border-bottom:1px solid var(--cc-line)}
.issue-dashboard-table,.ai-usecase-table{display:grid;overflow:hidden;border:1px solid var(--cc-line);border-radius:10px}
.issue-dashboard-table>.head,.issue-dashboard-table>a{display:grid;grid-template-columns:1.65fr .65fr .55fr .65fr .7fr .72fr;gap:9px;align-items:center;padding:10px 11px;border-bottom:1px solid var(--cc-line)}
.ai-usecase-table>.head,.ai-usecase-table>a{display:grid;grid-template-columns:1.5fr .75fr .55fr .75fr .75fr .65fr;gap:9px;align-items:center;padding:10px 11px;border-bottom:1px solid var(--cc-line)}
.issue-dashboard-table>.head,.ai-usecase-table>.head{background:var(--cc-surface-2);font-size:7.5px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:var(--cc-muted)}
.issue-dashboard-table>a,.ai-usecase-table>a{text-decoration:none;background:var(--cc-surface)}
.issue-dashboard-table>a:hover,.ai-usecase-table>a:hover{background:#f8fbff}
.issue-dashboard-table>a.overdue{border-left:4px solid #d64545;background:#fffafa}
.issue-dashboard-table>a:last-child,.ai-usecase-table>a:last-child{border-bottom:0}
.issue-dashboard-table a span,.ai-usecase-table a span{min-width:0;font-size:8.5px;color:var(--cc-blue)}
.issue-dashboard-table a strong,.issue-dashboard-table a small,.ai-usecase-table a strong{display:block}.issue-dashboard-table a strong,.ai-usecase-table a strong{font-size:9px;color:var(--cc-blue)}.issue-dashboard-table a small{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;color:var(--cc-muted)}

.ai-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ai-policy-grid>a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px;border:1px solid var(--cc-line);border-radius:9px;background:var(--cc-surface-2);text-decoration:none}
.ai-policy-grid>a:hover{border-color:#a9c5e8;background:#f7fbff}
.ai-policy-grid strong,.ai-policy-grid small{display:block}.ai-policy-grid strong{font-size:9px;color:var(--cc-blue)}.ai-policy-grid small{margin-top:3px;font-size:8px;color:var(--cc-muted)}.ai-policy-grid>a>span{font-size:12px;font-weight:900;color:#0b61c9}

@media(max-width:1150px){
.issue-dashboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
.issue-dashboard-table>.head,.issue-dashboard-table>a{grid-template-columns:1.6fr .65fr .55fr .65fr}.issue-dashboard-table>.head span:nth-child(5),.issue-dashboard-table>.head span:nth-child(6),.issue-dashboard-table>a>span:nth-child(5),.issue-dashboard-table>a>span:nth-child(6){display:none}
.ai-usecase-table>.head,.ai-usecase-table>a{grid-template-columns:1.5fr .75fr .6fr .8fr}.ai-usecase-table>.head span:nth-child(5),.ai-usecase-table>.head span:nth-child(6),.ai-usecase-table>a>span:nth-child(5),.ai-usecase-table>a>span:nth-child(6){display:none}
}
@media(max-width:720px){
.dash-nav-section{grid-template-columns:1fr}.dash-nav-section>span{padding-top:0}
.issue-dashboard-filters{grid-template-columns:1fr}.metric-row-link{grid-template-columns:95px 1fr 30px!important}
.issue-dashboard-table>.head,.ai-usecase-table>.head{display:none}.issue-dashboard-table>a,.ai-usecase-table>a{grid-template-columns:1fr;padding:12px}.issue-dashboard-table>a>span,.ai-usecase-table>a>span{display:block!important}.issue-dashboard-table a small{white-space:normal}.ai-policy-grid{grid-template-columns:1fr}
}


/* =========================================================
   Universal Detail Export PDF
   ========================================================= */
@media screen{
  .detail-export-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 12px;
    padding:10px 12px;
    border:1px solid var(--cc-line);
    border-radius:10px;
    background:linear-gradient(135deg,#fff,#f7faff);
  }

  .detail-export-toolbar>div span,
  .detail-export-toolbar>div strong{
    display:block;
  }

  .detail-export-toolbar>div span{
    font-size:7.5px;
    font-weight:900;
    letter-spacing:.09em;
    color:var(--cc-gold-700);
  }

  .detail-export-toolbar>div strong{
    margin-top:3px;
    color:var(--cc-blue);
    font-size:10px;
  }

  .detail-export-pdf-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:34px;
    padding:6px 12px;
    border:1px solid #b9c9dd;
    border-radius:8px;
    background:#fff;
    color:#0b2f63;
    font-size:9px;
    font-weight:850;
    cursor:pointer;
    box-shadow:0 2px 7px rgba(13,47,99,.06);
  }

  .detail-export-pdf-button:hover{
    border-color:#0b61c9;
    background:#f4f8ff;
    color:#0b61c9;
  }

  .detail-export-pdf-button svg{
    width:16px;
    height:16px;
    fill:currentColor;
  }

  .print-only{
    display:none!important;
  }
}

/* =========================================================
   Issue Register - Risk Assessment Table Standard
   ========================================================= */
@media screen{
  body.issue-register-assessment-table{
    --issue-table-navy:#0b2f63;
    --issue-table-blue:#0b61c9;
    --issue-table-line:#d9e1ea;
    --issue-table-row:#fff;
    --issue-table-hover:#f5f8fc;
    --issue-table-muted:#6d7d91;
    --issue-table-text:#27384d;
  }

  body.issue-register-assessment-table .app-main table{
    width:100%!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    border:1px solid var(--issue-table-line)!important;
    border-radius:10px!important;
    background:var(--issue-table-row)!important;
    overflow:hidden!important;
    box-shadow:0 3px 10px rgba(22,48,83,.04)!important;
  }

  body.issue-register-assessment-table .app-main table thead th{
    position:sticky!important;
    top:0!important;
    z-index:3!important;
    padding:10px 11px!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.09)!important;
    background:var(--issue-table-navy)!important;
    color:#fff!important;
    font-size:8.5px!important;
    font-weight:850!important;
    line-height:1.35!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
    text-align:left!important;
    vertical-align:middle!important;
    white-space:normal!important;
  }

  body.issue-register-assessment-table .app-main table tbody td{
    padding:10px 11px!important;
    border:0!important;
    border-bottom:1px solid var(--issue-table-line)!important;
    background:#fff!important;
    color:var(--issue-table-text)!important;
    font-size:9.5px!important;
    line-height:1.45!important;
    vertical-align:top!important;
  }

  body.issue-register-assessment-table .app-main table tbody tr:last-child td{
    border-bottom:0!important;
  }

  body.issue-register-assessment-table .app-main table tbody tr:hover td{
    background:var(--issue-table-hover)!important;
  }

  body.issue-register-assessment-table .app-main table td:first-child strong,
  body.issue-register-assessment-table .app-main table td:first-child b,
  body.issue-register-assessment-table .app-main table td a strong{
    color:var(--issue-table-blue)!important;
  }

  body.issue-register-assessment-table .app-main table td strong,
  body.issue-register-assessment-table .app-main table td b{
    display:block!important;
    color:var(--issue-table-text)!important;
    font-size:10.5px!important;
    font-weight:800!important;
    line-height:1.4!important;
  }

  body.issue-register-assessment-table .app-main table td small{
    display:block!important;
    margin-top:3px!important;
    color:var(--issue-table-muted)!important;
    font-size:8px!important;
    line-height:1.4!important;
  }

  body.issue-register-assessment-table .app-main table td a{
    color:var(--issue-table-blue)!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  body.issue-register-assessment-table .app-main table td a:hover{
    text-decoration:underline!important;
  }


  body.issue-register-assessment-table .app-main
  :is(.table-wrap,.table-responsive,.responsive-table,
  [class*="table-wrap"],[class*="table-scroll"]){
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    border-radius:10px!important;
    -webkit-overflow-scrolling:touch;
  }

  body.issue-register-assessment-table .app-main table td:last-child{
    min-width:88px;
  }

  body.issue-register-assessment-table .app-main table td:last-child a,
  body.issue-register-assessment-table .app-main table td:last-child button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:28px!important;
    padding:5px 9px!important;
    border:1px solid #b9c9dd!important;
    border-radius:7px!important;
    background:#fff!important;
    color:var(--issue-table-navy)!important;
    font-size:8.5px!important;
    font-weight:800!important;
    text-decoration:none!important;
  }
}

@media(max-width:760px){
  .detail-export-toolbar{
    align-items:flex-start;
    flex-direction:column;
  }

  .detail-export-pdf-button{
    width:100%;
  }
}

/* =========================================================
   Browser PDF / Print Layout
   ========================================================= */
@media print{
  @page{
    size:A4 portrait;
    margin:11mm 10mm 12mm;
  }

  html,
  body{
    width:auto!important;
    min-width:0!important;
    background:#fff!important;
    color:#17283d!important;
    print-color-adjust:exact!important;
    -webkit-print-color-adjust:exact!important;
  }

  body.detail-pdf-export-enabled .app-sidebar,
  body.detail-pdf-export-enabled .app-sidebar-backdrop,
  body.detail-pdf-export-enabled .app-topbar,
  body.detail-pdf-export-enabled .app-footer,
  body.detail-pdf-export-enabled .detail-export-toolbar,
  body.detail-pdf-export-enabled .no-print,
  body.detail-pdf-export-enabled button,
  body.detail-pdf-export-enabled form,
  body.detail-pdf-export-enabled .ra-hero-actions,
  body.detail-pdf-export-enabled .page-actions,
  body.detail-pdf-export-enabled [class*="action-button"],
  body.detail-pdf-export-enabled [class*="launch"]{
    display:none!important;
  }

  body.detail-pdf-export-enabled .app-workspace,
  body.detail-pdf-export-enabled .app-main,
  body.detail-pdf-export-enabled .auth-shell{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  body.detail-pdf-export-enabled .print-only{
    display:block!important;
  }

  body.detail-pdf-export-enabled .detail-print-header{
    margin:0 0 8mm;
    padding:0 0 5mm;
    border-bottom:2px solid #0b2f63;
  }

  body.detail-pdf-export-enabled .detail-print-header span{
    display:block;
    color:#9b7413;
    font-size:8pt;
    font-weight:800;
    letter-spacing:.12em;
  }

  body.detail-pdf-export-enabled .detail-print-header h1{
    margin:2mm 0 1mm;
    color:#0b2f63;
    font-size:18pt;
    line-height:1.2;
  }

  body.detail-pdf-export-enabled .detail-print-header p{
    margin:0;
    color:#66778a;
    font-size:8pt;
  }

  body.detail-pdf-export-enabled
  :is(.ra-page,.risk-register-detail-page,.premium-detail-content,
  .issue-folder-detail,.detail-page,.page-content){
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body.detail-pdf-export-enabled
  :is(.ra-hero,.page-head,[class*="detail-header"]){
    break-inside:avoid;
    page-break-inside:avoid;
    margin-bottom:5mm!important;
    box-shadow:none!important;
  }

  body.detail-pdf-export-enabled
  :is(.ra-panel,article,section,[class*="card"],[class*="panel"]){
    break-inside:avoid;
    page-break-inside:avoid;
    box-shadow:none!important;
  }

  body.detail-pdf-export-enabled table{
    width:100%!important;
    font-size:7.5pt!important;
    border-collapse:collapse!important;
  }

  body.detail-pdf-export-enabled table thead{
    display:table-header-group;
  }

  body.detail-pdf-export-enabled table tr{
    break-inside:avoid;
    page-break-inside:avoid;
  }

  body.detail-pdf-export-enabled a{
    color:inherit!important;
    text-decoration:none!important;
  }
}


/* =========================================================
   Issue Register Structural Table Fix
   Prevent severity/status classes on rows from changing table display
   ========================================================= */
@media screen{
  body.issue-register-assessment-table .issue-register-scroll{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    border:1px solid #d9e1ea!important;
    border-radius:10px!important;
    background:#fff!important;
  }

  body.issue-register-assessment-table table.issue-register-table{
    display:table!important;
    width:100%!important;
    min-width:1180px!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table table.issue-register-table thead{
    display:table-header-group!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody{
    display:table-row-group!important;
  }

  body.issue-register-assessment-table table.issue-register-table tr,
  body.issue-register-assessment-table table.issue-register-table tr.issue-row,
  body.issue-register-assessment-table table.issue-register-table tr[class*="severity-"]{
    display:table-row!important;
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    clip-path:none!important;
    transform:none!important;
  }

  body.issue-register-assessment-table table.issue-register-table th,
  body.issue-register-assessment-table table.issue-register-table td{
    display:table-cell!important;
    width:auto;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    border-radius:0!important;
    clip-path:none!important;
    transform:none!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  body.issue-register-assessment-table table.issue-register-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    padding:11px 12px!important;
    border-right:1px solid rgba(255,255,255,.12)!important;
    border-bottom:0!important;
    background:#0b2f63!important;
    color:#fff!important;
    font-size:8px!important;
    font-weight:850!important;
    line-height:1.3!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
  }

  body.issue-register-assessment-table table.issue-register-table thead th:last-child{
    border-right:0!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody td{
    padding:12px!important;
    border:0!important;
    border-bottom:1px solid #dfe6ee!important;
    background:#fff!important;
    color:#27384d!important;
    vertical-align:middle!important;
    font-size:9px!important;
    line-height:1.45!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr:last-child td{
    border-bottom:0!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr:hover td{
    background:#f6f9fc!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row td:first-child{
    border-left:4px solid #aeb9c7!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row.severity-critical td:first-child{
    border-left-color:#c93636!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row.severity-high td:first-child{
    border-left-color:#e7772f!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row.severity-medium td:first-child{
    border-left-color:#d2a621!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row.severity-low td:first-child{
    border-left-color:#438c5a!important;
  }

  body.issue-register-assessment-table table.issue-register-table th:nth-child(1),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(1){width:29%!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(2),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(2){width:12%!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(3),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(3){width:18%!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(4),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(4){width:14%!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(5),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(5){width:8%!important;text-align:center!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(6),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(6){width:12%!important}
  body.issue-register-assessment-table table.issue-register-table th:nth-child(7),
  body.issue-register-assessment-table table.issue-register-table td:nth-child(7){width:7%!important}

  body.issue-register-assessment-table .issue-name-cell,
  body.issue-register-assessment-table .issue-source-cell,
  body.issue-register-assessment-table .issue-context-cell,
  body.issue-register-assessment-table .issue-owner-cell,
  body.issue-register-assessment-table .issue-risk-cell,
  body.issue-register-assessment-table .issue-actions-cell{
    display:grid!important;
    width:100%!important;
    min-width:0!important;
    gap:4px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table .issue-name-cell>span{
    color:#9b7413!important;
    font-size:7.5px!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
  }

  body.issue-register-assessment-table .issue-name-cell>a{
    display:block!important;
    color:#0b61c9!important;
    font-size:9.5px!important;
    font-weight:850!important;
    line-height:1.35!important;
    text-decoration:none!important;
  }

  body.issue-register-assessment-table .issue-name-cell small,
  body.issue-register-assessment-table .issue-source-cell small,
  body.issue-register-assessment-table .issue-context-cell small,
  body.issue-register-assessment-table .issue-owner-cell small,
  body.issue-register-assessment-table .issue-risk-cell small{
    display:block!important;
    margin:0!important;
    color:#748397!important;
    font-size:7.5px!important;
    line-height:1.4!important;
  }

  body.issue-register-assessment-table .issue-source-cell>b,
  body.issue-register-assessment-table .issue-severity{
    display:inline-flex!important;
    width:max-content!important;
    max-width:100%!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:21px!important;
    padding:3px 7px!important;
    margin:0!important;
    border-radius:999px!important;
    font-size:7.5px!important;
    font-weight:850!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  body.issue-register-assessment-table .issue-source-cell>b{
    background:#e8eef9!important;
    color:#244f86!important;
  }

  body.issue-register-assessment-table .issue-severity.severity-critical{
    background:#f9dddd!important;color:#9a2929!important;
  }
  body.issue-register-assessment-table .issue-severity.severity-high{
    background:#fde7d7!important;color:#a95318!important;
  }
  body.issue-register-assessment-table .issue-severity.severity-medium{
    background:#fff2c8!important;color:#8c6907!important;
  }
  body.issue-register-assessment-table .issue-severity.severity-low{
    background:#e3f4e8!important;color:#267042!important;
  }

  body.issue-register-assessment-table .issue-target-cell{
    display:grid!important;
    width:100%!important;
    min-width:0!important;
    gap:3px!important;
    padding:7px 8px!important;
    margin:0!important;
    border:1px solid #d9e1ea!important;
    border-radius:7px!important;
    background:#f7f9fc!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table .issue-target-cell.is-overdue{
    border-color:#e4b7b7!important;
    background:#fff4f4!important;
  }

  body.issue-register-assessment-table .issue-target-cell.is-closed{
    border-color:#b9d8c1!important;
    background:#f2faf4!important;
  }

  body.issue-register-assessment-table .issue-target-cell strong,
  body.issue-register-assessment-table .issue-target-cell span{
    display:block!important;
    margin:0!important;
  }

  body.issue-register-assessment-table .issue-target-cell strong{
    color:#27384d!important;
    font-size:8px!important;
  }

  body.issue-register-assessment-table .issue-target-cell span{
    color:#748397!important;
    font-size:7.5px!important;
  }

  body.issue-register-assessment-table .issue-risk-cell strong{
    display:block!important;
    color:#27384d!important;
    font-size:12px!important;
    line-height:1!important;
  }

  body.issue-register-assessment-table .issue-actions-cell{
    gap:5px!important;
  }

  body.issue-register-assessment-table .issue-actions-cell a,
  body.issue-register-assessment-table table.issue-register-table td:last-child a{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    min-height:27px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:5px 6px!important;
    margin:0!important;
    border:1px solid #b9c9dd!important;
    border-radius:6px!important;
    background:#fff!important;
    color:#0b2f63!important;
    font-size:7.5px!important;
    font-weight:850!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table .issue-actions-cell a:hover{
    border-color:#0b61c9!important;
    background:#f4f8ff!important;
    color:#0b61c9!important;
  }
}

@media(max-width:1100px){
  body.issue-register-assessment-table table.issue-register-table{
    min-width:1080px!important;
  }
}


/* =========================================================
   Issue Register Exact Alignment with Risk Assessment Table
   ========================================================= */
@media screen{
  body.issue-register-assessment-table .issue-register-scroll{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table table.issue-register-table{
    display:table!important;
    width:100%!important;
    min-width:1320px!important;
    table-layout:fixed!important;
    border-collapse:collapse!important;
    border-spacing:0!important;
    border:1px solid var(--tbl-line,#d9e1ea)!important;
    border-radius:10px!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table table.issue-register-table thead th{
    position:sticky!important;
    top:0!important;
    z-index:2!important;
    padding:12px 10px!important;
    border:0!important;
    border-bottom:1px solid #cfd8e3!important;
    background:rgba(238,243,249,.72)!important;
    backdrop-filter:blur(6px)!important;
    -webkit-backdrop-filter:blur(6px)!important;
    color:#52657b!important;
    font-size:10px!important;
    font-weight:850!important;
    line-height:1.35!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
    text-align:left!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody td{
    display:table-cell!important;
    padding:14px 10px!important;
    border:0!important;
    border-bottom:1px solid #edf0f5!important;
    border-left:0!important;
    border-radius:0!important;
    background:rgba(255,255,255,.86)!important;
    color:#52637a!important;
    vertical-align:top!important;
    font-size:11px!important;
    line-height:1.45!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr,
  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row,
  body.issue-register-assessment-table table.issue-register-table tbody tr[class*="severity-"]{
    display:table-row!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    clip-path:none!important;
    transform:none!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr:hover td{
    background:#f2f6fb!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr:last-child td{
    border-bottom:0!important;
  }

  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row td:first-child,
  body.issue-register-assessment-table table.issue-register-table tbody tr.issue-row[class*="severity-"] td:first-child{
    border-left:0!important;
  }

  body.issue-register-assessment-table .issue-name-cell,
  body.issue-register-assessment-table .issue-source-cell,
  body.issue-register-assessment-table .issue-context-cell,
  body.issue-register-assessment-table .issue-owner-cell,
  body.issue-register-assessment-table .issue-risk-cell,
  body.issue-register-assessment-table .issue-actions-cell{
    display:grid!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  body.issue-register-assessment-table .issue-name-cell>a,
  body.issue-register-assessment-table .issue-name-cell strong,
  body.issue-register-assessment-table .issue-context-cell strong,
  body.issue-register-assessment-table .issue-owner-cell strong{
    display:block!important;
    color:#153b6c!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.4!important;
    text-decoration:none!important;
  }

  body.issue-register-assessment-table .issue-name-cell>span{
    color:#9b7413!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.05em!important;
  }

  body.issue-register-assessment-table .issue-name-cell small,
  body.issue-register-assessment-table .issue-source-cell small,
  body.issue-register-assessment-table .issue-context-cell small,
  body.issue-register-assessment-table .issue-owner-cell small,
  body.issue-register-assessment-table .issue-risk-cell small{
    display:block!important;
    margin-top:3px!important;
    color:#8a96a6!important;
    font-size:10px!important;
    line-height:1.4!important;
  }

  body.issue-register-assessment-table .issue-source-cell>b,
  body.issue-register-assessment-table .issue-severity{
    display:inline-flex!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:22px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:3px 8px!important;
    border-radius:999px!important;
    font-size:8px!important;
    font-weight:850!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }

  body.issue-register-assessment-table .issue-target-cell{
    display:grid!important;
    gap:3px!important;
    width:100%!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }

  body.issue-register-assessment-table .issue-target-cell.is-overdue,
  body.issue-register-assessment-table .issue-target-cell.is-closed{
    border:0!important;
    background:transparent!important;
  }

  body.issue-register-assessment-table .issue-target-cell strong{
    color:#153b6c!important;
    font-size:11px!important;
  }

  body.issue-register-assessment-table .issue-target-cell span{
    color:#8a96a6!important;
    font-size:10px!important;
  }

  body.issue-register-assessment-table .issue-actions-cell a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:30px!important;
    padding:5px 8px!important;
    border:1px solid #b9c9dd!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#0b2f63!important;
    font-size:9px!important;
    font-weight:800!important;
    text-decoration:none!important;
  }

  html[data-theme="dark"] body.issue-register-assessment-table table.issue-register-table thead th{
    background:rgba(20,34,54,.76)!important;
    border-bottom-color:rgba(255,255,255,.12)!important;
    color:#c9d5e3!important;
  }

  html[data-theme="dark"] body.issue-register-assessment-table table.issue-register-table tbody td{
    background:rgba(16,28,45,.84)!important;
    color:#c9d5e3!important;
  }
}


/* =========================================================
   Risk Assessment / Risk Register PDF Fit v2
   ========================================================= */
@media print{
  @page{
    size:A4 landscape;
    margin:7mm 8mm 8mm;
  }

  body.detail-pdf-export-enabled{
    font-size:7.3pt!important;
    line-height:1.28!important;
  }

  body.detail-pdf-export-enabled .detail-print-header{
    margin:0 0 4mm!important;
    padding:0 0 3mm!important;
  }

  body.detail-pdf-export-enabled .detail-print-header h1{
    margin:1mm 0 .5mm!important;
    font-size:14pt!important;
  }

  body.detail-pdf-export-enabled .detail-print-header span,
  body.detail-pdf-export-enabled .detail-print-header p{
    font-size:6.5pt!important;
  }

  body.detail-pdf-export-enabled .risk-assessment-detail-page,
  body.detail-pdf-export-enabled .risk-register-detail-page{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  body.detail-pdf-export-enabled .risk-assessment-detail-page *,
  body.detail-pdf-export-enabled .risk-register-detail-page *{
    box-sizing:border-box!important;
    max-width:100%!important;
  }

  body.detail-pdf-export-enabled .risk-assessment-detail-page .ra-hero,
  body.detail-pdf-export-enabled .risk-register-detail-page .ra-hero{
    display:block!important;
    min-height:0!important;
    margin:0 0 3mm!important;
    padding:4mm 5mm!important;
    border-radius:3mm!important;
    background:#0b2f63!important;
    color:#fff!important;
  }

  body.detail-pdf-export-enabled .ra-hero h1{
    margin:1mm 0!important;
    font-size:16pt!important;
    line-height:1.15!important;
    color:#fff!important;
  }

  body.detail-pdf-export-enabled .ra-hero span,
  body.detail-pdf-export-enabled .ra-hero p,
  body.detail-pdf-export-enabled .ra-hero strong{
    color:#fff!important;
    font-size:7pt!important;
  }

  body.detail-pdf-export-enabled
  :is(._workflow-process,.workflow-process,.assessment-governance-stage,
  .register-lifecycle-process,.risk-register-authority-note){
    margin:0 0 3mm!important;
    padding:3mm!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled
  :is(.assessment-stage-form,.register-lifecycle-action,
  .ra-add-action,.issue-mapping-builder,.risk-issue-link-form,
  .ai-treatment-assistant,.ai-treatment-review,.ai-treatment-generated-list,
  .ai-review-assist-status,.treatment-execution-form){
    display:none!important;
  }

  body.detail-pdf-export-enabled .ra-detail-kpis,
  body.detail-pdf-export-enabled .register-detail-kpis{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:2mm!important;
    margin:0 0 3mm!important;
  }

  body.detail-pdf-export-enabled .risk-assessment-detail-page .ra-detail-kpis{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }

  body.detail-pdf-export-enabled .ra-detail-kpis article{
    display:block!important;
    min-height:0!important;
    margin:0!important;
    padding:2.5mm!important;
    border:1px solid #d8e0e9!important;
    border-radius:2mm!important;
    background:#f8fafc!important;
    break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled .ra-detail-kpis span,
  body.detail-pdf-export-enabled .ra-detail-kpis small{
    font-size:6pt!important;
  }

  body.detail-pdf-export-enabled .ra-detail-kpis strong{
    margin:1mm 0!important;
    font-size:10pt!important;
    line-height:1.1!important;
  }

  body.detail-pdf-export-enabled .ra-detail-grid,
  body.detail-pdf-export-enabled .risk-register-detail-grid{
    display:grid!important;
    grid-template-columns:minmax(0,2.2fr) minmax(55mm,.8fr)!important;
    gap:3mm!important;
    align-items:start!important;
  }

  body.detail-pdf-export-enabled .ra-detail-grid>*,
  body.detail-pdf-export-enabled .risk-register-detail-grid>*{
    min-width:0!important;
    width:auto!important;
  }

  body.detail-pdf-export-enabled .ra-panel,
  body.detail-pdf-export-enabled .register-threat-vulnerability,
  body.detail-pdf-export-enabled .risk-register-authority-note{
    margin:0 0 2.5mm!important;
    padding:3mm!important;
    border:1px solid #d8e0e9!important;
    border-radius:2mm!important;
    background:#fff!important;
    box-shadow:none!important;
  }

  body.detail-pdf-export-enabled .ra-panel-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:2mm!important;
    margin:0 0 2mm!important;
    padding:0 0 1.5mm!important;
    border-bottom:1px solid #e0e6ee!important;
  }

  body.detail-pdf-export-enabled .ra-panel-head span,
  body.detail-pdf-export-enabled .register-threat-vulnerability header span{
    font-size:5.8pt!important;
  }

  body.detail-pdf-export-enabled .ra-panel-head h2,
  body.detail-pdf-export-enabled .register-threat-vulnerability h2{
    margin:.5mm 0 0!important;
    font-size:9.5pt!important;
    line-height:1.15!important;
  }

  body.detail-pdf-export-enabled
  :is(.ra-description,.ra-narrative p,.register-threat-vulnerability p,
  .ra-panel p,.ra-panel li){
    margin:1mm 0!important;
    font-size:6.7pt!important;
    line-height:1.32!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  body.detail-pdf-export-enabled .ra-narrative h3{
    margin:1mm 0 .5mm!important;
    font-size:7.2pt!important;
  }

  body.detail-pdf-export-enabled .ra-kv-grid,
  body.detail-pdf-export-enabled .register-position-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:1.5mm!important;
  }

  body.detail-pdf-export-enabled .ra-kv-grid>div,
  body.detail-pdf-export-enabled .register-position-grid>div{
    min-width:0!important;
    padding:1.8mm!important;
    border:1px solid #e1e7ef!important;
    border-radius:1.5mm!important;
    background:#fafbfd!important;
  }

  body.detail-pdf-export-enabled .ra-kv-grid span,
  body.detail-pdf-export-enabled .register-position-grid span{
    display:block!important;
    font-size:5.5pt!important;
  }

  body.detail-pdf-export-enabled .ra-kv-grid strong,
  body.detail-pdf-export-enabled .register-position-grid strong{
    display:block!important;
    margin-top:.5mm!important;
    font-size:6.7pt!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }

  body.detail-pdf-export-enabled .risk-analysis-highlight-grid,
  body.detail-pdf-export-enabled .register-tv-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:2mm!important;
  }

  body.detail-pdf-export-enabled .risk-analysis-highlight-grid article,
  body.detail-pdf-export-enabled .register-tv-grid article{
    min-width:0!important;
    padding:2.5mm!important;
    border-radius:2mm!important;
    break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled .linked-control-list{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:1.5mm!important;
  }

  body.detail-pdf-export-enabled .linked-control-list a{
    display:block!important;
    min-width:0!important;
    padding:2mm!important;
    border:1px solid #dce4ed!important;
    border-radius:1.5mm!important;
    break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled .linked-control-list :is(span,strong,small){
    display:block!important;
    font-size:6pt!important;
    overflow-wrap:anywhere!important;
  }

  body.detail-pdf-export-enabled .ra-treatment-list,
  body.detail-pdf-export-enabled .risk-linked-issue-list,
  body.detail-pdf-export-enabled .ra-history-list,
  body.detail-pdf-export-enabled .register-side-list,
  body.detail-pdf-export-enabled .register-version-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1.5mm!important;
  }

  body.detail-pdf-export-enabled .ra-treatment-list article,
  body.detail-pdf-export-enabled .risk-linked-issue-list article,
  body.detail-pdf-export-enabled .ra-history-list article,
  body.detail-pdf-export-enabled .register-side-list article,
  body.detail-pdf-export-enabled .register-version-list a{
    display:block!important;
    min-width:0!important;
    margin:0!important;
    padding:2mm!important;
    border:1px solid #dce4ed!important;
    border-radius:1.5mm!important;
    background:#fff!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled .ra-treatment-list :is(h3,p,strong,small,span),
  body.detail-pdf-export-enabled .risk-linked-issue-list :is(h3,p,strong,small,span),
  body.detail-pdf-export-enabled .ra-history-list :is(h3,p,strong,small,span){
    max-width:100%!important;
    font-size:6.2pt!important;
    line-height:1.25!important;
    overflow-wrap:anywhere!important;
  }

  body.detail-pdf-export-enabled .register-issue-topline,
  body.detail-pdf-export-enabled .register-issue-identity,
  body.detail-pdf-export-enabled .issue-evidence-card-head,
  body.detail-pdf-export-enabled .issue-evidence-identity{
    display:block!important;
  }

  body.detail-pdf-export-enabled .register-issue-meta,
  body.detail-pdf-export-enabled .issue-evidence-summary{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:1mm!important;
    margin-top:1mm!important;
  }

  body.detail-pdf-export-enabled .ra-rating,
  body.detail-pdf-export-enabled .ra-status,
  body.detail-pdf-export-enabled .issue-severity-pill,
  body.detail-pdf-export-enabled .ra-priority,
  body.detail-pdf-export-enabled .treatment-execution-type{
    display:inline-flex!important;
    min-height:0!important;
    padding:.7mm 1.5mm!important;
    border-radius:99mm!important;
    font-size:5.7pt!important;
    line-height:1!important;
  }

  body.detail-pdf-export-enabled .ra-progress,
  body.detail-pdf-export-enabled .register-progress{
    height:1.5mm!important;
    margin-top:1mm!important;
  }

  body.detail-pdf-export-enabled table{
    table-layout:fixed!important;
    width:100%!important;
    min-width:0!important;
    font-size:6pt!important;
  }

  body.detail-pdf-export-enabled th,
  body.detail-pdf-export-enabled td{
    padding:1.5mm!important;
    font-size:6pt!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }

  /* Long content may continue onto the next page; keep only compact cards intact. */
  body.detail-pdf-export-enabled .ra-panel,
  body.detail-pdf-export-enabled section,
  body.detail-pdf-export-enabled article{
    break-inside:auto!important;
    page-break-inside:auto!important;
  }

  body.detail-pdf-export-enabled
  :is(.ra-detail-kpis article,.risk-analysis-highlight-grid article,
  .register-tv-grid article,.linked-control-list a,
  .ra-treatment-list article,.risk-linked-issue-list article,
  .ra-history-list article,.register-side-list article,
  .register-version-list a){
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  body.detail-pdf-export-enabled aside{
    min-width:0!important;
  }

  body.detail-pdf-export-enabled svg,
  body.detail-pdf-export-enabled canvas,
  body.detail-pdf-export-enabled img{
    max-width:100%!important;
    height:auto!important;
  }
}

/* Application Risk Assessment */
.app-risk-form{display:grid;gap:14px}.app-risk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.app-risk-grid label{display:grid;gap:6px}.app-risk-grid label.wide{grid-column:span 3}.app-risk-grid label>span{font-size:9px;font-weight:800;color:#52657b;text-transform:uppercase;letter-spacing:.04em}.app-risk-grid input,.app-risk-grid select,.app-risk-grid textarea{width:100%;border:1px solid #d7e0ea;border-radius:8px;padding:10px;background:#fff;color:#24384f}.app-risk-submit{display:flex;justify-content:flex-end}.app-risk-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.app-risk-detail-grid article{padding:11px;border:1px solid #e0e7ef;border-radius:8px;background:#fff}.app-risk-detail-grid article span{display:block;font-size:8px;font-weight:850;color:#718096;text-transform:uppercase;margin-bottom:5px}.app-risk-detail-grid article strong{display:block;font-size:10px;line-height:1.55;color:#27384d;font-weight:650;overflow-wrap:anywhere}@media(max-width:900px){.app-risk-grid,.app-risk-detail-grid{grid-template-columns:1fr 1fr}.app-risk-grid label.wide{grid-column:span 2}}@media(max-width:620px){.app-risk-grid,.app-risk-detail-grid{grid-template-columns:1fr}.app-risk-grid label.wide{grid-column:auto}}@media print{body.detail-pdf-export-enabled .app-risk-detail-grid{grid-template-columns:repeat(3,1fr)!important}.app-risk-detail-grid article{break-inside:avoid;padding:6px!important}.app-risk-detail-grid article span{font-size:6pt!important}.app-risk-detail-grid article strong{font-size:7pt!important}}


/* AI-assisted assessment controls */
.assessment-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ai-assisted-button{border-color:#9f7a1b!important;background:linear-gradient(135deg,#fffaf0,#f4e6b5)!important;color:#72540d!important}
.assessment-ai-panel{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:14px;align-items:center;margin:0 0 16px;padding:14px 16px;border:1px solid #d7c48e;border-radius:12px;background:linear-gradient(135deg,#fffdf7,#f7f3e7);box-shadow:0 5px 18px rgba(85,65,15,.06)}
.assessment-ai-panel strong{display:block;color:#0b2f63;font-size:12px}.assessment-ai-panel p{margin:4px 0 0;color:#64748b;font-size:10px;line-height:1.55}.assessment-ai-controls{display:flex;gap:8px;align-items:center}.assessment-ai-controls input{flex:1;min-width:0}.assessment-ai-message{grid-column:1/-1;color:#6b5414;font-size:9px;font-weight:700}
@media(max-width:760px){.assessment-ai-panel{grid-template-columns:1fr}.assessment-ai-controls{flex-direction:column;align-items:stretch}}
